diff --git a/.bazelrc b/.bazelrc index 5520520983796..20dafa1ef14bb 100644 --- a/.bazelrc +++ b/.bazelrc @@ -13,6 +13,7 @@ startup --host_jvm_args=-Xmx2g build --workspace_status_command=bazel/get_workspace_status build --experimental_remap_main_repo build --experimental_local_memory_estimate +build --experimental_strict_action_env=true build --host_force_python=PY2 build --action_env=BAZEL_LINKLIBS=-l%:libstdc++.a build --action_env=BAZEL_LINKOPTS=-lm:-static-libgcc @@ -27,6 +28,7 @@ build --action_env=PATH # Basic ASAN/UBSAN that works for gcc build:asan --action_env=BAZEL_LINKLIBS= build:asan --action_env=BAZEL_LINKOPTS=-lstdc++:-lm +build:asan --action_env=ENVOY_ASAN=1 build:asan --define ENVOY_CONFIG_ASAN=1 build:asan --copt -fsanitize=address,undefined build:asan --linkopt -fsanitize=address,undefined @@ -58,6 +60,7 @@ build:macos-asan --copt -DGRPC_BAZEL_BUILD build:macos-asan --dynamic_mode=off # Clang TSAN +build:clang-tsan --action_env=ENVOY_TSAN=1 build:clang-tsan --define ENVOY_CONFIG_TSAN=1 build:clang-tsan --copt -fsanitize=thread build:clang-tsan --linkopt -fsanitize=thread @@ -69,6 +72,7 @@ build:clang-tsan --copt -DEVENT__DISABLE_DEBUG_MODE # Clang MSAN - broken today since we need to rebuild lib[std]c++ and external deps with MSAN # support (see https://github.com/envoyproxy/envoy/issues/443). +build:clang-msan --action_env=ENVOY_MSAN=1 build:clang-msan --define ENVOY_CONFIG_MSAN=1 build:clang-msan --copt -fsanitize=memory build:clang-msan --linkopt -fsanitize=memory @@ -79,6 +83,7 @@ build:clang-msan --copt -fsanitize-memory-track-origins=2 # TODO(cmluciano) fix and re-enable _LIBCPP_VERSION testing for TCMALLOC in Envoy::Stats::TestUtil::hasDeterministicMallocStats # and update stats_integration_test with appropriate m_per_cluster value build:libc++ --action_env=CXXFLAGS=-stdlib=libc++ +build:libc++ --action_env=LDFLAGS=-stdlib=libc++ build:libc++ --action_env=BAZEL_CXXOPTS=-stdlib=libc++ build:libc++ --action_env=BAZEL_LINKLIBS=-l%:libc++.a:-l%:libc++abi.a:-lm build:libc++ --host_linkopt=-fuse-ld=lld @@ -104,6 +109,8 @@ build:rbe-toolchain-clang-libc++ --config=rbe-toolchain build:rbe-toolchain-clang-libc++ --crosstool_top=@rbe_ubuntu_clang_libcxx//cc:toolchain build:rbe-toolchain-clang-libc++ --extra_toolchains=@rbe_ubuntu_clang_libcxx//config:cc-toolchain build:rbe-toolchain-clang-libc++ --action_env=CC=clang --action_env=CXX=clang++ --action_env=PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/llvm-8/bin +build:rbe-toolchain-clang-libc++ --action_env=CXXFLAGS=-stdlib=libc++ +build:rbe-toolchain-clang-libc++ --action_env=LDFLAGS=-stdlib=libc++ build:rbe-toolchain-gcc --config=rbe-toolchain build:rbe-toolchain-gcc --crosstool_top=@rbe_ubuntu_gcc//cc:toolchain diff --git a/.circleci/config.yml b/.circleci/config.yml index 90e5cff6f2dda..95d19d3dbf23f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,7 +4,7 @@ executors: ubuntu-build: description: "A regular build executor based on ubuntu image" docker: - - image: piotrsikora/envoy:625451803d48ae5ac9944de8d0e999be408d7a6c + - image: piotrsikora/envoy:d799827e285e2f4f42f4ecf284ff4cc999f48e35 resource_class: xlarge working_directory: /source @@ -73,10 +73,12 @@ jobs: macos: macos: - xcode: "10.2.1" + xcode: "11.0.0" environment: BAZEL_BUILD_EXTRA_OPTIONS: "--define wasm=v8" # v8 only, WAVM segfaults in tests. BAZEL_TEST_TARGETS: "//test/extensions/access_loggers/wasm/... //test/extensions/filters/http/wasm/... //test/extensions/wasm/..." + CC: clang + CXX: clang++ steps: - run: sudo sntp -sS time.apple.com - run: rm -rf /home/circleci/project/.git # CircleCI git caching is likely broken diff --git a/CODEOWNERS b/CODEOWNERS index dab4a5de242b6..24937615965a1 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1,57 +1 @@ -# TODO(zuercher): determine how we want to deal with auto-assignment -# By default, @envoyproxy/maintainers own everything. -#* @envoyproxy/maintainers - -# api -/api/ @envoyproxy/api-shepherds -# access loggers -/*/extensions/access_loggers/common @auni53 @zuercher -# csrf extension -/*/extensions/filters/http/csrf @dschaller @mattklein123 -# original_src http filter extension -/*/extensions/filters/http/original_src @snowp @klarose -# original_src listener filter extension -/*/extensions/filters/listener/original_src @snowp @klarose -# original_src common extension -extensions/filters/common/original_src @snowp @klarose -# dubbo_proxy extension -/*/extensions/filters/network/dubbo_proxy @zyfjeff @lizan -# thrift_proxy extension -/*/extensions/filters/network/thrift_proxy @zuercher @brian-pane -# jwt_authn http filter extension -/*/extensions/filters/http/jwt_authn @qiwzhang @lizan -# grpc_http1_reverse_bridge http filter extension -/*/extensions/filters/http/grpc_http1_reverse_bridge @snowp @zuercher -# header_to_metadata extension -/*/extensions/filters/http/header_to_metadata @rgs1 @zuercher -# alts transport socket extension -/*/extensions/transport_sockets/alts @htuch @yangminzhu -# sni_cluster extension -/*/extensions/filters/network/sni_cluster @rshriram @lizan -# tracers.datadog extension -/*/extensions/tracers/datadog @cgilmour @palazzem -# mysql_proxy extension -/*/extensions/filters/network/mysql_proxy @rshriram @venilnoronha @mattklein123 -# quic extension -/*/extensions/quic_listeners/ @alyssawilk @danzh2010 @mattklein123 @mpwarres @wu-bin -# zookeeper_proxy extension -/*/extensions/filters/network/zookeeper_proxy @rgs1 @snowp -# redis cluster extension -/*/extensions/clusters/redis @msukalski @henryyyang @mattklein123 -# dynamic forward proxy -/*/extensions/clusters/dynamic_forward_proxy @mattklein123 @alyssawilk -/*/extensions/common/dynamic_forward_proxy @mattklein123 @alyssawilk -/*/extensions/filters/http/dynamic_forward_proxy @mattklein123 @alyssawilk -# omit_canary_hosts retry predicate -/*/extensions/retry/host/omit_canary_hosts @sriduth @snowp -# aws_iam grpc credentials -/*/extensions/grpc_credentials/aws_iam @lavignes @mattklein123 -/*/extensions/filters/http/common/aws @lavignes @mattklein123 -# adaptive concurrency limit extension. -/*/extensions/filters/http/adaptive_concurrency @tonya11en @mattklein123 -# http inspector -/*/extensions/filters/listener/http_inspector @crazyxy @PiotrSikora @lizan -# WebAssembly extensions -/*/extensions/access_loggers/wasm @jplevyak @PiotrSikora -/*/extensions/common/wasm @jplevyak @PiotrSikora -/*/extensions/filters/http/wasm @jplevyak @PiotrSikora +* @istio/release-managers-1-3 diff --git a/WASM.md b/WASM.md index 95729d0b64ea1..20b34dcd668a6 100644 --- a/WASM.md +++ b/WASM.md @@ -1,65 +1,14 @@ WebAssembly Extension Support -# Build Dependencies +# C++ SDK -## glib2.0 +A C++ SDK is available including a docker image build environment. See api/wasm/cpp/README.md. -Note: this may be required on Debian/Ubuntu. +# Rust SDK -apt-get install libglib2.0-dev +The Rust SDK is a WIP. See api/wasm/rust/README.md. -## emscripten - -git clone https://github.com/emscripten-core/emsdk.git -cd emsdk -./emsdk install sdk-1.38.25-64bit -./emsdk activate sdk-1.38.25-64bit - -. ./emsdk\_env.sh - -It is possible later versions will work, e.g. - -./emsdk install latest -./emsdk activate latest - -However 1.38.25 is known to work. - -## clang-7 or clang-8 - -export CC=clang -export CXX=clang++ - -Note: ensure that you have clang in your path (e.g. /usr/lib/llvm-7/bin). - -## protobuf v3.6.1 - -git clone https://github.com/protocolbuffers/protobuf -cd protobuf -git checkout v3.6.1 -git submodule update --init --recursive -./autogen.sh -./configure -make -make check -sudo make install - -# Dependencies for regenerating test modules - -## WAVM binaries if you want to rebuild the c++ WebAssembly tests - -git clone git@github.com:WAVM/WAVM.git -cd WAVM -cmake "." -make -sudo make install - -Note: ensure /usr/local/bin is in your path - -## rust if you want to use it or rebuild the rust WebAssembly tests - -curl https://sh.rustup.rs -sSf | sh - -# Building +# Building in WebAssembly support Building with WebAssembly support requires enabling one or more WebAssembly runtime via the "wasm" define: diff --git a/api/bazel/api_build_system.bzl b/api/bazel/api_build_system.bzl index 9eb8e434a5319..d9a3e2d943e63 100644 --- a/api/bazel/api_build_system.bzl +++ b/api/bazel/api_build_system.bzl @@ -23,13 +23,13 @@ def _LibrarySuffix(library_name, suffix): # TODO(htuch): Convert this to native py_proto_library once # https://github.com/bazelbuild/bazel/issues/3935 and/or # https://github.com/bazelbuild/bazel/issues/2626 are resolved. -def api_py_proto_library(name, srcs = [], deps = [], has_services = 0): +def api_py_proto_library(name, srcs = [], deps = [], external_py_proto_deps = [], has_services = 0): _py_proto_library( name = _Suffix(name, _PY_SUFFIX), srcs = srcs, default_runtime = "@com_google_protobuf//:protobuf_python", protoc = "@com_google_protobuf//:protoc", - deps = [_LibrarySuffix(d, _PY_SUFFIX) for d in deps] + [ + deps = [_LibrarySuffix(d, _PY_SUFFIX) for d in deps] + external_py_proto_deps + [ "@com_envoyproxy_protoc_gen_validate//validate:validate_py", "@com_google_googleapis//google/rpc:status_py_proto", "@com_google_googleapis//google/api:annotations_py_proto", @@ -116,6 +116,7 @@ def api_proto_library( deps = [], external_proto_deps = [], external_cc_proto_deps = [], + external_py_proto_deps = [], has_services = 0, linkstatic = None, require_py = 1): @@ -152,7 +153,7 @@ def api_proto_library( ) py_export_suffixes = [] if (require_py == 1): - api_py_proto_library(name, srcs, deps, has_services) + api_py_proto_library(name, srcs, deps, external_py_proto_deps, has_services) py_export_suffixes = ["_py", "_py_genproto"] # Allow unlimited visibility for consumers diff --git a/api/envoy/admin/v2alpha/server_info.proto b/api/envoy/admin/v2alpha/server_info.proto index 0a4506f1676b8..7389af5b08604 100644 --- a/api/envoy/admin/v2alpha/server_info.proto +++ b/api/envoy/admin/v2alpha/server_info.proto @@ -53,8 +53,11 @@ message CommandLineOptions { // See :option:`--config-yaml` for details. string config_yaml = 4; - // See :option:`--allow-unknown-fields` for details. - bool allow_unknown_fields = 5; + // See :option:`--allow-unknown-static-fields` for details. + bool allow_unknown_static_fields = 5; + + // See :option:`--reject-unknown-dynamic-fields` for details. + bool reject_unknown_dynamic_fields = 26; // See :option:`--admin-address-path` for details. string admin_address_path = 6; diff --git a/api/envoy/api/v2/cds.proto b/api/envoy/api/v2/cds.proto index 647a5015063fc..1f14d8de67825 100644 --- a/api/envoy/api/v2/cds.proto +++ b/api/envoy/api/v2/cds.proto @@ -236,8 +236,8 @@ message Cluster { reserved 12; - // Additional options when handling HTTP requests. These options will be applicable to both - // HTTP1 and HTTP2 requests. + // Additional options when handling HTTP requests upstream. These options will be applicable to + // both HTTP1 and HTTP2 requests. core.HttpProtocolOptions common_http_protocol_options = 29; // Additional options when handling HTTP1 requests. diff --git a/api/envoy/api/v2/core/config_source.proto b/api/envoy/api/v2/core/config_source.proto index 913f3876115ce..9b77f12f5beae 100644 --- a/api/envoy/api/v2/core/config_source.proto +++ b/api/envoy/api/v2/core/config_source.proto @@ -65,6 +65,9 @@ message ApiConfigSource { // For GRPC APIs, the rate limit settings. If present, discovery requests made by Envoy will be // rate limited. RateLimitSettings rate_limit_settings = 6; + + // Skip the node identifier in subsequent discovery requests for streaming gRPC config types. + bool set_node_on_first_message_only = 7; } // Aggregated Discovery Service (ADS) options. This is currently empty, but when diff --git a/api/envoy/api/v2/core/protocol.proto b/api/envoy/api/v2/core/protocol.proto index 88a82077a4281..ed751dc67dc15 100644 --- a/api/envoy/api/v2/core/protocol.proto +++ b/api/envoy/api/v2/core/protocol.proto @@ -23,11 +23,19 @@ message TcpProtocolOptions { } message HttpProtocolOptions { - // The idle timeout for upstream connection pool connections. The idle timeout is defined as the + // The idle timeout for connections. The idle timeout is defined as the // period in which there are no active requests. If not set, there is no idle timeout. When the - // idle timeout is reached the connection will be closed. Note that request based timeouts mean - // that HTTP/2 PINGs will not keep the connection alive. + // idle timeout is reached the connection will be closed. If the connection is an HTTP/2 + // downstream connection a drain sequence will occur prior to closing the connection, see + // :ref:`drain_timeout + // `. + // Note that request based timeouts mean that HTTP/2 PINGs will not keep the connection alive. google.protobuf.Duration idle_timeout = 1 [(gogoproto.stdduration) = true]; + + // The maximum number of headers. If unconfigured, the default + // maximum number of request headers allowed is 100. Requests that exceed this limit will receive + // a 431 response for HTTP/1.x and cause a stream reset for HTTP/2. + google.protobuf.UInt32Value max_headers_count = 2 [(validate.rules).uint32 = {gte: 1}]; } message Http1ProtocolOptions { diff --git a/api/envoy/api/v2/route/route.proto b/api/envoy/api/v2/route/route.proto index e14e565838532..93d021ddb216a 100644 --- a/api/envoy/api/v2/route/route.proto +++ b/api/envoy/api/v2/route/route.proto @@ -562,7 +562,8 @@ message RouteAction { // Specifies the upstream timeout for the route. If not specified, the default is 15s. This // spans between the point at which the entire downstream request (i.e. end-of-stream) has been - // processed and when the upstream response has been completely processed. + // processed and when the upstream response has been completely processed. A value of 0 will + // disable the route's timeout. // // .. note:: // diff --git a/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto b/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto index 4d662fc2c5244..390c7a1486339 100644 --- a/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto +++ b/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto @@ -25,7 +25,7 @@ import "gogoproto/gogo.proto"; // [#protodoc-title: HTTP connection manager] // HTTP connection manager :ref:`configuration overview `. -// [#comment:next free field: 34] +// [#comment:next free field: 36] message HttpConnectionManager { enum CodecType { option (gogoproto.goproto_enum_prefix) = false; @@ -134,6 +134,10 @@ message HttpConnectionManager { // `. Tracing tracing = 7; + // Additional settings for HTTP requests handled by the connection manager. These will be + // applicable to both HTTP1 and HTTP2 requests. + envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 35; + // Additional HTTP/1 settings that are passed to the HTTP/1 codec. envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 8; @@ -156,10 +160,11 @@ message HttpConnectionManager { // idle timeout is defined as the period in which there are no active // requests. If not set, there is no idle timeout. When the idle timeout is // reached the connection will be closed. If the connection is an HTTP/2 - // connection a drain sequence will occur prior to closing the connection. See - // :ref:`drain_timeout - // `. - google.protobuf.Duration idle_timeout = 11 [(gogoproto.stdduration) = true]; + // connection a drain sequence will occur prior to closing the connection. + // This field is deprecated. Use :ref:`idle_timeout + // ` + // instead. + google.protobuf.Duration idle_timeout = 11 [(gogoproto.stdduration) = true, deprecated = true]; // The stream idle timeout for connections managed by the connection manager. // If not specified, this defaults to 5 minutes. The default value was selected diff --git a/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto b/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto index 9f714dd66cd00..175e564dec3fc 100644 --- a/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto +++ b/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto @@ -90,6 +90,29 @@ message RedisProxy { // this limit, then redirection will fail and the original redirection error will be passed // downstream unchanged. This limit defaults to 100. google.protobuf.UInt32Value max_upstream_unknown_connections = 6; + + // ReadPolicy controls how Envoy routes read commands to Redis nodes. This is currently + // supported for Redis Cluster. All ReadPolicy settings except MASTER may return stale data + // because replication is asynchronous and requires some delay. You need to ensure that your + // application can tolerate stale data. + enum ReadPolicy { + // Default mode. Read from the current master node. + MASTER = 0; + // Read from the master, but if it is unavailable, read from replica nodes. + PREFER_MASTER = 1; + // Read from replica nodes. If multiple replica nodes are present within a shard, a random + // node is selected. Healthy nodes have precedent over unhealthy nodes. + REPLICA = 2; + // Read from the replica nodes (similar to REPLICA), but if all replicas are unavailable (not + // present or unhealthy), read from the master. + PREFER_REPLICA = 3; + // Read from any node of the cluster. A random node is selected among the master and replicas, + // healthy nodes have precedent over unhealthy nodes. + ANY = 4; + } + + // Read policy. The default is to read from the master. + ReadPolicy read_policy = 7 [(validate.rules).enum.defined_only = true]; } // Network settings for the connection pool to the upstream clusters. @@ -210,4 +233,4 @@ message RedisProtocolOptions { // Upstream server password as defined by the `requirepass directive // `_ in the server's configuration file. envoy.api.v2.core.DataSource auth_password = 1; -} \ No newline at end of file +} diff --git a/api/envoy/config/rbac/v2/BUILD b/api/envoy/config/rbac/v2/BUILD index c2059893912c8..fac50eb66f9b0 100644 --- a/api/envoy/config/rbac/v2/BUILD +++ b/api/envoy/config/rbac/v2/BUILD @@ -5,6 +5,15 @@ load("@envoy_api//bazel:api_build_system.bzl", "api_go_proto_library", "api_prot api_proto_library_internal( name = "rbac", srcs = ["rbac.proto"], + external_cc_proto_deps = [ + "@com_google_googleapis//google/api/expr/v1alpha1:syntax_cc_proto", + ], + external_proto_deps = [ + "@com_google_googleapis//google/api/expr/v1alpha1:syntax_proto", + ], + external_py_proto_deps = [ + "@com_google_googleapis//google/api/expr/v1alpha1:syntax_py_proto", + ], visibility = ["//visibility:public"], deps = [ "//envoy/api/v2/core:address", @@ -22,5 +31,6 @@ api_go_proto_library( "//envoy/api/v2/route:route_go_proto", "//envoy/type/matcher:metadata_go_proto", "//envoy/type/matcher:string_go_proto", + "@com_google_googleapis//google/api/expr/v1alpha1:cel_go_proto", ], ) diff --git a/api/envoy/config/rbac/v2/rbac.proto b/api/envoy/config/rbac/v2/rbac.proto index 3cfe43a828fef..15554e561df4e 100644 --- a/api/envoy/config/rbac/v2/rbac.proto +++ b/api/envoy/config/rbac/v2/rbac.proto @@ -7,6 +7,8 @@ import "envoy/api/v2/route/route.proto"; import "envoy/type/matcher/metadata.proto"; import "envoy/type/matcher/string.proto"; +import "google/api/expr/v1alpha1/syntax.proto"; + package envoy.config.rbac.v2; option java_outer_classname = "RbacProto"; @@ -81,7 +83,7 @@ message RBAC { // Policy specifies a role and the principals that are assigned/denied the role. A policy matches if // and only if at least one of its permissions match the action taking place AND at least one of its -// principals match the downstream. +// principals match the downstream AND the condition is true if specified. message Policy { // Required. The set of permissions that define a role. Each permission is matched with OR // semantics. To match all actions for this policy, a single Permission with the `any` field set @@ -92,6 +94,10 @@ message Policy { // principal is matched with OR semantics. To match all downstreams for this policy, a single // Principal with the `any` field set to true should be used. repeated Principal principals = 2 [(validate.rules).repeated .min_items = 1]; + + // An optional symbolic expression specifying an access control condition. + // The condition is combined with AND semantics. + google.api.expr.v1alpha1.Expr condition = 3; } // Permission defines an action (or actions) that a principal can take. @@ -170,8 +176,9 @@ message Principal { reserved 1; reserved "name"; - // The name of the principal. If set, The URI SAN is used from the certificate, otherwise the - // subject field is used. If unset, it applies to any user that is authenticated. + // The name of the principal. If set, The URI SAN or DNS SAN in that order is used from the + // certificate, otherwise the subject field is used. If unset, it applies to any user that is + // authenticated. envoy.type.matcher.StringMatcher principal_name = 2; } diff --git a/api/wasm/cpp/BUILD b/api/wasm/cpp/BUILD index 3e49d8913994c..898e5fe9e43b4 100644 --- a/api/wasm/cpp/BUILD +++ b/api/wasm/cpp/BUILD @@ -9,11 +9,16 @@ load( envoy_package() envoy_cc_library( - name = "intrinsics_hdr", + name = "api_lib", hdrs = [ - "proxy_wasm_enums.h", - "proxy_wasm_externs.h", - "proxy_wasm_impl.h", - "proxy_wasm_intrinsics.h", + "proxy_wasm_api.h", + ], +) + +envoy_cc_library( + name = "shared_lib", + hdrs = [ + "proxy_wasm_result.h", + "proxy_wasm_metadata.h", ], ) diff --git a/api/wasm/cpp/Dockerfile-sdk b/api/wasm/cpp/Dockerfile-sdk new file mode 100644 index 0000000000000..dd4451fb4445e --- /dev/null +++ b/api/wasm/cpp/Dockerfile-sdk @@ -0,0 +1,7 @@ +FROM ubuntu:bionic + +COPY ./sdk_container.sh / +COPY ./build_wasm.sh / +COPY *.cc *.h *.js *.proto Makefile* *.bc /sdk/ + +RUN ./sdk_container.sh diff --git a/api/wasm/cpp/Makefile.base b/api/wasm/cpp/Makefile.base index 36fe2a06bbe09..530279ccce903 100644 --- a/api/wasm/cpp/Makefile.base +++ b/api/wasm/cpp/Makefile.base @@ -1,4 +1,8 @@ -CPP_API:=$(shell git rev-parse --show-toplevel)/api/wasm/cpp +ifdef DOCKER_SDK + CPP_API:=${DOCKER_SDK} +else + CPP_API:=$(shell git rev-parse --show-toplevel)/api/wasm/cpp +endif ifdef NO_CONTEXT CPP_CONTEXT_LIB = @@ -6,10 +10,9 @@ else CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc endif -%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_impl.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} +%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} em++ -s WASM=1 -s BINARYEN_TRAP_MODE='clamp' -s LEGALIZE_JS_FFI=0 -s EMIT_EMSCRIPTEN_METADATA=1 --std=c++17 -O3 -g3 -I${CPP_API} -I/usr/local/include --js-library ${CPP_API}/proxy_wasm_intrinsics.js $*.cc ${CPP_API}/proxy_wasm_intrinsics.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf.bc -o $*.js wavm-disas $*.wasm $*.wat - wavm-compile $*.wasm $*.wasm rm -f $*.js $*.wast chmod 644 $*.wat diff --git a/api/wasm/cpp/Makefile.base_lite b/api/wasm/cpp/Makefile.base_lite index f51b8049a5b39..a8ace429e221e 100644 --- a/api/wasm/cpp/Makefile.base_lite +++ b/api/wasm/cpp/Makefile.base_lite @@ -1,4 +1,8 @@ +ifdef DOCKER_SDK +CPP_API:=${DOCKER_SDK} +else CPP_API:=$(shell git rev-parse --show-toplevel)/api/wasm/cpp +endif ifdef NO_CONTEXT CPP_CONTEXT_LIB = @@ -6,10 +10,9 @@ else CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc endif -%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_impl.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} +%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} em++ -s WASM=1 -s BINARYEN_TRAP_MODE='clamp' -s LEGALIZE_JS_FFI=0 -s EMIT_EMSCRIPTEN_METADATA=1 --std=c++17 -O3 -g3 -DEMSCRIPTEN_PROTOBUF_LITE=1 -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include --js-library ${CPP_API}/proxy_wasm_intrinsics.js $*.cc ${CPP_API}/proxy_wasm_intrinsics_lite.pb.cc ${CPP_API}/struct_lite.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf-lite.bc -o $*.js wavm-disas $*.wasm $*.wat - wavm-compile $*.wasm $*.wasm rm -f $*.js $*.wast chmod 644 $*.wat diff --git a/api/wasm/cpp/README.md b/api/wasm/cpp/README.md index 53d48ad231084..18ad5e23a6ef5 100644 --- a/api/wasm/cpp/README.md +++ b/api/wasm/cpp/README.md @@ -1,7 +1,196 @@ -Dependencies for building WASM modules: +# Compiling C++ to .wasm files using the SDK -- You must install the version of protobuf on your build system that matches the libprotobuf.bc files (without any patches) so that the generated code matches the .bc library. - Currently this is based on tag v3.6.1 of https://github.com/protocolbuffers/protobuf. +The SDK has dependencies on specific versions of emscription and the protobuf library, therefor use of a Docker image is recommended. + +## Docker + +A Dockerfile for the C++ SDK is provided in Dockerfile-sdk. + +It can built in this directory by: + +docker build -t wasmsdk:v1 -f Dockerfile-sdk . + +The docker image can be used for compiling wasm files. + +### Creating a project for use with the Docker build image + +Create a directory parallel to envoy with your source files and a Makefile: + +``` +DOCKER_SDK=/sdk + +all: myproject.wasm + +include ${DOCKER_SDK}/Makefile.base_lite +``` + +Source file (myproject.cc): + +``` +#include +#include + +#include "proxy_wasm_intrinsics.h" + +class ExampleContext : public Context { +public: + explicit ExampleContext(uint32_t id, RootContext* root) : Context(id, root) {} + + FilterHeadersStatus onRequestHeaders() override; + FilterDataStatus onRequestBody(size_t body_buffer_length, bool end_of_stream) override; + void onDone() override; +}; +static RegisterContextFactory register_ExampleContext(CONTEXT_FACTORY(ExampleContext)); + +FilterHeadersStatus ExampleContext::onRequestHeaders() { + logInfo(std::string("onRequestHeaders ") + std::to_string(id())); + auto path = getRequestHeader(":path"); + logInfo(std::string("header path ") + std::string(path->view())); + return FilterHeadersStatus::Continue; +} + +void ExampleContext::onDone() { logInfo("onDone " + std::to_string(id())); } +``` + +### Compiling with the Docker build image + +Run docker: + +```bash +docker run -v $PWD:/work -w /work wasmsdk:v1 bash /build_wasm.sh +``` + +### Caching the standard libraries + +The first time that emscripten runs it will generate the standard libraries. To cache these in the docker image, +after the first successful compilation (e.g myproject.cc above), commit the image with the standard libraries: + +```bash +docker commit `docker ps -l | grep wasmsdk:v1 | awk '{print $1}'` wasmsdk:v1 +``` + +This will save time on subsequent compiles. + +### Using the SDK from a newer/specific version of Envoy + +To use a newer/specific version of the SDK (e.g. from the version of Enovy you are going to deploy the WebAssembly module to) bind that volume and use it in the Makefile. + +Makefile referencing the SDK in the /work directory: + +``` +DOCKER_SDK=/work/sdk + +all: myproject.wasm + +include ${DOCKER_SDK}/Makefile.base_lite +``` + +Run docker pointing to Envoy sources in a directory parallel (at the same level) as your project directory: + +```bash +docker run -v $PWD:/work -v $PWD/../envoy/api/wasm/cpp:/work/sdk -w /work wasmsdk:v1 bash /build_wasm.sh +``` + +### Using abseil form the image + +Abseil (optionally) is built in /root/abseil and can be used by customizing the Makefile e.g.: + +``` +DOCKER_SDK=/sdk +CPP_API:=${DOCKER_SDK} +CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc +ABSL = /root/abseil-cpp +ABSL_CPP = ${ABSL}/absl/strings/str_cat.cc ${ABSL}/absl/strings/str_split.cc ${ABSL}/absl/strings/numbers.cc ${ABSL}/absl/strings/ascii.cc + +all: plugin.wasm + +%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} + ls /root + em++ -s WASM=1 -s BINARYEN_TRAP_MODE='clamp' -s LEGALIZE_JS_FFI=0 -s EMIT_EMSCRIPTEN_METADATA=1 --std=c++17 -O3 -g3 -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include -I${ABSL} --js-library ${CPP_API}/proxy_wasm_intrinsics.js ${ABSL_CPP} $*.cc ${CPP_API}/proxy_wasm_intrinsics.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf.bc -o $*.js +``` + +Precompiled abseil libraries are also available, so the above can also be done as: + +``` +DOCKER_SDK=/sdk +CPP_API:=${DOCKER_SDK} +CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc +ABSL = /root/abseil-cpp +ABSL_LIBS = ${ABSL}/absl/strings/libabsl_strings.a ${ABSL}/absl/strings/libabsl_strings_internal.a ${ABSL}/absl/strings/libabsl_str_format_internal.a + +all: plugin.wasm + +%.wasm %.wat: %.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB} + ls /root + em++ -s WASM=1 -s BINARYEN_TRAP_MODE='clamp' -s LEGALIZE_JS_FFI=0 -s EMIT_EMSCRIPTEN_METADATA=1 --std=c++17 -O3 -g3 -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include -I${ABSL} --js-library ${CPP_API}/proxy_wasm_intrinsics.js $*.cc ${CPP_API}/proxy_wasm_intrinsics.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf.bc ${ABSL_LIBS} -o $*.js +``` + +### Ownership of the resulting .wasm files + +The compiled files may be owned by root. To chown them add a line in the Makefile where ID is the desired user id (e.g. the result of "id -u"): + +``` +DOCKER_SDK=/work/sdk + +all: myproject.wasm + chown ID.ID $^ + +include ${DOCKER_SDK}/Makefile.base_lite +``` + +## Dependencies for building WASM modules: + +If you do not wish to use the Docker file, the dependencies can be installed by script (sdk\_container.sh), or by hand. + +### protobuf v3.6.1 + +You must install the version of protobuf on your build system that matches the libprotobuf.bc files (without any patches) so that the generated code matches the .bc library. Currently this is based on tag v3.6.1 of https://github.com/protocolbuffers/protobuf. + +```bash +git clone https://github.com/protocolbuffers/protobuf +cd protobuf +git checkout v3.6.1 +git submodule update --init --recursive +./autogen.sh +./configure +make +make check +sudo make install +``` + +### rebulding the protobuf.bc files + +If want to rebuild the .bc files or use a different version see the instructions at https://github.com/kwonoj/protobuf-wasm (note: this is pinned to git tag v3.6.1). A pre-patched repo is available at https://github.com/jplevyak/protobuf branch envoy-wasm. + +### emscripten + +```bash +git clone https://github.com/emscripten-core/emsdk.git +cd emsdk +./emsdk install sdk-1.38.42-64bit +./emsdk activate sdk-1.38.42-64bit + +. ./emsdk\_env.sh +``` + +It is possible later versions will work, e.g. + +```bash +./emsdk install latest +./emsdk activate latest +``` + +However 1.38.42 is known to work. + +### WAVM binaries + +```bash +git clone git@github.com:WAVM/WAVM.git +cd WAVM +cmake "." +make +sudo make install +``` + +Note: ensure /usr/local/bin is in your path -- If want to rebuild the .bc files or use a different version see the instructions at https://github.com/kwonoj/protobuf-wasm (note: this is pinned to git tag v3.6.1) - A pre-patched repo is available at https://github.com/jplevyak/protobuf branch envoy-wasm diff --git a/api/wasm/cpp/build_wasm.sh b/api/wasm/cpp/build_wasm.sh new file mode 100755 index 0000000000000..440e8ee40d29c --- /dev/null +++ b/api/wasm/cpp/build_wasm.sh @@ -0,0 +1,4 @@ +#!/bin/bash +source /root/emsdk/emsdk_env.sh +export PATH=/usr/local/bin:$PATH +make diff --git a/api/wasm/cpp/proxy_wasm_impl.h b/api/wasm/cpp/proxy_wasm_api.h similarity index 74% rename from api/wasm/cpp/proxy_wasm_impl.h rename to api/wasm/cpp/proxy_wasm_api.h index 2b56f8bb6ced1..67c4c65338234 100644 --- a/api/wasm/cpp/proxy_wasm_impl.h +++ b/api/wasm/cpp/proxy_wasm_api.h @@ -8,6 +8,8 @@ #include #include +#define CHECK_RESULT(_c) do { if ((_c) != WasmResult::Ok) { proxy_log(LogLevel::critical, #_c, sizeof( #_c )-1); abort(); }} while(0) + // // High Level C++ API. // @@ -24,37 +26,47 @@ class ProxyException : std::runtime_error { }; #endif -inline void logTrace(const std::string& logMessage) { - proxy_log(LogLevel::trace, logMessage.c_str(), logMessage.size()); +inline WasmResult logTrace(StringView logMessage) { + return proxy_log(LogLevel::trace, logMessage.data(), logMessage.size()); +} +inline WasmResult logDebug(StringView logMessage) { + return proxy_log(LogLevel::debug, logMessage.data(), logMessage.size()); } -inline void logDebug(const std::string& logMessage) { - proxy_log(LogLevel::debug, logMessage.c_str(), logMessage.size()); +inline WasmResult logInfo(StringView logMessage) { + return proxy_log(LogLevel::info, logMessage.data(), logMessage.size()); } -inline void logInfo(const std::string& logMessage) { - proxy_log(LogLevel::info, logMessage.c_str(), logMessage.size()); +inline WasmResult logWarn(StringView logMessage) { + return proxy_log(LogLevel::warn, logMessage.data(), logMessage.size()); } -inline void logWarn(const std::string& logMessage) { - proxy_log(LogLevel::warn, logMessage.c_str(), logMessage.size()); +inline WasmResult logError(StringView logMessage) { + return proxy_log(LogLevel::error, logMessage.data(), logMessage.size()); } -inline void logError(const std::string& logMessage) { - proxy_log(LogLevel::error, logMessage.c_str(), logMessage.size()); +inline WasmResult logCritical(StringView logMessage) { + return proxy_log(LogLevel::critical, logMessage.data(), logMessage.size()); } -inline void logCritical(const std::string& logMessage) { - proxy_log(LogLevel::critical, logMessage.c_str(), logMessage.size()); +inline void logAbort(StringView logMessag) { + logCritical(logMessag); + abort(); } +#define LOG(_level, ...) \ + log##_level(std::string("[") + __FILE__ + ":" + std::to_string(__LINE__) + "]::" + __FUNCTION__ + "() " + __VA_ARGS__) +#define LOG_TRACE(...) LOG(Trace, __VA_ARGS__) +#define LOG_DEBUG(...) LOG(Debug, __VA_ARGS__) +#define LOG_INFO(...) LOG(Info, __VA_ARGS__) +#define LOG_WARN(...) LOG(Warn, __VA_ARGS__) +#define LOG_ERROR(...) LOG(Error, __VA_ARGS__) +#define LOG_CRITICAL(...) LOG(Critical, __VA_ARGS__) + // Buffers coming into the WASM filter. class WasmData { public: WasmData(const char* data, size_t size) : data_(data), size_(size) {} ~WasmData() { ::free(const_cast(data_)); } const char* data() { return data_; } + size_t size() { return size_; } StringView view() { return {data_, size_}; } std::string toString() { return std::string(view()); } - int32_t int32() { return *reinterpret_cast(data_); } - uint32_t uint32() { return *reinterpret_cast(data_); } - int64_t int64() { return *reinterpret_cast(data_); } - uint64_t uint64() { return *reinterpret_cast(data_); } std::vector> pairs(); template T proto() { T p; @@ -244,7 +256,7 @@ class ContextBase { uint32_t id() { return id_; } // Make this context the effective context for calls out of the VM. - bool setEffectiveContext(); + WasmResult setEffectiveContext(); virtual RootContext* asRoot() { return nullptr; } virtual Context* asContext() { return nullptr; } @@ -252,24 +264,24 @@ class ContextBase { // Metadata virtual bool isRootCachable(MetadataType type); // Cache in the root. virtual bool isProactivelyCachable(MetadataType type); // Cache all keys on any read. - MetadataResult nodeMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult nodeMetadataStruct(google::protobuf::Struct* struct_ptr); - MetadataResult namedMetadataValue(MetadataType type, StringView name, StringView key, google::protobuf::Value* value_ptr); + WasmResult nodeMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult nodeMetadataStruct(google::protobuf::Struct* struct_ptr); + WasmResult namedMetadataValue(MetadataType type, StringView name, StringView key, google::protobuf::Value* value_ptr); using HttpCallCallback = std::function header_pairs, std::unique_ptr body, std::unique_ptr trailer_pairs)>; using GrpcSimpleCallCallback = std::function message)>; protected: - MetadataResult metadataValue(MetadataType type, StringView key, google::protobuf::Value* value_ptr); - MetadataResult metadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr); - MetadataResult metadataStruct(MetadataType type, google::protobuf::Struct* struct_ptr) { + WasmResult metadataValue(MetadataType type, StringView key, google::protobuf::Value* value_ptr); + WasmResult metadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr); + WasmResult metadataStruct(MetadataType type, google::protobuf::Struct* struct_ptr) { return metadataStruct(type, "", struct_ptr); } - std::unordered_map, google::protobuf::Value, PairHash> value_cache_; - std::unordered_map, google::protobuf::Value, Tuple3Hash> name_value_cache_; - std::unordered_map, google::protobuf::Struct, PairHash> struct_cache_; + std::unordered_map, google::protobuf::Value, PairHash> value_cache_; + std::unordered_map, google::protobuf::Value, Tuple3Hash> name_value_cache_; + std::unordered_map, google::protobuf::Struct, PairHash> struct_cache_; private: uint32_t id_; @@ -380,26 +392,26 @@ class Context : public ContextBase { // Metadata bool isImmutable(MetadataType type); // Caching Metadata calls. Note: "name" refers to the metadata namespace. - MetadataResult requestRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult responseRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult logMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult requestMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult responseMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult requestMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr); - MetadataResult responseMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr); - MetadataResult requestRouteMetadataStruct(google::protobuf::Struct* struct_ptr); - MetadataResult responseRouteMetadataStruct(google::protobuf::Struct* struct_ptr); - MetadataResult logMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); - MetadataResult requestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); - MetadataResult responseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); - MetadataResult logMetadataStruct(google::protobuf::Struct* struct_ptr) { return logMetadataStruct("", struct_ptr); } - MetadataResult requestMetadataStruct(google::protobuf::Struct* struct_ptr) { return requestMetadataStruct("", struct_ptr); } - MetadataResult responseMetadataStruct(google::protobuf::Struct* struct_ptr) { return responseMetadataStruct("", struct_ptr); } + WasmResult requestRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult responseRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult logMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult requestMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult responseMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult requestMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr); + WasmResult responseMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr); + WasmResult requestRouteMetadataStruct(google::protobuf::Struct* struct_ptr); + WasmResult responseRouteMetadataStruct(google::protobuf::Struct* struct_ptr); + WasmResult logMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); + WasmResult requestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); + WasmResult responseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); + WasmResult logMetadataStruct(google::protobuf::Struct* struct_ptr) { return logMetadataStruct("", struct_ptr); } + WasmResult requestMetadataStruct(google::protobuf::Struct* struct_ptr) { return requestMetadataStruct("", struct_ptr); } + WasmResult responseMetadataStruct(google::protobuf::Struct* struct_ptr) { return responseMetadataStruct("", struct_ptr); } // Uncached Metadata calls. - MetadataResult getRequestMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult getResponseMetadataValue(StringView key, google::protobuf::Value* value_ptr); - MetadataResult getRequestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); - MetadataResult getResponseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); + WasmResult getRequestMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult getResponseMetadataValue(StringView key, google::protobuf::Value* value_ptr); + WasmResult getRequestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); + WasmResult getResponseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr); private: RootContext* root_{}; @@ -459,242 +471,282 @@ inline bool ContextBase::isProactivelyCachable(MetadataType type) { #define PROXY_EXPRESSION_GET_STRING(_expression, _string_ptr) do { \ const char* _value_ptr = nullptr; \ size_t _value_size = 0; \ - auto _result = static_cast(proxy_getMetadata(MetadataType::Expression, _expression, sizeof(_expression)-1, &_value_ptr, &_value_size)); \ - if (_result != MetadataResult::Ok) { \ + auto _result = static_cast(proxy_getMetadata(MetadataType::Expression, _expression, sizeof(_expression)-1, &_value_ptr, &_value_size)); \ + if (_result != WasmResult::Ok) { \ _string_ptr->clear(); \ return _result; \ } \ _string_ptr->assign(_value_ptr, _value_size); \ - return MetadataResult::Ok; \ + return WasmResult::Ok; \ } while(0) -#define PROXY_EXPRESSION_GET_UINT32(_expression, _uint32_ptr) do { \ +#define PROXY_EXPRESSION_GET(_expression, _data_ptr) do { \ const char* _value_ptr = nullptr; \ size_t _value_size = 0; \ - auto _result = static_cast(proxy_getMetadata(MetadataType::Expression, _expression, sizeof(_expression)-1, &_value_ptr, &_value_size)); \ - if (_result != MetadataResult::Ok) { \ - *_uint32_ptr = 0; \ + auto _result = static_cast(proxy_getMetadata(MetadataType::Expression, _expression, sizeof(_expression)-1, &_value_ptr, &_value_size)); \ + if (_result != WasmResult::Ok) { \ return _result; \ } \ - *_uint32_ptr = *reinterpret_cast(_value_ptr); \ - return MetadataResult::Ok; \ + if (_value_size != sizeof(*_data_ptr)) { \ + return WasmResult::ResultMismatch; \ + } \ + memcpy(_data_ptr, _value_ptr, sizeof(*_data_ptr)); \ + return WasmResult::Ok; \ } while(0) -inline MetadataResult getRequestProtocol(std::string *protocol_ptr) { +inline WasmResult getRequestProtocol(std::string *protocol_ptr) { PROXY_EXPRESSION_GET_STRING("request.protocol", protocol_ptr); } -inline MetadataResult getResponseProtocol(std::string *protocol_ptr) { +inline WasmResult getResponseProtocol(std::string *protocol_ptr) { PROXY_EXPRESSION_GET_STRING("response.protocol", protocol_ptr); } -inline MetadataResult getRequestDestinationPort(uint32_t* port) { - PROXY_EXPRESSION_GET_UINT32("request.destination_port", port); +inline WasmResult getRequestDestinationPort(uint32_t* port) { + PROXY_EXPRESSION_GET("request.destination_port", port); } -inline MetadataResult getResponseDestinationPort(uint32_t* port) { - PROXY_EXPRESSION_GET_UINT32("response.destination_port", port); +inline WasmResult getResponseDestinationPort(uint32_t* port) { + PROXY_EXPRESSION_GET("response.destination_port", port); } -inline MetadataResult getRequestResponseCode(uint32_t* response_code) { - PROXY_EXPRESSION_GET_UINT32("request.response_code", response_code); +inline WasmResult getRequestResponseCode(uint32_t* response_code) { + PROXY_EXPRESSION_GET("request.response_code", response_code); } -inline MetadataResult getResponseResponseCode(uint32_t* response_code) { - PROXY_EXPRESSION_GET_UINT32("response.response_code", response_code); +inline WasmResult getResponseResponseCode(uint32_t* response_code) { + PROXY_EXPRESSION_GET("response.response_code", response_code); } -inline MetadataResult getRequestTlsVersion(std::string *tls_version_ptr) { +inline WasmResult getRequestTlsVersion(std::string *tls_version_ptr) { PROXY_EXPRESSION_GET_STRING("request.tls_version", tls_version_ptr); } -inline MetadataResult getResponseTlsVersion(std::string *tls_version_ptr) { +inline WasmResult getResponseTlsVersion(std::string *tls_version_ptr) { PROXY_EXPRESSION_GET_STRING("response.tls_version", tls_version_ptr); } +inline WasmResult getRequestPeerCertificatePresented(bool *peer_certificate_presented) { + PROXY_EXPRESSION_GET("request.peer_certificate_presented", peer_certificate_presented); +} + +inline WasmResult getResponsePeerCertificatePresented(bool *peer_certificate_presented) { + PROXY_EXPRESSION_GET("response.peer_certificate_presented", peer_certificate_presented); +} + +inline WasmResult getPluginDirection(PluginDirection *direction_ptr) { + PROXY_EXPRESSION_GET("plugin.direction", reinterpret_cast(direction_ptr)); +} + +// Generic selector +inline Optional getSelectorExpression(std::initializer_list parts) { + size_t size = 0; + for (auto part: parts) { + size += part.size() + 1; // null terminated string value + } + + char* buffer = static_cast(::malloc(size)); + char* b = buffer; + + for (auto part : parts) { + memcpy(b, part.data(), part.size()); + b += part.size(); + *b++ = 0; + } + + const char* value_ptr = nullptr; + size_t value_size = 0; + auto result = proxy_getSelectorExpression(buffer, size, &value_ptr, &value_size); + ::free(buffer); + if (result != WasmResult::Ok) { + return {}; + } + return std::make_unique(value_ptr, value_size); +} + // Metadata -inline MetadataResult getMetadata(MetadataType type, StringView key, WasmDataPtr *wasm_data) { +inline WasmResult getMetadata(MetadataType type, StringView key, WasmDataPtr *wasm_data) { const char* value_ptr = nullptr; size_t value_size = 0; - auto result = static_cast(proxy_getMetadata(type, key.data(), key.size(), &value_ptr, &value_size)); - if (result != MetadataResult::Ok) { + auto result = static_cast(proxy_getMetadata(type, key.data(), key.size(), &value_ptr, &value_size)); + if (result != WasmResult::Ok) { wasm_data->reset(); return result; } *wasm_data = std::make_unique(value_ptr, value_size); - return MetadataResult::Ok; + return WasmResult::Ok; } -inline MetadataResult getMetadataValue(MetadataType type, StringView key, google::protobuf::Value* result_ptr) { +inline WasmResult getMetadataValue(MetadataType type, StringView key, google::protobuf::Value* result_ptr) { const char* value_ptr = nullptr; size_t value_size = 0; - MetadataResult result = static_cast(proxy_getMetadata(type, key.data(), key.size(), &value_ptr, &value_size)); - if (result != MetadataResult::Ok) { + WasmResult result = static_cast(proxy_getMetadata(type, key.data(), key.size(), &value_ptr, &value_size)); + if (result != WasmResult::Ok) { result_ptr->Clear(); return result; } if (!value_size) { result_ptr->Clear(); - return MetadataResult::Ok; + return WasmResult::Ok; } if (!result_ptr->ParseFromArray(value_ptr, value_size)) { result_ptr->Clear(); - return MetadataResult::ParseFailure; + return WasmResult::ParseFailure; } - return MetadataResult::Ok; + return WasmResult::Ok; } -inline MetadataResult getMetadataStringValue(MetadataType type, StringView key, std::string* string_ptr) { +inline WasmResult getMetadataStringValue(MetadataType type, StringView key, std::string* string_ptr) { google::protobuf::Value value; auto result = getMetadataValue(type, key, &value); *string_ptr = value.string_value(); return result; } -inline MetadataResult setMetadata(MetadataType type, StringView key, StringView value) { - return static_cast(proxy_setMetadata(type, key.data(), key.size(), value.data(), value.size())); +inline WasmResult setMetadata(MetadataType type, StringView key, StringView value) { + return static_cast(proxy_setMetadata(type, key.data(), key.size(), value.data(), value.size())); } -inline MetadataResult setMetadataValue(MetadataType type, StringView key, +inline WasmResult setMetadataValue(MetadataType type, StringView key, const google::protobuf::Value& value) { std::string output; if (!value.SerializeToString(&output)) { - return MetadataResult::SerializationFailure; + return WasmResult::SerializationFailure; } - return static_cast(proxy_setMetadata(type, key.data(), key.size(), output.data(), output.size())); + return static_cast(proxy_setMetadata(type, key.data(), key.size(), output.data(), output.size())); } -inline MetadataResult setMetadataStringValue(MetadataType type, StringView key, StringView s) { +inline WasmResult setMetadataStringValue(MetadataType type, StringView key, StringView s) { google::protobuf::Value value; value.set_string_value(s.data(), s.size()); return setMetadataValue(type, key, value); } -inline MetadataResult getMetadataValuePairs(MetadataType type, WasmDataPtr* pairs_ptr) { +inline WasmResult getMetadataValuePairs(MetadataType type, WasmDataPtr* pairs_ptr) { const char* value_ptr = nullptr; size_t value_size = 0; - auto result = static_cast(proxy_getMetadataPairs(type, &value_ptr, &value_size)); - if (result != MetadataResult::Ok) { + auto result = static_cast(proxy_getMetadataPairs(type, &value_ptr, &value_size)); + if (result != WasmResult::Ok) { pairs_ptr->reset(); return result; } *pairs_ptr = std::make_unique(value_ptr, value_size); - return MetadataResult::Ok; + return WasmResult::Ok; } -inline MetadataResult getMetadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult getMetadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr) { const char* value_ptr = nullptr; size_t value_size = 0; - auto result = static_cast(proxy_getMetadataStruct(type, name.data(), name.size(), &value_ptr, &value_size)); - if (result != MetadataResult::Ok || !value_size) { + auto result = proxy_getMetadataStruct(type, name.data(), name.size(), &value_ptr, &value_size); + if (result != WasmResult::Ok || !value_size) { struct_ptr->Clear(); return result; } google::protobuf::Struct s; if (!s.ParseFromArray(value_ptr, value_size)) { - return MetadataResult::ParseFailure; + return WasmResult::ParseFailure; } *struct_ptr = s; - return MetadataResult::Ok; + return WasmResult::Ok; } -inline MetadataResult setMetadataStruct(MetadataType type, StringView name, +inline WasmResult setMetadataStruct(MetadataType type, StringView name, const google::protobuf::Struct& s) { std::string output; if (!s.SerializeToString(&output)) { - return MetadataResult::SerializationFailure; + return WasmResult::SerializationFailure; } - return static_cast(proxy_setMetadataStruct(type, name.data(), name.size(), output.data(), output.size())); + return static_cast(proxy_setMetadataStruct(type, name.data(), name.size(), output.data(), output.size())); } -inline MetadataResult ContextBase::metadataValue(MetadataType type, StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult ContextBase::metadataValue(MetadataType type, StringView key, google::protobuf::Value* value_ptr) { if (isRootCachable(type)) { if (auto context = asContext()) { return context->root()->metadataValue(type, key, value_ptr); } } - auto cache_key = std::make_pair(static_cast(type), std::string(key)); + auto cache_key = std::make_pair(static_cast(type), std::string(key)); auto it = value_cache_.find(cache_key); if (it != value_cache_.end()) { *value_ptr = it->second; - return MetadataResult::Ok; + return WasmResult::Ok; } if (isProactivelyCachable(type)) { WasmDataPtr values; auto result = getMetadataValuePairs(type, &values); - if (result != MetadataResult::Ok) { + if (result != WasmResult::Ok) { return result; } for (auto &p : values->pairs()) { google::protobuf::Value value; if (value.ParseFromArray(p.second.data(), p.second.size())) { - auto k = std::make_pair(static_cast(type), std::string(p.first)); + auto k = std::make_pair(static_cast(type), std::string(p.first)); value_cache_[k] = value; } } auto it = value_cache_.find(cache_key); if (it != value_cache_.end()) { *value_ptr = it->second; - return MetadataResult::Ok; + return WasmResult::Ok; } - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } else { auto result = getMetadataValue(type, key, value_ptr); - if (result != MetadataResult::Ok) { + if (result != WasmResult::Ok) { value_ptr->Clear(); return result; } value_cache_[cache_key] = *value_ptr; - return MetadataResult::Ok; + return WasmResult::Ok; } } -inline MetadataResult Context::requestRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::requestRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::RequestRoute, key, value_ptr); } -inline MetadataResult Context::responseRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::responseRouteMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::ResponseRoute, key, value_ptr); } -inline MetadataResult Context::logMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::logMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::Log, key, value_ptr); } -inline MetadataResult Context::requestMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::requestMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::Request, key, value_ptr); } -inline MetadataResult Context::responseMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::responseMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::Response, key, value_ptr); } -inline MetadataResult ContextBase::nodeMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult ContextBase::nodeMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return metadataValue(MetadataType::Node, key, value_ptr); } -inline MetadataResult ContextBase::metadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult ContextBase::metadataStruct(MetadataType type, StringView name, google::protobuf::Struct* struct_ptr) { if (isRootCachable(type)) { if (auto context = asContext()) { return context->root()->metadataStruct(type, name, struct_ptr); } } - auto cache_key = std::make_pair(static_cast(type), std::string(name)); + auto cache_key = std::make_pair(static_cast(type), std::string(name)); auto it = struct_cache_.find(cache_key); if (it != struct_cache_.end()) { *struct_ptr = it->second; - return MetadataResult::Ok; + return WasmResult::Ok; } - auto result = getMetadataStruct(MetadataType::Request, name, struct_ptr); - if (result != MetadataResult::Ok) { + auto result = getMetadataStruct(type, name, struct_ptr); + if (result != WasmResult::Ok) { struct_ptr->Clear(); return result; } struct_cache_[cache_key] = *struct_ptr; - return MetadataResult::Ok; + return WasmResult::Ok; } -inline MetadataResult ContextBase::namedMetadataValue( +inline WasmResult ContextBase::namedMetadataValue( MetadataType type, StringView name, StringView key, google::protobuf::Value* value_ptr) { if (isRootCachable(type)) { if (auto context = asContext()) { @@ -702,132 +754,145 @@ inline MetadataResult ContextBase::namedMetadataValue( } } auto n = std::string(name); - auto cache_key = std::make_tuple(static_cast(type), n, std::string(key)); + auto cache_key = std::make_tuple(static_cast(type), n, std::string(key)); auto it = name_value_cache_.find(cache_key); if (it != name_value_cache_.end()) { *value_ptr = it->second; - return MetadataResult::Ok; + return WasmResult::Ok; } google::protobuf::Struct s; auto result = metadataStruct(type, name, &s); - if (result != MetadataResult::Ok) { + if (result != WasmResult::Ok) { value_ptr->Clear(); return result; } for (auto &f : s.fields()) { - auto k = std::make_tuple(static_cast(type), n, f.first); + auto k = std::make_tuple(static_cast(type), n, f.first); name_value_cache_[k] = f.second; } - struct_cache_[std::make_pair(static_cast(type), n)] = std::move(s); + struct_cache_[std::make_pair(static_cast(type), n)] = std::move(s); it = name_value_cache_.find(cache_key); if (it != name_value_cache_.end()) { *value_ptr = it->second; - return MetadataResult::Ok; + return WasmResult::Ok; } - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } -inline MetadataResult Context::requestMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::requestMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr) { return namedMetadataValue(MetadataType::Request, name, key, value_ptr); } -inline MetadataResult Context::responseMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::responseMetadataValue(StringView name, StringView key, google::protobuf::Value* value_ptr) { return namedMetadataValue(MetadataType::Response, name, key, value_ptr); } -inline MetadataResult Context::requestRouteMetadataStruct(google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::requestRouteMetadataStruct(google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::RequestRoute, struct_ptr); } -inline MetadataResult Context::responseRouteMetadataStruct(google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::responseRouteMetadataStruct(google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::ResponseRoute, struct_ptr); } -inline MetadataResult ContextBase::nodeMetadataStruct(google::protobuf::Struct* struct_ptr) { +inline WasmResult ContextBase::nodeMetadataStruct(google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::Node, struct_ptr); } -inline MetadataResult Context::logMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::logMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::Log, name, struct_ptr); } -inline MetadataResult Context::requestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::requestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::Request, name, struct_ptr); } -inline MetadataResult Context::responseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::responseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { return metadataStruct(MetadataType::Response, name, struct_ptr); } -inline MetadataResult Context::getRequestMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::getRequestMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return getMetadataValue(MetadataType::Request, key, value_ptr); } -inline MetadataResult Context::getResponseMetadataValue(StringView key, google::protobuf::Value* value_ptr) { +inline WasmResult Context::getResponseMetadataValue(StringView key, google::protobuf::Value* value_ptr) { return getMetadataValue(MetadataType::Response, key, value_ptr); } -inline MetadataResult Context::getRequestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::getRequestMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { return getMetadataStruct(MetadataType::Request, name, struct_ptr); } -inline MetadataResult Context::getResponseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { +inline WasmResult Context::getResponseMetadataStruct(StringView name, google::protobuf::Struct* struct_ptr) { return getMetadataStruct(MetadataType::Response, name, struct_ptr); } // Continue/Respond/Route -inline void continueRequest() { proxy_continueRequest(); } -inline void continueResponse() { proxy_continueResponse(); } -inline void sendLocalResponse(uint32_t response_code, StringView response_code_details, StringView body, +inline WasmResult continueRequest() { return proxy_continueRequest(); } +inline WasmResult continueResponse() { return proxy_continueResponse(); } +inline WasmResult sendLocalResponse(uint32_t response_code, StringView response_code_details, StringView body, const HeaderStringPairs& additional_response_headers, GrpcStatus grpc_status = GrpcStatus::InvalidCode) { const char* ptr = nullptr; size_t size = 0; exportPairs(additional_response_headers, &ptr, &size); - proxy_sendLocalResponse(response_code, response_code_details.data(), response_code_details.size(), + return proxy_sendLocalResponse(response_code, response_code_details.data(), response_code_details.size(), body.data(), body.size(), ptr, size, static_cast(grpc_status)); } inline void clearRouteCache() { proxy_clearRouteCache(); } // SharedData -inline WasmDataPtr getSharedData(StringView key, uint32_t* cas = nullptr) { +inline WasmResult getSharedData(StringView key, WasmDataPtr* value, uint32_t* cas = nullptr) { uint32_t dummy_cas; const char* value_ptr = nullptr; size_t value_size = 0; if (!cas) cas = &dummy_cas; - proxy_getSharedData(key.data(), key.size(), &value_ptr, &value_size, cas); - return std::make_unique(value_ptr, value_size); + auto result = proxy_getSharedData(key.data(), key.size(), &value_ptr, &value_size, cas); + if (result != WasmResult::Ok) { + return result; + } + *value = std::make_unique(value_ptr, value_size); + return WasmResult::Ok; } -inline bool setSharedData(StringView key, StringView value, uint32_t cas = 0) { +inline WasmResult setSharedData(StringView key, StringView value, uint32_t cas = 0) { return proxy_setSharedData(key.data(), key.size(), value.data(), value.size(), cas); } +inline WasmDataPtr getSharedDataValue(StringView key, uint32_t* cas = nullptr) { + WasmDataPtr data; + auto result = getSharedData(key, &data, cas); + if (result != WasmResult::Ok) { + logAbort("getSharedData returned WasmError: " + toString(result)); + } + return data; +} + // SharedQueue -inline uint32_t registerSharedQueue(StringView queue_name) { - return proxy_registerSharedQueue(queue_name.data(), queue_name.size()); +inline WasmResult registerSharedQueue(StringView queue_name, uint32_t* token) { + return proxy_registerSharedQueue(queue_name.data(), queue_name.size(), token); } -inline uint32_t resolveSharedQueue(StringView vm_id, StringView queue_name) { - return proxy_resolveSharedQueue(vm_id.data(), vm_id.size(), queue_name.data(), queue_name.size()); +inline WasmResult resolveSharedQueue(StringView vm_id, StringView queue_name, uint32_t* token) { + return proxy_resolveSharedQueue(vm_id.data(), vm_id.size(), queue_name.data(), queue_name.size(), token); } -inline bool enqueueSharedQueue(uint32_t token, StringView data) { +inline WasmResult enqueueSharedQueue(uint32_t token, StringView data) { return proxy_enqueueSharedQueue(token, data.data(), data.size()); } -inline bool dequeueSharedQueue(uint32_t token, WasmDataPtr* data) { +inline WasmResult dequeueSharedQueue(uint32_t token, WasmDataPtr* data) { const char* data_ptr = nullptr; size_t data_size = 0; - auto eos = proxy_dequeueSharedQueue(token, &data_ptr, &data_size); + auto result = proxy_dequeueSharedQueue(token, &data_ptr, &data_size); *data = std::make_unique(data_ptr, data_size); - return eos; + return result; } // Headers/Trailers -inline void addHeaderMapValue(HeaderMapType type, StringView key, StringView value) { - proxy_addHeaderMapValue(type, key.data(), key.size(), value.data(), value.size()); +inline WasmResult addHeaderMapValue(HeaderMapType type, StringView key, StringView value) { + return proxy_addHeaderMapValue(type, key.data(), key.size(), value.data(), value.size()); } inline WasmDataPtr getHeaderMapValue(HeaderMapType type, StringView key) { @@ -859,8 +924,8 @@ inline void setHeaderMapPairs(HeaderMapType type, const HeaderStringPairs &pairs proxy_setHeaderMapPairs(type, ptr, size); } -inline uint32_t getHeaderMapSize(HeaderMapType type) { - return proxy_getHeaderMapSize(type); +inline WasmResult getHeaderMapSize(HeaderMapType type, size_t* size) { + return proxy_getHeaderMapSize(type, size); } inline void addRequestHeader(StringView key, StringView value) { @@ -881,8 +946,8 @@ inline WasmDataPtr getRequestHeaderPairs() { inline void setRequestHeaderPairs(const HeaderStringPairs &pairs) { return setHeaderMapPairs(HeaderMapType::RequestHeaders, pairs); } -inline size_t getRequestHeaderSize() { - return getHeaderMapSize(HeaderMapType::RequestHeaders); +inline WasmResult getRequestHeaderSize(size_t* size) { + return getHeaderMapSize(HeaderMapType::RequestHeaders, size); } inline void addRequestTrailer(StringView key, StringView value) { @@ -903,8 +968,8 @@ inline WasmDataPtr getRequestTrailerPairs() { inline void setRequestTrailerPairs(const HeaderStringPairs &pairs) { return setHeaderMapPairs(HeaderMapType::RequestTrailers, pairs); } -inline size_t getRequestTrailerSize() { - return getHeaderMapSize(HeaderMapType::RequestTrailers); +inline WasmResult getRequestTrailerSize(size_t* size) { + return getHeaderMapSize(HeaderMapType::RequestTrailers, size); } inline void addResponseHeader(StringView key, StringView value) { @@ -925,8 +990,8 @@ inline WasmDataPtr getResponseHeaderPairs() { inline void setResponseHeaderPairs(const HeaderStringPairs &pairs) { return setHeaderMapPairs(HeaderMapType::ResponseHeaders, pairs); } -inline size_t getResponseHeaderSize() { - return getHeaderMapSize(HeaderMapType::ResponseHeaders); +inline WasmResult getResponseHeaderSize(size_t* size) { + return getHeaderMapSize(HeaderMapType::ResponseHeaders, size); } inline void addResponseTrailer(StringView key, StringView value) { @@ -947,8 +1012,8 @@ inline WasmDataPtr getResponseTrailerPairs() { inline void setResponseTrailerPairs(const HeaderStringPairs &pairs) { return setHeaderMapPairs(HeaderMapType::ResponseTrailers, pairs); } -inline size_t getResponseTrailerSize() { - return getHeaderMapSize(HeaderMapType::ResponseTrailers); +inline WasmResult getResponseTrailerSize(size_t* size) { + return getHeaderMapSize(HeaderMapType::ResponseTrailers, size); } // Body @@ -1020,19 +1085,19 @@ inline uint32_t makeHttpCall(StringView uri, const HeaderStringPairs& request_he // Low level metrics interface. -inline uint32_t defineMetric(MetricType type, StringView name) { - return proxy_defineMetric(type, name.data(), name.size()); +inline WasmResult defineMetric(MetricType type, StringView name, uint32_t* metric_id) { + return proxy_defineMetric(type, name.data(), name.size(), metric_id); } -inline void incrementMetric(uint32_t metric_id, int64_t offset) { - proxy_incrementMetric(metric_id, offset); +inline WasmResult incrementMetric(uint32_t metric_id, int64_t offset) { + return proxy_incrementMetric(metric_id, offset); } -inline void recordMetric(uint32_t metric_id, uint64_t value) { - proxy_recordMetric(metric_id, value); +inline WasmResult recordMetric(uint32_t metric_id, uint64_t value) { + return proxy_recordMetric(metric_id, value); } -inline uint64_t getMetric(uint32_t metric_id) { return proxy_getMetric(metric_id); } +inline WasmResult getMetric(uint32_t metric_id, uint64_t* value) { return proxy_getMetric(metric_id, value); } // Higher level metrics interface. @@ -1106,8 +1171,7 @@ inline uint32_t MetricBase::resolveWithFields(const std::vector& fi #if WASM_EXCEPTIONS throw ProxyException("metric fields.size() != tags.size()"); #else - logError("metric fields.size() != tags.size()"); - abort(); + logAbort("metric fields.size() != tags.size()"); #endif } return resolveFullName(prefixWithFields(fields) + name); @@ -1118,8 +1182,7 @@ inline void MetricBase::partiallyResolveWithFields(const std::vector= tags.size()"); #else - logError("metric fields.size() >= tags.size()"); - abort(); + logAbort("metric fields.size() >= tags.size()"); #endif } prefix = prefixWithFields(fields); @@ -1147,7 +1210,8 @@ template <> struct StringToStringView { inline uint32_t MetricBase::resolveFullName(const std::string& n) { auto it = metric_ids.find(n); if (it == metric_ids.end()) { - auto metric_id = defineMetric(type, n); + uint32_t metric_id; + CHECK_RESULT(defineMetric(type, n, &metric_id)); metric_ids[n] = metric_id; return metric_id; } @@ -1188,7 +1252,9 @@ template inline void Metric::record(uint64_t value, Fields. template inline uint64_t Metric::get(Fields... f) { std::vector fields{toString(f)...}; auto metric_id = resolveWithFields(fields); - return getMetric(metric_id); + uint64_t value; + CHECK_RESULT(getMetric(metric_id, &value)); + return value; } template struct MetricTagDescriptor { @@ -1225,7 +1291,11 @@ struct SimpleCounter { void increment(int64_t offset) { recordMetric(metric_id, offset); } void record(int64_t offset) { increment(offset); } - uint64_t get() { return getMetric(metric_id); } + uint64_t get() { + uint64_t value; + CHECK_RESULT(getMetric(metric_id, &value)); + return value; + } void operator++() { increment(1); } void operator++(int) { increment(1); } @@ -1236,7 +1306,11 @@ struct SimpleGauge { SimpleGauge(uint32_t id) : metric_id(id) {} void record(uint64_t offset) { recordMetric(metric_id, offset); } - uint64_t get() { return getMetric(metric_id); } + uint64_t get() { + uint64_t value; + CHECK_RESULT(getMetric(metric_id, &value)); + return value; + } uint32_t metric_id; }; @@ -1279,7 +1353,9 @@ template struct Counter : public MetricBase { uint64_t get(Tags... tags) { std::vector fields{toString(tags)...}; auto metric_id = resolveWithFields(fields); - return getMetric(metric_id); + uint64_t value; + CHECK_RESULT(getMetric(metric_id, &value)); + return value; } private: @@ -1322,7 +1398,9 @@ template struct Gauge : public MetricBase { uint64_t get(Tags... tags) { std::vector fields{toString(tags)...}; auto metric_id = resolveWithFields(fields); - return getMetric(metric_id); + uint64_t value; + CHECK_RESULT(getMetric(metric_id, &value)); + return value; } private: @@ -1387,15 +1465,15 @@ inline uint32_t grpcStream(StringView service, StringView service_name, StringVi return proxy_grpcStream(service.data(), service.size(), service_name.data(), service_name.size(), method_name.data(), method_name.size()); } -inline void grpcCancel(uint32_t token) { +inline WasmResult grpcCancel(uint32_t token) { return proxy_grpcCancel(token); } -inline void grpcClose(uint32_t token) { +inline WasmResult grpcClose(uint32_t token) { return proxy_grpcClose(token); } -inline void grpcSend(uint32_t token, StringView message, bool end_stream) { +inline WasmResult grpcSend(uint32_t token, StringView message, bool end_stream) { return proxy_grpcSend(token, message.data(), message.size(), end_stream ? 1 : 0); } @@ -1588,7 +1666,12 @@ inline bool RootContext::grpcStreamHandler(StringView service, StringView servic return false; } -inline bool ContextBase::setEffectiveContext() { - return proxy_setEffectiveContext(id_) == 0; +inline WasmResult ContextBase::setEffectiveContext() { + return proxy_setEffectiveContext(id_); } +inline uint64_t getCurrentTimeNanoseconds() { + uint64_t t; + CHECK_RESULT(proxy_getCurrentTimeNanoseconds(&t)); + return t; +} diff --git a/api/wasm/cpp/proxy_wasm_enums.h b/api/wasm/cpp/proxy_wasm_enums.h index 5fc48aaf3c1e1..a5ae3eabe1a6a 100644 --- a/api/wasm/cpp/proxy_wasm_enums.h +++ b/api/wasm/cpp/proxy_wasm_enums.h @@ -5,49 +5,17 @@ #pragma once -enum class LogLevel : EnumType { trace, debug, info, warn, error, critical }; -enum class FilterHeadersStatus : EnumType { Continue = 0, StopIteration = 1 }; -enum class FilterMetadataStatus : EnumType { Continue = 0 }; -enum class FilterTrailersStatus : EnumType { Continue = 0, StopIteration = 1 }; -enum class FilterDataStatus : EnumType { +enum class LogLevel : int32_t { trace, debug, info, warn, error, critical }; +enum class FilterHeadersStatus : int32_t { Continue = 0, StopIteration = 1 }; +enum class FilterMetadataStatus : int32_t { Continue = 0 }; +enum class FilterTrailersStatus : int32_t { Continue = 0, StopIteration = 1 }; +enum class FilterDataStatus : int32_t { Continue = 0, StopIterationAndBuffer = 1, StopIterationAndWatermark = 2, StopIterationNoBuffer = 3 }; -enum class MetadataType : EnumType { - Request = 0, - Response = 1, - RequestRoute = 2, // Immutable - ResponseRoute = 3, // Immutable - Log = 4, // Immutable - Node = 5, // Immutable - Listener = 6, // Immutable - Cluster = 7, // Immutable - Expression = 8, // The key is a string expression. Only proxy_getMetadata(). -}; -/* - Expression and their types: - - request.protocol : string - response.protocol : string - request.destination_port : int32 - response.destination_port : int32 - request.response_code : int32 - response.response_code : int32 - upstream.tls_version : string - downstream.tsl_version : string - */ -enum class HeaderMapType : EnumType { - RequestHeaders = 0, // During the onLog callback these are immutable - RequestTrailers = 1, // During the onLog callback these are immutable - ResponseHeaders = 2, // During the onLog callback these are immutable - ResponseTrailers = 3, // During the onLog callback these are immutable - GrpcCreateInitialMetadata = 4, - GrpcReceiveInitialMetadata = 5, // Immutable - GrpcReceiveTrailingMetadata = 6, // Immutable -}; -enum class GrpcStatus : EnumType { +enum class GrpcStatus : int32_t { Ok = 0, Canceled = 1, Unknown = 2, @@ -68,16 +36,8 @@ enum class GrpcStatus : EnumType { MaximumValid = Unauthenticated, InvalidCode = -1 }; -enum class MetricType : EnumType { +enum class MetricType : int32_t { Counter = 0, Gauge = 1, Histogram = 2, }; -enum class MetadataResult : EnumType { - Ok = 0, - StructNotFound = 1, - FieldNotFound = 2, - SerializationFailure = 3, - BadType = 4, - ParseFailure = 5, -}; diff --git a/api/wasm/cpp/proxy_wasm_externs.h b/api/wasm/cpp/proxy_wasm_externs.h index cf6039d85c98b..ddce13d4c5a1a 100644 --- a/api/wasm/cpp/proxy_wasm_externs.h +++ b/api/wasm/cpp/proxy_wasm_externs.h @@ -52,67 +52,75 @@ // // Logging -extern "C" void proxy_log(LogLevel level, const char* logMessage, size_t messageSize); +extern "C" WasmResult proxy_log(LogLevel level, const char* logMessage, size_t messageSize); // Timer (must be called from a root context, e.g. onStart, onTick). -extern "C" void proxy_setTickPeriodMilliseconds(uint32_t millisecond); +extern "C" WasmResult proxy_setTickPeriodMilliseconds(uint32_t millisecond); // Time -extern "C" uint64_t proxy_getCurrentTimeNanoseconds(); +extern "C" WasmResult proxy_getCurrentTimeNanoseconds(uint64_t* nanoseconds); // Metadata -extern "C" uint32_t proxy_getMetadata(MetadataType type, const char* key_ptr, size_t key_size, +extern "C" WasmResult proxy_getMetadata(MetadataType type, const char* key_ptr, size_t key_size, const char** value_ptr_ptr, size_t* value_size_ptr); -extern "C" uint32_t proxy_setMetadata(MetadataType type, const char* key_ptr, size_t key_size, +extern "C" WasmResult proxy_setMetadata(MetadataType type, const char* key_ptr, size_t key_size, const char* value_ptr, size_t value_size); -extern "C" uint32_t proxy_getMetadataPairs(MetadataType type, const char** value_ptr, +extern "C" WasmResult proxy_getMetadataPairs(MetadataType type, const char** value_ptr, size_t* value_size); -extern "C" uint32_t proxy_getMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, +extern "C" WasmResult proxy_getMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, const char** value_ptr_ptr, size_t* value_size_ptr); -extern "C" uint32_t proxy_setMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, +extern "C" WasmResult proxy_setMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, const char* value_ptr, size_t value_size); +// Generic selector +extern "C" WasmResult proxy_getSelectorExpression(const char* path_ptr, size_t path_size, + const char** value_ptr_ptr, size_t* value_size_ptr); + // Continue/Reply/Route -extern "C" void proxy_continueRequest(); -extern "C" void proxy_continueResponse(); -extern "C" void proxy_sendLocalResponse(uint32_t response_code, +extern "C" WasmResult proxy_continueRequest(); +extern "C" WasmResult proxy_continueResponse(); +extern "C" WasmResult proxy_sendLocalResponse(uint32_t response_code, const char* response_code_details_ptr, size_t response_code_details_size, const char* body_ptr, size_t body_size, const char* additional_response_header_pairs_ptr, size_t additional_response_header_pairs_size, uint32_t grpc_status); -extern "C" void proxy_clearRouteCache(); +extern "C" WasmResult proxy_clearRouteCache(); // SharedData -extern "C" void proxy_getSharedData(const char* key_ptr, size_t key_size, const char** value_ptr, - size_t* value_size, uint32_t* cas); +// Returns: Ok, NotFound +extern "C" WasmResult proxy_getSharedData(const char* key_ptr, size_t key_size, const char** value_ptr, + size_t* value_size, uint32_t* cas); // If cas != 0 and cas != the current cas for 'key' return false, otherwise set the value and // return true. -extern "C" bool proxy_setSharedData(const char* key_ptr, size_t key_size, const char* value_ptr, - size_t value_size, uint32_t cas); +// Returns: Ok, CasMismatch +extern "C" WasmResult proxy_setSharedData(const char* key_ptr, size_t key_size, const char* value_ptr, + size_t value_size, uint32_t cas); // SharedQueue // Note: Registering the same queue_name will overwrite the old registration while preseving any pending data. // Consequently it should typically be followed by a call to proxy_dequeueSharedQueue. -extern "C" uint32_t proxy_registerSharedQueue(const char* queue_name_ptr, size_t queue_name_size); -extern "C" uint32_t proxy_resolveSharedQueue(const char* vm_id, size_t vm_id_size, const char* queue_name_ptr, size_t queue_name_size); -// Returns true on end-of-stream (no more data available). -extern "C" bool proxy_dequeueSharedQueue(uint32_t token, const char** data_ptr, size_t* data_size); +// Returns: Ok +extern "C" WasmResult proxy_registerSharedQueue(const char* queue_name_ptr, size_t queue_name_size, uint32_t* token); +// Returns: Ok, NotFound +extern "C" WasmResult proxy_resolveSharedQueue(const char* vm_id, size_t vm_id_size, const char* queue_name_ptr, size_t queue_name_size, uint32_t* token); +// Returns Ok, Empty, NotFound (token not registered). +extern "C" WasmResult proxy_dequeueSharedQueue(uint32_t token, const char** data_ptr, size_t* data_size); // Returns false if the queue was not found and the data was not enqueued. -extern "C" bool proxy_enqueueSharedQueue(uint32_t token, const char* data_ptr, size_t data_size); +extern "C" WasmResult proxy_enqueueSharedQueue(uint32_t token, const char* data_ptr, size_t data_size); // Headers/Trailers/Metadata Maps -extern "C" void proxy_addHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char* value_ptr, size_t value_size); -extern "C" void proxy_getHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char** value_ptr, size_t* value_size); -extern "C" void proxy_getHeaderMapPairs(HeaderMapType type, const char** ptr, size_t* size); -extern "C" void proxy_setHeaderMapPairs(HeaderMapType type, const char* ptr, size_t size); -extern "C" void proxy_replaceHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char* value_ptr, size_t value_size); -extern "C" void proxy_removeHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size); -extern "C" uint32_t proxy_getHeaderMapSize(HeaderMapType type); +extern "C" WasmResult proxy_addHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char* value_ptr, size_t value_size); +extern "C" WasmResult proxy_getHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char** value_ptr, size_t* value_size); +extern "C" WasmResult proxy_getHeaderMapPairs(HeaderMapType type, const char** ptr, size_t* size); +extern "C" WasmResult proxy_setHeaderMapPairs(HeaderMapType type, const char* ptr, size_t size); +extern "C" WasmResult proxy_replaceHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, const char* value_ptr, size_t value_size); +extern "C" WasmResult proxy_removeHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size); +extern "C" WasmResult proxy_getHeaderMapSize(HeaderMapType type, size_t* size); // Body -extern "C" void proxy_getRequestBodyBufferBytes(uint32_t start, uint32_t length, const char** ptr, +extern "C" WasmResult proxy_getRequestBodyBufferBytes(uint32_t start, uint32_t length, const char** ptr, size_t* size); -extern "C" void proxy_getResponseBodyBufferBytes(uint32_t start, uint32_t length, const char** ptr, +extern "C" WasmResult proxy_getResponseBodyBufferBytes(uint32_t start, uint32_t length, const char** ptr, size_t* size); // HTTP @@ -128,17 +136,15 @@ extern "C" uint32_t proxy_grpcCall(const char* service_ptr, size_t service_size, const char* request_ptr, size_t request_size, uint32_t timeout_milliseconds); extern "C" uint32_t proxy_grpcStream(const char* service_ptr, size_t service_size, const char* service_name_ptr, size_t service_name_size, const char* method_name_ptr, size_t method_name_size); -extern "C" void proxy_grpcCancel(uint32_t token); -extern "C" void proxy_grpcClose(uint32_t token); -extern "C" void proxy_grpcSend(uint32_t token, const char* message_ptr, size_t message_size, uint32_t end_stream); +extern "C" WasmResult proxy_grpcCancel(uint32_t token); +extern "C" WasmResult proxy_grpcClose(uint32_t token); +extern "C" WasmResult proxy_grpcSend(uint32_t token, const char* message_ptr, size_t message_size, uint32_t end_stream); // Metrics -// Returns a metric_id which can be used to report a metric. On error returns 0. -extern "C" uint32_t proxy_defineMetric(MetricType type, const char* name_ptr, size_t name_size); -extern "C" void proxy_incrementMetric(uint32_t metric_id, int64_t offset); -extern "C" void proxy_recordMetric(uint32_t metric_id, uint64_t value); -extern "C" uint64_t proxy_getMetric(uint32_t metric_id); +extern "C" WasmResult proxy_defineMetric(MetricType type, const char* name_ptr, size_t name_size, uint32_t* metric_id); +extern "C" WasmResult proxy_incrementMetric(uint32_t metric_id, int64_t offset); +extern "C" WasmResult proxy_recordMetric(uint32_t metric_id, uint64_t value); +extern "C" WasmResult proxy_getMetric(uint32_t metric_id, uint64_t* result); // System -// Returns 0 on success. -extern "C" uint32_t proxy_setEffectiveContext(uint32_t effective_context_id); +extern "C" WasmResult proxy_setEffectiveContext(uint32_t effective_context_id); diff --git a/api/wasm/cpp/proxy_wasm_intrinsics.h b/api/wasm/cpp/proxy_wasm_intrinsics.h index b3544c185822a..9717757cc640f 100644 --- a/api/wasm/cpp/proxy_wasm_intrinsics.h +++ b/api/wasm/cpp/proxy_wasm_intrinsics.h @@ -10,10 +10,14 @@ #endif #include -using EnumType = int32_t; #include using StringView = std::string_view; +#include +template using Optional = std::optional; +#include "proxy_wasm_enums.h" +#include "proxy_wasm_result.h" +#include "proxy_wasm_metadata.h" #include "proxy_wasm_enums.h" #include "proxy_wasm_externs.h" #ifndef EMSCRIPTEN_PROTOBUF_LITE @@ -21,4 +25,4 @@ using StringView = std::string_view; #else #include "proxy_wasm_intrinsics_lite.pb.h" #endif -#include "proxy_wasm_impl.h" +#include "proxy_wasm_api.h" diff --git a/api/wasm/cpp/proxy_wasm_metadata.h b/api/wasm/cpp/proxy_wasm_metadata.h new file mode 100644 index 0000000000000..31cf673e55433 --- /dev/null +++ b/api/wasm/cpp/proxy_wasm_metadata.h @@ -0,0 +1,52 @@ +/* + * Intrinsic enumerations available to WASM modules. + */ +// NOLINT(namespace-envoy) + +#pragma once + +enum class MetadataType : int32_t { + Request = 0, + Response = 1, + RequestRoute = 2, // Immutable + ResponseRoute = 3, // Immutable + Log = 4, // Immutable + Node = 5, // Immutable + Listener = 6, // Immutable + Cluster = 7, // Immutable + Expression = 8, // The key is a string expression. Only proxy_getMetadata(). + MAX = 8, +}; +/* + Expression and their types: + + request.protocol : string + response.protocol : string + request.destination_port : int32 + response.destination_port : int32 + request.response_code : int32 + response.response_code : int32 + upstream.tls_version : string + request.tls_version : string + response.tls_version : string + request.peer_certificate_presented : bool + response.peer_certificate_presented : bool + plugin.direction : int32 (enum PluginDirection) + */ + +enum class HeaderMapType : int32_t { + RequestHeaders = 0, // During the onLog callback these are immutable + RequestTrailers = 1, // During the onLog callback these are immutable + ResponseHeaders = 2, // During the onLog callback these are immutable + ResponseTrailers = 3, // During the onLog callback these are immutable + GrpcCreateInitialMetadata = 4, + GrpcReceiveInitialMetadata = 5, // Immutable + GrpcReceiveTrailingMetadata = 6, // Immutable + MAX = 6, +}; + +enum class PluginDirection : int32_t { + Unspecified = 0, + Inbound = 1, + Outbound = 2, +}; diff --git a/api/wasm/cpp/proxy_wasm_result.h b/api/wasm/cpp/proxy_wasm_result.h new file mode 100644 index 0000000000000..47a54b8774b47 --- /dev/null +++ b/api/wasm/cpp/proxy_wasm_result.h @@ -0,0 +1,45 @@ +/* + * Intrinsic enumerations available to WASM modules. + */ +// NOLINT(namespace-envoy) + +#pragma once + +#include + +enum class WasmResult : uint32_t { + Ok = 0, + // The result could not be found, e.g. a provided key did not appear in a table. + NotFound = 1, + // An argument was bad, e.g. did not not conform to the required range. + BadArgument = 2, + // A protobuf could not be serialized. + SerializationFailure = 3, + // A protobuf could not be parsed. + ParseFailure = 4, + // A provided expression (e.g. "foo.bar") was illegal or unrecognized. + BadExpression = 5, + // A provided memory range was not legal. + InvalidMemoryAccess = 6, + // Data was requested from an empty container. + Empty = 7, + // The provided CAS did not match that of the stored data. + CasMismatch = 8, + // Returned result was unexpected, e.g. of the incorrect size. + ResultMismatch = 9, +}; + +inline std::string toString(WasmResult r) { + switch (r) { + case WasmResult::Ok: return "Ok"; + case WasmResult::NotFound : return "NotFound"; + case WasmResult::BadArgument : return "BadArgument"; + case WasmResult::SerializationFailure : return "SerializationFailure"; + case WasmResult::ParseFailure : return "ParseFailure"; + case WasmResult::BadExpression : return "BadExpression"; + case WasmResult::InvalidMemoryAccess : return "InvalidMemoryAccess"; + case WasmResult::Empty : return "Empty"; + case WasmResult::CasMismatch : return "CasMismatch"; + case WasmResult::ResultMismatch : return "ResultMismatch"; + } +} diff --git a/api/wasm/cpp/sdk_container.sh b/api/wasm/cpp/sdk_container.sh new file mode 100755 index 0000000000000..280e423c6e2df --- /dev/null +++ b/api/wasm/cpp/sdk_container.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# basics +export DEBIAN_FRONTEND=noninteractive +apt-get update +apt-get upgrade -y +apt-get install -y --no-install-recommends apt-utils ca-certificates +apt-get autoremove -y +apt-get clean +apt-get install -y --no-install-recommends software-properties-common apt-transport-https git wget curl libglib2.0-dev autoconf autotools-dev automake libtool cmake python + +# gcc-7 +apt-get install -y --no-install-recommends gcc-7 g++-7 cpp-7 +export CC=gcc-7 +export CXX=g++-7 +export CPP=cpp-7 + +# specific version of protobufs to match the pre-compiled support libraries +git clone https://github.com/protocolbuffers/protobuf +cd protobuf +git checkout v3.6.1 -b v3.6.1 +git submodule update --init --recursive +./autogen.sh +./configure +make +make check +make install +cd + +# emscripten +git clone https://github.com/emscripten-core/emsdk.git +cd emsdk +./emsdk install 1.38.42 +./emsdk activate 1.38.42 +source ./emsdk_env.sh +cd + +# abseil (optional) +git clone https://github.com/abseil/abseil-cpp +cd abseil-cpp +git checkout 14550beb3b7b97195e483fb74b5efb906395c31e -b Jul302019 # Jul 30 2019 +emconfigure cmake -DCMAKE_CXX_STANDARD=17 "." +emmake make +cd + +# WAVM (optional) +apt-get install -y --no-install-recommends llvm-6.0-dev +git clone https://github.com/WAVM/WAVM +cd WAVM +git checkout 5e69711c074d16e717e476e3e7365505ebb0c42b -b Aug292019 # Aug 29 2019 +cmake "." +make +make install +cd diff --git a/api/wasm/rust/README.md b/api/wasm/rust/README.md new file mode 100644 index 0000000000000..5d45f4d83264b --- /dev/null +++ b/api/wasm/rust/README.md @@ -0,0 +1,8 @@ +# Compiling rust to .wasm files using the SDK + +The rust SDK is a WIP. + +## rust if you want to use it or rebuild the rust WebAssembly tests + +curl https://sh.rustup.rs -sSf | sh + diff --git a/api/wasm/rust/src/lib.rs b/api/wasm/rust/src/lib.rs index db727226d18c5..dde46afe0042a 100644 --- a/api/wasm/rust/src/lib.rs +++ b/api/wasm/rust/src/lib.rs @@ -66,6 +66,6 @@ fn _free(ptr: *mut u8) { pub mod host { extern "C" { #[link_name = "_proxy_log"] - pub fn proxy_log(level: u32, message_data: *const u8, message_size: usize); + pub fn proxy_log(level: u32, message_data: *const u8, message_size: usize) -> u32; } } diff --git a/api/xds_protocol.rst b/api/xds_protocol.rst index f8fe9a6e0608e..4d43306cdd1d0 100644 --- a/api/xds_protocol.rst +++ b/api/xds_protocol.rst @@ -135,6 +135,13 @@ versioning across resource types. When ADS is not used, even each resource of a given resource type may have a distinct version, since the Envoy API allows distinct EDS/RDS resources to point at different :ref:`ConfigSources `. +Only the first request on a stream is guaranteed to carry the node identifier. +The subsequent discovery requests on the same stream may carry an empty node +identifier. This holds true regardless of the acceptance of the discovery +responses on the same stream. The node identifier should always be identical if +present more than once on the stream. It is sufficient to only check the first +message for the node identifier as a result. + .. _xds_protocol_resource_update: Resource Update diff --git a/bazel/BUILD b/bazel/BUILD index a3ceca307f014..3ce73e899b227 100755 --- a/bazel/BUILD +++ b/bazel/BUILD @@ -214,16 +214,6 @@ alias( }), ) -# Alias pointing to a platform-specific version of wee8. -alias( - name = "wee8", - actual = select({ - ":darwin": "@wee8_macos//:wee8", - ":darwin_x86_64": "@wee8_macos//:wee8", - "//conditions:default": "@wee8_linux//:wee8", - }), -) - config_setting( name = "linux_x86_64", values = {"cpu": "k8"}, diff --git a/bazel/README.md b/bazel/README.md index b1be84925a72b..2631fbec01f3c 100644 --- a/bazel/README.md +++ b/bazel/README.md @@ -506,7 +506,7 @@ have seen some issues with seeing the artifacts tab. If you can't see it, log ou then log back in and it should start working. The latest coverage report for master is available -[here](https://s3.amazonaws.com/lyft-envoy/coverage/report-master/index.html). +[here](https://storage.googleapis.com/envoy-coverage/report-master/index.html). It's also possible to specialize the coverage build to a specified test or test dir. This is useful when doing things like exploring the coverage of a fuzzer over its corpus. This can be done by diff --git a/bazel/dependency_imports.bzl b/bazel/dependency_imports.bzl index 3915eb1b553f7..c7eb3e1cb7025 100644 --- a/bazel/dependency_imports.bzl +++ b/bazel/dependency_imports.bzl @@ -1,12 +1,36 @@ load("@rules_foreign_cc//:workspace_definitions.bzl", "rules_foreign_cc_dependencies") load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") load("@envoy//bazel/toolchains:rbe_toolchains_config.bzl", "rbe_toolchains_config") +load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository") # go version for rules_go -GO_VERSION = "1.12.5" +GO_VERSION = "1.12.8" def envoy_dependency_imports(go_version = GO_VERSION): rules_foreign_cc_dependencies() go_rules_dependencies() go_register_toolchains(go_version) rbe_toolchains_config() + gazelle_dependencies() + + go_repository( + name = "org_golang_google_grpc", + build_file_proto_mode = "disable", + importpath = "google.golang.org/grpc", + sum = "h1:AzbTB6ux+okLTzP8Ru1Xs41C303zdcfEht7MQnYJt5A=", + version = "v1.23.0", + ) + + go_repository( + name = "org_golang_x_net", + importpath = "golang.org/x/net", + sum = "h1:fHDIZ2oxGnUZRN6WgWFCbYBjH9uqVPRCUVUDhs0wnbA=", + version = "v0.0.0-20190813141303-74dc4d7220e7", + ) + + go_repository( + name = "org_golang_x_text", + importpath = "golang.org/x/text", + sum = "h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=", + version = "v0.3.0", + ) diff --git a/bazel/external/wee8.genrule_cmd b/bazel/external/wee8.genrule_cmd index 1b5f37d14a769..5a37d85b04dc1 100644 --- a/bazel/external/wee8.genrule_cmd +++ b/bazel/external/wee8.genrule_cmd @@ -15,8 +15,59 @@ pushd $$ROOT/wee8 # Clean after previous build. rm -rf out/wee8 +# Export compiler configuration. +if [[ ( `uname` == "Darwin" && $${CXX-} == "" ) || $${CXX-} == *"clang"* ]]; then + export IS_CLANG=true + export CC=$${CC:-clang} + export CXX=$${CXX:-clang++} +else + export IS_CLANG=false + export CC=$${CC:-gcc} + export CXX=$${CXX:-g++} +fi + +export AR=$${AR:-ar} +export NM=$${NM:-nm} + +# Hook sanitizers. +if [[ $${ENVOY_ASAN-} == "1" ]]; then + WEE8_BUILD_ARGS+=" is_asan=true" + WEE8_BUILD_ARGS+=" is_lsan=true" +fi +if [[ $${ENVOY_MSAN-} == "1" ]]; then + WEE8_BUILD_ARGS+=" is_msan=true" +fi +if [[ $${ENVOY_TSAN-} == "1" ]]; then + WEE8_BUILD_ARGS+=" is_tsan=true" +fi + +# Release build. +WEE8_BUILD_ARGS+=" is_debug=false" +# Clang or not Clang, that is the question. +WEE8_BUILD_ARGS+=" is_clang=$$IS_CLANG" +# Hack to disable bleeding-edge compiler flags. +WEE8_BUILD_ARGS+=" use_xcode_clang=true" +# Use local toolchain. +WEE8_BUILD_ARGS+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" +# Use local stdlibc++ / libc++. +WEE8_BUILD_ARGS+=" use_custom_libcxx=false" +# Use local sysroot. +WEE8_BUILD_ARGS+=" use_sysroot=false" +# Disable unused GLib2 dependency. +WEE8_BUILD_ARGS+=" use_glib=false" +# Expose debug symbols. +WEE8_BUILD_ARGS+=" v8_expose_symbols=true" +# Build monolithic library. +WEE8_BUILD_ARGS+=" is_component_build=false" +WEE8_BUILD_ARGS+=" v8_enable_i18n_support=false" +WEE8_BUILD_ARGS+=" v8_enable_gdbjit=false" +WEE8_BUILD_ARGS+=" v8_use_external_startup_data=false" +# Disable read-only heap, since it's leaky and HEAPCHECK complains about it. +# TODO(PiotrSikora): remove when fixed upstream. +WEE8_BUILD_ARGS+=" v8_enable_shared_ro_heap=false" + # Build wee8. -third_party/depot_tools/gn gen out/wee8 --args="v8_use_external_startup_data=false v8_enable_i18n_support=false v8_enable_gdbjit=false v8_expose_symbols=true is_component_build=false is_debug=false use_sysroot=false use_custom_libcxx=false" +third_party/depot_tools/gn gen out/wee8 --args="$$WEE8_BUILD_ARGS" third_party/depot_tools/ninja -C out/wee8 wee8 # Move compiled library to the expected destinations. diff --git a/bazel/external/wee8.patch b/bazel/external/wee8.patch index b64ec9738883d..3b16ca7d7cf8f 100644 --- a/bazel/external/wee8.patch +++ b/bazel/external/wee8.patch @@ -1,34 +1,33 @@ -# 1. Fix handling of f64 globals. -# 2. Force full GC when destroying VMs. -# 3. Fix build with -DDEBUG. ---- a/wee8/src/wasm/c-api.cc -+++ b/wee8/src/wasm/c-api.cc -@@ -825,7 +825,7 @@ void global_set_f32(v8::Local global, float val) { - void global_set_f64(v8::Local global, double val) { - auto v8_object = v8::Utils::OpenHandle(global); - auto v8_global = i::Handle::cast(v8_object); -- v8_global->SetF32(val); -+ v8_global->SetF64(val); - } +# 1. Fix linking with unbundled toolchain on macOS. +# 2. Increase VSZ limit to 4TiB (allows us to start up to 370 VMs). +--- a/wee8/build/toolchain/gcc_toolchain.gni ++++ b/wee8/build/toolchain/gcc_toolchain.gni +@@ -355,6 +355,8 @@ template("gcc_toolchain") { + # AIX does not support either -D (deterministic output) or response + # files. + command = "$ar -X64 {{arflags}} -r -c -s {{output}} {{inputs}}" ++ } else if (current_os == "mac") { ++ command = "\"$ar\" {{arflags}} -r -c -s {{output}} {{inputs}}" + } else { + rspfile = "{{output}}.rsp" + rspfile_content = "{{inputs}}" +@@ -546,7 +548,7 @@ template("gcc_toolchain") { - // Tables -@@ -1107,7 +1107,7 @@ class StoreImpl { - StoreImpl() {} - - ~StoreImpl() { --#ifdef DEBUG -+#if 1 - reinterpret_cast(isolate_)->heap()->PreciseCollectAllGarbage( - i::Heap::kNoGCFlags, i::GarbageCollectionReason::kTesting, - v8::kGCCallbackFlagForced); ---- a/wee8/third_party/wasm-api/wasm.hh -+++ b/wee8/third_party/wasm-api/wasm.hh -@@ -111,7 +111,7 @@ class vec { - size_t size_; - std::unique_ptr data_; - --#ifdef DEBUG -+#if 0 - void make_data(); - void free_data(); + start_group_flag = "" + end_group_flag = "" +- if (current_os != "aix") { ++ if (current_os != "aix" && current_os != "mac") { + # the "--start-group .. --end-group" feature isn't available on the aix ld. + start_group_flag = "-Wl,--start-group" + end_group_flag = "-Wl,--end-group " +--- a/wee8/src/wasm/wasm-memory.cc ++++ b/wee8/src/wasm/wasm-memory.cc +@@ -142,7 +142,7 @@ void* TryAllocateBackingStore(WasmMemoryTracker* memory_tracker, Heap* heap, + // address space limits needs to be smaller. + constexpr size_t kAddressSpaceLimit = 0x8000000000L; // 512 GiB + #elif V8_TARGET_ARCH_64_BIT +-constexpr size_t kAddressSpaceLimit = 0x10100000000L; // 1 TiB + 4 GiB ++constexpr size_t kAddressSpaceLimit = 0x40100000000L; // 4 TiB + 4 GiB #else + constexpr size_t kAddressSpaceLimit = 0xC0000000; // 3 GiB + #endif diff --git a/bazel/grpc-protoinfo-1.patch b/bazel/grpc-protoinfo-1.patch new file mode 100644 index 0000000000000..f91e7a0357811 --- /dev/null +++ b/bazel/grpc-protoinfo-1.patch @@ -0,0 +1,56 @@ +commit 49f0fb9035120d0f5b5fa49846324c0b2d59c257 +Author: Marcel Hlopko +Date: Thu Jun 20 18:55:56 2019 +0200 + + Migrate from dep.proto to dep[ProtoInfo] + +diff --git a/WORKSPACE b/WORKSPACE +index 2db3c5db2f..60582d1a0f 100644 +--- a/WORKSPACE ++++ b/WORKSPACE +@@ -20,7 +20,7 @@ register_toolchains( + + git_repository( + name = "io_bazel_rules_python", +- commit = "8b5d0683a7d878b28fffe464779c8a53659fc645", ++ commit = "fdbb17a4118a1728d19e638a5291b4c4266ea5b8", + remote = "https://github.com/bazelbuild/rules_python.git", + ) + +diff --git a/bazel/generate_cc.bzl b/bazel/generate_cc.bzl +index b7edcda702..581165a190 100644 +--- a/bazel/generate_cc.bzl ++++ b/bazel/generate_cc.bzl +@@ -41,11 +41,11 @@ def _join_directories(directories): + + def generate_cc_impl(ctx): + """Implementation of the generate_cc rule.""" +- protos = [f for src in ctx.attr.srcs for f in src.proto.check_deps_sources.to_list()] ++ protos = [f for src in ctx.attr.srcs for f in src[ProtoInfo].check_deps_sources.to_list()] + includes = [ + f + for src in ctx.attr.srcs +- for f in src.proto.transitive_imports.to_list() ++ for f in src[ProtoInfo].transitive_imports.to_list() + ] + outs = [] + proto_root = get_proto_root( +diff --git a/bazel/python_rules.bzl b/bazel/python_rules.bzl +index 17004f3474..3df30f8262 100644 +--- a/bazel/python_rules.bzl ++++ b/bazel/python_rules.bzl +@@ -28,12 +28,12 @@ def _get_staged_proto_file(context, source_file): + def _generate_py_impl(context): + protos = [] + for src in context.attr.deps: +- for file in src.proto.direct_sources: ++ for file in src[ProtoInfo].direct_sources: + protos.append(_get_staged_proto_file(context, file)) + includes = [ + file + for src in context.attr.deps +- for file in src.proto.transitive_imports.to_list() ++ for file in src[ProtoInfo].transitive_imports.to_list() + ] + proto_root = get_proto_root(context.label.workspace_root) + format_str = (_GENERATED_GRPC_PROTO_FORMAT if context.executable.plugin else _GENERATED_PROTO_FORMAT) diff --git a/bazel/grpc-protoinfo-2.patch b/bazel/grpc-protoinfo-2.patch new file mode 100644 index 0000000000000..f1d62d8aaaa75 --- /dev/null +++ b/bazel/grpc-protoinfo-2.patch @@ -0,0 +1,32 @@ +commit ecf04ccf4d8be9378166ec9e0ccf44081e211d11 +Author: Marcel Hlopko +Date: Thu Jun 20 18:57:33 2019 +0200 + + Require ProtoInfo in attributes, not "proto" + +diff --git a/bazel/generate_cc.bzl b/bazel/generate_cc.bzl +index 581165a190..87e8b9d329 100644 +--- a/bazel/generate_cc.bzl ++++ b/bazel/generate_cc.bzl +@@ -146,7 +146,7 @@ _generate_cc = rule( + "srcs": attr.label_list( + mandatory = True, + allow_empty = False, +- providers = ["proto"], ++ providers = [ProtoInfo], + ), + "plugin": attr.label( + executable = True, +diff --git a/bazel/python_rules.bzl b/bazel/python_rules.bzl +index 3df30f8262..d4ff77094c 100644 +--- a/bazel/python_rules.bzl ++++ b/bazel/python_rules.bzl +@@ -99,7 +99,7 @@ __generate_py = rule( + "deps": attr.label_list( + mandatory = True, + allow_empty = False, +- providers = ["proto"], ++ providers = [ProtoInfo], + ), + "plugin": attr.label( + executable = True, diff --git a/bazel/grpc-protoinfo-3.patch b/bazel/grpc-protoinfo-3.patch new file mode 100644 index 0000000000000..97eab476f17b7 --- /dev/null +++ b/bazel/grpc-protoinfo-3.patch @@ -0,0 +1,31 @@ +commit e2ba3aa07009292617c3cabe734e8e44099b22ac +Author: Lukacs T. Berki +Date: Tue Aug 6 14:00:11 2019 +0200 + + Update C++ code generation to work with Bazel 0.29 . + + The above Bazel version changes proto compilation slightly: some proto + files are put into a `_virtual_imports` directory and thus + `_get_include_directory` needs to be updated accordingly. + + Ideally, it would use instead the `ProtoInfo` provider to tease out the + proto import directories, but that's a bit more intrusive change. + +diff --git a/bazel/protobuf.bzl b/bazel/protobuf.bzl +index f2df7bd87b..3066e1d550 100644 +--- a/bazel/protobuf.bzl ++++ b/bazel/protobuf.bzl +@@ -59,6 +59,13 @@ def proto_path_to_generated_filename(proto_path, fmt_str): + def _get_include_directory(include): + directory = include.path + prefix_len = 0 ++ ++ virtual_imports = "/_virtual_imports/" ++ if not include.is_source and virtual_imports in include.path: ++ root, relative = include.path.split(virtual_imports, 2) ++ result = root + virtual_imports + relative.split("/", 1)[0] ++ return result ++ + if not include.is_source and directory.startswith(include.root.path): + prefix_len = len(include.root.path) + 1 + diff --git a/bazel/repositories.bzl b/bazel/repositories.bzl index 30da58910a296..8b53b129a7ec1 100644 --- a/bazel/repositories.bzl +++ b/bazel/repositories.bzl @@ -120,14 +120,6 @@ def envoy_dependencies(skip_targets = []): actual = "@envoy//bazel:boringssl", ) - # Binding to an alias pointing to a platform-specific version of wee8. - _wee8_linux() - _wee8_macos() - native.bind( - name = "wee8", - actual = "@envoy//bazel:wee8", - ) - # The long repo names (`com_github_fmtlib_fmt` instead of `fmtlib`) are # semi-standard in the Bazel community, intended to avoid both duplicate # dependencies and name conflicts. @@ -158,11 +150,14 @@ def envoy_dependencies(skip_targets = []): _com_github_curl() _com_github_envoyproxy_sqlparser() _com_googlesource_quiche() + _com_googlesource_chromium_v8() _org_llvm_llvm() _com_github_wavm_wavm() _com_lightstep_tracer_cpp() _io_opentracing_cpp() _net_zlib() + _repository_impl("com_googlesource_code_re2") + _com_google_cel_cpp() _repository_impl("bazel_toolchains") _python_deps() @@ -325,6 +320,9 @@ def _net_zlib(): actual = "@envoy//bazel/foreign_cc:zlib", ) +def _com_google_cel_cpp(): + _repository_impl("com_google_cel_cpp") + def _com_github_nghttp2_nghttp2(): location = REPOSITORY_LOCATIONS["com_github_nghttp2_nghttp2"] http_archive( @@ -610,7 +608,17 @@ def _com_googlesource_quiche(): ) def _com_github_grpc_grpc(): - _repository_impl("com_github_grpc_grpc") + _repository_impl( + "com_github_grpc_grpc", + patches = [ + # Workaround for https://github.com/envoyproxy/envoy/issues/7863 + "@envoy//bazel:grpc-protoinfo-1.patch", + "@envoy//bazel:grpc-protoinfo-2.patch", + # Pre-integration of https://github.com/grpc/grpc/pull/19860 + "@envoy//bazel:grpc-protoinfo-3.patch", + ], + patch_args = ["-p1"], + ) # Rebind some stuff to match what the gRPC Bazel is expecting. native.bind( @@ -716,26 +724,18 @@ def _com_github_wavm_wavm(): actual = "@envoy//bazel/foreign_cc:wavm", ) -def _wee8_linux(): - location = REPOSITORY_LOCATIONS["wee8_linux"] +def _com_googlesource_chromium_v8(): + location = REPOSITORY_LOCATIONS["com_googlesource_chromium_v8"] genrule_repository( - name = "wee8_linux", - urls = location["urls"], - sha256 = location["sha256"], + name = "com_googlesource_chromium_v8", genrule_cmd_file = "@envoy//bazel/external:wee8.genrule_cmd", build_file = "@envoy//bazel/external:wee8.BUILD", patches = ["@envoy//bazel/external:wee8.patch"], + **location ) - -def _wee8_macos(): - location = REPOSITORY_LOCATIONS["wee8_macos"] - genrule_repository( - name = "wee8_macos", - urls = location["urls"], - sha256 = location["sha256"], - genrule_cmd_file = "@envoy//bazel/external:wee8.genrule_cmd", - build_file = "@envoy//bazel/external:wee8.BUILD", - patches = ["@envoy//bazel/external:wee8.patch"], + native.bind( + name = "wee8", + actual = "@com_googlesource_chromium_v8//:wee8", ) def _foreign_cc_dependencies(): diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 3cdc4d49d48e7..b24d4bd387ce2 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -4,21 +4,20 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/bazelbuild/bazel-gazelle/releases/download/0.18.1/bazel-gazelle-0.18.1.tar.gz"], ), bazel_toolchains = dict( - sha256 = "0710ec5a88201c4c3038ea458f7e9078cc3ad7ad61736ab287c115438eb91b1d", - strip_prefix = "bazel-toolchains-5a8611ee011d0d68498b16bf42a9c69d139bc708", - # 2019-08-01 - # Need: - # - https://github.com/bazelbuild/bazel-toolchains/pull/644 to select correct toolchain from same image - # - https://github.com/bazelbuild/bazel-toolchains/pull/650 to support no java config - # TODO(lizan): Update to release when new version is released. - urls = ["https://github.com/bazelbuild/bazel-toolchains/archive/5a8611ee011d0d68498b16bf42a9c69d139bc708.tar.gz"], + sha256 = "b72e7a911436b2900b05759a1fcd735070edbd4442f0a3506ef021fdcd6e15b3", + strip_prefix = "bazel-toolchains-0.28.5", + urls = ["https://github.com/bazelbuild/bazel-toolchains/archive/0.28.5.tar.gz"], ), boringssl = dict( - # Use commits from branch "chromium-stable-with-bazel" - sha256 = "18edf961f8377e8d10fd8497bc8a331def9cb60a6c2a50a4c8eb322b045042d5", - strip_prefix = "boringssl-87d1c8f292e5184fd727efe84f458d89687d7742", - # chromium-76.0.3809.87 - urls = ["https://github.com/google/boringssl/archive/87d1c8f292e5184fd727efe84f458d89687d7742.tar.gz"], + sha256 = "c712766ddc844de2a38e686e1cdd7288795e9a6fe7f699c6636f1b76703db84e", + strip_prefix = "boringssl-265728decec4370cd02b941f72fba9f0735e2923", + # To update BoringSSL, which tracks Chromium releases: + # 1. Open https://omahaproxy.appspot.com/ and note of linux/beta release. + # 2. Open https://chromium.googlesource.com/chromium/src/+/refs/tags//DEPS and note . + # 3. Find a commit in BoringSSL's "master-with-bazel" branch that merges . + # + # chromium-77.0.3865.35 (BETA) + urls = ["https://github.com/google/boringssl/archive/265728decec4370cd02b941f72fba9f0735e2923.tar.gz"], ), boringssl_fips = dict( sha256 = "b12ad676ee533824f698741bd127f6fbc82c46344398a6d78d25e62c6c418c73", @@ -159,10 +158,10 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/msgpack/msgpack-c/releases/download/cpp-3.2.0/msgpack-3.2.0.tar.gz"], ), com_github_google_jwt_verify = dict( - sha256 = "8ab9a0b3f8b7eab5f1cd059920e81fdc138cd4ee657c1412af891652929885c5", - strip_prefix = "jwt_verify_lib-6356535ae83a3f1820b6b06dae80cd6a0a03e7f2", - # 2019-07-01 - urls = ["https://github.com/google/jwt_verify_lib/archive/6356535ae83a3f1820b6b06dae80cd6a0a03e7f2.tar.gz"], + sha256 = "2d57d336239d5fe36a03849ddbea1bff09a1720e1c4a46bbb9743c71732b0d43", + strip_prefix = "jwt_verify_lib-0f14d43f20381cfae0469cb2309b2e220c0f0ea3", + # 2019-07-08 + urls = ["https://github.com/google/jwt_verify_lib/archive/0f14d43f20381cfae0469cb2309b2e220c0f0ea3.tar.gz"], ), com_github_nodejs_http_parser = dict( sha256 = "ef26268c54c8084d17654ba2ed5140bffeffd2a040a895ffb22a6cca3f6c613f", @@ -219,8 +218,8 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/grpc-ecosystem/grpc-httpjson-transcoding/archive/64d6ac985360b624d8e95105701b64a3814794cd.tar.gz"], ), io_bazel_rules_go = dict( - sha256 = "a82a352bffae6bee4e95f68a8d80a70e87f42c4741e6a448bec11998fcc82329", - urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.18.5/rules_go-0.18.5.tar.gz"], + sha256 = "96b1f81de5acc7658e1f5a86d7dc9e1b89bc935d83799b711363a748652c471a", + urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.19.2/rules_go-0.19.2.tar.gz"], ), rules_foreign_cc = dict( sha256 = "c957e6663094a1478c43330c1bbfa71afeaf1ab86b7565233783301240c7a0ab", @@ -242,19 +241,11 @@ REPOSITORY_LOCATIONS = dict( strip_prefix = "WAVM-95dbf08c8695b8941e7020c557d8612f9d2af895", urls = ["https://github.com/WAVM/WAVM/archive/95dbf08c8695b8941e7020c557d8612f9d2af895.tar.gz"], ), - wee8_linux = dict( + com_googlesource_chromium_v8 = dict( # This archive was created using https://storage.googleapis.com/envoyproxy-wee8/wee8-archive.sh - # and contains complete checkout of v8 with all dependencies necessary to build wee8 on Linux-x86_64. - # TODO(PiotrSikora): switch to local compiler and provide single platform-agnostic archive. - sha256 = "1caebced30cb9d3531be4720b70c9132c988b362160f7721bc01caeb572c0eb7", - urls = ["https://storage.googleapis.com/envoyproxy-wee8/wee8-7.5.288.22-linux-x86_64.tar.gz"], - ), - wee8_macos = dict( - # This archive was created using https://storage.googleapis.com/envoyproxy-wee8/wee8-archive.sh - # and contains complete checkout of v8 with all dependencies necessary to build wee8 on macOS-x86_64. - # TODO(PiotrSikora): switch to local compiler and provide single platform-agnostic archive. - sha256 = "f84e423417db0b03b96e853b7d92f69be7d4936a33d1e8e05848fb146925ff68", - urls = ["https://storage.googleapis.com/envoyproxy-wee8/wee8-7.5.288.22-macos-x86_64.tar.gz"], + # and contains complete checkout of v8 with all dependencies necessary to build wee8. + sha256 = "54d42b0de3055b5ddc6efc0ee1cf7fd2ef77696e90391129f403edc345511e1f", + urls = ["https://storage.googleapis.com/envoyproxy-wee8/wee8-7.8.196.tar.gz"], ), io_opencensus_cpp = dict( sha256 = "8d6016e47c2e19e7acbadb6f905b8c422748c64299d71101ac8f28151677e195", @@ -263,13 +254,23 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/census-instrumentation/opencensus-cpp/archive/cad0d03ff3474cf14389fc249e16847ab7b6895f.tar.gz"], ), com_github_curl = dict( - sha256 = "821aeb78421375f70e55381c9ad2474bf279fc454b791b7e95fc83562951c690", - strip_prefix = "curl-7.65.1", - urls = ["https://github.com/curl/curl/releases/download/curl-7_65_1/curl-7.65.1.tar.gz"], + sha256 = "4376ac72b95572fb6c4fbffefb97c7ea0dd083e1974c0e44cd7e49396f454839", + strip_prefix = "curl-7.65.3", + urls = ["https://github.com/curl/curl/releases/download/curl-7_65_3/curl-7.65.3.tar.gz"], ), com_googlesource_quiche = dict( # Static snapshot of https://quiche.googlesource.com/quiche/+archive/2a930469533c3b541443488a629fe25cd8ff53d0.tar.gz sha256 = "fcdebf54c89d839ffa7eefae166c8e4b551c765559db13ff15bff98047f344fb", urls = ["https://storage.googleapis.com/quiche-envoy-integration/2a930469533c3b541443488a629fe25cd8ff53d0.tar.gz"], ), + com_google_cel_cpp = dict( + sha256 = "f027c551d57d38fb9f0b5e4f21a2b0b8663987119e23b1fd8dfcc7588e9a2350", + strip_prefix = "cel-cpp-d9d02b20ab85da2444dbdd03410bac6822141364", + urls = ["https://github.com/google/cel-cpp/archive/d9d02b20ab85da2444dbdd03410bac6822141364.tar.gz"], + ), + com_googlesource_code_re2 = dict( + sha256 = "f31db9cd224d018a7e4fe88ef84aaa874b0b3ed91d4d98ee5a1531101d3fdc64", + strip_prefix = "re2-87e2ad45e7b18738e1551474f7ee5886ff572059", + urls = ["https://github.com/google/re2/archive/87e2ad45e7b18738e1551474f7ee5886ff572059.tar.gz"], + ), ) diff --git a/ci/build_container/build_container_centos.sh b/ci/build_container/build_container_centos.sh index 3e64e9f543961..85ea9a6513c9b 100755 --- a/ci/build_container/build_container_centos.sh +++ b/ci/build_container/build_container_centos.sh @@ -6,8 +6,10 @@ set -e yum install -y centos-release-scl epel-release yum update -y yum install -y devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-binutils java-1.8.0-openjdk-headless rsync \ - rh-git218 wget unzip which make patch devtoolset-7-libatomic-devel openssl python27 \ - libtool autoconf tcpdump glib2-devel + rh-git218 wget unzip which make patch ninja-build devtoolset-7-libatomic-devel openssl python27 \ + libtool autoconf tcpdump + +ln -s /usr/bin/ninja-build /usr/bin/ninja # SLES 11 has older glibc than CentOS 7, so pre-built binary for it works on CentOS 7 LLVM_VERSION=8.0.0 diff --git a/ci/build_container/build_container_common.sh b/ci/build_container/build_container_common.sh index e3130c2adf9ec..9c0984e62a688 100755 --- a/ci/build_container/build_container_common.sh +++ b/ci/build_container/build_container_common.sh @@ -9,8 +9,8 @@ if [[ "$(uname -m)" == "x86_64" ]]; then && chmod +x /usr/local/bin/buildifier # bazelisk - VERSION=0.0.8 - SHA256=5fced4fec06bf24beb631837fa9497b6698f34041463d9188610dfa7b91f4f8d + VERSION=1.0 + SHA256=820f1432bb729cf1d51697a64ce57c0cff7ea4013acaf871b8c24b6388174d0d curl --location --output /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/download/v${VERSION}/bazelisk-linux-amd64 \ && echo "$SHA256 /usr/local/bin/bazel" | sha256sum --check \ && chmod +x /usr/local/bin/bazel @@ -21,12 +21,4 @@ if [[ "$(uname -m)" == "x86_64" ]]; then curl -sLo cmake-"$VERSION".tar.gz https://github.com/Kitware/CMake/releases/download/v"$VERSION"/cmake-"$VERSION"-Linux-x86_64.tar.gz \ && echo "$SHA256" cmake-"$VERSION".tar.gz | sha256sum --check \ && tar -zxf cmake-"$VERSION".tar.gz -C /usr --strip-components=1 - - # ninja - VERSION=1.8.2 - SHA256=d2fea9ff33b3ef353161ed906f260d565ca55b8ca0568fa07b1d2cab90a84a07 - curl -sLo ninja-"$VERSION".zip https://github.com/ninja-build/ninja/releases/download/v"$VERSION"/ninja-linux.zip \ - && echo "$SHA256" ninja-"$VERSION".zip | sha256sum --check \ - && unzip ninja-"$VERSION".zip \ - && mv ninja /usr/bin fi diff --git a/ci/build_container/build_container_ubuntu.sh b/ci/build_container/build_container_ubuntu.sh index 91a8112a12900..c2f7369acc442 100755 --- a/ci/build_container/build_container_ubuntu.sh +++ b/ci/build_container/build_container_ubuntu.sh @@ -19,7 +19,7 @@ update-alternatives --config gcc update-alternatives --config g++ apt-get install -y --no-install-recommends curl wget make git python python-pip python-setuptools python3 python3-pip \ - unzip bc libtool automake zip time gdb strace tshark tcpdump patch xz-utils rsync ssh-client libglib2.0-dev + unzip bc libtool ninja-build automake zip time gdb strace tshark tcpdump patch xz-utils rsync ssh-client # clang 8. case $ARCH in diff --git a/ci/build_setup.sh b/ci/build_setup.sh index 834ba5db9c9df..53379d9ab8da2 100755 --- a/ci/build_setup.sh +++ b/ci/build_setup.sh @@ -93,7 +93,7 @@ if [ "$1" != "-nofetch" ]; then fi # This is the hash on https://github.com/envoyproxy/envoy-filter-example.git we pin to. - (cd "${ENVOY_FILTER_EXAMPLE_SRCDIR}" && git fetch origin && git checkout -f dcd3374baa9365ab7ab505018232994d6c8a8d81) + (cd "${ENVOY_FILTER_EXAMPLE_SRCDIR}" && git fetch origin && git checkout -f 1995c1e0eccea84bbb39f64e75ef3e9102d1ae82) sed -e "s|{ENVOY_SRCDIR}|${ENVOY_SRCDIR}|" "${ENVOY_SRCDIR}"/ci/WORKSPACE.filter.example > "${ENVOY_FILTER_EXAMPLE_SRCDIR}"/WORKSPACE fi diff --git a/ci/coverage_publish.sh b/ci/coverage_publish.sh index ad4b05ba30199..c04eafff0323a 100755 --- a/ci/coverage_publish.sh +++ b/ci/coverage_publish.sh @@ -8,26 +8,26 @@ if [ "${CIRCLECI}" != "true" ]; then exit 0 fi +[[ -z "${ENVOY_BUILD_DIR}" ]] && ENVOY_BUILD_DIR=/build +COVERAGE_FILE="${ENVOY_BUILD_DIR}/envoy/generated/coverage/index.html" + +if [ ! -f "${COVERAGE_FILE}" ]; then + echo "ERROR: Coverage file not found." + exit 1 +fi + # available for master builds if [ -z "$CIRCLE_PR_NUMBER" ] then echo "Uploading coverage report..." - [[ -z "${ENVOY_BUILD_DIR}" ]] && ENVOY_BUILD_DIR=/build - COVERAGE_FILE="${ENVOY_BUILD_DIR}/envoy/generated/coverage/index.html" - - if [ ! -f "${COVERAGE_FILE}" ]; then - echo "ERROR: Coverage file not found." - exit 1 - fi - BRANCH_NAME="${CIRCLE_BRANCH}" COVERAGE_DIR="$(dirname "${COVERAGE_FILE}")" - S3_LOCATION="lyft-envoy/coverage/report-${BRANCH_NAME}" + GCS_LOCATION="envoy-coverage/report-${BRANCH_NAME}" - pip install awscli --upgrade - aws s3 cp "${COVERAGE_DIR}" "s3://${S3_LOCATION}" --recursive --acl public-read --quiet --sse - echo "Coverage report for branch '${BRANCH_NAME}': https://s3.amazonaws.com/${S3_LOCATION}/index.html" + echo ${GCP_SERVICE_ACCOUNT_KEY} | base64 --decode | gcloud auth activate-service-account --key-file=- + gsutil -m rsync -dr ${COVERAGE_DIR} gs://${GCS_LOCATION} + echo "Coverage report for branch '${BRANCH_NAME}': https://storage.googleapis.com/${GCS_LOCATION}/index.html" else echo "Coverage report will not be uploaded for this build." fi diff --git a/ci/verify_examples.sh b/ci/verify_examples.sh index d66e63ebe6481..9d99be9ebd87e 100755 --- a/ci/verify_examples.sh +++ b/ci/verify_examples.sh @@ -23,8 +23,8 @@ cd ../ # Test grpc bridge example # install go -curl -O https://storage.googleapis.com/golang/go1.7.1.linux-amd64.tar.gz -tar -xf go1.7.1.linux-amd64.tar.gz +curl -O https://storage.googleapis.com/golang/go1.12.8.linux-amd64.tar.gz +tar -xf go1.12.8.linux-amd64.tar.gz sudo mv go /usr/local export PATH=$PATH:/usr/local/go/bin export GOPATH=$HOME/go diff --git a/configs/configgen.py b/configs/configgen.py index 6c5ad0c08078f..c255b0d4e2a18 100755 --- a/configs/configgen.py +++ b/configs/configgen.py @@ -42,14 +42,10 @@ # DynamoDB statistics filter, as well as generating a special access log which includes the # X-AMZN-RequestId response header. external_virtual_hosts = [{ - 'name': - 'dynamodb_iad', - 'address': - "127.0.0.1", - 'protocol': - "TCP", - 'port_value': - "9204", + 'name': 'dynamodb_iad', + 'address': "127.0.0.1", + 'protocol': "TCP", + 'port_value': "9204", 'hosts': [{ 'name': 'dynamodb_iad', 'domain': '*', @@ -59,10 +55,8 @@ 'verify_subject_alt_name': ['dynamodb.us-east-1.amazonaws.com'], 'ssl': True }], - 'is_amzn_service': - True, - 'cluster_type': - 'logical_dns' + 'is_amzn_service': True, + 'cluster_type': 'logical_dns' }] # This is the set of mongo clusters that local Envoys can talk to. Each database defines a set of @@ -72,12 +66,9 @@ # as it demonstrates how to setup TCP proxy and the network rate limit filter. mongos_servers = { 'somedb': { - 'address': - "127.0.0.1", - 'protocol': - "TCP", - 'port_value': - 27019, + 'address': "127.0.0.1", + 'protocol': "TCP", + 'port_value': 27019, 'hosts': [ { 'port_value': 27817, @@ -100,17 +91,15 @@ 'protocol': 'TCP' }, ], - 'ratelimit': - True + 'ratelimit': True } } def generate_config(template_path, template, output_file, **context): """ Generate a final config file based on a template and some context. """ - env = jinja2.Environment( - loader=jinja2.FileSystemLoader(template_path, followlinks=True), - undefined=jinja2.StrictUndefined) + env = jinja2.Environment(loader=jinja2.FileSystemLoader(template_path, followlinks=True), + undefined=jinja2.StrictUndefined) raw_output = env.get_template(template).render(**context) with open(output_file, 'w') as fh: fh.write(raw_output) @@ -118,11 +107,10 @@ def generate_config(template_path, template, output_file, **context): # Generate a demo config for the main front proxy. This sets up both HTTP and HTTPS listeners, # as well as a listener for the double proxy to connect to via SSL client authentication. -generate_config( - SCRIPT_DIR, - 'envoy_front_proxy_v2.template.yaml', - '{}/envoy_front_proxy.v2.yaml'.format(OUT_DIR), - clusters=front_envoy_clusters) +generate_config(SCRIPT_DIR, + 'envoy_front_proxy_v2.template.yaml', + '{}/envoy_front_proxy.v2.yaml'.format(OUT_DIR), + clusters=front_envoy_clusters) # Generate a demo config for the double proxy. This sets up both an HTTP and HTTPS listeners, # and backhauls the traffic to the main front proxy. @@ -137,13 +125,12 @@ def generate_config(template_path, template, output_file, **context): # optional external service ports: built from external_virtual_hosts above. Each external host # that Envoy proxies to listens on its own port. # optional mongo ports: built from mongos_servers above. -generate_config( - SCRIPT_DIR, - 'envoy_service_to_service_v2.template.yaml', - '{}/envoy_service_to_service.yaml'.format(OUT_DIR), - internal_virtual_hosts=service_to_service_envoy_clusters, - external_virtual_hosts=external_virtual_hosts, - mongos_servers=mongos_servers) +generate_config(SCRIPT_DIR, + 'envoy_service_to_service_v2.template.yaml', + '{}/envoy_service_to_service.yaml'.format(OUT_DIR), + internal_virtual_hosts=service_to_service_envoy_clusters, + external_virtual_hosts=external_virtual_hosts, + mongos_servers=mongos_servers) for google_ext in ['v2.yaml']: shutil.copy(os.path.join(SCRIPT_DIR, 'google_com_proxy.%s' % google_ext), OUT_DIR) diff --git a/docs/requirements.txt b/docs/requirements.txt index 79ee5cd0ad46b..6ec6e3c52108d 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,17 +1,17 @@ -GitPython==2.0.8 +GitPython==3.0.0 Jinja2==2.10.1 MarkupSafe==1.1.1 -Pygments==2.2.0 -alabaster==0.7.10 -babel==2.4.0 -docutils==0.14 +Pygments==2.4.2 +alabaster==0.7.12 +babel==2.7.0 +docutils==0.15.2 gitdb==0.6.4 -imagesize==0.7.1 -pytz==2017.2 -requests>=2.20.0 -six==1.10.0 +imagesize==1.1.0 +pytz==2019.2 +requests>=2.22.0 +six==1.12.0 smmap==0.9.0 -snowballstemmer==1.2.1 -sphinx==1.8.1 -sphinxcontrib-httpdomain==1.6.1 -sphinx_rtd_theme==0.4.2 +snowballstemmer==1.9.0 +sphinx==2.1.2 +sphinxcontrib-httpdomain==1.7.0 +sphinx_rtd_theme==0.4.3 diff --git a/docs/root/configuration/http_filters/lua_filter.rst b/docs/root/configuration/http_filters/lua_filter.rst index 23f4d2a65ad6b..202bf74340e61 100644 --- a/docs/root/configuration/http_filters/lua_filter.rst +++ b/docs/root/configuration/http_filters/lua_filter.rst @@ -109,7 +109,8 @@ more details on the supported API. { [":method"] = "POST", [":path"] = "/", - [":authority"] = "lua_cluster" + [":authority"] = "lua_cluster", + ["set-cookie"] = { "lang=lua; Path=/", "type=binding; Path=/" } }, "hello world", 5000) @@ -236,9 +237,9 @@ httpCall() Makes an HTTP call to an upstream host. Envoy will yield the script until the call completes or has an error. *cluster* is a string which maps to a configured cluster manager cluster. *headers* -is a table of key/value pairs to send. Note that the *:method*, *:path*, and *:authority* headers -must be set. *body* is an optional string of body data to send. *timeout* is an integer that -specifies the call timeout in milliseconds. +is a table of key/value pairs to send (the value can be a string or table of strings). Note that +the *:method*, *:path*, and *:authority* headers must be set. *body* is an optional string of body +data to send. *timeout* is an integer that specifies the call timeout in milliseconds. Returns *headers* which is a table of response headers. Returns *body* which is the string response body. May be nil if there is no body. @@ -264,8 +265,9 @@ passed to subsequent filters. Meaning, the following Lua code is invalid: end end -*headers* is a table of key/value pairs to send. Note that the *:status* header -must be set. *body* is a string and supplies the optional response body. May be nil. +*headers* is a table of key/value pairs to send (the value can be a string or table of strings). +Note that the *:status* header must be set. *body* is a string and supplies the optional response +body. May be nil. metadata() ^^^^^^^^^^ @@ -316,10 +318,10 @@ importPublicKey() ^^^^^^^^^^^^^^^^^ .. code-block:: lua - + pubkey = handle:importPublicKey(keyder, keyderLength) -Returns public key which is used by :ref:`verifySignature ` to verify digital signature. +Returns public key which is used by :ref:`verifySignature ` to verify digital signature. .. _verify_signature: @@ -330,13 +332,13 @@ verifySignature() ok, error = verifySignature(hashFunction, pubkey, signature, signatureLength, data, dataLength) -Verify signature using provided parameters. *hashFunction* is the variable for hash function which be used -for verifying signature. *SHA1*, *SHA224*, *SHA256*, *SHA384* and *SHA512* are supported. -*pubkey* is the public key. *signature* is the signature to be verified. *signatureLength* is +Verify signature using provided parameters. *hashFunction* is the variable for hash function which be used +for verifying signature. *SHA1*, *SHA224*, *SHA256*, *SHA384* and *SHA512* are supported. +*pubkey* is the public key. *signature* is the signature to be verified. *signatureLength* is the length of the signature. *data* is the content which will be hashed. *dataLength* is the length of data. The function returns a pair. If the first element is *true*, the second element will be empty -which means signature is verified; otherwise, the second element will store the error message. +which means signature is verified; otherwise, the second element will store the error message. .. _config_http_filters_lua_header_wrapper: diff --git a/docs/root/configuration/statistics.rst b/docs/root/configuration/statistics.rst index 1e79f39a0bf99..0042051e0acb4 100644 --- a/docs/root/configuration/statistics.rst +++ b/docs/root/configuration/statistics.rst @@ -3,6 +3,8 @@ Statistics ========== +.. _server_statistics: + Server ------ @@ -25,6 +27,8 @@ Server related statistics are rooted at *server.* with following statistics: hot_restart_epoch, Gauge, Current hot restart epoch initialization_time_ms, Histogram, Total time taken for Envoy initialization in milliseconds. This is the time from server start-up until the worker threads are ready to accept new connections debug_assertion_failures, Counter, Number of debug assertion failures detected in a release build if compiled with `--define log_debug_assert_in_release=enabled` or zero otherwise + static_unknown_fields, Counter, Number of messages in static configuration with unknown fields + dynamic_unknown_fields, Counter, Number of messages in dynamic configuration with unknown fields File system ----------- diff --git a/docs/root/configuration/tools/router_check.rst b/docs/root/configuration/tools/router_check.rst index 5a596521e95c9..1d4dd2482757a 100644 --- a/docs/root/configuration/tools/router_check.rst +++ b/docs/root/configuration/tools/router_check.rst @@ -167,6 +167,19 @@ run will fail. .. code:: bash - > bazel-bin/test/tools/router_check/router_check_tool --config-path ... --test-path ... --useproto --fail-under 0.08 - Current route coverage: 0.0744863 - Failed to meet coverage requirement: 0.08 + > bazel-bin/test/tools/router_check/router_check_tool --config-path ... --test-path ... --useproto --fail-under 8 + Current route coverage: 7.44863% + Failed to meet coverage requirement: 8% + + +By default the coverage report measures test coverage by checking that at least one field is +verified for every route. However, this can leave holes in the tests where fields +aren't validated and later changed. For more comprehensive coverage you can add a flag, +`--covall`, which will calculate coverage taking into account all of the possible +fields that could be tested. + +.. code:: bash + + > bazel-bin/test/tools/router_check/router_check_tool --config-path ... --test-path ... --useproto --f 7 --covall + Current route coverage: 6.2948% + Failed to meet coverage requirement: 7% diff --git a/docs/root/intro/arch_overview/other_protocols/redis.rst b/docs/root/intro/arch_overview/other_protocols/redis.rst index 22650a4264ade..47e55418c679c 100644 --- a/docs/root/intro/arch_overview/other_protocols/redis.rst +++ b/docs/root/intro/arch_overview/other_protocols/redis.rst @@ -27,6 +27,7 @@ The Redis project offers a thorough reference on partitioning as it relates to R * Prefix routing. * Separate downstream client and upstream server authentication. * Request mirroring for all requests or write requests only. +* Control :ref:`read requests routing`. This only works with Redis Cluster. **Planned future enhancements**: diff --git a/docs/root/intro/arch_overview/upstream/load_balancing/load_balancers.rst b/docs/root/intro/arch_overview/upstream/load_balancing/load_balancers.rst index df762656fea6a..5b6c4bb5c40fc 100644 --- a/docs/root/intro/arch_overview/upstream/load_balancing/load_balancers.rst +++ b/docs/root/intro/arch_overview/upstream/load_balancing/load_balancers.rst @@ -28,10 +28,10 @@ effective weighting. Weighted least request ^^^^^^^^^^^^^^^^^^^^^^ -The least request load balancer uses different algorithms depending on whether any of the hosts have -weight greater than 1. +The least request load balancer uses different algorithms depending on whether hosts have the +same or different weights. -* *all weights 1*: An O(1) algorithm which selects N random available hosts as specified in the +* *all weights equal*: An O(1) algorithm which selects N random available hosts as specified in the :ref:`configuration ` (2 by default) and picks the host which has the fewest active requests (`Research `_ has shown that this @@ -39,17 +39,13 @@ weight greater than 1. choices). The P2C load balancer has the property that a host with the highest number of active requests in the cluster will never receive new requests. It will be allowed to drain until it is less than or equal to all of the other hosts. -* *not all weights 1*: If any host in the cluster has a load balancing weight greater than 1, the - load balancer shifts into a mode where it uses a weighted round robin schedule in which weights - are dynamically adjusted based on the host's request load at the time of selection (weight is - divided by the current active request count. For example, a host with weight 2 and an active - request count of 4 will have a synthetic weight of 2 / 4 = 0.5). This algorithm provides good - balance at steady state but may not adapt to load imbalance as quickly. Additionally, unlike P2C, - a host will never truly drain, though it will receive fewer requests over time. - - .. note:: - If all weights are not 1, but are the same (e.g., 42), Envoy will still use the weighted round - robin schedule instead of P2C. +* *all weights not equal*: If two or more hosts in the cluster have different load balancing + weights, the load balancer shifts into a mode where it uses a weighted round robin schedule in + which weights are dynamically adjusted based on the host's request load at the time of selection + (weight is divided by the current active request count. For example, a host with weight 2 and an + active request count of 4 will have a synthetic weight of 2 / 4 = 0.5). This algorithm provides + good balance at steady state but may not adapt to load imbalance as quickly. Additionally, unlike + P2C, a host will never truly drain, though it will receive fewer requests over time. .. _arch_overview_load_balancing_types_ring_hash: diff --git a/docs/root/intro/deprecated.rst b/docs/root/intro/deprecated.rst index c8399d9ab087a..6ca0b034b759b 100644 --- a/docs/root/intro/deprecated.rst +++ b/docs/root/intro/deprecated.rst @@ -13,6 +13,7 @@ Deprecated items below are listed in chronological order. Version 1.12.0 (pending) ======================== * The ORIGINAL_DST_LB :ref:`load balancing policy ` is deprecated, use CLUSTER_PROVIDED policy instead when configuring an :ref:`original destination cluster `. +* The :option:`--allow-unknown-fields` command-line option, use :option:`--allow-unknown-static-fields` instead. Version 1.11.0 (July 11, 2019) ============================== diff --git a/docs/root/intro/version_history.rst b/docs/root/intro/version_history.rst index b188266557da6..f0bac13068d8d 100644 --- a/docs/root/intro/version_history.rst +++ b/docs/root/intro/version_history.rst @@ -6,8 +6,16 @@ Version history * access log: added :ref:`buffering ` and :ref:`periodical flushing ` support to gRPC access logger. Defaults to 16KB buffer and flushing every 1 second. * admin: added ability to configure listener :ref:`socket options `. * admin: added config dump support for Secret Discovery Service :ref:`SecretConfigDump `. +* api: added ::ref:`set_node_on_first_message_only ` option to omit the node identifier from the subsequent discovery requests on the same stream. +* config: enforcing that terminal filters (e.g. HttpConnectionManager for L4, router for L7) be the last in their respective filter chains. * buffer filter: the buffer filter populates content-length header if not present, behavior can be disabled using the runtime feature `envoy.reloadable_features.buffer_filter_populate_content_length`. * config: added access log :ref:`extension filter`. +* config: added support for :option:`--reject-unknown-dynamic-fields`, providing independent control + over whether unknown fields are rejected in static and dynamic configuration. By default, unknown + fields in static configuration are rejected and are allowed in dynamic configuration. Warnings + are logged for the first use of any unknown field and these occurrences are counted in the + :ref:`server.static_unknown_fields ` and :ref:`server.dynamic_unknown_fields + ` statistics. * config: async data access for local and remote data source. * config: changed the default value of :ref:`initial_fetch_timeout ` from 0s to 15s. This is a change in behaviour in the sense that Envoy will move to the next initialization phase, even if the first config is not delivered in 15s. Refer to :ref:`initialization process ` for more details. * config: added stat :ref:`init_fetch_timeout `. @@ -17,13 +25,21 @@ Version history * header to metadata: added :ref:`PROTOBUF_VALUE ` and :ref:`ValueEncode ` to support protobuf Value and Base64 encoding. * http: added the ability to reject HTTP/1.1 requests with invalid HTTP header values, using the runtime feature `envoy.reloadable_features.strict_header_validation`. * http: added the ability to :ref:`merge adjacent slashes` in the path. +* http: remove h2c upgrade headers for HTTP/1 as h2c upgrades are currently not supported. * listeners: added :ref:`continue_on_listener_filters_timeout ` to configure whether a listener will still create a connection when listener filters time out. * listeners: added :ref:`HTTP inspector listener filter `. +* redis: added :ref:`read_policy ` to allow reading from redis replicas for Redis Cluster deployments. +* rbac: added support for DNS SAN as :ref:`principal_name `. +* lua: extended `httpCall()` and `respond()` APIs to accept headers with entry values that can be a string or table of strings. +* performance: new buffer implementation enabled by default (to disable add "--use-libevent-buffers 1" to the command-line arguments when starting Envoy). +* rbac: added conditions to the policy, see :ref:`condition `. * router: added :ref:`rq_retry_skipped_request_not_complete ` counter stat to router stats. * router check tool: add coverage reporting & enforcement. +* router check tool: add comprehensive coverage reporting. * tls: added verification of IP address SAN fields in certificates against configured SANs in the certificate validation context. * upstream: added network filter chains to upstream connections, see :ref:`filters`. +* upstream: use p2c to select hosts for least-requests load balancers if all host weights are the same, even in cases where weights are not equal to 1. * zookeeper: parse responses and emit latency stats. 1.11.1 (August 13, 2019) @@ -106,9 +122,7 @@ Version history * router: added a route name field to each http route in route.Route list * router: added several new variables for exposing information about the downstream TLS connection via :ref:`header formatters `. -* router: per try timeouts will no longer start before the downstream request has been received - in full by the router. This ensures that the per try timeout does not account for slow - downstreams and that will not start before the global timeout. +* router: per try timeouts will no longer start before the downstream request has been received in full by the router.This ensures that the per try timeout does not account for slow downstreams and that will not start before the global timeout. * router: added :ref:`RouteAction's auto_host_rewrite_header ` to allow upstream host header substitution with some other header's value * router: added support for UPSTREAM_REMOTE_ADDRESS :ref:`header formatter `. diff --git a/docs/root/operations/admin.rst b/docs/root/operations/admin.rst index f0d1f1d73bc2e..c681deb559513 100644 --- a/docs/root/operations/admin.rst +++ b/docs/root/operations/admin.rst @@ -219,7 +219,7 @@ modify different aspects of the server: "concurrency": 8, "config_path": "config.yaml", "config_yaml": "", - "allow_unknown_fields": false, + "allow_unknown_static_fields": false, "admin_address_path": "", "local_address_ip_version": "v4", "log_level": "info", diff --git a/docs/root/operations/cli.rst b/docs/root/operations/cli.rst index 3f6494e641381..4ebc9bb4b6c7b 100644 --- a/docs/root/operations/cli.rst +++ b/docs/root/operations/cli.rst @@ -228,10 +228,25 @@ following are the command line options that Envoy supports. .. option:: --allow-unknown-fields - *(optional)* This flag disables validation of protobuf configurations for unknown fields. By default, the + *(optional)* Deprecated alias for :option:`--allow-unknown-static-fields`. + +.. option:: --allow-unknown-static-fields + + *(optional)* This flag disables validation of protobuf configurations for unknown fields. By default, the validation is enabled. For most deployments, the default should be used which ensures configuration errors - are caught upfront and Envoy is configured as intended. However in cases where Envoy needs to accept configuration - produced by newer control planes, effectively ignoring new features it does not know about yet, this can be disabled. + are caught upfront and Envoy is configured as intended. Warnings are logged for the first use of + any unknown field and these occurrences are counted in the :ref:`server.static_unknown_fields + ` statistic. + +.. option:: --reject-unknown-dynamic-fields + + *(optional)* This flag disables validation of protobuf configuration for unknown fields in + dynamic configuration. By default, this flag is set false, disabling validation for fields beyond + bootstrap. This allows newer xDS configurations to be delivered to older Envoys. This can be set + true for strict dynamic checking when this behavior is not wanted but the default should be + desirable for most Envoy deployments. Warnings are logged for the first use of any unknown field + and these occurrences are counted in the :ref:`server.dynamic_unknown_fields ` + statistic. .. option:: --version diff --git a/docs/root/start/sandboxes/front_proxy.rst b/docs/root/start/sandboxes/front_proxy.rst index e14d938cadfdb..ee607db133dc8 100644 --- a/docs/root/start/sandboxes/front_proxy.rst +++ b/docs/root/start/sandboxes/front_proxy.rst @@ -204,7 +204,7 @@ statistics. For example inside ``frontenvoy`` we can get:: "concurrency": 4, "config_path": "/etc/front-envoy.yaml", "config_yaml": "", - "allow_unknown_fields": false, + "allow_unknown_static_fields": false, "admin_address_path": "", "local_address_ip_version": "v4", "log_level": "info", diff --git a/examples/grpc-bridge/client/requirements.txt b/examples/grpc-bridge/client/requirements.txt index a86d6229e8b9d..8ef4a95ccde01 100644 --- a/examples/grpc-bridge/client/requirements.txt +++ b/examples/grpc-bridge/client/requirements.txt @@ -1,3 +1,3 @@ -requests>=2.20.0 +requests>=2.22.0 grpcio -protobuf==3.7.1 +protobuf==3.8.0 diff --git a/examples/wasm/README.md b/examples/wasm/README.md index b0af060a5d437..14d345fcafc1f 100644 --- a/examples/wasm/README.md +++ b/examples/wasm/README.md @@ -48,14 +48,14 @@ Now you want to make changes to the C++ filter, regenerate to WASM module. 1. Download and install [`protobuf`](https://github.com/protocolbuffers/protobuf/blob/master/src/README.md). 2. Download and install [`WAVM`](https://github.com/WAVM/WAVM). 3. Download and install [`emscripten`](https://emscripten.org/docs/getting_started/downloads.html#installation-instructions) -4. Activate emsdk archived version 1.38.39 (Note: by 07/26/2019 the latest known working version is 1.38.39). +4. Activate emsdk archived version 1.38.42 (Note: by 08/26/2019 the latest known working version is 1.38.42). ```shell # in emsdk directory - ./emsdk install sdk-1.38.39-64bit - ./emsdk activate sdk-1.38.39-64bit + ./emsdk install sdk-1.38.42-64bit + ./emsdk activate sdk-1.38.42-64bit source emsdk_env.sh - # verify, should output 1.38.39 + # verify, should output 1.38.42 em++ -v 2>&1 |grep Emscripten ``` diff --git a/examples/wasm/envoy_filter_http_wasm_example.cc b/examples/wasm/envoy_filter_http_wasm_example.cc index 9aa9442ea62a1..3d2b5a895773a 100644 --- a/examples/wasm/envoy_filter_http_wasm_example.cc +++ b/examples/wasm/envoy_filter_http_wasm_example.cc @@ -27,28 +27,28 @@ static RegisterContextFactory register_ExampleContext(CONTEXT_FACTORY(ExampleCon ROOT_FACTORY(ExampleRootContext), "my_root_id"); -void ExampleRootContext::onStart(WasmDataPtr) { logTrace("onStart"); } +void ExampleRootContext::onStart(WasmDataPtr) { LOG_TRACE("onStart"); } -void ExampleContext::onCreate() { logWarn(std::string("onCreate " + std::to_string(id()))); } +void ExampleContext::onCreate() { LOG_WARN(std::string("onCreate " + std::to_string(id()))); } FilterHeadersStatus ExampleContext::onRequestHeaders() { - logDebug(std::string("onRequestHeaders ") + std::to_string(id())); + LOG_DEBUG(std::string("onRequestHeaders ") + std::to_string(id())); auto result = getRequestHeaderPairs(); auto pairs = result->pairs(); - logInfo(std::string("headers: ") + std::to_string(pairs.size())); + LOG_INFO(std::string("headers: ") + std::to_string(pairs.size())); for (auto& p : pairs) { - logInfo(std::string(p.first) + std::string(" -> ") + std::string(p.second)); + LOG_INFO(std::string(p.first) + std::string(" -> ") + std::string(p.second)); } return FilterHeadersStatus::Continue; } FilterHeadersStatus ExampleContext::onResponseHeaders() { - logDebug(std::string("onResponseHeaders ") + std::to_string(id())); + LOG_DEBUG(std::string("onResponseHeaders ") + std::to_string(id())); auto result = getResponseHeaderPairs(); auto pairs = result->pairs(); - logInfo(std::string("headers: ") + std::to_string(pairs.size())); + LOG_INFO(std::string("headers: ") + std::to_string(pairs.size())); for (auto& p : pairs) { - logInfo(std::string(p.first) + std::string(" -> ") + std::string(p.second)); + LOG_INFO(std::string(p.first) + std::string(" -> ") + std::string(p.second)); } addResponseHeader("newheader", "newheadervalue"); replaceResponseHeader("location", "envoy-wasm"); @@ -57,12 +57,12 @@ FilterHeadersStatus ExampleContext::onResponseHeaders() { FilterDataStatus ExampleContext::onRequestBody(size_t body_buffer_length, bool end_of_stream) { auto body = getRequestBodyBufferBytes(0, body_buffer_length); - logError(std::string("onRequestBody ") + std::string(body->view())); + LOG_ERROR(std::string("onRequestBody ") + std::string(body->view())); return FilterDataStatus::Continue; } -void ExampleContext::onDone() { logWarn(std::string("onDone " + std::to_string(id()))); } +void ExampleContext::onDone() { LOG_WARN(std::string("onDone " + std::to_string(id()))); } -void ExampleContext::onLog() { logWarn(std::string("onLog " + std::to_string(id()))); } +void ExampleContext::onLog() { LOG_WARN(std::string("onLog " + std::to_string(id()))); } -void ExampleContext::onDelete() { logWarn(std::string("onDelete " + std::to_string(id()))); } +void ExampleContext::onDelete() { LOG_WARN(std::string("onDelete " + std::to_string(id()))); } diff --git a/examples/wasm/envoy_filter_http_wasm_example.wasm b/examples/wasm/envoy_filter_http_wasm_example.wasm index 1b67a5192cf51..3e58770955108 100644 Binary files a/examples/wasm/envoy_filter_http_wasm_example.wasm and b/examples/wasm/envoy_filter_http_wasm_example.wasm differ diff --git a/examples/wasm/envoy_filter_http_wasm_example.wat b/examples/wasm/envoy_filter_http_wasm_example.wat index 1c01ad1994a03..ea3c0020e9d84 100644 --- a/examples/wasm/envoy_filter_http_wasm_example.wat +++ b/examples/wasm/envoy_filter_http_wasm_example.wat @@ -20,16 +20,19 @@ (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,19 +44,20 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_getHeaderMapPairs" (func $_proxy_getHeaderMapPairs (param i32 i32 i32))) - (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getHeaderMapPairs" (func $_proxy_getHeaderMapPairs (param i32 i32 i32) (result i32))) + (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 447 447 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -106,46 +110,73 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 17584)) - (global $31 (mut i32) (i32.const 5260464)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 26752)) + (global $33 (mut i32) (i32.const 5269632)) + (elem $34 $28 (global.get $30) $b0 $__ZN11RootContext6asRootEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZN11RootContext6asRootEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv - $__ZN14ExampleContext17onResponseHeadersEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv - $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN11RootContext9asContextEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv - $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv - $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv - $__ZNK6google8protobuf14FatalException4whatEv $__ZN11RootContext9asContextEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 + $__ZN14ExampleContext17onResponseHeadersEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv + $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN11RootContext9asContextEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN11RootContext9asContextEv $__ZN11RootContext9asContextEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN11RootContext9asContextEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN14ExampleContext13onRequestBodyEmb $__ZN7Context14onResponseBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN7Context14onResponseBodyEmb - $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv + $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11RootContextD2Ev $__ZN18ExampleRootContextD0Ev $__ZN11RootContext6onTickEv $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN14ExampleContext8onCreateEv $__ZN14ExampleContext6onDoneEv - $__ZN14ExampleContext5onLogEv $__ZN14ExampleContext8onDeleteEv $__ZN18ExampleRootContextD0Ev $__ZN14ExampleContextD0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev + $__ZN14ExampleContext5onLogEv $__ZN14ExampleContext8onDeleteEv $__ZN18ExampleRootContextD0Ev $__ZN14ExampleContextD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN14ExampleContextD0Ev $__ZN11RootContext6onTickEv $__ZN11RootContext6onTickEv $__ZN11RootContext6onTickEv $__ZN11RootContext6onTickEv $__ZN6google8protobuf14FatalExceptionD2Ev - $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN11RootContext6onTickEv $__ZN11RootContext6onTickEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv + $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN11RootContext6onTickEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN11RootContext6onTickEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN11RootContext6onTickEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN11RootContext6onTickEv $__ZN11RootContext6onTickEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN11RootContext6onTickEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv + $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 $b7 $b7 $b7 $b8 $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN18ExampleRootContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE - $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi - $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv + $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b10 $b10 $b10 $b10 $b10 + $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "K-\00\00P-\00\00X-\00\00^-") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "\01;\00\00\06;\00\00\0e;\00\00\14;") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -175,239 +206,387 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\c8\1a\00\00@\1c\00\00\f0\1a\00\002\1c\00\00p\11\00\00\00\00\00\00\f0" - "\1a\00\00\1d\1c\00\00x\11\00\00\00\00\00\00\f0\1a\00\00_\1c\00\00p\11\00\00\00\00\00\00\f0\1a\00\00N\1c\00\00\98\11\00\00\00\00\00\00\c8\1a\00\00\e1\1c\00\00\f0\1a\00\00h\1c\00\00\b8" - "\11\00\00\00\00\00\00\c8\1a\00\00C\1d\00\00\c8\1a\00\00\e6\1d\00\00\f0\1a\00\00H\1d\00\00\d8\11\00\00\00\00\00\00\c8\1a\00\00m\1e\00\00\c8\1a\00\00r\1e\00\00\\\1b\00\00\8b\1f\00\00\00" - "\00\00\00\01\00\00\00\18\12\00\00\00\00\00\00\c8\1a\00\00\ca\1f\00\00\f0\1a\00\00\f2)\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\d4(\00\00@\12\00\00\00\00\00\00\f0\1a\00\00z\"\00\00P" - "\12\00\00\00\00\00\00\f0\1a\00\00\aa\"\00\00`\12\00\00\00\00\00\00\f0\1a\00\00p#\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\a1(\00\00\d0\12\00\00\00\00\00\00\\\1b\00\00H'\00\00\00" - "\00\00\00\01\00\00\00\98\12\00\00\00\00\00\00\c8\1a\00\00\b5'\00\00\f0\1a\00\00\bb(\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00F*\00\00\c0\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4816) - "\c8\1a\00\00G/\00\00\f0\1a\00\00\183\00\00\f8\12\00\00\00\00\00\00\f0\1a\00\00\d43\00\00\f8\12\00\00\00\00\00\00\c8\1a\00\00\a04\00\00\05") - (data $52 $27 (i32.const 4876) - "2") - (data $53 $27 (i32.const 4900) - "\09\00\00\00\01\00\00\00\db?") - (data $54 $27 (i32.const 4924) - "\02") - (data $55 $27 (i32.const 4939) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 5008) - "\05") - (data $57 $27 (i32.const 5020) - "2") - (data $58 $27 (i32.const 5044) - "\n\00\00\00\01\00\00\00\e87\00\00\00\04") - (data $59 $27 (i32.const 5068) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\ac\1e\00\00P,\00\00\d4\1e\00\00B,\00\00p\11\00\00\00\00\00\00\d4" + "\1e\00\00-,\00\00x\11\00\00\00\00\00\00\d4\1e\00\00o,\00\00p\11\00\00\00\00\00\00\d4\1e\00\00^,\00\00\98\11\00\00\00\00\00\00\ac\1e\00\00x,\00\00\ac\1e\00\00},\00\00\ac" + "\1e\00\00\82,\00\00\f0*\00\00\84-\00\00\00\00\00\00\01\00\00\00\e8\11\00\00\00\00\00\00\ac\1e\00\00\c3-\00\00\d4\1e\00\00\a87\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\8a6\00\00\10" + "\12\00\00\00\00\00\00\d4\1e\00\00G0\00\00 \12\00\00\00\00\00\00\d4\1e\00\00w0\00\000\12\00\00\00\00\00\00\d4\1e\00\00=1\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00W6\00\00\a0" + "\12\00\00\00\00\00\00\f0*\00\00\155\00\00\00\00\00\00\01\00\00\00h\12\00\00\00\00\00\00\ac\1e\00\00\825\00\00\d4\1e\00\00q6\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\fc7\00\00\90" + "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4768) + "\ac\1e\00\00\fa<\00\00\d4\1e\00\00\cb@\00\00\c8\12\00\00\00\00\00\00\d4\1e\00\00\87A\00\00\c8\12\00\00\00\00\00\00\ac\1e\00\00SB\00\00\05") + (data $54 $29 (i32.const 4828) + ".") + (data $55 $29 (i32.const 4852) + "\09\00\00\00\01\00\00\00\b8[\00\00\00\04") + (data $56 $29 (i32.const 4876) "\01") - (data $60 $27 (i32.const 5083) + (data $57 $29 (i32.const 4891) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5188) + (data $58 $29 (i32.const 4960) + "\05") + (data $59 $29 (i32.const 4972) + ".") + (data $60 $29 (i32.const 4996) + "\n\00\00\00\01\00\00\00\a6c") + (data $61 $29 (i32.const 5020) + "\02") + (data $62 $29 (i32.const 5035) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5140) "\0b") - (data $62 $27 (i32.const 5227) + (data $64 $29 (i32.const 5179) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5296) - "\f0\1a\00\00\195\00\00\c0\14\00\00\00\00\00\00\c8\1a\00\00\df5\00\00\f0\1a\00\00?6\00\00\d8\14\00\00\00\00\00\00\f0\1a\00\00\ec5\00\00\e8\14\00\00\00\00\00\00\c8\1a\00\00\0d6\00\00" - "\f0\1a\00\00\1a6\00\00\c8\14\00\00\00\00\00\00\f0\1a\00\00!7\00\00\c0\14\00\00\00\00\00\00\f0\1a\00\0017\00\00\00\15\00\00\00\00\00\00\f0\1a\00\00f7\00\00\d8\14\00\00\00\00\00\00" - "\f0\1a\00\00B7\00\00 \15\00\00\00\00\00\00\f0\1a\00\00\887\00\00\d8\14\00\00\00\00\00\00@\1b\00\00\b07\00\00@\1b\00\00\b27\00\00\f0\1a\00\00\b47\00\00\c8\14") - (data $64 $27 (i32.const 5492) + (data $65 $29 (i32.const 5248) + "\d4\1e\00\00\caB\00\00\90\14\00\00\00\00\00\00\ac\1e\00\00\93C\00\00\d4\1e\00\00\f3C\00\00\a8\14\00\00\00\00\00\00\d4\1e\00\00\a0C\00\00\b8\14\00\00\00\00\00\00\ac\1e\00\00\c1C\00\00" + "\d4\1e\00\00\ceC\00\00\98\14\00\00\00\00\00\00\d4\1e\00\00\83E\00\00\e0\14\00\00\00\00\00\00\ac\1e\00\00\b2E\00\00\d4\1e\00\00fF\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\a9F\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\f6F\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00= (0): " - "\00CHECK failed: (index) < (current_size_): \00/home/jplev_google_co" - "m/envoy/api/wasm/cpp/google/protobuf/map.h\00CHECK failed: (bucket" - "_index_ & 1) == (0): \00CHECK failed: m_->index_of_first_non_null_" - " == m_->num_buckets_ || m_->table_[m_->index_of_first_non_null_]" - " != NULL: \00CHECK failed: !tree->empty(): \00CHECK failed: node_ !=" - " NULL && m_ != NULL: \00google.protobuf.Value.string_value\00google." - "protobuf.Struct.FieldsEntry.key\00CHECK failed: (&from) != (this):" - " \00CHECK failed: (&other) != (this): \00N6google8protobuf27Struct_F" - "ieldsEntry_DoNotUseE\00N6google8protobuf8internal12MapEntryLiteINS" - "0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4_11cha" - "r_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite" - "9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12MapEntryI" - "mplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__21" - "2basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5Val" - "ueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed:" - " (it.m_) == (this): \00CHECK failed: TableEntryIsNonEmptyList(b): " - "\00CHECK failed: TableEntryIsTree(b): \00CHECK failed: GetArenaNoVir" - "tual() == NULL: \00CHECK failed: index_of_first_non_null_ == num_b" - "uckets_ || table_[index_of_first_non_null_] != NULL: \00CHECK fail" - "ed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed: (cou" - "nt) <= (kMaxLength): \00CHECK failed: (result.bucket_index_) == (b" - " & ~static_cast(1)): \00CHECK failed: (table_[b]) == (t" - "able_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !TableEntr" - "yIsTree(b ^ 1): \00CHECK failed: (count) == (tree->size()): \00CHECK" - " failed: (new_num_buckets) >= (kMinTableSize): \00CHECK failed: n " - ">= kMinTableSize: \00CHECK failed: (n & (n - 1)) == (0): \00CHECK fa" - "iled: table_[b] == table_[b + 1] && (b & 1) == 0: \00N6google8prot" - "obuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9alloca" - "torIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt3__212" - "basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == N" - "ULL || dynamic_cast(f) != NULL\00/home/jplev_google_com/envoy/" - "api/wasm/cpp/google/protobuf/stubs/casts.h\00down_cast\00google.prot" - "obuf.Struct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N" - "6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry" - "_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_tr" - "aitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9Fie" - "ldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0)" - ": \00google.protobuf.ListValue\00N6google8protobuf9ListValueE\00google" - ".protobuf.Value\00no context factory for root_id: \00N6google8protob" - "uf14FatalExceptionE\00google/protobuf/stubs/common.cc\00This program" - " requires version \00%d.%d.%d\00 of the Protocol Buffer runtime libr" - "ary, but the installed version is \00. Please update your library" - ". If you compiled the program yourself, make sure that your hea" - "ders are from the same version of Protocol Buffers as your link-" - "time library. (Version verification failed in \"\00\".)\00This progra" - "m was compiled against version \00 of the Protocol Buffer runtime " - "library, which is not compatible with the installed version (\00)." - " Contact the program author for an update. If you compiled the" - " program yourself, make sure that your headers are from the same" - " version of Protocol Buffers as your link-time library. (Versio" - "n verification failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNI" - "NG\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exceeds maxi" - "mum supported size\00%d\00google/protobuf/arena.cc\00CHECK failed: (mi" - "n_bytes) <= (std::numeric_limits::max() - kBlockHeaderSi" - "ze): \00google/protobuf/generated_message_util.cc\00Not implemented " - "field number \00 with type \00CHECK failed: (scc->visit_status.load(" - "std::memory_order_relaxed)) == (SCCInfoBase::kRunning): \00google/" - "protobuf/message_lite.cc\00CHECK failed: !coded_out.HadError(): \00(" - "cannot determine missing fields for lite message)\00N6google8proto" - "buf11MessageLiteE\00google/protobuf/repeated_field.cc\00CHECK failed" - ": (new_size) <= ((std::numeric_limits::max() - kRepHeade" - "rSize) / sizeof(old_rep->elements[0])): \00Requested size is too l" - "arge to fit into size_t.\00google/protobuf/wire_format_lite.cc\00CHE" - "CK failed: (value.size()) <= (kint32max): \00serializing\00parsing\00 " - "'%s'\00String field\00 contains invalid \00UTF-8 data when \00 a protoco" - "l \00buffer. Use the 'bytes' type if you intend to send raw \00bytes" - ". \00google/protobuf/io/coded_stream.cc\00CHECK failed: (buffer_size" - ") >= (0): \00A protocol message was rejected because it was too bi" - "g (more than \00 bytes). To increase the limit (or to disable the" - "se warnings), see CodedInputStream::SetTotalBytesLimit() in goog" - "le/protobuf/io/coded_stream.h.\00google/protobuf/io/zero_copy_stre" - "am_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK failed: (la" - "st_returned_size_) > (0): \00BackUp() can only be called after a s" - "uccessful Next().\00CHECK failed: (count) <= (last_returned_size_)" - ": \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK failed: target" - "_ != NULL: \00CHECK failed: (count) <= (target_->size()): \00Cannot " - "allocate buffer larger than kint32max for \00StringOutputStream.\00N" - "6google8protobuf2io18StringOutputStreamE\00google/protobuf/io/zero" - "_copy_stream.cc\00This ZeroCopyOutputStream doesn't support aliasi" - "ng. Reaching here usually means a ZeroCopyOutputStream implement" - "ation bug.\00N6google8protobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x" - "\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::bad_function_c" - "all\00NSt3__217bad_function_callE\00mutex lock failed\00%u\00%lu\00termina" - "ting with %s exception of type %s: %s\00terminating with %s except" - "ion of type %s\00terminating with %s foreign exception\00terminating" - "\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9type_" - "info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__class" - "_type_infoE\00pthread_once failure in __cxa_get_globals_fast()\00can" - "not create pthread key for __cxa_get_globals()\00cannot zero out t" - "hread value for __cxa_get_globals()\00terminate_handler unexpected" - "ly returned\00St11logic_error\00St12length_error\00N10__cxxabiv119__po" - "inter_type_infoE\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv1" - "23__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__vmi_class_type_i" - "nfoE") + "\03\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00p\11\00\00\04\00\00\00\0b\00\00\00\0b\00\00\00\0c\00\00\00\01\00\00\00\02") + (data $67 $29 (i32.const 6796) + "\b8\11") + (data $68 $29 (i32.const 6812) + "\c0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6836) + "\10\12\00\00\0c\00\00\00\0d\00\00\00\08\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\09\00\00\00\n\00\00\00\04\00\00\00\11\00\00\00\0b\00\00\00\05\00\00\00" + "\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\0f\00\00\00\10\00\00\00\0c\00\00\00\16\00\00\00\06\00\00\00\17\00\00\00\18\00\00\00\11\00\00\00\19\00\00\00" + "\09\00\00\00\0d\00\00\00\07\00\00\00\1a\00\00\00\0e\00\00\00\05\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\12\00\00\00\13\00\00\00\0f\00\00\00\1c\00\00\00\08\00\00\00" + "\1d\00\00\00\1e\00\00\00\14\00\00\00\1f\00\00\00\09\00\00\00\10\00\00\00\09\00\00\00 \00\00\00\11\00\00\00\05\00\00\00!\00\00\00\04\00\00\00\13") + (data $70 $29 (i32.const 7085) + "\12\00\00\0c\00\00\00\15\00\00\00\08\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\09\00\00\00\n\00\00\00\04\00\00\00\11\00\00\00\0b\00\00\00\05\00\00\00\12" + "\00\00\00\03\00\00\00\13\00\00\00\"\00\00\00#\00\00\00\00\00\00\00@\12\00\00\16\00\00\00\17\00\00\00\12\00\00\00$\00\00\00\n\00\00\00%\00\00\00&\00\00\00\18\00\00\00'\00\00\00\09" + "\00\00\00\13\00\00\00\0b\00\00\00(\00\00\00\14\00\00\00\05\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\000\12\00\00\0c\00\00\00\19\00\00\00\08\00\00\00\0d\00\00\00\03\00\00\00\0e" + "\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\09\00\00\00\n\00\00\00\04\00\00\00\11\00\00\00\0b\00\00\00\05\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00\98" + "\11\00\00\04\00\00\00\1a\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\02\00\00\00\1b\00\00\00*\00\00\00\06\00\00\00\05\00\00\00\07\00\00\00+\00\00\00\09\00\00\00\02\00\00\00\n\00\00\00\1c" + "\00\00\00\1d\00\00\00\1e") + (data $71 $29 (i32.const 7424) + "\01\00\00\00X\19\00\00\00\00\00\00\80\12\00\00\1f\00\00\00 \00\00\00,\00\00\00\00\00\00\00\a8\12\00\00!\00\00\00\"\00\00\00\06\00\00\00\15\00\00\00\01\00\00\00\07\00\00\00-\00\00\00" + "\00\00\00\00\b8\12\00\00!\00\00\00#\00\00\00\08\00\00\00\16\00\00\00\02\00\00\00\07\00\00\00-") + (data $72 $29 (i32.const 7529) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\98c\00\00\a6c\00\00\10\0d\00\00\d0\12\00\00`\13") + (data $73 $29 (i32.const 7768) + ",a") + (data $74 $29 (i32.const 7828) + "\80\14\00\00$\00\00\00%\00\00\00/\00\00\00\00\00\00\00\98\14\00\00&\00\00\00'\00\00\00(\00\00\00)\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\c0\14\00\00" + "&\00\00\00*\00\00\00(\00\00\00)\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\d0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\17\00\00\00\18\00\00\00" + "\19\00\00\00+\00\00\00,\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\18\00\00\00\19\00\00\00+\00\00\00-\00\00\00\00\00\00\00\e8\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1a\00\00\00\18\00\00\00\1b\00\00\00+\00\00\00.\00\00\00\00\00\00\00\f8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00" + "\18\00\00\00\19\00\00\00+\00\00\00/\00\00\00\00\00\00\00\08\15\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1d\00\00\00\1e\00\00\00\19\00\00\00+\00\00\000\00\00\00\00\00\00\00" + "\18\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1f\00\00\00 \00\00\00\19\00\00\00+\00\00\001\00\00\00\00\00\00\00(\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "!\00\00\00\18\00\00\00\"\00\00\00+\00\00\002\00\00\00\00\00\00\008\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00#\00\00\00\18\00\00\00\19\00\00\00+\00\00\003\00\00\00" + "\00\00\00\00H\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00$\00\00\00%\00\00\00\19\00\00\00+\00\00\004\00\00\00\00\00\00\00X\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00&\00\00\00\18\00\00\00\19\00\00\00+\00\00\005\00\00\00\00\00\00\00h\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\18\00\00\00\19\00\00\00+\00\00\00" + "6\00\00\00\00\00\00\00x\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00(\00\00\00\18\00\00\00\19\00\00\00+\00\00\007\00\00\00\00\00\00\00\88\15\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00)\00\00\00\18\00\00\00\19\00\00\00+\00\00\008\00\00\00\00\00\00\00\98\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\18\00\00\00\19\00\00\00" + "+\00\00\009\00\00\00\00\00\00\00\a8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\18\00\00\00\19\00\00\00+\00\00\00:\00\00\00\00\00\00\00\b8\15\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\18\00\00\00\19\00\00\00+\00\00\00;\00\00\00\00\00\00\00\c8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\18\00\00\00" + "\19\00\00\00+\00\00\00<\00\00\00\00\00\00\00\d8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\18\00\00\00\19\00\00\00+\00\00\00=\00\00\00\00\00\00\00\e8\15\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00\18\00\00\00\19\00\00\00+\00\00\00>\00\00\00\00\00\00\00\f8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00" + "\18\00\00\00\19\00\00\00+\00\00\00?\00\00\00\00\00\00\00\08\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\18\00\00\00\19\00\00\00+\00\00\00@\00\00\00\00\00\00\00" + "\18\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\002\00\00\00\18\00\00\00\19\00\00\00+\00\00\00A\00\00\00\00\00\00\00(\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "3\00\00\00\18\00\00\00\19\00\00\00+\00\00\00B\00\00\00\00\00\00\008\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\18\00\00\00\19\00\00\00+\00\00\00C\00\00\00" + "\00\00\00\00H\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\005\00\00\00\18\00\00\00\19\00\00\00+\00\00\00D\00\00\00\00\00\00\00X\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\006\00\00\00\18\00\00\00\19\00\00\00+\00\00\00E\00\00\00\00\00\00\00h\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\18\00\00\00\19\00\00\00+\00\00\00" + "F\00\00\00\00\00\00\00x\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\008\00\00\00\18\00\00\00\19\00\00\00+\00\00\00G\00\00\00\00\00\00\00\88\16\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\009\00\00\00\18\00\00\00:\00\00\00+\00\00\00H\00\00\00\00\00\00\00\98\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\18\00\00\00\19\00\00\00" + "+\00\00\00I\00\00\00\00\00\00\00\a8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\18\00\00\00\19\00\00\00+\00\00\00J\00\00\00\00\00\00\00\b8\16\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00=\00\00\00\18\00\00\00>\00\00\00+\00\00\00K\00\00\00\00\00\00\00\c8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\18\00\00\00" + "\19\00\00\00+\00\00\00L\00\00\00\00\00\00\00\d8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\18\00\00\00\19\00\00\00+\00\00\00M\00\00\00\00\00\00\00\e8\16\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00\18\00\00\00\19\00\00\00+\00\00\00N\00\00\00\00\00\00\00\f8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00B\00\00\00" + "\18\00\00\00C\00\00\00+\00\00\00O\00\00\00\00\00\00\00\08\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\18\00\00\00\19\00\00\00+\00\00\00P\00\00\00\00\00\00\00" + "\18\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00E\00\00\00\18\00\00\00\19\00\00\00+\00\00\00Q\00\00\00\00\00\00\00(\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "F\00\00\00\18\00\00\00\19\00\00\00+\00\00\00R\00\00\00\00\00\00\008\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\18\00\00\00\19\00\00\00+\00\00\00S\00\00\00" + "\00\00\00\00H\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00H\00\00\00\18\00\00\00\19\00\00\00+\00\00\00T\00\00\00\00\00\00\00X\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00I\00\00\00\18\00\00\00\19\00\00\00+\00\00\00U\00\00\00\00\00\00\00h\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00J\00\00\00\18\00\00\00\19\00\00\00+\00\00\00" + "V\00\00\00\00\00\00\00x\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00K\00\00\00L\00\00\00\19\00\00\00+\00\00\00W\00\00\00\00\00\00\00\88\17\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00M\00\00\00\18\00\00\00\19\00\00\00+\00\00\00X\00\00\00\00\00\00\00\98\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00N\00\00\00\18\00\00\00O\00\00\00" + "+\00\00\00Y\00\00\00\00\00\00\00\a8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\18\00\00\00\19\00\00\00+\00\00\00Z\00\00\00\00\00\00\00\b8\17\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\18\00\00\00\19\00\00\00+\00\00\00[\00\00\00\00\00\00\00\c8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\18\00\00\00" + "\19\00\00\00+\00\00\00\\\00\00\00\00\00\00\00\d8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\18\00\00\00\19\00\00\00+\00\00\00]\00\00\00\00\00\00\00\e8\17\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00\18\00\00\00\19\00\00\00+\00\00\00^\00\00\00\00\00\00\00\f8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00U\00\00\00" + "\18\00\00\00V\00\00\00+\00\00\00_\00\00\00\00\00\00\00\08\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00W\00\00\00\18\00\00\00X\00\00\00+\00\00\00`\00\00\00\00\00\00\00" + "\18\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Y\00\00\00Z\00\00\00\19\00\00\00+\00\00\00a\00\00\00\00\00\00\00(\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00" + "[\00\00\00\\\00\00\00\19\00\00\00+\00\00\00b\00\00\00\00\00\00\008\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\18\00\00\00\19\00\00\00+\00\00\00c\00\00\00" + "\00\00\00\00H\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00^\00\00\00\18\00\00\00\19\00\00\00+\00\00\00d\00\00\00\00\00\00\00X\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00" + "\0f\00\00\00_\00\00\00`\00\00\00\19\00\00\00+\00\00\00e\00\00\00\00\00\00\00h\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\18\00\00\00\19\00\00\00+\00\00\00" + "f\00\00\00\00\00\00\00x\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00b\00\00\00\18\00\00\00\19\00\00\00+\00\00\00g\00\00\00\00\00\00\00\88\18\00\00 \00\00\00\0d\00\00\00" + "!\00\00\00\0f\00\00\00c\00\00\00d\00\00\00\19\00\00\00+\00\00\00h\00\00\00\00\00\00\00\98\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\18\00\00\00\19\00\00\00" + "+\00\00\00i\00\00\00\00\00\00\00\a8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\18\00\00\00\19\00\00\00+\00\00\00j\00\00\00\00\00\00\00\b8\18\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\18\00\00\00\19\00\00\00+\00\00\00k\00\00\00\00\00\00\00\c8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00h\00\00\00\18\00\00\00" + "\19\00\00\00+\00\00\00l\00\00\00\00\00\00\00\d8\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00i\00\00\00j\00\00\00\19\00\00\00+\00\00\00m\00\00\00\00\00\00\00\e8\18\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00\18\00\00\00\19\00\00\00+\00\00\00n\00\00\00\00\00\00\00\f8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00l\00\00\00" + "\18\00\00\00\19\00\00\00+\00\00\00o\00\00\00\00\00\00\00\08\19\00\00p\00\00\00q\00\00\000\00\00\00\00\00\00\00\18\19\00\00p\00\00\00r\00\00\000\00\00\00\00\00\00\00H\19\00\00" + "&\00\00\00s\00\00\00(\00\00\00)\00\00\00\0d\00\00\00\00\00\00\00p\19\00\00&\00\00\00t\00\00\00(\00\00\00)\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00my_r" + "oot_id\00envoy_filter_http_wasm_example.cc\00:\00]::\00onStart\00() \00onCre" + "ate\00onCreate \00onRequestHeaders\00onRequestHeaders \00headers: \00onRes" + "ponseHeaders\00onResponseHeaders \00newheader\00newheadervalue\00locatio" + "n\00envoy-wasm\00onRequestBody\00onRequestBody \00onDone\00onDone \00onLog\00o" + "nLog \00onDelete\00onDelete \0018ExampleRootContext\0011RootContext\0011Co" + "ntextBase\0014ExampleContext\007Context\003$_0\003$_1\00N6google8protobuf8" + "internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcN" + "S3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWi" + "thArenaLiteEE9ContainerE\00/usr/local/include/google/protobuf/aren" + "astring.h\00CHECK failed: initial_value != NULL: \00NSt3__212basic_s" + "tringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221__basic_" + "string_commonILb1EEE\00/home/piotrsikora/Google/envoy/api/wasm/cpp" + "/struct_lite.pb.cc\00/usr/local/include/google/protobuf/repeated_f" + "ield.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index) < (c" + "urrent_size_): \00/usr/local/include/google/protobuf/map.h\00CHECK f" + "ailed: (bucket_index_ & 1) == (0): \00CHECK failed: m_->index_of_f" + "irst_non_null_ == m_->num_buckets_ || m_->table_[m_->index_of_fi" + "rst_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHECK fa" + "iled: node_ != NULL && m_ != NULL: \00google.protobuf.Value.string" + "_value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed: (&fr" + "om) != (this): \00CHECK failed: (&other) != (this): \00N6google8prot" + "obuf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8internal12M" + "apEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_str" + "ingIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14" + "WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8inter" + "nal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11Messag" + "eLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocator" + "IcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE" + "\00CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntryIsNon" + "EmptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK failed:" + " GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_first_non_" + "null_ == num_buckets_ || table_[index_of_first_non_null_] != NUL" + "L: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHEC" + "K failed: (count) <= (kMaxLength): \00CHECK failed: (result.bucket" + "_index_) == (b & ~static_cast(1)): \00CHECK failed: (ta" + "ble_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b)" + " && !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->s" + "ize()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize): \00CH" + "ECK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == " + "(0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) == 0: " + "\00N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsI" + "cEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4" + "hashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorI" + "cEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local/incl" + "ude/google/protobuf/stubs/casts.h\00down_cast\00google.protobuf.Stru" + "ct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6google8p" + "rotobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUse" + "ENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEEN" + "S5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9E" + "LSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google" + ".protobuf.ListValue\00N6google8protobuf9ListValueE\00google.protobuf" + ".Value\00no context factory for root_id: \00N6google8protobuf14Fatal" + "ExceptionE\00google/protobuf/stubs/common.cc\00This program requires" + " version \00%d.%d.%d\00 of the Protocol Buffer runtime library, but " + "the installed version is \00. Please update your library. If you" + " compiled the program yourself, make sure that your headers are " + "from the same version of Protocol Buffers as your link-time libr" + "ary. (Version verification failed in \"\00\".)\00This program was com" + "piled against version \00 of the Protocol Buffer runtime library, " + "which is not compatible with the installed version (\00). Contact" + " the program author for an update. If you compiled the program " + "yourself, make sure that your headers are from the same version " + "of Protocol Buffers as your link-time library. (Version verific" + "ation failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00" + "FATAL\00allocator::allocate(size_t n) 'n' exceeds maximum suppo" + "rted size\00google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= " + "(std::numeric_limits::max() - kBlockHeaderSize): \00google" + "/protobuf/generated_message_util.cc\00Not implemented field number" + " \00 with type \00CHECK failed: (scc->visit_status.load(std::memory_" + "order_relaxed)) == (SCCInfoBase::kRunning): \00google/protobuf/mes" + "sage_lite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot deter" + "mine missing fields for lite message)\00N6google8protobuf11Message" + "LiteE\00google/protobuf/repeated_field.cc\00CHECK failed: (new_size)" + " <= ((std::numeric_limits::max() - kRepHeaderSize) / siz" + "eof(old_rep->elements[0])): \00Requested size is too large to fit " + "into size_t.\00google/protobuf/wire_format_lite.cc\00CHECK failed: (" + "value.size()) <= (kint32max): \00serializing\00parsing\00 '%s'\00String " + "field\00 contains invalid \00UTF-8 data when \00 a protocol \00buffer. U" + "se the 'bytes' type if you intend to send raw \00bytes. \00google/pr" + "otobuf/io/coded_stream.cc\00CHECK failed: (buffer_size) >= (0): \00A" + " protocol message was rejected because it was too big (more than" + " \00 bytes). To increase the limit (or to disable these warnings)" + ", see CodedInputStream::SetTotalBytesLimit() in google/protobuf/" + "io/coded_stream.h.\00google/protobuf/io/zero_copy_stream_impl_lite" + ".cc\00CHECK failed: (count) >= (0): \00CHECK failed: (last_returned_" + "size_) > (0): \00BackUp() can only be called after a successful Ne" + "xt().\00CHECK failed: (count) <= (last_returned_size_): \00N6google8" + "protobuf2io17ArrayOutputStreamE\00CHECK failed: target_ != NULL: \00" + "CHECK failed: (count) <= (target_->size()): \00Cannot allocate buf" + "fer larger than kint32max for \00StringOutputStream.\00N6google8prot" + "obuf2io18StringOutputStreamE\00google/protobuf/io/zero_copy_stream" + ".cc\00This ZeroCopyOutputStream doesn't support aliasing. Reaching" + " here usually means a ZeroCopyOutputStream implementation bug.\00N" + "6google8protobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+" + "0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad_function_call\00NSt3__217b" + "ad_function_callE\00mutex lock failed\00%d\00%u\00%lu\00terminating with %" + "s exception of type %s: %s\00terminating with %s exception of type" + " %s\00terminating with %s foreign exception\00terminating\00uncaught\00S" + "t9exception\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__c" + "xxabiv120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE" + "\00terminate_handler unexpectedly returned\00_Z\00___Z\00_block_invoke\00i" + "nvocation function for block in \00void\00bool\00char\00signed char\00unsi" + "gned char\00short\00unsigned short\00int\00unsigned int\00long\00unsigned lo" + "ng\00long long\00__int128\00unsigned __int128\00float\00long double\00__floa" + "t128\00...\00decimal64\00decimal128\00decimal32\00decimal16\00char32_t\00char1" + "6_t\00auto\00decltype(auto)\00std::nullptr_t\00[abi:\00]\00N12_GLOBAL__N_116" + "itanium_demangle10AbiTagAttrE\00N12_GLOBAL__N_116itanium_demangle4" + "NodeE\00allocator\00basic_string\00string\00istream\00ostream\00iostream\00std" + "::allocator\00std::basic_string\00std::string\00std::istream\00std::ostr" + "eam\00std::iostream\00N12_GLOBAL__N_116itanium_demangle19SpecialSubs" + "titutionE\00 imaginary\00N12_GLOBAL__N_116itanium_demangle20PostfixQ" + "ualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_116itanium_deman" + "gle13ReferenceTypeE\00objc_object\00*\00id<\00>\00N12_GLOBAL__N_116itanium" + "_demangle11PointerTypeE\00N12_GLOBAL__N_116itanium_demangle20NameW" + "ithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116itanium_demangle12Templat" + "eArgsE\00N12_GLOBAL__N_116itanium_demangle13ParameterPackE\00wchar_t" + "\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_demangle15Intege" + "rCastExprE\00%LaL\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralI" + "mplIeEE\00%a\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplId" + "EE\00%af\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfEE\00t" + "rue\00false\00N12_GLOBAL__N_116itanium_demangle8BoolExprE\00-\00N12_GLOB" + "AL__N_116itanium_demangle14IntegerLiteralE\00N12_GLOBAL__N_116itan" + "ium_demangle20TemplateArgumentPackE\00gs\00&=\00=\00alignof (\00,\00~\00.*\00/\00/" + "=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=" + "\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00N12_GLOBAL__N_116itanium_" + "demangle9ThrowExprE\00N12_GLOBAL__N_116itanium_demangle12InitListE" + "xprE\00N12_GLOBAL__N_116itanium_demangle13NodeArrayNodeE\00sizeof..." + " (\00N12_GLOBAL__N_116itanium_demangle13EnclosingExprE\00sizeof...(\00" + "N12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionE\00N12_G" + "LOBAL__N_116itanium_demangle19SizeofParamPackExprE\00static_cast\00>" + "(\00N12_GLOBAL__N_116itanium_demangle8CastExprE\00reinterpret_cast\00)" + " ? (\00) : (\00N12_GLOBAL__N_116itanium_demangle15ConditionalExprE\00n" + "oexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL__N_116itanium_d" + "emangle7NewExprE\00N12_GLOBAL__N_116itanium_demangle11PostfixExprE" + "\00 ... \00 = \00N12_GLOBAL__N_116itanium_demangle15BracedRangeExprE\00N" + "12_GLOBAL__N_116itanium_demangle10BracedExprE\00_GLOBAL__N\00(anonym" + "ous namespace)\00N12_GLOBAL__N_116itanium_demangle8NameTypeE\00)[\00N1" + "2_GLOBAL__N_116itanium_demangle18ArraySubscriptExprE\00.\00N12_GLOBA" + "L__N_116itanium_demangle10MemberExprE\00srN\00sr\00::\00N12_GLOBAL__N_11" + "6itanium_demangle19GlobalQualifiedNameE\00dn\00on\00operator&&\00operato" + "r&\00operator&=\00operator=\00operator()\00operator,\00operator~\00operator " + "delete[]\00operator*\00operator/\00operator/=\00operator^\00operator^=\00ope" + "rator==\00operator>=\00operator>\00operator[]\00operator<=\00operator<<\00op" + "erator<<=\00operator<\00operator-\00operator-=\00operator*=\00operator--\00o" + "perator new[]\00operator!=\00operator!\00operator new\00operator||\00opera" + "tor|\00operator|=\00operator->*\00operator+\00operator+=\00operator++\00oper" + "ator->\00operator?\00operator%\00operator%=\00operator>>\00operator>>=\00ope" + "rator<=>\00operator\"\" \00N12_GLOBAL__N_116itanium_demangle15LiteralO" + "peratorE\00operator delete\00operator \00N12_GLOBAL__N_116itanium_dema" + "ngle22ConversionOperatorTypeE\00N12_GLOBAL__N_116itanium_demangle8" + "DtorNameE\00N12_GLOBAL__N_116itanium_demangle13QualifiedNameE\00dyna" + "mic_cast\00delete\00[] \00N12_GLOBAL__N_116itanium_demangle10DeleteExp" + "rE\00cv\00)(\00N12_GLOBAL__N_116itanium_demangle14ConversionExprE\00N12_" + "GLOBAL__N_116itanium_demangle8CallExprE\00const_cast\00N12_GLOBAL__N" + "_116itanium_demangle10PrefixExprE\00) \00 (\00N12_GLOBAL__N_116itanium" + "_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le" + "\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00rS\00... \00 ...\00N1" + "2_GLOBAL__N_116itanium_demangle8FoldExprE\00fp\00fL\00N12_GLOBAL__N_11" + "6itanium_demangle13FunctionParamE\00N12_GLOBAL__N_116itanium_deman" + "gle24ForwardTemplateReferenceE\00Ts\00struct\00Tu\00union\00Te\00enum\00N12_GL" + "OBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeE\00StL\00St\00std:" + ":\00N12_GLOBAL__N_116itanium_demangle16StdQualifiedNameE\00DC\00N12_GL" + "OBAL__N_116itanium_demangle21StructuredBindingNameE\00Ut\00Ul\00vE\00'la" + "mbda\00'(\00N12_GLOBAL__N_116itanium_demangle15ClosureTypeNameE\00'unn" + "amed\00'\00N12_GLOBAL__N_116itanium_demangle15UnnamedTypeNameE\00strin" + "g literal\00N12_GLOBAL__N_116itanium_demangle9LocalNameE\00std\00N12_G" + "LOBAL__N_116itanium_demangle12CtorDtorNameE\00basic_istream\00basic_" + "ostream\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_istream >\00std::basic_ostream " + ">\00std::basic_iostream >\00N12_GLOBAL_" + "_N_116itanium_demangle27ExpandedSpecialSubstitutionE\00N12_GLOBAL_" + "_N_116itanium_demangle10NestedNameE\00::*\00N12_GLOBAL__N_116itanium" + "_demangle19PointerToMemberTypeE\00[\00N12_GLOBAL__N_116itanium_deman" + "gle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itanium_demangle10Ve" + "ctorTypeE\00pixel vector[\00N12_GLOBAL__N_116itanium_demangle15Pixel" + "VectorTypeE\00decltype(\00double\00unsigned long long\00objcproto\00 const" + "\00 volatile\00 restrict\00N12_GLOBAL__N_116itanium_demangle8QualTypeE" + "\00N12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeE\00N12_GLOBA" + "L__N_116itanium_demangle13ObjCProtoNameE\00Do\00noexcept\00DO\00Dw\00Dx\00RE" + "\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_demangle12FunctionTypeE\00thro" + "w(\00N12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpecE\00noex" + "cept(\00N12_GLOBAL__N_116itanium_demangle12NoexceptSpecE\00N12_GLOBA" + "L__N_116itanium_demangle11SpecialNameE\00N12_GLOBAL__N_116itanium_" + "demangle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_116itanium_deman" + "gle16FunctionEncodingE\00 [enable_if:\00N12_GLOBAL__N_116itanium_dem" + "angle12EnableIfAttrE\00thread-local wrapper routine for \00reference" + " temporary for \00guard variable for \00non-virtual thunk to \00virtua" + "l thunk to \00thread-local initialization routine for \00constructio" + "n vtable for \00-in-\00N12_GLOBAL__N_116itanium_demangle21CtorVtable" + "SpecialNameE\00covariant return thunk to \00typeinfo name for \00typei" + "nfo for \00VTT for \00vtable for \00St11logic_error\00St12length_error\00N" + "10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_i" + "nfoE\00N10__cxxabiv123__fundamental_type_infoE\00v\00c\00h\00N10__cxxabiv1" + "21__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_envoy_filter_http_wasm_example_cc - i32.const 15528 + i32.const 24696 i64.const 0 i64.store align=4 - i32.const 15536 + i32.const 24704 i64.const 0 i64.store align=4 - i32.const 15544 + i32.const 24712 i32.const 1065353216 i32.store - i32.const 15548 + i32.const 24716 i64.const 0 i64.store align=4 - i32.const 15556 + i32.const 24724 i64.const 0 i64.store align=4 - i32.const 15564 + i32.const 24732 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -417,148 +596,262 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $3) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN18ExampleRootContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $3) (param $0 i32) (param $1 i32) - global.get $30 + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 local.set $0 - global.get $30 - i32.const 16 + global.get $32 + i32.const 112 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 0 - i32.store offset=8 + i32.const 84 + i32.add + local.set $1 local.get $0 - i32.const 7 - i32.store8 offset=11 + i32.const 96 + i32.add + local.set $4 local.get $0 - i32.const 7047 - i32.load align=1 - i32.store align=1 + i32.const 72 + i32.add + local.set $5 local.get $0 - i32.const 7051 - i32.load16_s align=1 - i32.store16 offset=4 align=1 + i32.const 60 + i32.add + local.set $6 local.get $0 - i32.const 7053 - i32.load8_s - i32.store8 offset=6 + i32.const 48 + i32.add + local.set $7 local.get $0 + i32.const 36 + i32.add + local.set $8 + local.get $0 + i32.const 12 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 i32.const 0 - i32.store8 offset=7 + i32.store offset=8 + local.get $3 + i32.const 1 + i32.store8 offset=11 + local.get $3 + i32.const 91 + i32.store8 + local.get $3 i32.const 0 + i32.store8 offset=1 local.get $0 - i32.const 7 - call $_proxy_log - local.get $0 - i32.load8_s offset=11 + i32.const 24 + i32.add + local.tee $9 + local.get $3 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 i32.const 0 - i32.ge_s - if $if - local.get $0 - global.set $30 - return - end ;; $if + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $8 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 30 + call $__ZNSt3__29to_stringEi + local.get $7 + local.get $8 local.get $0 i32.load - call $_free local.get $0 - global.set $30 - ) - - (func $__ZN14ExampleContext8onCreateEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 + local.get $0 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $10 + select + local.get $0 + i32.load offset=4 local.get $2 - i32.const 12 - i32.add - local.set $1 + i32.const 255 + i32.and + local.get $10 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $7 local.get $2 - local.get $0 - i32.const -64 - i32.sub - i32.load - call $__ZNSt3__29to_stringEj - local.get $1 + i32.load offset=8 + i32.store offset=8 local.get $2 - i32.const 7055 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $0 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $6 + local.get $7 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $6 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $5 + local.get $6 + i32.const 11075 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $4 + local.get $5 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $1 + local.get $4 + i32.const 11075 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $2 i64.load align=4 i64.store align=4 local.get $1 - local.get $0 + local.get $2 i32.load offset=8 i32.store offset=8 - local.get $0 + local.get $2 i64.const 0 i64.store align=4 - local.get $0 + local.get $2 i32.const 0 i32.store offset=8 - i32.const 3 + i32.const 0 local.get $1 i32.load local.get $1 local.get $1 i32.load8_s offset=11 - local.tee $0 + local.tee $2 i32.const 0 i32.lt_s - local.tee $3 + local.tee $10 select local.get $1 i32.load offset=4 - local.get $0 + local.get $2 i32.const 255 i32.and - local.get $3 + local.get $10 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -568,25 +861,87 @@ i32.load call $_free end ;; $if - local.get $2 + local.get $4 i32.load8_s offset=11 i32.const 0 - i32.ge_s + i32.lt_s if $if_0 - local.get $2 - global.set $30 - return + local.get $4 + i32.load + call $_free end ;; $if_0 - local.get $2 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $5 + i32.load + call $_free + end ;; $if_1 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $6 + i32.load + call $_free + end ;; $if_2 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $7 + i32.load + call $_free + end ;; $if_3 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + i32.load + call $_free + end ;; $if_4 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $8 + i32.load + call $_free + end ;; $if_5 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $9 + i32.load + call $_free + end ;; $if_6 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_7 + local.get $0 + global.set $32 + return + end ;; $if_7 + local.get $3 i32.load call $_free - local.get $2 - global.set $30 + local.get $0 + global.set $32 ) - (func $__ZN14ExampleContext16onRequestHeadersEv (type $4) + (func $__ZN14ExampleContext8onCreateEv (type $0) (param $0 i32) - (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -600,71 +955,211 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i64) - (local $18 i64) - global.get $30 - local.set $10 - global.get $30 - i32.const 80 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 i32.add - global.set $30 - local.get $10 - i32.const 60 + global.set $32 + local.get $2 + i32.const 108 i32.add - local.set $5 - local.get $10 - i32.const 36 + local.set $3 + local.get $2 + i32.const 120 i32.add - local.set $4 - local.get $10 + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 84 + i32.add + local.set $9 + local.get $2 + i32.const 72 + i32.add + local.set $10 + local.get $2 + i32.const 60 + i32.add + local.set $11 + local.get $2 i32.const 24 i32.add - local.set $6 - local.get $10 + local.set $5 + local.get $2 i32.const 12 i32.add - local.set $9 - local.get $10 - local.tee $7 + local.set $4 + local.get $2 + i32.const 36 + i32.add + local.tee $6 + i64.const 0 + i64.store align=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $6 + i32.const 1 + i32.store8 offset=11 + local.get $6 + i32.const 91 + i32.store8 + local.get $6 + i32.const 0 + i32.store8 offset=1 + local.get $2 i32.const 48 i32.add - local.tee $3 + local.tee $12 + local.get $6 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $12 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $11 + local.get $12 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $11 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 i32.const 32 - call $__Znwm + call $__ZNSt3__29to_stringEi + local.get $10 + local.get $11 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 local.tee $1 - i32.store - local.get $3 - i32.const -2147483616 + i32.const 0 + i32.lt_s + local.tee $13 + select + local.get $5 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $13 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $1 + i32.load offset=8 i32.store offset=8 - local.get $3 - i32.const 17 - i32.store offset=4 local.get $1 - i32.const 7065 - i64.load align=1 - i64.store align=1 + i64.const 0 + i64.store align=4 local.get $1 - i32.const 7073 - i64.load align=1 - i64.store offset=8 align=1 + i32.const 0 + i32.store offset=8 + local.get $9 + local.get $10 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 local.get $1 - i32.const 7081 - i32.load8_s - i32.store8 offset=16 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 local.get $1 i32.const 0 - i32.store8 offset=17 - local.get $4 + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 11087 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $7 + local.get $8 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $2 local.get $0 i32.const -64 i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $5 + local.get $4 + local.get $2 + i32.const 11096 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 local.get $3 + local.get $7 local.get $4 i32.load local.get $4 @@ -686,7 +1181,7 @@ local.tee $0 i64.load align=4 i64.store align=4 - local.get $5 + local.get $3 local.get $0 i32.load offset=8 i32.store offset=8 @@ -696,18 +1191,18 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 1 - local.get $5 + i32.const 3 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $5 + local.get $3 i32.load offset=4 local.get $0 i32.const 255 @@ -715,12 +1210,13 @@ local.get $1 select call $_proxy_log - local.get $5 + drop + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $5 + local.get $3 i32.load call $_free end ;; $if @@ -733,208 +1229,393 @@ i32.load call $_free end ;; $if_0 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_1 - local.get $5 + local.get $7 + i32.load8_s offset=11 i32.const 0 - i32.store - local.get $3 + i32.lt_s + if $if_2 + local.get $7 + i32.load + call $_free + end ;; $if_2 + local.get $8 + i32.load8_s offset=11 i32.const 0 - i32.store + i32.lt_s + if $if_3 + local.get $8 + i32.load + call $_free + end ;; $if_3 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $9 + i32.load + call $_free + end ;; $if_4 + local.get $10 + i32.load8_s offset=11 i32.const 0 + i32.lt_s + if $if_5 + local.get $10 + i32.load + call $_free + end ;; $if_5 local.get $5 - local.get $3 - call $_proxy_getHeaderMapPairs - i32.const 8 - call $__Znwm - local.set $12 - local.get $3 - i32.load - local.set $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $5 + i32.load + call $_free + end ;; $if_6 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $11 + i32.load + call $_free + end ;; $if_7 local.get $12 - local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $12 + i32.load + call $_free + end ;; $if_8 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_9 + local.get $2 + global.set $32 + return + end ;; $if_9 + local.get $6 + i32.load + call $_free + local.get $2 + global.set $32 + ) + + (func $__ZN14ExampleContext16onRequestHeadersEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 208 + i32.add + global.set $32 + local.get $8 + i32.const 192 + i32.add + local.set $6 + local.get $8 + i32.const 180 + i32.add + local.set $9 + local.get $8 + i32.const 168 + i32.add + local.set $2 + local.get $8 + i32.const 156 + i32.add + local.set $13 + local.get $8 + i32.const 144 + i32.add + local.set $14 + local.get $8 + i32.const 132 + i32.add + local.set $15 + local.get $8 + i32.const 120 + i32.add + local.set $16 + local.get $8 + i32.const 84 + i32.add + local.set $7 + local.get $8 + i32.const 60 + i32.add + local.set $4 + local.get $8 + i32.const 72 + i32.add + local.set $3 + local.get $8 + i32.const 36 + i32.add + local.set $11 + local.get $8 + i32.const 24 + i32.add + local.set $5 + local.get $8 + i32.const 48 + i32.add + local.set $20 + local.get $8 + i32.const 12 + i32.add + local.set $21 + local.get $8 + local.set $17 + local.get $8 + i32.const 96 + i32.add + local.tee $10 + i64.const 0 + i64.store align=4 + local.get $10 + i32.const 0 + i32.store offset=8 + local.get $10 + i32.const 1 + i32.store8 offset=11 + local.get $10 + i32.const 91 + i32.store8 + local.get $10 + i32.const 0 + i32.store8 offset=1 + local.get $8 + i32.const 108 + i32.add + local.tee $18 + local.get $10 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $18 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $16 + local.get $18 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $16 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $7 + i32.const 35 + call $__ZNSt3__29to_stringEi + local.get $15 + local.get $16 + local.get $7 i32.load + local.get $7 + local.get $7 + i32.load8_s offset=11 local.tee $1 - i32.store + i32.const 0 + i32.lt_s + local.tee $12 + select + local.get $7 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and local.get $12 - local.get $0 - i32.store offset=4 - local.get $5 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 i32.const 0 - i32.store - local.get $5 - i32.const 4 - i32.add - local.tee $13 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 i32.const 0 - i32.store - local.get $5 + i32.store offset=8 + local.get $13 + local.get $14 + i32.const 11106 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $13 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 i32.const 0 i32.store offset=8 + local.get $9 + local.get $13 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $1 + i32.load offset=8 + i32.store offset=8 local.get $1 - if $if_2 (result i32) - block $block (result i32) - local.get $1 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.load - local.tee $11 - if $if_3 - local.get $5 - local.get $11 - call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm - local.get $11 - i32.const 0 - i32.le_s - if $if_4 - local.get $5 - i32.load - local.set $1 - local.get $13 - br $block - end ;; $if_4 - local.get $5 - i32.load - local.set $1 - local.get $0 - local.get $11 - i32.const 3 - i32.shl - i32.add - local.set $8 - loop $loop - local.get $0 - i32.load - local.set $14 - local.get $2 - i32.const 4 - i32.shl - local.get $1 - i32.add - local.get $8 - i32.store - local.get $2 - i32.const 4 - i32.shl - local.get $1 - i32.add - local.get $14 - i32.store offset=4 - local.get $0 - i32.load offset=4 - local.set $16 - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $5 - i32.load - local.tee $1 - local.get $2 - i32.const 4 - i32.shl - i32.add - local.get $14 - i32.const 1 - i32.add - local.get $8 - i32.add - local.tee $8 - i32.store offset=8 - local.get $2 - i32.const 4 - i32.shl - local.get $1 - i32.add - local.get $16 - i32.store offset=12 - local.get $8 - local.get $16 - i32.const 1 - i32.add - i32.add - local.set $8 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $11 - i32.ne - br_if $loop - end ;; $loop - else - i32.const 0 - local.set $1 - end ;; $if_3 - local.get $13 - end ;; $block - else - i32.const 0 - local.set $1 - local.get $13 - end ;; $if_2 - local.set $11 - local.get $4 i64.const 0 i64.store align=4 - local.get $4 + local.get $1 i32.const 0 i32.store offset=8 - local.get $4 - i32.const 9 - i32.store8 offset=11 - local.get $4 - i32.const 7083 + i32.const 32 + call $__Znwm + local.tee $1 + i32.const 11123 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 7091 + local.get $1 + i32.const 11131 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11139 i32.load8_s - i32.store8 offset=8 - local.get $4 + i32.store8 offset=16 + local.get $1 i32.const 0 - i32.store8 offset=9 + i32.store8 offset=17 local.get $6 - local.get $11 - i32.load + local.get $9 local.get $1 - i32.sub - i32.const 4 - i32.shr_s - call $__ZNSt3__29to_stringEm - local.get $3 - local.get $4 + i32.const 17 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $12 + i64.load align=4 + i64.store align=4 local.get $6 + local.get $12 + i32.load offset=8 + i32.store offset=8 + local.get $12 + i64.const 0 + i64.store align=4 + local.get $12 + i32.const 0 + i32.store offset=8 + local.get $4 + local.get $0 + i32.const -64 + i32.sub i32.load + call $__ZNSt3__29to_stringEj + local.get $2 local.get $6 - local.get $6 + local.get $4 + i32.load + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $12 select - local.get $6 + local.get $4 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $12 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $3 + local.get $2 local.get $0 i32.load offset=8 i32.store offset=8 @@ -944,734 +1625,453 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 2 - local.get $3 + i32.const 1 + local.get $2 i32.load - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $12 select - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $12 select call $_proxy_log - local.get $3 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 - local.get $3 + if $if + local.get $2 i32.load call $_free - end ;; $if_5 + end ;; $if + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $4 + i32.load + call $_free + end ;; $if_0 local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_6 + if $if_1 local.get $6 i32.load call $_free - end ;; $if_6 - local.get $4 + end ;; $if_1 + local.get $1 + call $_free + local.get $9 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_7 - local.get $4 + if $if_2 + local.get $9 i32.load call $_free - end ;; $if_7 - local.get $5 - i32.load - local.tee $1 + end ;; $if_2 local.get $13 - i32.load - local.tee $13 - i32.eq - if $if_8 - local.get $1 - local.set $15 - else - block $block_0 - block $block_1 - block $block_2 - loop $loop_0 - local.get $1 - i64.load align=4 - local.tee $17 - i64.const 32 - i64.shr_u - local.tee $18 - i32.wrap_i64 - local.set $2 - local.get $6 - i64.const 0 - i64.store align=4 - local.get $6 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - br_if $block_2 - local.get $17 - i32.wrap_i64 - local.set $8 - block $block_3 - block $block_4 - local.get $2 - i32.const 11 - i32.lt_u - if $if_9 (result i32) - local.get $6 - local.get $18 - i64.store8 offset=11 - local.get $2 - if $if_10 (result i32) - local.get $6 - local.set $0 - br $block_4 - else - local.get $6 - end ;; $if_10 - else - local.get $6 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $14 - call $__Znwm - local.tee $0 - i32.store - local.get $6 - local.get $14 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=4 - br $block_4 - end ;; $if_9 - local.set $0 - br $block_3 - end ;; $block_4 - local.get $0 - local.get $8 - local.get $2 - call $_memcpy - drop - end ;; $block_3 - local.get $0 - local.get $2 - i32.add - i32.const 0 - i32.store8 - local.get $9 - i64.const 0 - i64.store align=4 - local.get $9 - i32.const 0 - i32.store offset=8 - local.get $9 - i32.const 4 - i32.store8 offset=11 - local.get $9 - i32.const 540945696 - i32.store - local.get $9 - i32.const 0 - i32.store8 offset=4 - local.get $4 - local.get $6 - local.get $9 - i32.const 4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 - i64.load offset=8 align=4 - local.tee $17 - i64.const 32 - i64.shr_u - local.tee $18 - i32.wrap_i64 - local.set $2 - local.get $7 - i64.const 0 - i64.store align=4 - local.get $7 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - br_if $block_1 - local.get $17 - i32.wrap_i64 - local.set $8 - block $block_5 - block $block_6 - local.get $2 - i32.const 11 - i32.lt_u - if $if_11 (result i32) - local.get $7 - local.get $18 - i64.store8 offset=11 - local.get $2 - if $if_12 (result i32) - local.get $7 - local.set $0 - br $block_6 - else - local.get $7 - end ;; $if_12 - else - local.get $7 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $14 - call $__Znwm - local.tee $0 - i32.store - local.get $7 - local.get $14 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $7 - local.get $2 - i32.store offset=4 - br $block_6 - end ;; $if_11 - local.set $0 - br $block_5 - end ;; $block_6 - local.get $0 - local.get $8 - local.get $2 - call $_memcpy - drop - end ;; $block_5 - local.get $0 - local.get $2 - i32.add - i32.const 0 - i32.store8 - local.get $3 - local.get $4 - local.get $7 - i32.load - local.get $7 - local.get $7 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $7 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - i32.const 2 - local.get $3 - i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $3 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $_proxy_log - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_13 - local.get $3 - i32.load - call $_free - end ;; $if_13 - local.get $7 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_14 - local.get $7 - i32.load - call $_free - end ;; $if_14 - local.get $4 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_15 - local.get $4 - i32.load - call $_free - end ;; $if_15 - local.get $9 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_16 - local.get $9 - i32.load - call $_free - end ;; $if_16 - local.get $6 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_17 - local.get $6 - i32.load - call $_free - end ;; $if_17 - local.get $1 - i32.const 16 - i32.add - local.tee $1 - local.get $13 - i32.ne - br_if $loop_0 - end ;; $loop_0 - local.get $5 - i32.load - local.set $15 - br $block_0 - end ;; $block_2 - call $_abort - br $block_0 - end ;; $block_1 - call $_abort - end ;; $block_0 - end ;; $if_8 - local.get $15 - i32.eqz - if $if_18 - local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $13 i32.load call $_free - local.get $12 + end ;; $if_3 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $14 + i32.load call $_free - local.get $10 - global.set $30 - i32.const 0 - return - end ;; $if_18 - local.get $11 - local.get $15 - i32.store + end ;; $if_4 local.get $15 - call $_free - local.get $12 - i32.load - call $_free - local.get $12 - call $_free - local.get $10 - global.set $30 - i32.const 0 - ) - - (func $__ZN14ExampleContext17onResponseHeadersEv (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i64) - (local $17 i64) - global.get $30 - local.set $10 - global.get $30 - i32.const 80 - i32.add - global.set $30 - local.get $10 - i32.const 60 - i32.add - local.set $5 - local.get $10 - i32.const 36 - i32.add - local.set $4 - local.get $10 - i32.const 24 - i32.add - local.set $6 - local.get $10 - i32.const 12 - i32.add - local.set $9 - local.get $10 - local.tee $7 - i32.const 48 - i32.add - local.tee $3 - i32.const 32 - call $__Znwm - local.tee $1 - i32.store - local.get $3 - i32.const -2147483616 - i32.store offset=8 - local.get $3 - i32.const 18 - i32.store offset=4 - local.get $1 - i32.const 7093 - i64.load align=1 - i64.store align=1 - local.get $1 - i32.const 7101 - i64.load align=1 - i64.store offset=8 align=1 - local.get $1 - i32.const 7109 - i32.load16_s align=1 - i32.store16 offset=16 align=1 - local.get $1 - i32.const 0 - i32.store8 offset=18 - local.get $4 - local.get $0 - i32.const -64 - i32.sub - i32.load - call $__ZNSt3__29to_stringEj - local.get $5 - local.get $3 - local.get $4 - i32.load - local.get $4 - local.get $4 i32.load8_s offset=11 - local.tee $0 i32.const 0 i32.lt_s - local.tee $1 - select - local.get $4 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $1 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $5 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - i32.const 1 - local.get $5 - i32.load - local.get $5 - local.get $5 + if $if_5 + local.get $15 + i32.load + call $_free + end ;; $if_5 + local.get $7 i32.load8_s offset=11 - local.tee $0 i32.const 0 i32.lt_s - local.tee $1 - select - local.get $5 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $1 - select - call $_proxy_log - local.get $5 + if $if_6 + local.get $7 + i32.load + call $_free + end ;; $if_6 + local.get $16 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if - local.get $5 + if $if_7 + local.get $16 i32.load call $_free - end ;; $if - local.get $4 + end ;; $if_7 + local.get $18 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_0 - local.get $4 + if $if_8 + local.get $18 i32.load call $_free - end ;; $if_0 - local.get $3 + end ;; $if_8 + local.get $10 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_1 - local.get $3 + if $if_9 + local.get $10 i32.load call $_free - end ;; $if_1 - local.get $5 + end ;; $if_9 + local.get $6 i32.const 0 i32.store - local.get $3 + local.get $9 i32.const 0 i32.store - i32.const 2 - local.get $5 - local.get $3 + i32.const 0 + local.get $6 + local.get $9 call $_proxy_getHeaderMapPairs + drop i32.const 8 call $__Znwm - local.set $12 - local.get $3 + local.set $1 + local.get $9 i32.load local.set $0 - local.get $12 - local.get $5 + local.get $1 + local.get $6 i32.load - local.tee $1 + local.tee $2 i32.store - local.get $12 + local.get $1 local.get $0 i32.store offset=4 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $5 - i32.const 4 - i32.add - local.tee $13 + local.get $6 i32.const 0 - i32.store - local.get $5 + i32.store offset=4 + local.get $6 i32.const 0 i32.store offset=8 - local.get $1 - if $if_2 (result i32) - block $block (result i32) - local.get $1 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.load - local.tee $11 - if $if_3 - local.get $5 - local.get $11 - call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm - local.get $11 - i32.const 0 - i32.le_s - if $if_4 - local.get $5 - i32.load - local.set $1 - local.get $13 - br $block - end ;; $if_4 - local.get $5 + local.get $2 + if $if_10 + local.get $2 + i32.const 4 + i32.add + local.set $0 + local.get $2 + i32.load + local.tee $12 + if $if_11 + local.get $6 + local.get $12 + call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm + local.get $12 + i32.const 0 + i32.gt_s + if $if_12 + local.get $6 i32.load - local.set $1 + local.set $22 + i32.const 0 + local.set $2 local.get $0 - local.get $11 + local.get $12 i32.const 3 i32.shl i32.add - local.set $8 + local.set $19 loop $loop local.get $0 i32.load - local.set $14 + local.set $24 local.get $2 i32.const 4 i32.shl - local.get $1 + local.get $22 i32.add - local.get $8 + local.get $19 i32.store local.get $2 i32.const 4 i32.shl - local.get $1 + local.get $22 i32.add - local.get $14 + local.get $24 i32.store offset=4 local.get $0 i32.load offset=4 - local.set $15 + local.set $25 local.get $0 i32.const 8 i32.add local.set $0 - local.get $5 + local.get $6 i32.load - local.tee $1 + local.tee $22 local.get $2 i32.const 4 i32.shl i32.add - local.get $14 + local.get $24 i32.const 1 i32.add - local.get $8 + local.get $19 i32.add - local.tee $8 + local.tee $19 i32.store offset=8 local.get $2 i32.const 4 i32.shl - local.get $1 + local.get $22 i32.add - local.get $15 + local.get $25 i32.store offset=12 - local.get $8 - local.get $15 + local.get $19 + local.get $25 i32.const 1 i32.add i32.add - local.set $8 + local.set $19 local.get $2 i32.const 1 i32.add local.tee $2 - local.get $11 + local.get $12 i32.ne br_if $loop end ;; $loop - else - i32.const 0 - local.set $1 - end ;; $if_3 - local.get $13 - end ;; $block - else - i32.const 0 - local.set $1 - local.get $13 - end ;; $if_2 - local.set $11 - local.get $4 + end ;; $if_12 + end ;; $if_11 + end ;; $if_10 + local.get $7 i64.const 0 i64.store align=4 - local.get $4 + local.get $7 + i32.const 0 + i32.store offset=8 + local.get $7 + i32.const 1 + i32.store8 offset=11 + local.get $7 + i32.const 91 + i32.store8 + local.get $7 + i32.const 0 + i32.store8 offset=1 + local.get $10 + local.get $7 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $18 + local.get $10 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $18 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 i32.const 0 i32.store offset=8 local.get $4 + i32.const 38 + call $__ZNSt3__29to_stringEi + local.get $16 + local.get $18 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $4 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $16 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $15 + local.get $16 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11106 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $13 + local.get $14 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $13 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $11 + i64.const 0 + i64.store align=4 + local.get $11 + i32.const 0 + i32.store offset=8 + local.get $11 i32.const 9 i32.store8 offset=11 - local.get $4 - i32.const 7083 + local.get $11 + i32.const 11141 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 7091 + local.get $11 + i32.const 11149 i32.load8_s i32.store8 offset=8 - local.get $4 + local.get $11 i32.const 0 i32.store8 offset=9 - local.get $6 + local.get $9 + local.get $13 local.get $11 + i32.const 9 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $5 + local.get $6 + i32.load offset=4 + local.get $6 i32.load - local.get $1 i32.sub i32.const 4 i32.shr_s call $__ZNSt3__29to_stringEm local.get $3 - local.get $4 - local.get $6 + local.get $9 + local.get $5 i32.load - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 select - local.get $6 + local.get $5 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $2 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 @@ -1696,152 +2096,216 @@ local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 select local.get $3 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $2 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_5 - local.get $6 + end ;; $if_13 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_6 - local.get $6 + if $if_14 + local.get $5 i32.load call $_free - end ;; $if_6 + end ;; $if_14 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_15 + local.get $9 + i32.load + call $_free + end ;; $if_15 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_16 + local.get $11 + i32.load + call $_free + end ;; $if_16 + local.get $13 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_17 + local.get $13 + i32.load + call $_free + end ;; $if_17 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_18 + local.get $14 + i32.load + call $_free + end ;; $if_18 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_19 + local.get $15 + i32.load + call $_free + end ;; $if_19 + local.get $16 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_20 + local.get $16 + i32.load + call $_free + end ;; $if_20 local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_7 + if $if_21 local.get $4 i32.load call $_free - end ;; $if_7 - local.get $5 - i32.load - local.tee $1 - local.get $13 + end ;; $if_21 + local.get $18 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_22 + local.get $18 + i32.load + call $_free + end ;; $if_22 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_23 + local.get $10 + i32.load + call $_free + end ;; $if_23 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_24 + local.get $7 + i32.load + call $_free + end ;; $if_24 + local.get $6 i32.load - local.tee $13 - i32.ne - if $if_8 - block $block_0 - block $block_1 - loop $loop_0 - block $block_2 - local.get $1 - i64.load align=4 - local.tee $16 - i64.const 32 - i64.shr_u - local.tee $17 - i32.wrap_i64 - local.set $2 - local.get $6 + local.tee $2 + local.get $6 + i32.load offset=4 + local.tee $12 + i32.eq + if $if_25 + local.get $2 + local.set $23 + else + block $block + block $block_0 + block $block_1 + loop $loop_0 + local.get $4 i64.const 0 i64.store align=4 - local.get $6 + local.get $4 i32.const 0 i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - br_if $block_2 - local.get $16 - i32.wrap_i64 - local.set $8 - block $block_3 - block $block_4 - local.get $2 - i32.const 11 - i32.lt_u - if $if_9 (result i32) - local.get $6 - local.get $17 - i64.store8 offset=11 - local.get $2 - if $if_10 (result i32) - local.get $6 - local.set $0 - br $block_4 - else - local.get $6 - end ;; $if_10 - else - local.get $6 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $14 - call $__Znwm - local.tee $0 - i32.store - local.get $6 - local.get $14 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=4 - br $block_4 - end ;; $if_9 - local.set $0 - br $block_3 - end ;; $block_4 - local.get $0 - local.get $8 - local.get $2 - call $_memcpy - drop - end ;; $block_3 + local.get $4 + i32.const 1 + i32.store8 offset=11 + local.get $4 + i32.const 91 + i32.store8 + local.get $4 + i32.const 0 + i32.store8 offset=1 + local.get $7 + local.get $4 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 - local.get $2 - i32.add i32.const 0 - i32.store8 - local.get $9 + i32.store offset=8 + local.get $10 + local.get $7 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 i64.const 0 i64.store align=4 - local.get $9 + local.get $0 i32.const 0 i32.store offset=8 - local.get $9 - i32.const 4 - i32.store8 offset=11 - local.get $9 - i32.const 540945696 - i32.store - local.get $9 + local.get $11 + i32.const 40 + call $__ZNSt3__29to_stringEi + local.get $18 + local.get $10 + local.get $11 + i32.load + local.get $11 + local.get $11 + i32.load8_s offset=11 + local.tee $0 i32.const 0 - i32.store8 offset=4 - local.get $4 - local.get $6 - local.get $9 - i32.const 4 + i32.lt_s + local.tee $3 + select + local.get $11 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $3 + select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $4 + local.get $18 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1851,103 +2315,148 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 - i64.load offset=8 align=4 - local.tee $16 - i64.const 32 - i64.shr_u - local.tee $17 - i32.wrap_i64 - local.set $2 - local.get $7 + local.get $16 + local.get $18 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $16 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 i64.const 0 i64.store align=4 - local.get $7 + local.get $0 i32.const 0 i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - br_if $block_1 + local.get $15 local.get $16 - i32.wrap_i64 - local.set $8 - block $block_5 - block $block_6 - local.get $2 + i32.const 11106 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load + local.set $22 + local.get $2 + i32.load offset=4 + local.tee $3 + i32.const -17 + i32.gt_u + br_if $block_1 + block $block_2 + block $block_3 + local.get $3 i32.const 11 i32.lt_u - if $if_11 (result i32) - local.get $7 - local.get $17 - i64.store8 offset=11 - local.get $2 - if $if_12 (result i32) - local.get $7 + if $if_26 (result i32) + local.get $5 + local.get $3 + i32.store8 offset=11 + local.get $3 + if $if_27 (result i32) + local.get $5 local.set $0 - br $block_6 + br $block_3 else - local.get $7 - end ;; $if_12 + local.get $5 + end ;; $if_27 else - local.get $7 - local.get $2 + local.get $5 + local.get $3 i32.const 16 i32.add i32.const -16 i32.and - local.tee $14 + local.tee $19 call $__Znwm local.tee $0 i32.store - local.get $7 - local.get $14 + local.get $5 + local.get $19 i32.const -2147483648 i32.or i32.store offset=8 - local.get $7 - local.get $2 + local.get $5 + local.get $3 i32.store offset=4 - br $block_6 - end ;; $if_11 + br $block_3 + end ;; $if_26 local.set $0 - br $block_5 - end ;; $block_6 + br $block_2 + end ;; $block_3 local.get $0 - local.get $8 - local.get $2 + local.get $22 + local.get $3 call $_memcpy drop - end ;; $block_5 + end ;; $block_2 local.get $0 - local.get $2 + local.get $3 i32.add i32.const 0 i32.store8 - local.get $3 - local.get $4 - local.get $7 + local.get $13 + local.get $14 + local.get $5 i32.load - local.get $7 - local.get $7 + local.get $5 + local.get $5 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 select - local.get $7 + local.get $5 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $2 + local.get $3 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $3 + local.get $13 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1957,571 +2466,630 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 2 + local.get $21 + i64.const 0 + i64.store align=4 + local.get $21 + i32.const 0 + i32.store offset=8 + local.get $21 + i32.const 4 + i32.store8 offset=11 + local.get $21 + i32.const 540945696 + i32.store + local.get $21 + i32.const 0 + i32.store8 offset=4 + local.get $9 + local.get $13 + local.get $21 + i32.const 4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $17 + i64.const 0 + i64.store align=4 + local.get $17 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load offset=8 + local.set $22 + local.get $2 + i32.load offset=12 + local.tee $3 + i32.const -17 + i32.gt_u + br_if $block_0 + block $block_4 + block $block_5 + local.get $3 + i32.const 11 + i32.lt_u + if $if_28 (result i32) + local.get $17 + local.get $3 + i32.store8 offset=11 + local.get $3 + if $if_29 (result i32) + local.get $17 + local.set $0 + br $block_5 + else + local.get $17 + end ;; $if_29 + else + local.get $17 + local.get $3 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $19 + call $__Znwm + local.tee $0 + i32.store + local.get $17 + local.get $19 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $17 + local.get $3 + i32.store offset=4 + br $block_5 + end ;; $if_28 + local.set $0 + br $block_4 + end ;; $block_5 + local.get $0 + local.get $22 + local.get $3 + call $_memcpy + drop + end ;; $block_4 + local.get $0 local.get $3 + i32.add + i32.const 0 + i32.store8 + local.get $20 + local.get $9 + local.get $17 i32.load - local.get $3 - local.get $3 + local.get $17 + local.get $17 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 select + local.get $17 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $20 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 2 + local.get $20 + i32.load + local.get $20 + local.get $20 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $20 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $2 + local.get $3 select call $_proxy_log - local.get $3 + drop + local.get $20 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_13 - local.get $3 + if $if_30 + local.get $20 i32.load call $_free - end ;; $if_13 - local.get $7 + end ;; $if_30 + local.get $17 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_14 - local.get $7 + if $if_31 + local.get $17 i32.load call $_free - end ;; $if_14 - local.get $4 + end ;; $if_31 + local.get $9 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_15 - local.get $4 + if $if_32 + local.get $9 i32.load call $_free - end ;; $if_15 - local.get $9 + end ;; $if_32 + local.get $21 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_16 - local.get $9 + if $if_33 + local.get $21 i32.load call $_free - end ;; $if_16 - local.get $6 + end ;; $if_33 + local.get $13 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 - local.get $6 + if $if_34 + local.get $13 i32.load call $_free - end ;; $if_17 - local.get $1 + end ;; $if_34 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_35 + local.get $5 + i32.load + call $_free + end ;; $if_35 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_36 + local.get $14 + i32.load + call $_free + end ;; $if_36 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_37 + local.get $15 + i32.load + call $_free + end ;; $if_37 + local.get $16 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_38 + local.get $16 + i32.load + call $_free + end ;; $if_38 + local.get $18 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_39 + local.get $18 + i32.load + call $_free + end ;; $if_39 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_40 + local.get $11 + i32.load + call $_free + end ;; $if_40 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_41 + local.get $10 + i32.load + call $_free + end ;; $if_41 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_42 + local.get $7 + i32.load + call $_free + end ;; $if_42 + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_43 + local.get $4 + i32.load + call $_free + end ;; $if_43 + local.get $2 i32.const 16 i32.add - local.tee $1 - local.get $13 + local.tee $2 + local.get $12 i32.ne br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 + end ;; $loop_0 + local.get $6 + i32.load + local.set $23 + br $block + end ;; $block_1 call $_abort - br $block_0 - end ;; $block_1 + br $block + end ;; $block_0 call $_abort - end ;; $block_0 - end ;; $if_8 - i32.const 2 - i32.const 7112 - i32.const 9 - i32.const 7122 - i32.const 14 - call $_proxy_addHeaderMapValue - i32.const 2 - i32.const 7137 - i32.const 8 - i32.const 7146 - i32.const 10 - call $_proxy_replaceHeaderMapValue - local.get $5 - i32.load - local.tee $0 + end ;; $block + end ;; $if_25 + local.get $23 i32.eqz - if $if_18 - local.get $12 + if $if_44 + local.get $1 i32.load call $_free - local.get $12 + local.get $1 call $_free - local.get $10 - global.set $30 + local.get $8 + global.set $32 i32.const 0 return - end ;; $if_18 - local.get $11 - local.get $0 - i32.store - local.get $0 + end ;; $if_44 + local.get $6 + local.get $23 + i32.store offset=4 + local.get $23 call $_free - local.get $12 + local.get $1 i32.load call $_free - local.get $12 + local.get $1 call $_free - local.get $10 - global.set $30 + local.get $8 + global.set $32 i32.const 0 ) - (func $__ZN14ExampleContext13onRequestBodyEmb (type $5) + (func $__ZN14ExampleContext17onResponseHeadersEv (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 208 + i32.add + global.set $32 + local.get $8 + i32.const 192 + i32.add + local.set $6 + local.get $8 + i32.const 180 + i32.add + local.set $9 + local.get $8 + i32.const 168 + i32.add + local.set $2 + local.get $8 + i32.const 156 + i32.add + local.set $13 + local.get $8 + i32.const 144 + i32.add + local.set $14 + local.get $8 + i32.const 132 + i32.add + local.set $15 + local.get $8 + i32.const 120 + i32.add + local.set $16 + local.get $8 + i32.const 84 + i32.add local.set $7 - global.get $30 - i32.const 48 + local.get $8 + i32.const 60 i32.add - global.set $30 - local.get $7 - local.tee $2 + local.set $4 + local.get $8 + i32.const 72 + i32.add + local.set $3 + local.get $8 + i32.const 36 + i32.add + local.set $11 + local.get $8 i32.const 24 i32.add - local.tee $4 - i32.const 0 - i32.store - local.get $2 + local.set $5 + local.get $8 + i32.const 48 + i32.add + local.set $20 + local.get $8 i32.const 12 i32.add - local.tee $5 + local.set $21 + local.get $8 + local.set $17 + local.get $8 + i32.const 96 + i32.add + local.tee $10 + i64.const 0 + i64.store align=4 + local.get $10 i32.const 0 - i32.store + i32.store offset=8 + local.get $10 + i32.const 1 + i32.store8 offset=11 + local.get $10 + i32.const 91 + i32.store8 + local.get $10 i32.const 0 + i32.store8 offset=1 + local.get $8 + i32.const 108 + i32.add + local.tee $18 + local.get $10 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $18 + local.get $1 + i32.load offset=8 + i32.store offset=8 local.get $1 - local.get $4 - local.get $5 - call $_proxy_getRequestBodyBufferBytes - i32.const 8 - call $__Znwm - local.set $6 - local.get $5 - i32.load - local.set $3 - local.get $6 - local.get $4 - i32.load - local.tee $8 - i32.store - local.get $6 - local.get $3 - i32.store offset=4 - local.get $5 i64.const 0 i64.store align=4 - local.get $5 + local.get $1 i32.const 0 i32.store offset=8 - local.get $5 - i32.const 16 - call $__Znwm - local.tee $0 - i32.store - local.get $5 - i32.const -2147483632 + local.get $16 + local.get $18 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $16 + local.get $1 + i32.load offset=8 i32.store offset=8 - local.get $5 - i32.const 14 - i32.store offset=4 - local.get $0 - i32.const 7157 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7165 - i32.load align=1 - i32.store offset=8 align=1 - local.get $0 - i32.const 7169 - i32.load16_s align=1 - i32.store16 offset=12 align=1 - local.get $0 - i32.const 0 - i32.store8 offset=14 - local.get $2 + local.get $1 i64.const 0 i64.store align=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $3 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - block $block - block $block_0 - local.get $3 - i32.const 11 - i32.lt_u - if $if_0 (result i32) - local.get $2 - i32.const 11 - i32.add - local.tee $1 - local.get $3 - i32.store8 - local.get $3 - if $if_1 (result i32) - local.get $2 - local.set $0 - br $block_0 - else - local.get $2 - end ;; $if_1 - else - local.get $2 - local.get $3 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $1 - call $__Znwm - local.tee $0 - i32.store - local.get $2 - local.get $1 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $3 - i32.store offset=4 - local.get $2 - i32.const 11 - i32.add - local.set $1 - br $block_0 - end ;; $if_0 - local.set $0 - br $block - end ;; $block_0 - local.get $0 - local.get $8 - local.get $3 - call $_memcpy - drop - end ;; $block - local.get $0 - local.get $3 - i32.add - i32.const 0 - i32.store8 - local.get $4 - local.get $5 - local.get $2 + local.get $7 + i32.const 46 + call $__ZNSt3__29to_stringEi + local.get $15 + local.get $16 + local.get $7 i32.load - local.get $2 - local.get $1 - i32.load8_s - local.tee $0 + local.get $7 + local.get $7 + i32.load8_s offset=11 + local.tee $1 i32.const 0 i32.lt_s - local.tee $3 + local.tee $12 select - local.get $2 + local.get $7 i32.load offset=4 - local.get $0 + local.get $1 i32.const 255 i32.and - local.get $3 + local.get $12 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $0 + local.tee $1 i64.load align=4 i64.store align=4 - local.get $4 - local.get $0 + local.get $15 + local.get $1 i32.load offset=8 i32.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - i32.const 4 - local.get $4 - i32.load - local.get $4 - local.get $4 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $4 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $3 - select - call $_proxy_log - local.get $4 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_2 - local.get $4 - i32.load - call $_free - end ;; $if_2 + local.get $14 + local.get $15 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $14 local.get $1 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_3 - local.get $2 - i32.load - call $_free - end ;; $if_3 - local.get $5 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s - if $if_4 - local.get $6 - i32.load - call $_free - local.get $6 - call $_free - local.get $7 - global.set $30 - i32.const 0 - return - end ;; $if_4 - local.get $5 - i32.load - call $_free - local.get $6 - i32.load - call $_free - local.get $6 - call $_free - local.get $7 - global.set $30 - i32.const 0 - ) - - (func $__ZN14ExampleContext6onDoneEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $2 - i32.const 12 - i32.add - local.set $1 - local.get $2 - local.get $0 - i32.const -64 - i32.sub - i32.load - call $__ZNSt3__29to_stringEj + i32.load offset=8 + i32.store offset=8 local.get $1 - local.get $2 - i32.const 7172 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $0 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $13 + local.get $14 + i32.const 11151 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 i64.load align=4 i64.store align=4 + local.get $13 local.get $1 - local.get $0 i32.load offset=8 i32.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - i32.const 3 + local.get $9 + local.get $13 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 local.get $1 - i32.load + i32.load offset=8 + i32.store offset=8 local.get $1 + i64.const 0 + i64.store align=4 local.get $1 - i32.load8_s offset=11 - local.tee $0 i32.const 0 - i32.lt_s - local.tee $3 - select + i32.store offset=8 + i32.const 32 + call $__Znwm + local.tee $1 + i32.const 11169 + i64.load align=1 + i64.store align=1 local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $3 - select - call $_proxy_log + i32.const 11177 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11185 + i32.load16_s align=1 + i32.store16 offset=16 align=1 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $1 - i32.load - call $_free - end ;; $if - local.get $2 - i32.load8_s offset=11 i32.const 0 - i32.ge_s - if $if_0 - local.get $2 - global.set $30 - return - end ;; $if_0 - local.get $2 - i32.load - call $_free - local.get $2 - global.set $30 - ) - - (func $__ZN14ExampleContext5onLogEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $2 - i32.const 12 - i32.add - local.set $1 - local.get $2 - local.get $0 - i32.const -64 - i32.sub - i32.load - call $__ZNSt3__29to_stringEj + i32.store8 offset=18 + local.get $6 + local.get $9 local.get $1 - local.get $2 - i32.const 7180 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $0 + i32.const 18 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $12 i64.load align=4 i64.store align=4 - local.get $1 - local.get $0 + local.get $6 + local.get $12 i32.load offset=8 i32.store offset=8 - local.get $0 + local.get $12 i64.const 0 i64.store align=4 - local.get $0 + local.get $12 i32.const 0 i32.store offset=8 - i32.const 3 - local.get $1 + local.get $4 + local.get $0 + i32.const -64 + i32.sub i32.load - local.get $1 - local.get $1 + call $__ZNSt3__29to_stringEj + local.get $2 + local.get $6 + local.get $4 + i32.load + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $12 select - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $12 select - call $_proxy_log - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $1 - i32.load - call $_free - end ;; $if - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s - if $if_0 - local.get $2 - global.set $30 - return - end ;; $if_0 - local.get $2 - i32.load - call $_free - local.get $2 - global.set $30 - ) - - (func $__ZN14ExampleContext8onDeleteEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $2 - i32.const 12 - i32.add - local.set $1 - local.get $2 - local.get $0 - i32.const -64 - i32.sub - i32.load - call $__ZNSt3__29to_stringEj - local.get $1 - local.get $2 - i32.const 7187 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $1 + local.get $2 local.get $0 i32.load offset=8 i32.store offset=8 @@ -2531,1198 +3099,1720 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 3 - local.get $1 + i32.const 1 + local.get $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $12 select - local.get $1 + local.get $2 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $12 select call $_proxy_log - local.get $1 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $2 i32.load call $_free end ;; $if - local.get $2 + local.get $4 i32.load8_s offset=11 i32.const 0 - i32.ge_s + i32.lt_s if $if_0 - local.get $2 - global.set $30 - return + local.get $4 + i32.load + call $_free end ;; $if_0 - local.get $2 - i32.load - call $_free - local.get $2 - global.set $30 - ) - - (func $__ZN11RootContextD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.const 5648 - i32.store - local.get $0 - i32.load offset=148 - local.tee $1 - if $if - loop $loop - local.get $1 - i32.load - local.set $3 - local.get $1 - i32.load offset=12 - local.set $2 - local.get $1 - i32.const 0 - i32.store offset=12 - local.get $2 - if $if_0 - local.get $2 - local.get $2 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $1 - call $_free - local.get $3 - if $if_1 - local.get $3 - local.set $1 - br $loop - end ;; $if_1 - end ;; $loop - end ;; $if - local.get $0 - i32.load offset=140 - local.set $1 - local.get $0 + local.get $6 + i32.load8_s offset=11 i32.const 0 - i32.store offset=140 + i32.lt_s + if $if_1 + local.get $6 + i32.load + call $_free + end ;; $if_1 local.get $1 + call $_free + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s if $if_2 - local.get $1 + local.get $9 + i32.load call $_free end ;; $if_2 - local.get $0 - i32.load offset=128 - local.tee $1 + local.get $13 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s if $if_3 - loop $loop_0 - local.get $1 - i32.load - local.set $3 - local.get $1 - i32.load offset=12 - local.set $2 - local.get $1 - i32.const 0 - i32.store offset=12 - local.get $2 - if $if_4 - local.get $2 - local.get $2 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_4 - local.get $1 - call $_free - local.get $3 - if $if_5 - local.get $3 - local.set $1 - br $loop_0 - end ;; $if_5 - end ;; $loop_0 + local.get $13 + i32.load + call $_free end ;; $if_3 - local.get $0 - i32.load offset=120 - local.set $1 - local.get $0 + local.get $14 + i32.load8_s offset=11 i32.const 0 - i32.store offset=120 - local.get $1 + i32.lt_s + if $if_4 + local.get $14 + i32.load + call $_free + end ;; $if_4 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $15 + i32.load + call $_free + end ;; $if_5 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s if $if_6 - local.get $1 + local.get $7 + i32.load call $_free end ;; $if_6 - local.get $0 - i32.load offset=108 - local.tee $1 + local.get $16 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s if $if_7 - loop $loop_1 - local.get $1 - i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 - end ;; $if_8 - local.get $1 - call $_free - local.get $3 - if $if_10 - local.get $3 - local.set $1 - br $loop_1 - end ;; $if_10 - end ;; $loop_1 + local.get $16 + i32.load + call $_free end ;; $if_7 - local.get $0 - i32.load offset=100 - local.set $1 - local.get $0 + local.get $18 + i32.load8_s offset=11 i32.const 0 - i32.store offset=100 - local.get $1 - if $if_11 - local.get $1 + i32.lt_s + if $if_8 + local.get $18 + i32.load call $_free - end ;; $if_11 + end ;; $if_8 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_9 + local.get $10 + i32.load + call $_free + end ;; $if_9 + local.get $6 + i32.const 0 + i32.store + local.get $9 + i32.const 0 + i32.store + i32.const 2 + local.get $6 + local.get $9 + call $_proxy_getHeaderMapPairs + drop + i32.const 8 + call $__Znwm + local.set $1 + local.get $9 + i32.load + local.set $0 + local.get $1 + local.get $6 + i32.load + local.tee $2 + i32.store + local.get $1 local.get $0 - i32.load offset=88 - local.tee $1 - if $if_12 - loop $loop_2 - local.get $1 - i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 + i32.store offset=4 + local.get $6 + i32.const 0 + i32.store + local.get $6 + i32.const 0 + i32.store offset=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $2 + if $if_10 + local.get $2 + i32.const 4 + i32.add + local.set $0 + local.get $2 + i32.load + local.tee $12 + if $if_11 + local.get $6 + local.get $12 + call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm + local.get $12 + i32.const 0 + i32.gt_s + if $if_12 + local.get $6 i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 + local.set $22 + i32.const 0 + local.set $2 + local.get $0 + local.get $12 + i32.const 3 + i32.shl i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 + local.set $19 + loop $loop + local.get $0 + i32.load + local.set $23 local.get $2 + i32.const 4 + i32.shl + local.get $22 + i32.add + local.get $19 + i32.store local.get $2 + i32.const 4 + i32.shl + local.get $22 + i32.add + local.get $23 + i32.store offset=4 + local.get $0 + i32.load offset=4 + local.set $24 + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $6 i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 + local.tee $22 + local.get $2 + i32.const 4 + i32.shl i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 - local.get $1 - call $_free - local.get $3 - if $if_15 - local.get $3 - local.set $1 - br $loop_2 - end ;; $if_15 - end ;; $loop_2 - end ;; $if_12 + local.get $23 + i32.const 1 + i32.add + local.get $19 + i32.add + local.tee $19 + i32.store offset=8 + local.get $2 + i32.const 4 + i32.shl + local.get $22 + i32.add + local.get $24 + i32.store offset=12 + local.get $19 + local.get $24 + i32.const 1 + i32.add + i32.add + local.set $19 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $12 + i32.ne + br_if $loop + end ;; $loop + end ;; $if_12 + end ;; $if_11 + end ;; $if_10 + local.get $7 + i64.const 0 + i64.store align=4 + local.get $7 + i32.const 0 + i32.store offset=8 + local.get $7 + i32.const 1 + i32.store8 offset=11 + local.get $7 + i32.const 91 + i32.store8 + local.get $7 + i32.const 0 + i32.store8 offset=1 + local.get $10 + local.get $7 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $10 local.get $0 - i32.load offset=80 - local.set $1 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 i32.const 0 - i32.store offset=80 - local.get $1 - if $if_16 - local.get $1 - call $_free - end ;; $if_16 + i32.store offset=8 + local.get $18 + local.get $10 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $18 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 - i32.load8_s offset=79 i32.const 0 - i32.ge_s - if $if_17 - local.get $0 - call $__ZN11ContextBaseD2Ev - return - end ;; $if_17 + i32.store offset=8 + local.get $4 + i32.const 49 + call $__ZNSt3__29to_stringEi + local.get $16 + local.get $18 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $4 + i32.load offset=4 local.get $0 - i32.load offset=68 - call $_free + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $16 local.get $0 - call $__ZN11ContextBaseD2Ev - ) - - (func $__ZN18ExampleRootContextD0Ev (type $0) - (param $0 i32) + i32.load offset=8 + i32.store offset=8 local.get $0 - call $__ZN11RootContextD2Ev + i64.const 0 + i64.store align=4 local.get $0 - call $_free - ) - - (func $__ZN11RootContext6asRootEv (type $4) - (param $0 i32) - (result i32) + i32.const 0 + i32.store offset=8 + local.get $15 + local.get $16 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 - ) - - (func $__ZN11RootContext9asContextEv (type $4) - (param $0 i32) - (result i32) i32.const 0 - ) - - (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $1 - i32.const 5 - i32.eq - ) - - (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $3) - (param $0 i32) - (param $1 i32) - nop - ) - - (func $__ZN11RootContext6onTickEv (type $0) - (param $0 i32) - nop - ) - - (func $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ (type $7) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11151 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $13 + local.get $14 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $13 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $11 + i64.const 0 + i64.store align=4 + local.get $11 + i32.const 0 + i32.store offset=8 + local.get $11 + i32.const 9 + i32.store8 offset=11 + local.get $11 + i32.const 11141 + i64.load align=1 + i64.store align=1 + local.get $11 + i32.const 11149 + i32.load8_s + i32.store8 offset=8 + local.get $11 + i32.const 0 + i32.store8 offset=9 + local.get $9 + local.get $13 + local.get $11 + i32.const 9 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $5 local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store - block $block - local.get $0 - i32.load offset=84 - local.tee $5 - i32.eqz - br_if $block - local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load - local.get $5 - local.get $5 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $10 - if $if (result i32) - local.get $1 - local.get $7 - i32.and - else - local.get $5 - local.get $1 - i32.gt_u - if $if_0 (result i32) - local.get $1 - else - local.get $5 - if $if_1 (result i32) - local.get $1 - local.get $5 - i32.rem_u - else - i32.const 0 - end ;; $if_1 - end ;; $if_0 - end ;; $if - local.tee $11 - i32.const 2 - i32.shl - i32.add + i32.load offset=4 + local.get $6 + i32.load + i32.sub + i32.const 4 + i32.shr_s + call $__ZNSt3__29to_stringEm + local.get $3 + local.get $9 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $5 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 2 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $3 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $_proxy_log + drop + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_13 + local.get $3 i32.load - local.tee $0 - i32.eqz - br_if $block - local.get $0 + call $_free + end ;; $if_13 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_14 + local.get $5 i32.load - local.tee $0 - i32.eqz - br_if $block - local.get $6 - i32.const 8 - i32.add - local.set $8 - local.get $6 - i32.const 4 - i32.add - local.set $9 - block $block_0 - local.get $10 - if $if_2 - loop $loop - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $5 - i32.eq - local.tee $10 - local.get $5 - local.get $7 - i32.and - local.get $11 - i32.eq - i32.or - if $if_3 + call $_free + end ;; $if_14 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_15 + local.get $9 + i32.load + call $_free + end ;; $if_15 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_16 + local.get $11 + i32.load + call $_free + end ;; $if_16 + local.get $13 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_17 + local.get $13 + i32.load + call $_free + end ;; $if_17 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_18 + local.get $14 + i32.load + call $_free + end ;; $if_18 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_19 + local.get $15 + i32.load + call $_free + end ;; $if_19 + local.get $16 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_20 + local.get $16 + i32.load + call $_free + end ;; $if_20 + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_21 + local.get $4 + i32.load + call $_free + end ;; $if_21 + local.get $18 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_22 + local.get $18 + i32.load + call $_free + end ;; $if_22 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_23 + local.get $10 + i32.load + call $_free + end ;; $if_23 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_24 + local.get $7 + i32.load + call $_free + end ;; $if_24 + local.get $6 + i32.load + local.tee $2 + local.get $6 + i32.load offset=4 + local.tee $12 + i32.ne + if $if_25 + block $block + block $block_0 + loop $loop_0 + block $block_1 + local.get $4 + i64.const 0 + i64.store align=4 + local.get $4 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const 1 + i32.store8 offset=11 + local.get $4 + i32.const 91 + i32.store8 + local.get $4 + i32.const 0 + i32.store8 offset=1 + local.get $7 + local.get $4 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 local.get $10 - if $if_4 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_4 + local.get $7 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $0 + i32.load offset=8 + i32.store offset=8 local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $11 + i32.const 51 + call $__ZNSt3__29to_stringEi + local.get $18 + local.get $10 + local.get $11 i32.load + local.get $11 + local.get $11 + i32.load8_s offset=11 local.tee $0 - br_if $loop - end ;; $if_3 - end ;; $loop - else - loop $loop_0 - block $block_1 - local.get $1 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $11 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $18 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $16 + local.get $18 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $16 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $15 + local.get $16 + i32.const 11151 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 + i32.const 0 + i32.store offset=8 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load + local.set $22 + local.get $2 i32.load offset=4 - local.tee $7 - i32.eq - if $if_5 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_0 - else - local.get $7 - local.get $5 - i32.ge_u - if $if_6 (result i32) - local.get $5 - if $if_7 (result i32) - local.get $7 + local.tee $3 + i32.const -17 + i32.gt_u + br_if $block_1 + block $block_2 + block $block_3 + local.get $3 + i32.const 11 + i32.lt_u + if $if_26 (result i32) local.get $5 - i32.rem_u + local.get $3 + i32.store8 offset=11 + local.get $3 + if $if_27 (result i32) + local.get $5 + local.set $0 + br $block_3 + else + local.get $5 + end ;; $if_27 else - i32.const 0 - end ;; $if_7 - else - local.get $7 - end ;; $if_6 - local.get $11 - i32.ne - br_if $block_1 - end ;; $if_5 + local.get $5 + local.get $3 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $19 + call $__Znwm + local.tee $0 + i32.store + local.get $5 + local.get $19 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $5 + local.get $3 + i32.store offset=4 + br $block_3 + end ;; $if_26 + local.set $0 + br $block_2 + end ;; $block_3 + local.get $0 + local.get $22 + local.get $3 + call $_memcpy + drop + end ;; $block_2 local.get $0 + local.get $3 + i32.add + i32.const 0 + i32.store8 + local.get $13 + local.get $14 + local.get $5 i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 local.tee $0 - br_if $loop_0 - end ;; $block_1 - end ;; $loop_0 - end ;; $if_2 - br $block - end ;; $block_0 - local.get $2 - i32.load - local.set $1 - local.get $2 - i32.const 0 - i32.store - local.get $8 - local.get $1 - i32.store - local.get $3 - i32.load - local.set $1 - local.get $3 - i32.const 0 - i32.store - local.get $9 - local.get $1 - i32.store - local.get $4 - i32.load - local.set $1 - local.get $4 - i32.const 0 - i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 44 - call $___cxa_throw - end ;; $if_8 - local.get $0 - local.get $8 - local.get $9 - local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $6 - i32.load - local.set $0 - local.get $6 - i32.const 0 - i32.store - local.get $0 - if $if_9 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_9 - local.get $9 - i32.load - local.set $0 - local.get $9 - i32.const 0 - i32.store - local.get $0 - if $if_10 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_10 - local.get $8 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $5 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $13 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $21 + i64.const 0 + i64.store align=4 + local.get $21 + i32.const 0 + i32.store offset=8 + local.get $21 + i32.const 4 + i32.store8 offset=11 + local.get $21 + i32.const 540945696 + i32.store + local.get $21 + i32.const 0 + i32.store8 offset=4 + local.get $9 + local.get $13 + local.get $21 + i32.const 4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $17 + i64.const 0 + i64.store align=4 + local.get $17 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load offset=8 + local.set $22 + local.get $2 + i32.load offset=12 + local.tee $3 + i32.const -17 + i32.gt_u + br_if $block_0 + block $block_4 + block $block_5 + local.get $3 + i32.const 11 + i32.lt_u + if $if_28 (result i32) + local.get $17 + local.get $3 + i32.store8 offset=11 + local.get $3 + if $if_29 (result i32) + local.get $17 + local.set $0 + br $block_5 + else + local.get $17 + end ;; $if_29 + else + local.get $17 + local.get $3 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $19 + call $__Znwm + local.tee $0 + i32.store + local.get $17 + local.get $19 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $17 + local.get $3 + i32.store offset=4 + br $block_5 + end ;; $if_28 + local.set $0 + br $block_4 + end ;; $block_5 + local.get $0 + local.get $22 + local.get $3 + call $_memcpy + drop + end ;; $block_4 + local.get $0 + local.get $3 + i32.add + i32.const 0 + i32.store8 + local.get $20 + local.get $9 + local.get $17 + i32.load + local.get $17 + local.get $17 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $17 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $20 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 2 + local.get $20 + i32.load + local.get $20 + local.get $20 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $20 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $3 + select + call $_proxy_log + drop + local.get $20 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_30 + local.get $20 + i32.load + call $_free + end ;; $if_30 + local.get $17 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_31 + local.get $17 + i32.load + call $_free + end ;; $if_31 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_32 + local.get $9 + i32.load + call $_free + end ;; $if_32 + local.get $21 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_33 + local.get $21 + i32.load + call $_free + end ;; $if_33 + local.get $13 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_34 + local.get $13 + i32.load + call $_free + end ;; $if_34 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_35 + local.get $5 + i32.load + call $_free + end ;; $if_35 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_36 + local.get $14 + i32.load + call $_free + end ;; $if_36 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_37 + local.get $15 + i32.load + call $_free + end ;; $if_37 + local.get $16 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_38 + local.get $16 + i32.load + call $_free + end ;; $if_38 + local.get $18 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_39 + local.get $18 + i32.load + call $_free + end ;; $if_39 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_40 + local.get $11 + i32.load + call $_free + end ;; $if_40 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_41 + local.get $10 + i32.load + call $_free + end ;; $if_41 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_42 + local.get $7 + i32.load + call $_free + end ;; $if_42 + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_43 + local.get $4 + i32.load + call $_free + end ;; $if_43 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $12 + i32.ne + br_if $loop_0 + br $block + end ;; $block_1 + end ;; $loop_0 + call $_abort + br $block + end ;; $block_0 + call $_abort + end ;; $block + end ;; $if_25 + i32.const 2 + i32.const 11188 + i32.const 9 + i32.const 11198 + i32.const 14 + call $_proxy_addHeaderMapValue + drop + i32.const 2 + i32.const 11213 + i32.const 8 + i32.const 11222 + i32.const 10 + call $_proxy_replaceHeaderMapValue + drop + local.get $6 + i32.load + local.tee $0 + i32.eqz + if $if_44 + local.get $1 i32.load - local.set $0 + call $_free + local.get $1 + call $_free local.get $8 + global.set $32 i32.const 0 - i32.store - local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 return - end ;; $block + end ;; $if_44 local.get $6 - global.set $30 + local.get $0 + i32.store offset=4 + local.get $0 + call $_free + local.get $1 + i32.load + call $_free + local.get $1 + call $_free + local.get $8 + global.set $32 + i32.const 0 ) - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) + (func $__ZN14ExampleContext13onRequestBodyEmb (type $5) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - local.get $0 - i32.load offset=124 - local.tee $2 - if $if - local.get $0 - i32.load offset=120 - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $6 - if $if_0 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $2 - local.get $1 - i32.gt_u - if $if_1 (result i32) - local.get $1 - else - local.get $2 - if $if_2 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block - block $block_0 - local.get $6 - if $if_5 - loop $loop - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $6 - if $if_6 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_6 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block - unreachable - end ;; $loop - unreachable - else - loop $loop_0 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - else - local.get $4 - local.get $2 - i32.ge_u - if $if_8 (result i32) - local.get $2 - if $if_9 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 - local.get $5 - i32.ne - br_if $block - end ;; $if_7 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_0 - local.get $3 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - return - end ;; $block - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $0 - i32.load offset=144 - local.tee $2 - i32.eqz - if $if_10 - return - end ;; $if_10 - local.get $0 - i32.load offset=140 - local.get $2 - local.get $2 - i32.const -1 + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 144 i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $5 - if $if_11 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $2 - local.get $1 - i32.gt_u - if $if_12 (result i32) - local.get $1 - else - local.get $2 - if $if_13 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $3 - i32.const 2 - i32.shl + global.set $32 + local.get $3 + i32.const 108 + i32.add + local.set $5 + local.get $3 + i32.const 96 + i32.add + local.set $11 + local.get $3 + i32.const 84 + i32.add + local.set $12 + local.get $3 + i32.const 72 + i32.add + local.set $13 + local.get $3 + i32.const 60 + i32.add + local.set $14 + local.get $3 + i32.const 48 + i32.add + local.set $15 + local.get $3 + i32.const 36 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + local.set $2 + local.get $3 + i32.const 132 + i32.add + local.tee $9 + i32.const 0 + i32.store + local.get $3 + i32.const 120 i32.add + local.tee $10 + i32.const 0 + i32.store + i32.const 0 + local.get $1 + local.get $9 + local.get $10 + call $_proxy_getRequestBodyBufferBytes + drop + i32.const 8 + call $__Znwm + local.set $7 + local.get $10 + i32.load + local.set $0 + local.get $7 + local.get $9 i32.load + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $6 + i64.const 0 + i64.store align=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $6 + i32.const 1 + i32.store8 offset=11 + local.get $6 + i32.const 91 + i32.store8 + local.get $6 + i32.const 0 + i32.store8 offset=1 + local.get $15 + local.get $6 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 - i32.eqz - if $if_14 - return - end ;; $if_14 + i64.load align=4 + i64.store align=4 + local.get $15 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $14 + local.get $15 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $14 + local.get $0 + i32.load offset=8 + i32.store offset=8 local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $8 + i32.const 60 + call $__ZNSt3__29to_stringEi + local.get $13 + local.get $14 + local.get $8 i32.load + local.get $8 + local.get $8 + i32.load8_s offset=11 local.tee $0 - i32.eqz - if $if_15 - return - end ;; $if_15 - block $block_1 - local.get $5 - if $if_16 - loop $loop_1 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $5 - local.get $2 - local.get $4 - i32.and - local.get $3 - i32.eq - i32.or - if $if_17 - local.get $5 - if $if_18 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_1 - end ;; $if_18 - local.get $0 - i32.load - local.tee $0 - br_if $loop_1 - end ;; $if_17 - end ;; $loop_1 - else - loop $loop_2 - block $block_2 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_19 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_1 - else - local.get $4 - local.get $2 - i32.ge_u - if $if_20 (result i32) - local.get $2 - if $if_21 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $4 - end ;; $if_20 - local.get $3 - i32.ne - br_if $block_2 - end ;; $if_19 - local.get $0 - i32.load - local.tee $0 - br_if $loop_2 - end ;; $block_2 - end ;; $loop_2 - end ;; $if_16 - return - end ;; $block_1 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $8 + i32.load offset=4 local.get $0 - i32.load offset=12 + i32.const 255 + i32.and + local.get $1 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 - i32.load + i64.load align=4 + i64.store align=4 + local.get $13 + local.get $0 i32.load offset=8 - local.set $1 + i32.store offset=8 local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - ) - - (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) + i64.const 0 + i64.store align=4 local.get $0 - i32.load offset=144 - local.tee $2 - i32.eqz + i32.const 0 + i32.store offset=8 + local.get $12 + local.get $13 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $12 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $11 + local.get $12 + i32.const 11233 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $11 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $10 + local.get $11 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 16 + call $__Znwm + local.tee $0 + i32.store offset=12 + local.get $3 + i32.const -2147483632 + i32.store offset=20 + local.get $3 + i32.const 14 + i32.store offset=16 + local.get $0 + i32.const 11247 + i64.load align=1 + i64.store align=1 + local.get $0 + i32.const 11255 + i32.load align=1 + i32.store offset=8 align=1 + local.get $0 + i32.const 11259 + i32.load16_s align=1 + i32.store16 offset=12 align=1 + local.get $0 + i32.const 0 + i32.store8 offset=14 + local.get $9 + local.get $10 + local.get $0 + i32.const 14 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $7 + i32.load + local.set $16 + local.get $7 + i32.load offset=4 + local.set $4 + local.get $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u if $if - return + call $_abort end ;; $if + block $block + block $block_0 + local.get $4 + i32.const 11 + i32.lt_u + if $if_0 (result i32) + local.get $2 + i32.const 11 + i32.add + local.tee $1 + local.get $4 + i32.store8 + local.get $4 + if $if_1 (result i32) + local.get $2 + local.set $0 + br $block_0 + else + local.get $2 + end ;; $if_1 + else + local.get $2 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $1 + call $__Znwm + local.tee $0 + i32.store + local.get $2 + local.get $1 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $2 + local.get $4 + i32.store offset=4 + local.get $2 + i32.const 11 + i32.add + local.set $1 + br $block_0 + end ;; $if_0 + local.set $0 + br $block + end ;; $block_0 + local.get $0 + local.get $16 + local.get $4 + call $_memcpy + drop + end ;; $block local.get $0 - i32.load offset=140 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $5 + local.get $9 local.get $2 + i32.load local.get $2 - i32.const -1 - i32.add + local.get $1 + i32.load8_s + local.tee $0 + i32.const 0 + i32.lt_s local.tee $4 + select + local.get $2 + i32.load offset=4 + local.get $0 + i32.const 255 i32.and - i32.eqz - local.tee $3 - if $if_0 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $2 - local.get $1 - i32.gt_u - if $if_1 (result i32) - local.get $1 - else - local.get $2 - if $if_2 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 - i32.const 2 - i32.shl - i32.add - i32.load + local.get $4 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 - i32.eqz - if $if_3 - return - end ;; $if_3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $0 + i32.load offset=8 + i32.store offset=8 local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 4 + local.get $5 i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 local.tee $0 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $3 - if $if_5 - loop $loop - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eq - local.tee $2 - local.get $3 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - if $if_6 - local.get $2 - if $if_7 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $0 - i32.load - local.tee $0 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_8 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $3 - local.get $2 - i32.ge_u - if $if_9 (result i32) - local.get $2 - if $if_10 (result i32) - local.get $3 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $3 - end ;; $if_9 - local.get $5 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $0 - i32.load - local.tee $0 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $0 - i32.load offset=12 - local.tee $1 - i32.load - i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - ) - - (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=144 - local.tee $2 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load offset=140 - local.get $2 - local.get $2 - i32.const -1 - i32.add + i32.const 0 + i32.lt_s local.tee $4 + select + local.get $5 + i32.load offset=4 + local.get $0 + i32.const 255 i32.and - i32.eqz - local.tee $3 - if $if_0 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $2 - local.get $1 - i32.gt_u - if $if_1 (result i32) - local.get $1 - else - local.get $2 - if $if_2 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $0 - i32.eqz + local.get $4 + select + call $_proxy_log + drop + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $5 + i32.load + call $_free + end ;; $if_2 + local.get $1 + i32.load8_s + i32.const 0 + i32.lt_s if $if_3 - return + local.get $2 + i32.load + call $_free end ;; $if_3 - local.get $0 - i32.load - local.tee $0 - i32.eqz + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s if $if_4 - return + local.get $9 + i32.load + call $_free end ;; $if_4 - block $block + local.get $3 + i32.load8_s offset=23 + i32.const 0 + i32.lt_s + if $if_5 local.get $3 - if $if_5 - loop $loop - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eq - local.tee $2 - local.get $3 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - if $if_6 - local.get $2 - if $if_7 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $0 - i32.load - local.tee $0 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_8 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $3 - local.get $2 - i32.ge_u - if $if_9 (result i32) - local.get $2 - if $if_10 (result i32) - local.get $3 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $3 - end ;; $if_9 - local.get $5 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $0 - i32.load - local.tee $0 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 + i32.load offset=12 + call $_free + end ;; $if_5 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $10 + i32.load + call $_free + end ;; $if_6 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $11 + i32.load + call $_free + end ;; $if_7 + local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $12 + i32.load + call $_free + end ;; $if_8 + local.get $13 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_9 + local.get $13 + i32.load + call $_free + end ;; $if_9 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_10 + local.get $8 + i32.load + call $_free + end ;; $if_10 + local.get $14 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_11 + local.get $14 + i32.load + call $_free + end ;; $if_11 + local.get $15 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_12 + local.get $15 + i32.load + call $_free + end ;; $if_12 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_13 + local.get $7 + i32.load + call $_free + local.get $7 + call $_free + local.get $3 + global.set $32 + i32.const 0 return - end ;; $block - local.get $0 - i32.load offset=12 - local.tee $1 + end ;; $if_13 + local.get $6 i32.load - i32.load offset=16 - local.set $0 - local.get $1 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + call $_free + local.get $7 + i32.load + call $_free + local.get $7 + call $_free + local.get $3 + global.set $32 + i32.const 0 ) - (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $2) + (func $__ZN14ExampleContext6onDoneEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3733,575 +4823,374 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 + (local $13 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 i32.add - global.set $30 - local.get $6 - i32.const 16 + global.set $32 + local.get $2 + i32.const 108 i32.add - local.set $8 - local.get $6 - i32.const 8 + local.set $3 + local.get $2 + i32.const 120 i32.add local.set $7 - local.get $6 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 84 + i32.add + local.set $9 + local.get $2 + i32.const 72 + i32.add + local.set $10 + local.get $2 + i32.const 60 + i32.add + local.set $11 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 i32.const 12 i32.add - local.tee $11 + local.set $4 + local.get $2 + i32.const 36 + i32.add + local.tee $6 + i64.const 0 + i64.store align=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $6 + i32.const 1 + i32.store8 offset=11 + local.get $6 + i32.const 91 + i32.store8 + local.get $6 + i32.const 0 + i32.store8 offset=1 + local.get $2 + i32.const 48 + i32.add + local.tee $12 + local.get $6 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $12 local.get $1 - i32.store + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $11 + local.get $12 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $11 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 64 + call $__ZNSt3__29to_stringEi + local.get $10 + local.get $11 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.tee $13 + select + local.get $5 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $13 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $9 + local.get $10 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 11262 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $7 + local.get $8 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $2 local.get $0 - i32.const 100 - i32.add - local.set $10 - block $block - local.get $0 - i32.load offset=104 - local.tee $3 - if $if - local.get $10 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $12 - if $if_0 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_1 (result i32) - local.get $1 - else - local.get $3 - if $if_2 (result i32) - local.get $1 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $9 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_3 - local.get $5 - i32.load - local.tee $5 - if $if_4 - block $block_0 - block $block_1 - local.get $12 - if $if_5 - loop $loop - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $3 - i32.eq - local.tee $12 - local.get $3 - local.get $4 - i32.and - local.get $9 - i32.eq - i32.or - i32.eqz - br_if $block_0 - local.get $12 - if $if_6 - local.get $1 - local.get $5 - i32.load offset=8 - i32.eq - br_if $block_1 - end ;; $if_6 - local.get $5 - i32.load - local.tee $5 - br_if $loop - br $block_0 - unreachable - end ;; $loop - unreachable - else - loop $loop_0 - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $5 - i32.load offset=8 - i32.eq - br_if $block_1 - else - local.get $4 - local.get $3 - i32.ge_u - if $if_8 (result i32) - local.get $3 - if $if_9 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 - local.get $9 - i32.ne - br_if $block_0 - end ;; $if_7 - local.get $5 - i32.load - local.tee $5 - br_if $loop_0 - br $block_0 - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_1 - local.get $2 - i32.load - local.set $0 - local.get $2 - i32.const 0 - i32.store - local.get $7 - local.get $0 - i32.store - local.get $8 - i32.const 0 - i32.store - local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 44 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $8 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $7 - i32.load - local.set $0 - local.get $7 - i32.const 0 - i32.store - local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $6 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $8 - local.get $0 - i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $3 - if $if_15 (result i32) - local.get $1 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_16 - local.get $5 - i32.load - local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $3 - i32.eq - local.tee $9 - local.get $3 - local.get $4 - i32.and - local.get $10 - i32.eq - i32.or - i32.eqz - br_if $block_2 - local.get $9 - if $if_19 - local.get $1 - local.get $5 - i32.load offset=8 - i32.eq - br_if $block_3 - end ;; $if_19 - local.get $5 - i32.load - local.tee $5 - br_if $loop_1 - br $block_2 - unreachable - end ;; $loop_1 - unreachable - else - loop $loop_2 - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_20 - local.get $1 - local.get $5 - i32.load offset=8 - i32.eq - br_if $block_3 - else - local.get $4 - local.get $3 - i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_22 - else - local.get $4 - end ;; $if_21 - local.get $10 - i32.ne - br_if $block_2 - end ;; $if_20 - local.get $5 - i32.load - local.tee $5 - br_if $loop_2 - br $block_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - unreachable - end ;; $block_3 - local.get $5 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=12 - local.set $1 - local.get $2 - i32.load - local.set $4 - local.get $2 - i32.const 0 - i32.store - local.get $7 - local.get $4 - i32.store - local.get $0 - local.get $7 - local.get $1 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $7 - i32.load - local.set $0 - local.get $7 - i32.const 0 - i32.store - local.get $0 - if $if_23 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_23 - local.get $8 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 - local.get $0 - i32.load offset=144 - local.tee $4 - i32.eqz - br_if $block - local.get $0 - i32.const 140 - i32.add - local.tee $7 + i32.const -64 + i32.sub + i32.load + call $__ZNSt3__29to_stringEj + local.get $4 + local.get $2 + i32.const 11269 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $3 + local.get $7 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $4 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 3 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $3 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $_proxy_log + drop + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $3 i32.load + call $_free + end ;; $if + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 local.get $4 - local.get $4 - i32.const -1 - i32.add - local.tee $3 - i32.and - i32.eqz - local.tee $8 - if $if_24 (result i32) - local.get $1 - local.get $3 - i32.and - else - local.get $4 - local.get $1 - i32.gt_u - if $if_25 (result i32) - local.get $1 - else - local.get $4 - if $if_26 (result i32) - local.get $1 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $5 - i32.const 2 - i32.shl - i32.add i32.load - local.tee $0 - i32.eqz - br_if $block - local.get $0 + call $_free + end ;; $if_0 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $2 i32.load - local.tee $0 - i32.eqz - br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $4 - i32.eq - local.tee $8 - local.get $3 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - if $if_28 - local.get $8 - if $if_29 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_4 - end ;; $if_29 - local.get $0 - i32.load - local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 - else - loop $loop_4 - block $block_5 - local.get $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_30 - local.get $1 - local.get $0 - i32.load offset=8 - i32.eq - br_if $block_4 - else - local.get $3 - local.get $4 - i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_32 - else - local.get $3 - end ;; $if_31 - local.get $5 - i32.ne - br_if $block_5 - end ;; $if_30 - local.get $0 - i32.load - local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 - return - end ;; $block_4 - local.get $0 - i32.load offset=12 - local.tee $0 + call $_free + end ;; $if_1 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $7 i32.load - i32.load offset=20 - local.set $1 - local.get $2 + call $_free + end ;; $if_2 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $8 i32.load - local.set $4 - local.get $2 - i32.const 0 - i32.store - local.get $6 - local.get $4 - i32.store - local.get $0 - local.get $6 - local.get $1 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $6 + call $_free + end ;; $if_3 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $9 i32.load - local.set $0 - local.get $6 - i32.const 0 - i32.store - local.get $0 - if $if_33 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_33 - local.get $7 + call $_free + end ;; $if_4 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $10 + i32.load + call $_free + end ;; $if_5 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $5 + i32.load + call $_free + end ;; $if_6 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 + i32.load + call $_free + end ;; $if_7 + local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $12 + i32.load + call $_free + end ;; $if_8 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_9 + local.get $2 + global.set $32 return - end ;; $block + end ;; $if_9 local.get $6 - global.set $30 + i32.load + call $_free + local.get $2 + global.set $32 ) - (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $1) + (func $__ZN14ExampleContext5onLogEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -4312,721 +5201,1562 @@ (local $11 i32) (local $12 i32) (local $13 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 108 + i32.add + local.set $3 + local.get $2 + i32.const 120 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add local.set $8 - global.get $30 - i32.const 32 + local.get $2 + i32.const 84 i32.add - global.set $30 - local.get $8 - i32.const 16 + local.set $9 + local.get $2 + i32.const 72 i32.add local.set $10 - local.get $8 - i32.const 8 + local.get $2 + i32.const 60 i32.add - local.set $7 - local.get $8 + local.set $11 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 i32.const 12 i32.add + local.set $4 + local.get $2 + i32.const 36 + i32.add + local.tee $6 + i64.const 0 + i64.store align=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $6 + i32.const 1 + i32.store8 offset=11 + local.get $6 + i32.const 91 + i32.store8 + local.get $6 + i32.const 0 + i32.store8 offset=1 + local.get $2 + i32.const 48 + i32.add + local.tee $12 + local.get $6 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $12 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $11 + local.get $12 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $11 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 66 + call $__ZNSt3__29to_stringEi + local.get $10 + local.get $11 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s local.tee $13 + select + local.get $5 + i32.load offset=4 local.get $1 - i32.store + i32.const 255 + i32.and + local.get $13 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $9 + local.get $10 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 11277 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $7 + local.get $8 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $2 + local.get $0 + i32.const -64 + i32.sub + i32.load + call $__ZNSt3__29to_stringEj + local.get $4 + local.get $2 + i32.const 11283 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $3 + local.get $7 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $4 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 3 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $3 + i32.load offset=4 local.get $0 - i32.const 100 + i32.const 255 + i32.and + local.get $1 + select + call $_proxy_log + drop + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $3 + i32.load + call $_free + end ;; $if + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $4 + i32.load + call $_free + end ;; $if_0 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $2 + i32.load + call $_free + end ;; $if_1 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $7 + i32.load + call $_free + end ;; $if_2 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $8 + i32.load + call $_free + end ;; $if_3 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $9 + i32.load + call $_free + end ;; $if_4 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $10 + i32.load + call $_free + end ;; $if_5 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $5 + i32.load + call $_free + end ;; $if_6 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $11 + i32.load + call $_free + end ;; $if_7 + local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $12 + i32.load + call $_free + end ;; $if_8 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_9 + local.get $2 + global.set $32 + return + end ;; $if_9 + local.get $6 + i32.load + call $_free + local.get $2 + global.set $32 + ) + + (func $__ZN14ExampleContext8onDeleteEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 i32.add - local.set $11 - block $block - local.get $0 - i32.load offset=104 - local.tee $4 - if $if - local.get $11 - i32.load - local.get $4 - local.get $4 - i32.const -1 - i32.add - local.tee $5 - i32.and - i32.eqz - local.tee $12 - if $if_0 (result i32) - local.get $1 - local.get $5 + global.set $32 + local.get $2 + i32.const 108 + i32.add + local.set $3 + local.get $2 + i32.const 120 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 84 + i32.add + local.set $9 + local.get $2 + i32.const 72 + i32.add + local.set $10 + local.get $2 + i32.const 60 + i32.add + local.set $11 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 12 + i32.add + local.set $4 + local.get $2 + i32.const 36 + i32.add + local.tee $6 + i64.const 0 + i64.store align=4 + local.get $6 + i32.const 0 + i32.store offset=8 + local.get $6 + i32.const 1 + i32.store8 offset=11 + local.get $6 + i32.const 91 + i32.store8 + local.get $6 + i32.const 0 + i32.store8 offset=1 + local.get $2 + i32.const 48 + i32.add + local.tee $12 + local.get $6 + i32.const 11035 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $12 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $11 + local.get $12 + i32.const 11069 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $11 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 68 + call $__ZNSt3__29to_stringEi + local.get $10 + local.get $11 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.tee $13 + select + local.get $5 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $13 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $10 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $9 + local.get $10 + i32.const 11071 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 11290 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $7 + local.get $8 + i32.const 11083 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $7 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $2 + local.get $0 + i32.const -64 + i32.sub + i32.load + call $__ZNSt3__29to_stringEj + local.get $4 + local.get $2 + i32.const 11299 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $3 + local.get $7 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $4 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + i32.const 3 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $3 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $_proxy_log + drop + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $3 + i32.load + call $_free + end ;; $if + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $4 + i32.load + call $_free + end ;; $if_0 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $2 + i32.load + call $_free + end ;; $if_1 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $7 + i32.load + call $_free + end ;; $if_2 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $8 + i32.load + call $_free + end ;; $if_3 + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $9 + i32.load + call $_free + end ;; $if_4 + local.get $10 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $10 + i32.load + call $_free + end ;; $if_5 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $5 + i32.load + call $_free + end ;; $if_6 + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $11 + i32.load + call $_free + end ;; $if_7 + local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $12 + i32.load + call $_free + end ;; $if_8 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_9 + local.get $2 + global.set $32 + return + end ;; $if_9 + local.get $6 + i32.load + call $_free + local.get $2 + global.set $32 + ) + + (func $__ZN11RootContextD2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.const 6688 + i32.store + local.get $0 + i32.load offset=148 + local.tee $1 + if $if + loop $loop + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=12 + local.set $3 + local.get $1 + i32.const 0 + i32.store offset=12 + local.get $3 + if $if_0 + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 i32.and - else - local.get $4 - local.get $1 - i32.gt_u - if $if_1 (result i32) - local.get $1 - else - local.get $4 - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 + i32.const 160 + i32.add + call_indirect $28 (type $0) end ;; $if_0 - local.tee $9 - i32.const 2 - i32.shl - i32.add + local.get $1 + call $_free + local.get $2 + if $if_1 + local.get $2 + local.set $1 + br $loop + end ;; $if_1 + end ;; $loop + end ;; $if + local.get $0 + i32.load offset=140 + local.set $1 + local.get $0 + i32.const 0 + i32.store offset=140 + local.get $1 + if $if_2 + local.get $1 + call $_free + end ;; $if_2 + local.get $0 + i32.load offset=128 + local.tee $1 + if $if_3 + loop $loop_0 + local.get $1 i32.load - local.tee $6 - if $if_3 - local.get $6 + local.set $2 + local.get $1 + i32.load offset=12 + local.set $3 + local.get $1 + i32.const 0 + i32.store offset=12 + local.get $3 + if $if_4 + local.get $3 + local.get $3 i32.load - local.tee $6 - if $if_4 - block $block_0 - block $block_1 - local.get $12 - if $if_5 - loop $loop - local.get $1 - local.get $6 - i32.load offset=4 - local.tee $4 - i32.eq - local.tee $12 - local.get $4 - local.get $5 - i32.and - local.get $9 - i32.eq - i32.or - i32.eqz - br_if $block_0 - local.get $12 - if $if_6 - local.get $1 - local.get $6 - i32.load offset=8 - i32.eq - br_if $block_1 - end ;; $if_6 - local.get $6 - i32.load - local.tee $6 - br_if $loop - br $block_0 - unreachable - end ;; $loop - unreachable - else - loop $loop_0 - local.get $1 - local.get $6 - i32.load offset=4 - local.tee $5 - i32.eq - if $if_7 - local.get $1 - local.get $6 - i32.load offset=8 - i32.eq - br_if $block_1 - else - local.get $5 - local.get $4 - i32.ge_u - if $if_8 (result i32) - local.get $4 - if $if_9 (result i32) - local.get $5 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $5 - end ;; $if_8 - local.get $9 - i32.ne - br_if $block_0 - end ;; $if_7 - local.get $6 - i32.load - local.tee $6 - br_if $loop_0 - br $block_0 - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_1 - local.get $3 - i32.load - local.set $0 - local.get $3 - i32.const 0 - i32.store - local.get $7 - local.get $0 - i32.store - local.get $10 - local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 44 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $7 - i32.load - local.set $0 - local.get $7 - i32.const 0 - i32.store - local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $10 - local.get $0 - i32.load offset=124 - local.tee $4 - if $if_12 - local.get $10 + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_4 + local.get $1 + call $_free + local.get $2 + if $if_5 + local.get $2 + local.set $1 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + end ;; $if_3 + local.get $0 + i32.load offset=120 + local.set $1 + local.get $0 + i32.const 0 + i32.store offset=120 + local.get $1 + if $if_6 + local.get $1 + call $_free + end ;; $if_6 + local.get $0 + i32.load offset=108 + local.tee $1 + if $if_7 + loop $loop_1 + local.get $1 i32.load - local.get $4 - local.get $4 - i32.const -1 - i32.add - local.tee $5 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) + local.set $2 + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_8 local.get $1 - local.get $5 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - else - local.get $4 + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_8 + local.get $1 + call $_free + local.get $2 + if $if_9 + local.get $2 + local.set $1 + br $loop_1 + end ;; $if_9 + end ;; $loop_1 + end ;; $if_7 + local.get $0 + i32.load offset=100 + local.set $1 + local.get $0 + i32.const 0 + i32.store offset=100 + local.get $1 + if $if_10 + local.get $1 + call $_free + end ;; $if_10 + local.get $0 + i32.load offset=88 + local.tee $1 + if $if_11 + loop $loop_2 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $4 - if $if_15 (result i32) - local.get $1 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_15 - end ;; $if_14 + i32.load offset=12 + local.get $3 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_12 + local.get $1 + call $_free + local.get $2 + if $if_13 + local.get $2 + local.set $1 + br $loop_2 end ;; $if_13 - local.tee $11 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $6 - if $if_16 - local.get $6 - i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 - local.get $1 - local.get $6 - i32.load offset=4 - local.tee $4 - i32.eq - local.tee $9 - local.get $4 - local.get $5 - i32.and - local.get $11 - i32.eq - i32.or - i32.eqz - br_if $block_2 - local.get $9 - if $if_19 - local.get $1 - local.get $6 - i32.load offset=8 - i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 - i32.load - local.tee $6 - br_if $loop_1 - br $block_2 - unreachable - end ;; $loop_1 - unreachable - else - loop $loop_2 - local.get $1 - local.get $6 - i32.load offset=4 - local.tee $5 - i32.eq - if $if_20 - local.get $1 - local.get $6 - i32.load offset=8 - i32.eq - br_if $block_3 - else - local.get $5 - local.get $4 - i32.ge_u - if $if_21 (result i32) - local.get $4 - if $if_22 (result i32) - local.get $5 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_22 - else - local.get $5 - end ;; $if_21 - local.get $11 - i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 - i32.load - local.tee $6 - br_if $loop_2 - br $block_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - unreachable - end ;; $block_3 - local.get $6 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=16 - local.set $1 - local.get $3 - i32.load - local.set $5 - local.get $3 - i32.const 0 - i32.store - local.get $7 - local.get $5 - i32.store - local.get $0 - local.get $2 - local.get $7 - local.get $1 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $7 - i32.load - local.set $0 - local.get $7 - i32.const 0 - i32.store - local.get $0 - if $if_23 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_23 - local.get $10 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $loop_2 + end ;; $if_11 + local.get $0 + i32.load offset=80 + local.set $1 + local.get $0 + i32.const 0 + i32.store offset=80 + local.get $1 + if $if_14 + local.get $1 + call $_free + end ;; $if_14 + local.get $0 + i32.load8_s offset=79 + i32.const 0 + i32.ge_s + if $if_15 local.get $0 - i32.load offset=144 + call $__ZN11ContextBaseD2Ev + return + end ;; $if_15 + local.get $0 + i32.load offset=68 + call $_free + local.get $0 + call $__ZN11ContextBaseD2Ev + ) + + (func $__ZN18ExampleRootContextD0Ev (type $0) + (param $0 i32) + local.get $0 + call $__ZN11RootContextD2Ev + local.get $0 + call $_free + ) + + (func $__ZN11RootContext6asRootEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + ) + + (func $__ZN11RootContext9asContextEv (type $4) + (param $0 i32) + (result i32) + i32.const 0 + ) + + (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 5 + i32.eq + ) + + (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $3) + (param $0 i32) + (param $1 i32) + nop + ) + + (func $__ZN11RootContext6onTickEv (type $0) + (param $0 i32) + nop + ) + + (func $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block + local.get $0 + i32.load offset=84 local.tee $5 i32.eqz br_if $block local.get $0 - i32.load offset=140 + i32.load offset=80 local.get $5 local.get $5 i32.const -1 i32.add - local.tee $4 + local.tee $7 i32.and i32.eqz - local.tee $7 - if $if_24 (result i32) + local.tee $11 + if $if (result i32) local.get $1 - local.get $4 + local.get $7 i32.and else local.get $5 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_0 (result i32) local.get $1 else local.get $5 - if $if_26 (result i32) + if $if_1 (result i32) local.get $1 local.get $5 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_1 + end ;; $if_0 + end ;; $if + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - block $block_4 - local.get $7 - if $if_27 - loop $loop_3 + local.get $8 + i32.const 8 + i32.add + local.set $9 + local.get $8 + i32.const 4 + i32.add + local.set $10 + block $block_0 + local.get $11 + if $if_2 + loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $7 - local.get $4 + local.tee $11 local.get $5 + local.get $7 i32.and - local.get $6 + local.get $12 i32.eq i32.or - if $if_28 - local.get $7 - if $if_29 + if $if_3 + local.get $11 + if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 - local.get $0 + br_if $block_0 + end ;; $if_4 + local.get $6 i32.load - local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + local.tee $6 + br_if $loop + end ;; $if_3 + end ;; $loop else - loop $loop_4 - block $block_5 + loop $loop_0 + block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 - local.tee $4 + local.tee $7 i32.eq - if $if_30 + if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_0 else - local.get $4 + local.get $7 local.get $5 i32.ge_u - if $if_31 (result i32) + if $if_6 (result i32) local.get $5 - if $if_32 (result i32) - local.get $4 + if $if_7 (result i32) + local.get $7 local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_7 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $7 + end ;; $if_6 + local.get $12 i32.ne - br_if $block_5 - end ;; $if_30 - local.get $0 + br_if $block_1 + end ;; $if_5 + local.get $6 i32.load - local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + local.tee $6 + br_if $loop_0 + end ;; $block_1 + end ;; $loop_0 + end ;; $if_2 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 - local.get $0 - i32.load offset=12 - local.set $0 - local.get $3 + end ;; $block_0 + local.get $2 i32.load - local.set $1 + local.set $5 + local.get $2 + i32.const 0 + i32.store + local.get $9 + local.get $5 + i32.store + local.get $3 + i32.load + local.set $2 local.get $3 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $10 + local.get $2 i32.store - local.get $0 + local.get $4 + i32.load + local.set $2 + local.get $4 + i32.const 0 + i32.store + local.get $8 local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add + local.get $9 + local.get $10 local.get $8 - call $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE + local.get $6 + i32.load offset=20 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) local.get $8 i32.load - local.set $0 + local.set $2 local.get $8 i32.const 0 i32.store + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 + if $if_9 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_9 + local.get $9 + i32.load + local.set $2 + local.get $9 + i32.const 0 + i32.store + local.get $2 + if $if_10 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_10 local.get $0 + i32.load offset=84 + local.tee $5 i32.eqz br_if $block local.get $0 - i32.load - call $_free - local.get $0 - call $_free - local.get $8 - global.set $30 - return - end ;; $block - local.get $8 - global.set $30 - ) - - (func $__ZN11ContextBaseD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 5720 - i32.store - local.get $0 - i32.load offset=52 - local.tee $1 - if $if - loop $loop - local.get $1 - i32.load - local.set $2 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) local.get $1 - i32.const 24 - i32.add - call $__ZN6google8protobuf6StructD2Ev + local.get $7 + i32.and + else + local.get $5 local.get $1 - i32.load8_s offset=23 - i32.const 0 - i32.lt_s - if $if_0 + i32.gt_u + if $if_12 (result i32) local.get $1 - i32.load offset=12 - call $_free - end ;; $if_0 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) local.get $1 - call $_free + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 local.get $2 - if $if_1 - local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 local.set $1 - br $loop - end ;; $if_1 - end ;; $loop - end ;; $if - local.get $0 - i32.load offset=44 - local.set $1 - local.get $0 - i32.const 0 - i32.store offset=44 - local.get $1 - if $if_2 - local.get $1 - call $_free - end ;; $if_2 - local.get $0 - i32.load offset=32 - local.tee $1 - if $if_3 - loop $loop_0 - local.get $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 i32.load - local.set $2 - local.get $1 - i32.const 40 - i32.add - call $__ZN6google8protobuf5ValueD2Ev - local.get $1 - i32.load8_s offset=35 - i32.const 0 - i32.lt_s - if $if_4 + local.tee $1 + if $if_27 local.get $1 - i32.load offset=24 - call $_free - end ;; $if_4 - local.get $1 - i32.load8_s offset=23 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 i32.const 0 - i32.lt_s - if $if_5 - local.get $1 - i32.load offset=12 - call $_free - end ;; $if_5 - local.get $1 - call $_free + i32.store local.get $2 - if $if_6 - local.get $2 - local.set $1 - br $loop_0 - end ;; $if_6 - end ;; $loop_0 - end ;; $if_3 - local.get $0 - i32.load offset=24 - local.set $1 - local.get $0 - i32.const 0 - i32.store offset=24 - local.get $1 - if $if_7 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 local.get $1 - call $_free - end ;; $if_7 - local.get $0 - i32.load offset=12 - local.tee $1 - if $if_8 - loop $loop_1 - local.get $1 - i32.load - local.set $2 - local.get $1 - i32.const 24 - i32.add - call $__ZN6google8protobuf5ValueD2Ev + if $if_31 (result i32) local.get $1 - i32.load8_s offset=23 - i32.const 0 - i32.lt_s - if $if_9 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) local.get $1 - i32.load offset=12 - call $_free - end ;; $if_9 - local.get $1 - call $_free - local.get $2 - if $if_10 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store local.get $2 - local.set $1 - br $loop_1 - end ;; $if_10 - end ;; $loop_1 - end ;; $if_8 - local.get $0 - i32.load offset=4 - local.set $1 - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $1 - i32.eqz - if $if_11 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 return - end ;; $if_11 - local.get $1 - call $_free - ) - - (func $__ZN14ExampleContextD0Ev (type $0) - (param $0 i32) - local.get $0 - call $__ZN11ContextBaseD2Ev - local.get $0 - call $_free - ) - - (func $__ZN7Context14onResponseBodyEmb (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - i32.const 0 + end ;; $block + local.get $8 + global.set $32 ) - (func $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm (type $3) + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -5034,3758 +6764,3641 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - i32.load offset=8 - local.tee $4 local.get $0 - i32.load offset=4 + i32.load offset=124 local.tee $2 - i32.sub - i32.const 4 - i32.shr_s - local.get $1 - i32.ge_u if $if + local.get $0 + i32.load offset=120 local.get $2 - local.set $3 - loop $loop - local.get $3 - i64.const 0 - i64.store align=4 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $2 + if $if_2 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_3 local.get $3 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 16 - i32.add + i32.load local.tee $3 - i32.store offset=4 - local.get $1 - i32.const -1 - i32.add - local.tee $1 - br_if $loop - end ;; $loop - return + if $if_4 + block $block + block $block_0 + local.get $6 + if $if_5 + loop $loop + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $6 + if $if_6 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_6 + local.get $3 + i32.load + local.tee $3 + br_if $loop + br $block + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_7 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_8 (result i32) + local.get $2 + if $if_9 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $4 + end ;; $if_8 + local.get $5 + i32.ne + br_if $block + end ;; $if_7 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_0 + local.get $3 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + return + end ;; $block + end ;; $if_4 + end ;; $if_3 end ;; $if - local.get $1 - local.get $2 local.get $0 - i32.load - local.tee $5 - i32.sub - local.tee $7 - i32.const 4 - i32.shr_s - local.tee $8 - i32.add - local.tee $6 - i32.const 268435455 - i32.gt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $6 - local.get $4 - local.get $5 - i32.sub - local.tee $4 - i32.const 3 - i32.shr_s + i32.load offset=144 local.tee $2 + i32.eqz + if $if_10 + return + end ;; $if_10 + local.get $0 + i32.load offset=140 local.get $2 - local.get $6 - i32.lt_u - select - i32.const 268435455 - local.get $4 - i32.const 4 - i32.shr_s - i32.const 134217727 - i32.lt_u - select + local.get $2 + i32.const -1 + i32.add local.tee $4 - if $if_1 + i32.and + i32.eqz + local.tee $5 + if $if_11 (result i32) + local.get $1 local.get $4 - i32.const 268435455 + i32.and + else + local.get $2 + local.get $1 i32.gt_u - if $if_2 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6956 - i32.store - local.get $2 - i32.const 5392 - i32.const 51 - call $___cxa_throw + if $if_12 (result i32) + local.get $1 else - local.get $4 - i32.const 4 - i32.shl - call $__Znwm - local.tee $3 - local.set $9 - end ;; $if_2 - end ;; $if_1 - local.get $4 - i32.const 4 - i32.shl - local.get $3 - i32.add - local.set $2 - local.get $8 - i32.const 4 + local.get $2 + if $if_13 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 i32.shl - local.get $3 i32.add - i32.const 0 - local.get $1 - i32.const 4 - i32.shl - call $_memset - drop - local.get $7 - i32.const 0 - i32.gt_s - if $if_3 - local.get $9 + i32.load + local.tee $0 + i32.eqz + if $if_14 + return + end ;; $if_14 + local.get $0 + i32.load + local.tee $0 + i32.eqz + if $if_15 + return + end ;; $if_15 + block $block_1 local.get $5 - local.get $7 - call $_memcpy - drop - end ;; $if_3 + if $if_16 + loop $loop_1 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $5 + local.get $2 + local.get $4 + i32.and + local.get $3 + i32.eq + i32.or + if $if_17 + local.get $5 + if $if_18 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_1 + end ;; $if_18 + local.get $0 + i32.load + local.tee $0 + br_if $loop_1 + end ;; $if_17 + end ;; $loop_1 + else + loop $loop_2 + block $block_2 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_19 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_1 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_20 (result i32) + local.get $2 + if $if_21 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_21 + else + local.get $4 + end ;; $if_20 + local.get $3 + i32.ne + br_if $block_2 + end ;; $if_19 + local.get $0 + i32.load + local.tee $0 + br_if $loop_2 + end ;; $block_2 + end ;; $loop_2 + end ;; $if_16 + return + end ;; $block_1 local.get $0 - local.get $3 - i32.store + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 local.get $0 - local.get $6 - i32.const 4 - i32.shl - local.get $3 + local.get $1 + i32.const 127 + i32.and + i32.const 160 i32.add - i32.store offset=4 - local.get $0 - local.get $2 - i32.store offset=8 - local.get $5 - i32.eqz - if $if_4 - return - end ;; $if_4 - local.get $5 - call $_free + call_indirect $28 (type $0) ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ (type $3) + (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 local.get $0 - i32.load offset=4 - local.tee $3 + i32.load offset=144 + local.tee $2 i32.eqz if $if return end ;; $if local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 + i32.load offset=140 + local.get $2 + local.get $2 i32.const -1 i32.add - local.tee $6 + local.tee $4 i32.and i32.eqz - local.tee $8 + local.tee $3 if $if_0 (result i32) + local.get $1 local.get $4 - local.get $6 i32.and else - local.get $4 - local.get $3 - i32.lt_u + local.get $2 + local.get $1 + i32.gt_u if $if_1 (result i32) - local.get $4 + local.get $1 else - local.get $3 + local.get $2 if $if_2 (result i32) - local.get $4 - local.get $3 + local.get $1 + local.get $2 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $7 + local.tee $5 i32.const 2 i32.shl i32.add i32.load - local.tee $1 + local.tee $0 i32.eqz if $if_3 return end ;; $if_3 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 i32.eqz if $if_4 return end ;; $if_4 block $block - local.get $8 + local.get $3 if $if_5 loop $loop - local.get $4 local.get $1 + local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.eq - local.tee $9 - local.get $2 - local.get $6 + local.tee $2 + local.get $3 + local.get $4 i32.and - local.get $7 + local.get $5 i32.eq i32.or if $if_6 - local.get $9 + local.get $2 if $if_7 - local.get $4 local.get $1 + local.get $0 i32.load offset=8 i32.eq br_if $block end ;; $if_7 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 br_if $loop end ;; $if_6 end ;; $loop else loop $loop_0 block $block_0 - local.get $4 local.get $1 + local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.eq if $if_8 - local.get $4 local.get $1 + local.get $0 i32.load offset=8 i32.eq br_if $block else - local.get $2 local.get $3 + local.get $2 i32.ge_u if $if_9 (result i32) - local.get $3 + local.get $2 if $if_10 (result i32) - local.get $2 local.get $3 + local.get $2 i32.rem_u else i32.const 0 end ;; $if_10 else - local.get $2 + local.get $3 end ;; $if_9 - local.get $7 + local.get $5 i32.ne br_if $block_0 end ;; $if_8 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 br_if $loop_0 end ;; $block_0 end ;; $loop_0 end ;; $if_5 return end ;; $block - local.get $8 - if $if_11 (result i32) + local.get $0 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=12 + local.set $0 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=144 + local.tee $2 + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.load offset=140 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $3 + if $if_0 (result i32) + local.get $1 local.get $4 - local.get $6 i32.and else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 + local.get $2 local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 + i32.gt_u + if $if_1 (result i32) local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and else local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 if $if_2 (result i32) - local.get $4 - local.get $3 + local.get $1 + local.get $2 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $7 + local.tee $5 i32.const 2 i32.shl i32.add i32.load - local.tee $1 + local.tee $0 i32.eqz if $if_3 return end ;; $if_3 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 i32.eqz if $if_4 return end ;; $if_4 block $block - local.get $8 + local.get $3 if $if_5 loop $loop - local.get $4 local.get $1 + local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.eq - local.tee $9 - local.get $2 - local.get $6 + local.tee $2 + local.get $3 + local.get $4 i32.and - local.get $7 + local.get $5 i32.eq i32.or if $if_6 - local.get $9 + local.get $2 if $if_7 - local.get $4 local.get $1 + local.get $0 i32.load offset=8 i32.eq br_if $block end ;; $if_7 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 br_if $loop end ;; $if_6 end ;; $loop else loop $loop_0 block $block_0 - local.get $4 local.get $1 + local.get $0 i32.load offset=4 - local.tee $2 + local.tee $3 i32.eq if $if_8 - local.get $4 local.get $1 + local.get $0 i32.load offset=8 i32.eq br_if $block else - local.get $2 local.get $3 + local.get $2 i32.ge_u if $if_9 (result i32) - local.get $3 + local.get $2 if $if_10 (result i32) - local.get $2 local.get $3 + local.get $2 i32.rem_u else i32.const 0 end ;; $if_10 else - local.get $2 + local.get $3 end ;; $if_9 - local.get $7 + local.get $5 i32.ne br_if $block_0 end ;; $if_8 - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 br_if $loop_0 end ;; $block_0 end ;; $loop_0 end ;; $if_5 return end ;; $block + local.get $0 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=16 + local.set $0 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 + i32.const 8 i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 + local.set $6 + local.get $8 + i32.const 12 + i32.add + local.tee $10 + local.get $1 + i32.store + block $block + local.get $0 + i32.load offset=104 + local.tee $4 + if $if local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 + i32.load offset=100 local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $9 + if $if_0 (result i32) + local.get $1 local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 i32.and else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 + local.get $4 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $4 + if $if_2 (result i32) + local.get $1 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $7 i32.const 2 i32.shl i32.add - local.get $4 - i32.store - local.get $1 i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=12 - local.set $0 - local.get $1 - i32.const 0 - i32.store offset=12 - local.get $0 - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_28 - local.get $1 - call $_free - ) - - (func $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.load offset=8 - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.tee $8 - i32.load - local.set $4 - local.get $0 - i32.load - i32.load offset=24 - local.set $7 - local.get $2 - i32.load - local.set $6 - local.get $2 - i32.const 0 - i32.store - local.get $5 - local.get $6 - i32.store - local.get $0 - local.get $1 - local.get $5 - local.get $7 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $5 - i32.load - local.set $1 - local.get $5 - i32.const 0 - i32.store - local.get $1 - if $if - local.get $1 - i32.load - call $_free - local.get $1 - call $_free - end ;; $if - block $block - local.get $3 - i32.load offset=144 - local.tee $2 - i32.eqz - br_if $block - local.get $3 - i32.load offset=140 - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $3 - i32.and - i32.eqz - local.tee $6 - if $if_0 (result i32) - local.get $3 - local.get $4 - i32.and - else - local.get $4 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $2 - if $if_2 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - br_if $block - local.get $1 - i32.load - local.tee $1 - i32.eqz - br_if $block - block $block_0 - local.get $6 + local.tee $5 if $if_3 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $3 - i32.and - local.get $7 - i32.eq - i32.or - if $if_4 + local.get $5 + i32.load + local.tee $5 + if $if_4 + block $block_0 + block $block_1 + local.get $9 + if $if_5 + loop $loop + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $3 + local.get $4 + i32.and + local.get $7 + i32.eq + i32.or + i32.eqz + br_if $block_0 + local.get $9 + if $if_6 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_1 + end ;; $if_6 + local.get $5 + i32.load + local.tee $5 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $3 + i32.eq + if $if_7 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_1 + else + local.get $3 + local.get $4 + i32.ge_u + if $if_8 (result i32) + local.get $4 + if $if_9 (result i32) + local.get $3 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $3 + end ;; $if_8 + local.get $7 + i32.ne + br_if $block_0 + end ;; $if_7 + local.get $5 + i32.load + local.tee $5 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.const 0 + i32.store local.get $6 - if $if_5 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_5 local.get $1 + i32.store + local.get $5 + i32.const 12 + i32.add + i32.const 0 + local.get $6 + local.get $5 + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $2) + local.get $6 i32.load - local.tee $1 - br_if $loop - end ;; $if_4 - end ;; $loop - else - loop $loop_0 - block $block_1 - local.get $4 + local.set $1 + local.get $6 + i32.const 0 + i32.store local.get $1 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_6 - local.get $4 + if $if_10 local.get $1 - i32.load offset=8 - i32.eq - br_if $block_0 + i32.load + call $_free + local.get $1 + call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and else - local.get $3 local.get $2 - i32.ge_u - if $if_7 (result i32) + local.get $3 + i32.lt_u + if $if_12 (result i32) local.get $2 - if $if_8 (result i32) - local.get $3 + else + local.get $3 + if $if_13 (result i32) local.get $2 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_8 - else - local.get $3 - end ;; $if_7 - local.get $7 - i32.ne - br_if $block_1 - end ;; $if_6 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block local.get $1 i32.load local.tee $1 - br_if $loop_0 - end ;; $block_1 - end ;; $loop_0 - end ;; $if_3 - local.get $5 - global.set $30 - return - end ;; $block_0 - local.get $0 - i32.const 1 - i32.store8 offset=5 - local.get $0 - i32.load8_s offset=4 - i32.eqz - br_if $block - local.get $0 - i32.load offset=8 - i32.const 140 - i32.add - local.get $8 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ - local.get $5 - global.set $30 - return - end ;; $block - local.get $5 - global.set $30 - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5752 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5752 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 - i32.const 72 - call $__Znwm - local.tee $1 - i64.const 0 - i64.store offset=4 align=4 - local.get $1 - i64.const 0 - i64.store offset=12 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=20 - local.get $1 - i64.const 0 - i64.store offset=24 align=4 - local.get $1 - i64.const 0 - i64.store offset=32 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=40 - local.get $1 - i64.const 0 - i64.store offset=44 align=4 - local.get $1 - i64.const 0 - i64.store offset=52 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=60 - local.get $1 - i32.const -64 - i32.sub - local.get $2 - i32.store - local.get $1 - local.get $3 - i32.store offset=68 - local.get $1 - i32.const 5568 - i32.store - local.get $0 - local.get $1 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7491 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4560 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5796 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5796 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - local.get $2 - i32.load - local.set $1 - local.get $3 - i32.load - local.set $4 - local.get $3 - i32.load offset=4 - local.set $3 - i32.const 160 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store offset=4 align=4 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=20 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=40 - local.get $2 - i64.const 0 - i64.store offset=44 align=4 - local.get $2 - i64.const 0 - i64.store offset=52 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=60 - local.get $2 - i32.const -64 - i32.sub - local.get $1 - i32.store - local.get $2 - i32.const 5648 - i32.store - local.get $2 - i32.const 68 - i32.add - local.tee $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - block $block - block $block_0 - local.get $3 - i32.const 11 - i32.lt_u - if $if_0 - local.get $2 - local.get $3 - i32.store8 offset=79 - local.get $3 - br_if $block_0 - else + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $6 + local.get $0 + i32.const 120 + i32.add + local.set $7 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $7 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $11 + if $if_38 (result i32) local.get $1 local.get $3 - i32.const 16 - i32.add - i32.const -16 i32.and - local.tee $5 - call $__Znwm - local.tee $1 - i32.store - local.get $2 + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) + local.get $1 + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + if $if_41 local.get $5 - i32.const -2147483648 - i32.or - i32.store offset=76 - local.get $2 - local.get $3 - i32.store offset=72 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $1 - local.get $4 + i32.load + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $11 + local.get $3 + local.get $4 + i32.and + local.get $9 + i32.eq + i32.or + i32.eqz + br_if $block_6 + local.get $11 + if $if_44 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_7 + end ;; $if_44 + local.get $5 + i32.load + local.tee $5 + br_if $loop_4 + br $block_6 + unreachable + end ;; $loop_4 + unreachable + else + loop $loop_5 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $3 + i32.eq + if $if_45 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_7 + else + local.get $3 + local.get $4 + i32.ge_u + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) + local.get $3 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_47 + else + local.get $3 + end ;; $if_46 + local.get $9 + i32.ne + br_if $block_6 + end ;; $if_45 + local.get $5 + i32.load + local.tee $5 + br_if $loop_5 + br $block_6 + unreachable + end ;; $loop_5 + unreachable + end ;; $if_43 + unreachable + end ;; $block_7 + local.get $5 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $1 + local.get $2 + i32.load + local.set $3 + local.get $2 + i32.const 0 + i32.store + local.get $6 + local.get $3 + i32.store + local.get $0 + local.get $6 + local.get $1 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $6 + i32.load + local.set $0 + local.get $6 + i32.const 0 + i32.store + local.get $0 + if $if_48 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + end ;; $if_48 + local.get $7 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + br $block + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 + local.get $0 + i32.load offset=144 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.const 140 + i32.add + local.tee $6 + i32.load local.get $3 - call $_memcpy - drop - end ;; $block - local.get $1 - local.get $3 - i32.add - i32.const 0 - i32.store8 - local.get $2 - i64.const 0 - i64.store offset=80 align=4 - local.get $2 - i64.const 0 - i64.store offset=88 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=96 - local.get $2 - i64.const 0 - i64.store offset=100 align=4 - local.get $2 - i64.const 0 - i64.store offset=108 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=116 - local.get $2 - i64.const 0 - i64.store offset=120 align=4 - local.get $2 - i64.const 0 - i64.store offset=128 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=136 - local.get $2 - i64.const 0 - i64.store offset=140 align=4 - local.get $2 - i64.const 0 - i64.store offset=148 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=156 - local.get $2 - i32.const 5496 - i32.store - local.get $0 - local.get $2 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7789 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4592 - ) - - (func $__GLOBAL__sub_I_envoy_filter_http_wasm_example_cc (type $8) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 - i32.const 24 - i32.add - local.tee $2 - i32.const 5752 - i32.store - local.get $2 - local.get $2 - i32.store offset=16 - local.get $0 - i32.const 5796 - i32.store - local.get $0 - local.get $0 - i32.store offset=16 - local.get $0 - i32.const 7036 - i32.store offset=48 - local.get $0 - i32.const 10 - i32.store offset=52 - local.get $0 - i32.const 56 - i32.add - local.tee $1 - local.get $0 - i64.load offset=48 align=4 - i64.store align=4 - local.get $2 - local.get $0 - local.get $1 - call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ - local.get $0 - i32.load offset=16 - local.tee $1 - local.get $0 - i32.eq - if $if - local.get $1 - i32.load - i32.load offset=16 - local.set $3 - local.get $1 local.get $3 - i32.const 63 - i32.and - i32.const 112 + i32.const -1 i32.add - call_indirect $26 (type $0) - else - local.get $1 - if $if_0 - local.get $1 - i32.load - i32.load offset=20 - local.set $3 + local.tee $4 + i32.and + i32.eqz + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 - i32.const 63 + local.get $4 i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - end ;; $if - local.get $2 - i32.load offset=16 - local.tee $1 - local.get $2 - i32.eq - if $if_1 - local.get $1 - i32.load - i32.load offset=16 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - i32.const 112 + else + local.get $3 + local.get $1 + i32.gt_u + if $if_50 (result i32) + local.get $1 + else + local.get $3 + if $if_51 (result i32) + local.get $1 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $26 (type $0) - local.get $0 - global.set $30 - return - end ;; $if_1 - local.get $1 - i32.eqz - if $if_2 + i32.load + local.tee $0 + i32.eqz + br_if $block local.get $0 - global.set $30 - return - end ;; $if_2 - local.get $1 - i32.load - i32.load offset=20 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - global.set $30 - ) - - (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - i32.load - i32.load offset=20 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load - local.tee $1 - i32.const -2 - i32.and - local.set $2 - block $block (result i32) - local.get $1 - i32.const 1 - i32.and - if $if - local.get $2 - i32.load offset=12 - local.set $2 - end ;; $if - local.get $2 + i32.load + local.tee $0 i32.eqz - end ;; $block - if $if_0 - i32.const 16 - call $__Znwm - local.tee $1 - i64.const 0 - i64.store align=4 - local.get $1 - i64.const 0 - i64.store offset=8 align=4 + br_if $block + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.eq + local.tee $7 + local.get $3 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + if $if_53 + local.get $7 + if $if_54 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_8 + end ;; $if_54 + local.get $0 + i32.load + local.tee $0 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 + else + loop $loop_7 + block $block_9 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_55 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_8 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_57 + else + local.get $4 + end ;; $if_56 + local.get $5 + i32.ne + br_if $block_9 + end ;; $if_55 + local.get $0 + i32.load + local.tee $0 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 + return + end ;; $block_8 local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store - local.get $1 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $1 local.get $2 - i32.store offset=12 - local.get $1 - return - end ;; $if_0 - local.get $2 - i32.load offset=60 - if $if_1 + i32.load + local.set $3 local.get $2 - i32.load offset=48 - if $if_2 - i32.const 4600 - i64.const 16 - local.get $2 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 - local.get $2 - i32.const 16 - i32.const 56 - call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE - local.tee $1 - i64.const 0 - i64.store align=4 - local.get $1 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store - local.get $1 - local.get $2 - i32.store offset=12 - local.get $1 - ) - - (func $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load - call $_free - ) - - (func $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $2 - i32.eqz - if $if - local.get $3 - i32.const 3 - i32.store - local.get $3 - i32.const 7965 - i32.store offset=4 - local.get $3 - i32.const 370 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 8037 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv + i32.store + local.get $8 local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if - local.get $1 - i32.eqz - if $if_0 - i32.const 12 - call $__Znwm - local.tee $1 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + i32.store local.get $0 + local.get $8 local.get $1 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $8 + i32.load + local.set $0 + local.get $8 + i32.const 0 i32.store - local.get $3 - global.set $30 + local.get $0 + if $if_58 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + end ;; $if_58 + local.get $6 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return - end ;; $if_0 - local.get $1 - i32.load offset=60 - if $if_1 - local.get $1 - i32.load offset=48 - if $if_2 - i32.const 4608 - i64.const 16 - local.get $1 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 - local.get $1 - i32.const 16 - i32.const 57 - call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE - local.tee $1 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $0 - local.get $1 - i32.store - local.get $3 - global.set $30 - ) - - (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) - (local $0 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 256 - i32.add - global.set $30 - local.get $0 - global.set $30 - i32.const 15356 - i32.const 0 - i32.store - i32.const 15348 - i32.const 15496 - i32.store - i32.const 15352 - i32.const 0 - i32.store - i32.const 15360 - i32.const 0 - i32.store - i32.const 15344 - i32.const 5856 - i32.store - i32.const 15368 - call $__ZN6google8protobuf6StructC2Ev - i32.const 58 - i32.const 15368 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15400 - i32.const 5944 - i32.store - i32.const 15404 - i32.const 0 - i32.store - i32.const 15416 - i32.const 0 - i32.store - i32.const 5832 - i32.load - if $if - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - end ;; $if - i32.const 15420 - i32.const 0 - i32.store - i32.const 58 - i32.const 15400 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15456 - call $__ZN6google8protobuf9ListValueC2Ev - i32.const 58 - i32.const 15456 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15352 - i32.const 15400 - i32.store + end ;; $block + local.get $8 + global.set $32 ) - (func $__ZN6google8protobuf6StructC2Ev (type $0) + (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $1) (param $0 i32) - local.get $0 - i32.const 6192 - i32.store - local.get $0 - i64.const 0 - i64.store offset=4 align=4 - local.get $0 - i64.const 0 - i64.store offset=12 align=4 - local.get $0 + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $8 + i32.const 8 + i32.add + local.set $7 + local.get $8 i32.const 12 i32.add - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 5832 - i32.load - i32.eqz - if $if - return - end ;; $if - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - ) - - (func $__ZN6google8protobuf9ListValueC2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6024 + local.tee $10 + local.get $1 i32.store - local.get $0 - i32.const 4 - i32.add - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - i32.const 5832 - i32.load - i32.eqz - if $if - return - end ;; $if - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - ) - - (func $__ZN6google8protobuf9ListValueD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $0 - i32.const 6024 - i32.store - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $1 - local.get $3 - i32.const 1 - i32.and - if $if (result i32) - local.get $1 - i32.load offset=12 - else - local.get $1 - end ;; $if - if $if_0 - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8176 - i32.store offset=4 - local.get $2 - i32.const 915 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9402 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $0 - i32.load offset=20 - local.tee $3 - if $if_1 + block $block local.get $0 - i32.load offset=8 - i32.eqz - if $if_2 - local.get $3 + i32.load offset=104 + local.tee $4 + if $if + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $11 + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $4 + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $9 + i32.const 2 + i32.shl + i32.add i32.load local.tee $5 - i32.const 0 - i32.gt_s - if $if_3 (result i32) - i32.const 0 - local.set $1 - loop $loop - local.get $3 - i32.const 4 - i32.add - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $4 - if $if_4 + if $if_3 + local.get $5 + i32.load + local.tee $5 + if $if_4 + block $block_0 + block $block_1 + local.get $11 + if $if_5 + loop $loop + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $11 + local.get $4 + local.get $6 + i32.and + local.get $9 + i32.eq + i32.or + i32.eqz + br_if $block_0 + local.get $11 + if $if_6 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_1 + end ;; $if_6 + local.get $5 + i32.load + local.tee $5 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $6 + i32.eq + if $if_7 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_1 + else + local.get $6 + local.get $4 + i32.ge_u + if $if_8 (result i32) + local.get $4 + if $if_9 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $6 + end ;; $if_8 + local.get $9 + i32.ne + br_if $block_0 + end ;; $if_7 + local.get $5 + i32.load + local.tee $5 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_1 + local.get $3 + i32.load + local.set $1 + local.get $3 + i32.const 0 + i32.store + local.get $7 + local.get $1 + i32.store + local.get $5 + i32.const 12 + i32.add + local.get $2 + local.get $7 + local.get $5 + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $2) + local.get $7 + i32.load + local.set $1 + local.get $7 + i32.const 0 + i32.store + local.get $1 + if $if_10 + local.get $1 + i32.load + call $_free + local.get $1 + call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 local.get $4 local.get $4 - i32.load - i32.load offset=4 - i32.const 63 + i32.const -1 + i32.add + local.tee $7 i32.and - i32.const 112 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl i32.add - call_indirect $26 (type $0) - end ;; $if_4 - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $5 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=20 - else - local.get $3 - end ;; $if_3 - call $_free - end ;; $if_2 - end ;; $if_1 - local.get $0 - i32.const 0 - i32.store offset=20 - block $block - local.get $0 - i32.load offset=4 - local.tee $1 - i32.const 1 - i32.and - i32.eqz - br_if $block - local.get $1 - i32.const -2 - i32.and - local.tee $1 - local.tee $3 - i32.load offset=12 - local.get $1 - i32.eqz - i32.or - br_if $block - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_5 - local.get $3 - i32.load - call $_free - end ;; $if_5 - local.get $1 - call $_free - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $2 - global.set $30 - return - end ;; $block - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $2 - global.set $30 - ) - - (func $__ZN6google8protobuf9ListValueD0Ev (type $0) - (param $0 i32) - local.get $0 - call $__ZN6google8protobuf9ListValueD2Ev - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $3) - (param $0 i32) - (param $1 i32) - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 32 - call $__Znwm - local.tee $1 - i32.store - local.get $0 - i32.const -2147483616 - i32.store offset=8 - local.get $0 - i32.const 25 - i32.store offset=4 - local.get $1 - i32.const 10712 - i64.load align=1 - i64.store align=1 - local.get $1 - i32.const 10720 - i64.load align=1 - i64.store offset=8 align=1 - local.get $1 - i32.const 10728 - i64.load align=1 - i64.store offset=16 align=1 - local.get $1 - i32.const 10736 - i32.load8_s - i32.store8 offset=24 - local.get $1 - i32.const 0 - i32.store8 offset=25 - ) - - (func $__ZNK6google8protobuf9ListValue3NewEv (type $4) - (param $0 i32) - (result i32) - i32.const 0 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $1 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.tee $1 - i32.const -2 - i32.and - local.set $0 - local.get $1 - i32.const 1 - i32.and - if $if (result i32) - local.get $0 - i32.load offset=12 - else - local.get $0 - end ;; $if - ) - - (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $4) - (param $0 i32) - (result i32) - local.get $0 - i32.load offset=4 - ) - - (func $__ZN6google8protobuf9ListValue5ClearEv (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 8 - i32.add - call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase5ClearINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvv - local.get $0 - i32.load offset=4 - local.tee $0 - i32.const 1 - i32.and - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.const -2 - i32.and - local.tee $0 - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 - local.get $1 - i32.load - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store offset=4 - else - local.get $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=11 - end ;; $if_0 - ) - - (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $4) - (param $0 i32) - (result i32) - i32.const 1 - ) - - (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 4816 - i32.const 4640 - call $___dynamic_cast - if $if - local.get $0 - local.get $1 - call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ - else - i32.const 10255 - i32.const 10296 - i32.const 92 - i32.const 10368 - call $___assert_fail - end ;; $if - ) - - (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $4 - i32.const 40 - i32.add - local.tee $7 - local.get $0 - i32.const 4 - i32.add - i32.store - local.get $7 - i32.const 4 - i32.add - local.tee $5 - i64.const 0 - i64.store align=4 - local.get $5 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.load offset=4 - local.tee $2 - i32.const 1 - i32.and - if $if - local.get $4 - local.get $5 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $5 - i32.load offset=8 - i32.store offset=8 - local.get $5 - local.get $2 - i32.const -2 - i32.and - local.tee $2 - i64.load align=4 - i64.store align=4 - local.get $5 - local.get $2 - i32.load offset=8 - i32.store offset=8 - local.get $2 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $2 - local.get $4 - i32.load offset=8 - i32.store offset=8 - end ;; $if - local.get $4 - i32.const 32 - i32.add - local.tee $2 - local.tee $3 - i32.const 6496 - i32.store - local.get $3 - local.get $5 - i32.store offset=4 - local.get $4 - i32.const 12 - i32.add - local.tee $9 - local.get $2 - call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb - local.get $0 - i32.const 8 - i32.add - local.set $8 - block $block (result i32) - block $block_0 - loop $loop (result i32) - block $block_1 (result i32) - block $block_2 - block $block_3 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 - i32.lt_u - if $if_0 - local.get $3 - i32.load8_s - local.tee $6 - i32.const 255 - i32.and - local.set $2 - local.get $6 - i32.const 0 - i32.gt_s - if $if_1 + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and local.get $3 - i32.const 1 - i32.add - i32.store - br $block_3 - end ;; $if_1 - else - i32.const 0 - local.set $2 - end ;; $if_0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj - local.tee $2 - i32.const -1 - i32.add - i32.const 126 - i32.gt_u - br_if $block_2 - end ;; $block_3 - local.get $2 - i32.const 10 - i32.ne - br_if $block_2 - block $block_4 - block $block_5 - block $block_6 - local.get $0 - i32.load offset=20 - local.tee $3 - if $if_2 (result i32) - local.get $0 - i32.load offset=12 - local.tee $6 - local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 i32.load - local.tee $2 - i32.lt_s - if $if_3 (result i32) - local.get $0 - local.get $6 - i32.const 1 - i32.add - i32.store offset=12 - local.get $3 - i32.const 4 - i32.add - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - else - local.get $0 - i32.load offset=16 + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 local.get $2 + local.get $1 + i32.load offset=8 i32.eq - if $if_4 - br $block_6 + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 else - local.get $2 - local.set $6 - local.get $3 - local.set $2 - br $block_5 - end ;; $if_4 - unreachable - end ;; $if_3 - else - local.get $0 - i32.load offset=16 - local.set $2 - br $block_6 - end ;; $if_2 - local.set $2 - br $block_4 - end ;; $block_6 - local.get $8 - i32.load offset=4 - local.tee $3 + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) local.get $2 - i32.const 1 - i32.add - local.tee $2 - i32.lt_s - if $if_5 - local.get $8 + else + local.get $4 + if $if_22 (result i32) local.get $2 - local.get $3 - i32.sub - call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi - drop - end ;; $if_5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 local.get $0 - i32.load offset=20 - local.tee $2 - i32.load - local.set $6 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 end ;; $block_5 - local.get $2 - local.get $6 - i32.const 1 - i32.add - i32.store - local.get $8 + local.get $1 i32.load - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.set $2 - local.get $0 - i32.load offset=20 - local.set $3 - local.get $0 - local.get $0 - i32.load offset=12 - local.tee $6 - i32.const 1 - i32.add - i32.store offset=12 + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 local.get $3 - i32.const 4 - i32.add - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $2 + i32.const 0 i32.store + local.get $1 end ;; $block_4 - block $block_7 - block $block_8 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 i32.ge_u - br_if $block_8 - local.get $3 - i32.load8_s - local.tee $6 - i32.const -1 - i32.le_s - br_if $block_8 - local.get $1 - local.get $3 - i32.const 1 + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl i32.add + local.get $5 i32.store - local.get $6 - i32.const 255 - i32.and - local.set $3 - br $block_7 - end ;; $block_8 - i32.const 0 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $3 - i32.const -1 - i32.le_s - br_if $block_1 - drop - end ;; $block_7 - local.get $4 - local.get $1 - local.get $3 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $4 - i32.load offset=4 + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $11 i32.const 0 - i32.lt_s - br_if $block_0 - local.get $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 local.get $1 - call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE i32.eqz - br_if $block_0 - i32.const 0 + br_if $block local.get $1 - local.get $4 - i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - i32.eqz - br_if $block_1 - drop - br $loop - end ;; $block_2 - i32.const 1 - local.get $2 - i32.eqz - br_if $block_1 - drop + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $7 + local.get $0 + i32.const 120 + i32.add + local.set $9 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $9 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $12 + if $if_38 (result i32) + local.get $1 + local.get $6 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) local.get $1 - local.get $2 - local.get $9 - call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE - br_if $loop - i32.const 0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - i32.const 0 - end ;; $block - local.set $1 - local.get $9 - call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev - local.get $7 - i32.load offset=8 - local.get $5 - i32.load8_s offset=11 - local.tee $0 - i32.const 255 - i32.and - local.get $0 - i32.const 0 - i32.lt_s - select - if $if_6 (result i32) + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $11 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + if $if_41 + local.get $5 + i32.load + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $12 + local.get $4 + local.get $6 + i32.and + local.get $11 + i32.eq + i32.or + i32.eqz + br_if $block_6 + local.get $12 + if $if_44 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_7 + end ;; $if_44 + local.get $5 + i32.load + local.tee $5 + br_if $loop_4 + br $block_6 + unreachable + end ;; $loop_4 + unreachable + else + loop $loop_5 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $6 + i32.eq + if $if_45 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_7 + else + local.get $6 + local.get $4 + i32.ge_u + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_47 + else + local.get $6 + end ;; $if_46 + local.get $11 + i32.ne + br_if $block_6 + end ;; $if_45 + local.get $5 + i32.load + local.tee $5 + br_if $loop_5 + br $block_6 + unreachable + end ;; $loop_5 + unreachable + end ;; $if_43 + unreachable + end ;; $block_7 + local.get $5 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $1 + local.get $3 + i32.load + local.set $4 + local.get $3 + i32.const 0 + i32.store + local.get $7 + local.get $4 + i32.store + local.get $0 + local.get $2 + local.get $7 + local.get $1 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $2) + local.get $7 + i32.load + local.set $0 + local.get $7 + i32.const 0 + i32.store + local.get $0 + if $if_48 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + end ;; $if_48 + local.get $9 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + br $block + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 + local.get $0 + i32.load offset=144 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=140 local.get $4 - local.get $7 - i32.load - local.tee $0 - i32.load - local.tee $2 - i32.const 1 + local.get $4 + i32.const -1 + i32.add + local.tee $6 i32.and - if $if_7 (result i32) - local.get $2 - i32.const -2 + i32.eqz + local.tee $7 + if $if_49 (result i32) + local.get $1 + local.get $6 i32.and else - local.get $0 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_7 + local.get $4 + local.get $1 + i32.gt_u + if $if_50 (result i32) + local.get $1 + else + local.get $4 + if $if_51 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $4 + i32.eqz + br_if $block local.get $0 - i32.load offset=8 - i32.store offset=8 + i32.load + local.tee $0 + i32.eqz + br_if $block + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $7 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_53 + local.get $7 + if $if_54 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_8 + end ;; $if_54 + local.get $0 + i32.load + local.tee $0 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 + else + loop $loop_7 + block $block_9 + local.get $1 + local.get $0 + i32.load offset=4 + local.tee $6 + i32.eq + if $if_55 + local.get $1 + local.get $0 + i32.load offset=8 + i32.eq + br_if $block_8 + else + local.get $6 + local.get $4 + i32.ge_u + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_57 + else + local.get $6 + end ;; $if_56 + local.get $5 + i32.ne + br_if $block_9 + end ;; $if_55 + local.get $0 + i32.load + local.tee $0 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 + return + end ;; $block_8 local.get $0 - local.get $5 - i64.load align=4 - i64.store align=4 + i32.load offset=12 + local.set $0 + local.get $3 + i32.load + local.set $1 + local.get $3 + i32.const 0 + i32.store + local.get $8 + local.get $1 + i32.store local.get $0 - local.get $5 - i32.load offset=8 - i32.store offset=8 - local.get $5 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $5 - local.get $4 - i32.load offset=8 - i32.store offset=8 - local.get $5 - i32.load8_s offset=11 - else + local.get $2 + local.get $8 + call $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE + local.get $8 + i32.load + local.set $0 + local.get $8 + i32.const 0 + i32.store local.get $0 - end ;; $if_6 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.ge_s - if $if_8 - local.get $4 - global.set $30 - local.get $1 + i32.eqz + br_if $block + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $8 + global.set $32 return - end ;; $if_8 - local.get $5 - i32.load - call $_free - local.get $4 - global.set $30 - local.get $1 + end ;; $block + local.get $8 + global.set $32 ) - (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $4) + (func $__ZN11ContextBaseD2Ev (type $0) (param $0 i32) - (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 - i32.load offset=4 - local.tee $1 - i32.const -2 - i32.and - i32.const 15496 - local.get $1 - i32.const 1 - i32.and - select - local.tee $2 - i32.load8_s offset=11 + i32.const 6760 + i32.store + local.get $0 + i32.load offset=52 local.tee $1 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $2 - i32.load offset=4 - else - local.get $1 - i32.const 255 - i32.and + if $if + loop $loop + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.const 24 + i32.add + call $__ZN6google8protobuf6StructD2Ev + local.get $1 + i32.load8_s offset=23 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load offset=12 + call $_free + end ;; $if_0 + local.get $1 + call $_free + local.get $2 + if $if_1 + local.get $2 + local.set $1 + br $loop + end ;; $if_1 + end ;; $loop end ;; $if local.get $0 - i32.load offset=12 - local.tee $3 - i32.add + i32.load offset=44 local.set $1 - local.get $3 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=24 - local.get $1 - return - end ;; $if_0 local.get $0 - i32.const 8 - i32.add - local.set $4 i32.const 0 - local.set $2 - loop $loop - local.get $4 - local.get $2 - call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi - call $__ZNK6google8protobuf5Value12ByteSizeLongEv - local.tee $5 + i32.store offset=44 + local.get $1 + if $if_2 local.get $1 - i32.add - local.get $5 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.set $1 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $3 - i32.ne - br_if $loop - end ;; $loop + call $_free + end ;; $if_2 local.get $0 - local.get $1 + i32.load offset=32 + local.tee $1 + if $if_3 + loop $loop_0 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.const 40 + i32.add + call $__ZN6google8protobuf5ValueD2Ev + local.get $1 + i32.load8_s offset=35 + i32.const 0 + i32.lt_s + if $if_4 + local.get $1 + i32.load offset=24 + call $_free + end ;; $if_4 + local.get $1 + i32.load8_s offset=23 + i32.const 0 + i32.lt_s + if $if_5 + local.get $1 + i32.load offset=12 + call $_free + end ;; $if_5 + local.get $1 + call $_free + local.get $2 + if $if_6 + local.get $2 + local.set $1 + br $loop_0 + end ;; $if_6 + end ;; $loop_0 + end ;; $if_3 + local.get $0 + i32.load offset=24 + local.set $1 + local.get $0 + i32.const 0 i32.store offset=24 local.get $1 - ) - - (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) + if $if_7 + local.get $1 + call $_free + end ;; $if_7 local.get $0 i32.load offset=12 - local.tee $4 - if $if - local.get $0 - i32.const 8 - i32.add - local.set $3 - loop $loop - i32.const 1 - local.get $3 - local.get $2 - call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi + local.tee $1 + if $if_8 + loop $loop_1 local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - local.get $2 - i32.const 1 + i32.load + local.set $2 + local.get $1 + i32.const 24 i32.add - local.tee $2 - local.get $4 - i32.ne - br_if $loop - end ;; $loop - end ;; $if - local.get $0 - i32.load offset=4 - local.tee $2 - i32.const -2 - i32.and - i32.const 15496 - local.get $2 - i32.const 1 - i32.and - select - local.tee $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 - local.get $2 - i32.load - local.set $2 - end ;; $if_0 + call $__ZN6google8protobuf5ValueD2Ev + local.get $1 + i32.load8_s offset=23 + i32.const 0 + i32.lt_s + if $if_9 + local.get $1 + i32.load offset=12 + call $_free + end ;; $if_9 + local.get $1 + call $_free + local.get $2 + if $if_10 + local.get $2 + local.set $1 + br $loop_1 + end ;; $if_10 + end ;; $loop_1 + end ;; $if_8 local.get $0 i32.load offset=4 - local.tee $0 - i32.const -2 - i32.and - i32.const 15496 + local.set $1 local.get $0 - i32.const 1 - i32.and - select - local.tee $3 - i32.load8_s offset=11 - local.tee $0 i32.const 0 - i32.lt_s - if $if_1 - local.get $1 - local.get $2 - local.get $3 - i32.load offset=4 - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - else - local.get $1 - local.get $2 - local.get $0 - i32.const 255 - i32.and - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - end ;; $if_1 + i32.store offset=4 + local.get $1 + i32.eqz + if $if_11 + return + end ;; $if_11 + local.get $1 + call $_free ) - (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $4) + (func $__ZN14ExampleContextD0Ev (type $0) (param $0 i32) - (result i32) local.get $0 - i32.load offset=24 + call $__ZN11ContextBaseD2Ev + local.get $0 + call $_free ) - (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $6) + (func $__ZN7Context14onResponseBodyEmb (type $5) (param $0 i32) (param $1 i32) + (param $2 i32) (result i32) + i32.const 0 + ) + + (func $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm (type $3) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const -64 + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $0 + i32.load offset=4 + local.tee $2 i32.sub - global.set $30 - local.get $2 - i32.const 24 - i32.add - local.set $3 + i32.const 4 + i32.shr_s local.get $1 - i32.const -1 - i32.le_s + i32.ge_u if $if - local.get $3 - i32.const 3 - i32.store - local.get $3 - i32.const 8236 - i32.store offset=4 - local.get $3 - i32.const 1505 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 8311 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $2 + local.set $3 + loop $loop + local.get $3 + i64.const 0 + i64.store align=4 + local.get $3 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 16 + i32.add + local.tee $3 + i32.store offset=4 + local.get $1 + i32.const -1 + i32.add + local.tee $1 + br_if $loop + end ;; $loop + return end ;; $if - local.get $0 - i32.load offset=4 local.get $1 - i32.gt_s + local.get $2 + local.get $0 + i32.load + local.tee $5 + i32.sub + local.tee $7 + i32.const 4 + i32.shr_s + local.tee $8 + i32.add + local.tee $6 + i32.const 268435455 + i32.gt_u if $if_0 - local.get $0 - i32.load offset=12 - i32.const 4 - i32.add - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $0 - local.get $2 - global.set $30 - local.get $0 - return + call $_abort end ;; $if_0 - local.get $2 + local.get $6 + local.get $4 + local.get $5 + i32.sub + local.tee $4 i32.const 3 - i32.store - local.get $2 - i32.const 8236 - i32.store offset=4 - local.get $2 - i32.const 1506 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 8342 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv + i32.shr_s + local.tee $2 local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=12 + local.get $6 + i32.lt_u + select + i32.const 268435455 + local.get $4 + i32.const 4 + i32.shr_s + i32.const 134217727 + i32.lt_u + select + local.tee $4 + if $if_1 + local.get $4 + i32.const 268435455 + i32.gt_u + if $if_2 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10944 + i32.store + local.get $2 + i32.const 6424 + i32.const 112 + call $___cxa_throw + else + local.get $4 + i32.const 4 + i32.shl + call $__Znwm + local.tee $3 + local.set $9 + end ;; $if_2 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.shl + local.get $3 + i32.add + local.set $2 + local.get $8 i32.const 4 + i32.shl + local.get $3 i32.add + i32.const 0 local.get $1 - i32.const 2 + i32.const 4 + i32.shl + call $_memset + drop + local.get $7 + i32.const 0 + i32.gt_s + if $if_3 + local.get $9 + local.get $5 + local.get $7 + call $_memcpy + drop + end ;; $if_3 + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $6 + i32.const 4 i32.shl + local.get $3 i32.add - i32.load - local.set $0 - local.get $2 - global.set $30 + i32.store offset=4 local.get $0 + local.get $2 + i32.store offset=8 + local.get $5 + i32.eqz + if $if_4 + return + end ;; $if_4 + local.get $5 + call $_free ) - (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.load + local.set $4 local.get $0 i32.load offset=4 - local.tee $1 - i32.const -2 + local.tee $3 + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.load + local.tee $5 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 15496 + i32.eqz + local.tee $8 + if $if_0 (result i32) + local.get $4 + local.get $6 + i32.and + else + local.get $4 + local.get $3 + i32.lt_u + if $if_1 (result i32) + local.get $4 + else + local.get $3 + if $if_2 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + if $if_3 + return + end ;; $if_3 local.get $1 - i32.const 1 - i32.and - select + i32.load local.tee $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $1 - i32.load offset=4 - else - local.get $2 - i32.const 255 - i32.and - end ;; $if - local.set $3 + i32.eqz + if $if_4 + return + end ;; $if_4 block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - local.get $0 - i32.load offset=20 - i32.const 1 - i32.sub - br_table - $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 - $block_0 ;; default - end ;; $block_6 - local.get $0 - local.get $0 - i32.load offset=8 - local.tee $1 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - i32.const 11 - else - local.get $1 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.const 1 - i32.add - end ;; $if_0 - local.get $3 - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_5 - local.get $0 - local.get $3 - i32.const 9 - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_4 - local.get $0 - i32.load offset=8 - local.tee $2 - i32.load8_s offset=11 - local.set $1 - local.get $0 - local.get $2 - i32.load offset=4 + local.get $8 + if $if_5 + loop $loop + local.get $4 + local.get $1 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $9 + local.get $2 + local.get $6 + i32.and + local.get $7 + i32.eq + i32.or + if $if_6 + local.get $9 + if $if_7 + local.get $4 local.get $1 - i32.const 255 - i32.and + i32.load offset=8 + i32.eq + br_if $block + end ;; $if_7 + local.get $1 + i32.load + local.tee $1 + br_if $loop + end ;; $if_6 + end ;; $loop + else + loop $loop_0 + block $block_0 + local.get $4 + local.get $1 + i32.load offset=4 + local.tee $2 + i32.eq + if $if_8 + local.get $4 local.get $1 - i32.const 0 - i32.lt_s - select - local.tee $0 + i32.load offset=8 + i32.eq + br_if $block + else + local.get $2 local.get $3 - i32.const 1 - i32.add - i32.add - local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_3 - local.get $0 - local.get $3 - i32.const 2 - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_2 - local.get $0 - local.get $0 - i32.load offset=8 - call $__ZNK6google8protobuf6Struct12ByteSizeLongEv - local.tee $0 - local.get $3 - i32.const 1 - i32.add - i32.add - local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_1 + i32.ge_u + if $if_9 (result i32) + local.get $3 + if $if_10 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $2 + end ;; $if_9 + local.get $7 + i32.ne + br_if $block_0 + end ;; $if_8 + local.get $1 + i32.load + local.tee $1 + br_if $loop_0 + end ;; $block_0 + end ;; $loop_0 + end ;; $if_5 + return + end ;; $block + local.get $8 + if $if_11 (result i32) + local.get $4 + local.get $6 + i32.and + else + local.get $4 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $4 + else + local.get $3 + if $if_13 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $7 + i32.const 2 + i32.shl + local.get $5 + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_1 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_14 + local.get $2 + local.set $4 + br $loop_1 + end ;; $if_14 + end ;; $loop_1 + block $block_1 (result i32) + block $block_2 + local.get $4 local.get $0 - i32.load offset=8 - local.tee $4 + i32.const 8 + i32.add + i32.eq + br_if $block_2 + local.get $4 i32.load offset=4 - local.tee $1 - i32.const -2 - i32.and - i32.const 15496 - local.get $1 - i32.const 1 - i32.and - select - local.tee $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - if $if_1 (result i32) - local.get $1 - i32.load offset=4 - else + local.set $2 + local.get $8 + if $if_15 (result i32) local.get $2 - i32.const 255 + local.get $6 i32.and - end ;; $if_1 - local.set $1 - local.get $4 - i32.load offset=12 - local.tee $5 + else + local.get $2 + local.get $3 + i32.ge_u + if $if_16 (result i32) + local.get $3 + if $if_17 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + end ;; $if_15 + local.get $7 + i32.ne + br_if $block_2 local.get $1 - i32.add - local.set $1 - local.get $5 - if $if_2 - local.get $4 - i32.const 8 - i32.add - local.set $6 - i32.const 0 - local.set $2 - loop $loop - local.get $6 + br $block_1 + end ;; $block_2 + local.get $1 + i32.load + local.tee $2 + if $if_18 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $8 + if $if_19 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_20 (result i32) + local.get $3 + if $if_21 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_21 + else local.get $2 - call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi - call $__ZNK6google8protobuf5Value12ByteSizeLongEv - local.tee $7 - local.get $1 - i32.add - local.get $7 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.set $1 + end ;; $if_20 + end ;; $if_19 + local.get $7 + i32.eq + br_if $block_1 + drop + end ;; $if_18 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_1 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_22 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $8 + if $if_23 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_24 (result i32) + local.get $3 + if $if_25 (result i32) local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $5 - i32.ne - br_if $loop - end ;; $loop - end ;; $if_2 - local.get $4 - local.get $1 - i32.store offset=24 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_25 + else + local.get $2 + end ;; $if_24 + end ;; $if_23 + local.tee $3 + i32.ne + if $if_26 (result i32) local.get $0 + i32.load local.get $3 - i32.const 1 - i32.add - local.get $1 + i32.const 2 + i32.shl i32.add + local.get $4 + i32.store local.get $1 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.tee $0 - i32.store offset=16 - br $block - end ;; $block_0 - local.get $0 - local.get $3 - i32.store offset=16 - local.get $3 + i32.load + else + local.get $5 + end ;; $if_26 + else + local.get $5 + end ;; $if_22 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=12 + i32.const -1 + i32.add + i32.store offset=12 + local.get $1 + i32.eqz + if $if_27 return - end ;; $block + end ;; $if_27 + local.get $1 + i32.load offset=12 + local.set $0 + local.get $1 + i32.const 0 + i32.store offset=12 local.get $0 + if $if_28 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_28 + local.get $1 + call $_free ) - (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $4) + (func $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $2) (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) + (param $1 i32) + (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 32 + global.get $32 + local.set $5 + global.get $32 + i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 - i32.load offset=4 - local.tee $1 - i32.const -2 - i32.and - i32.const 15496 - local.get $1 - i32.const 1 - i32.and - select - local.tee $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $1 - i32.load offset=4 - else - local.get $2 - i32.const 255 - i32.and - end ;; $if + i32.load offset=8 local.set $3 local.get $0 - i32.load offset=20 - local.tee $2 - i32.load - local.set $5 - local.get $4 i32.const 12 i32.add - local.tee $1 + local.tee $8 + i32.load + local.set $4 + local.get $0 + i32.load + i32.load offset=24 + local.set $7 local.get $2 - i32.store offset=4 - local.get $1 + i32.load + local.set $6 local.get $2 - i32.load offset=12 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - local.get $3 + i32.const 0 + i32.store local.get $5 - i32.add - local.set $5 - local.get $1 - i32.load offset=4 - local.set $2 - local.get $1 - i32.load offset=8 - local.set $3 - local.get $4 + local.get $6 + i32.store + local.get $0 local.get $1 + local.get $5 + local.get $7 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $2) + local.get $5 i32.load - local.tee $1 + local.set $1 + local.get $5 + i32.const 0 i32.store - local.get $4 - local.get $2 - i32.store offset=4 - local.get $4 - local.get $3 - i32.store offset=8 - block $block + local.get $1 + if $if + local.get $1 + i32.load + call $_free local.get $1 + call $_free + end ;; $if + block $block + local.get $3 + i32.load offset=144 + local.tee $2 i32.eqz br_if $block - i32.const 0 - local.set $2 - loop $loop + local.get $3 + i32.load offset=140 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $3 + local.get $4 + i32.and + else + local.get $4 local.get $2 - if $if_0 - i32.const 0 - local.get $2 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - call_indirect $26 (type $4) - select - local.set $3 + i32.lt_u + if $if_1 (result i32) local.get $4 - i32.load - local.set $1 else - i32.const 0 - local.set $3 - end ;; $if_0 - local.get $1 - i32.load offset=12 - local.set $7 - local.get $0 - i32.load offset=8 - local.tee $2 - if $if_1 local.get $2 - i32.load offset=60 - if $if_2 + if $if_2 (result i32) + local.get $4 local.get $2 - i32.load offset=48 - if $if_3 - i32.const 4656 - i64.const 32 - local.get $2 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_3 + i32.rem_u + else + i32.const 0 end ;; $if_2 - local.get $2 - i32.const 32 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $1 - local.get $2 - i32.store offset=12 - else - i32.const 28 - call $__Znwm - local.tee $1 - i32.const 0 - i32.store offset=12 end ;; $if_1 - local.get $1 - i32.const 15496 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 6104 - i32.store - local.get $1 - local.get $7 - i32.store offset=20 - local.get $1 - local.get $7 - i32.const 16 - i32.add - i32.store offset=24 - local.get $1 - i32.const 3 - i32.store offset=16 - local.get $1 - local.set $2 - block $block_0 - block $block_1 + end ;; $if_0 + local.tee $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_0 + local.get $6 + if $if_3 + loop $loop + local.get $4 + local.get $1 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 local.get $3 - if $if_4 (result i32) - local.get $3 - local.get $3 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $2 - i32.const 16 - i32.add - local.tee $7 + i32.and + local.get $7 + i32.eq + i32.or + if $if_4 + local.get $6 + if $if_5 + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_5 + local.get $1 i32.load - i32.const 1 - i32.and - br_if $block_1 - i32.const 0 - local.set $6 - local.get $2 - else - local.get $2 - i32.const 16 - i32.add - local.set $7 - br $block_1 + local.tee $1 + br_if $loop end ;; $if_4 - local.set $3 - br $block_0 - end ;; $block_1 - local.get $2 - local.tee $3 - local.get $1 - i32.load - i32.load offset=72 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.tee $8 - i32.load8_s offset=11 - local.set $6 - local.get $8 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $6 - i32.const 0 - i32.lt_s - select - local.tee $6 - i32.const 1 - i32.add - local.get $6 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.set $6 - end ;; $block_0 - local.get $7 - i32.load - i32.const 2 - i32.and - if $if_5 (result i32) - local.get $3 - local.get $1 - i32.load - i32.load offset=76 - i32.const 63 - i32.and - call_indirect $26 (type $4) - call $__ZNK6google8protobuf5Value12ByteSizeLongEv - local.tee $3 - i32.const 1 - i32.add - local.get $3 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add + end ;; $loop else - i32.const 0 - end ;; $if_5 - local.get $6 - i32.add - local.set $3 - local.get $4 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $3 + loop $loop_0 + block $block_1 + local.get $4 + local.get $1 + i32.load offset=4 + local.tee $3 + i32.eq + if $if_6 + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $3 + local.get $2 + i32.ge_u + if $if_7 (result i32) + local.get $2 + if $if_8 (result i32) + local.get $3 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_8 + else + local.get $3 + end ;; $if_7 + local.get $7 + i32.ne + br_if $block_1 + end ;; $if_6 + local.get $1 + i32.load + local.tee $1 + br_if $loop_0 + end ;; $block_1 + end ;; $loop_0 + end ;; $if_3 local.get $5 - i32.add - local.get $3 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - local.set $5 - local.get $4 - i32.load - local.tee $3 - if $if_6 - local.get $3 - local.set $1 - br $loop - end ;; $if_6 - end ;; $loop - local.get $1 + global.set $32 + return + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.load8_s offset=4 i32.eqz br_if $block - local.get $1 - local.get $1 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - call_indirect $26 (type $4) - br_if $block - local.get $1 - local.get $1 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) local.get $0 + i32.load offset=8 + i32.const 140 + i32.add + local.get $8 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - i32.store offset=24 - local.get $4 - global.set $30 - local.get $5 + global.set $32 return end ;; $block - local.get $0 - local.get $5 - i32.store offset=24 - local.get $4 - global.set $30 local.get $5 + global.set $32 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $3) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $1) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $30 - local.set $2 - global.get $30 + (param $2 i32) + (param $3 i32) + i32.const 72 + call $__Znwm + local.tee $1 + i64.const 0 + i64.store offset=4 align=4 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=20 + local.get $1 + i64.const 0 + i64.store offset=24 align=4 + local.get $1 + i64.const 0 + i64.store offset=32 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=40 + local.get $1 + i64.const 0 + i64.store offset=44 align=4 + local.get $1 + i64.const 0 + i64.store offset=52 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=60 + local.get $1 i32.const -64 i32.sub - global.set $30 local.get $2 - i32.const 24 - i32.add - local.set $3 + i32.store + local.get $1 + local.get $3 + i32.store offset=68 + local.get $1 + i32.const 6608 + i32.store local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + local.get $3 + i32.load + local.set $5 + local.get $3 i32.load offset=4 - local.tee $5 - i32.load offset=12 - local.tee $4 - local.get $5 - i32.load offset=4 - local.tee $6 - i32.ne - if $if - local.get $5 - i32.load offset=16 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - if $if_0 (result i32) - local.get $6 - else - local.get $3 - i32.const 3 - i32.store - local.get $3 - i32.const 8384 - i32.store offset=4 - local.get $3 - i32.const 418 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 8491 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=4 - local.tee $5 - i32.load offset=4 - end ;; $if_0 - local.set $4 - end ;; $if - local.get $0 - i32.const 0 + local.set $4 + i32.const 160 + call $__Znwm + local.tee $3 + i64.const 0 + i64.store offset=4 align=4 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=20 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=40 + local.get $3 + i64.const 0 + i64.store offset=44 align=4 + local.get $3 + i64.const 0 + i64.store offset=52 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=60 + local.get $3 + i32.const -64 + i32.sub + local.get $2 i32.store - local.get $0 + local.get $3 + i32.const 6688 + i32.store + local.get $3 + i32.const 68 + i32.add + local.tee $1 + i64.const 0 + i64.store align=4 local.get $1 + i32.const 0 i32.store offset=8 local.get $4 - local.get $1 - i32.le_u - if $if_1 - local.get $2 - global.set $30 - return - end ;; $if_1 - local.get $5 - i32.load offset=16 - local.set $6 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if block $block block $block_0 - loop $loop + local.get $4 + i32.const 11 + i32.lt_u + if $if_0 + local.get $3 + local.get $4 + i32.store8 offset=79 + local.get $4 + br_if $block_0 + else local.get $1 - i32.const 2 - i32.shl - local.get $6 + local.get $4 + i32.const 16 i32.add - i32.load - local.tee $3 - i32.eqz - if $if_2 - local.get $0 - local.get $1 - i32.const 1 - i32.add - local.tee $1 - i32.store offset=8 - local.get $1 - local.get $4 - i32.ge_u - br_if $block_0 - br $loop - end ;; $if_2 - end ;; $loop + i32.const -16 + i32.and + local.tee $2 + call $__Znwm + local.tee $1 + i32.store + local.get $3 + local.get $2 + i32.const -2147483648 + i32.or + i32.store offset=76 + local.get $3 + local.get $4 + i32.store offset=72 + br $block_0 + end ;; $if_0 br $block end ;; $block_0 - local.get $2 - global.set $30 - return + local.get $1 + local.get $5 + local.get $4 + call $_memcpy + drop end ;; $block local.get $1 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $6 + local.get $4 i32.add - i32.load + i32.const 0 + i32.store8 local.get $3 - i32.ne - if $if_3 - local.get $0 - local.get $3 - i32.store - local.get $2 - global.set $30 - return - end ;; $if_3 + i64.const 0 + i64.store offset=80 align=4 local.get $3 - i32.load offset=12 - i32.eqz - if $if_4 - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 427 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 8608 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_4 - local.get $0 + i64.const 0 + i64.store offset=88 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=96 + local.get $3 + i64.const 0 + i64.store offset=100 align=4 + local.get $3 + i64.const 0 + i64.store offset=108 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=116 + local.get $3 + i64.const 0 + i64.store offset=120 align=4 + local.get $3 + i64.const 0 + i64.store offset=128 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=136 + local.get $3 + i64.const 0 + i64.store offset=140 align=4 + local.get $3 + i64.const 0 + i64.store offset=148 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=156 + local.get $3 + i32.const 6536 + i32.store + local.get $0 local.get $3 - i32.load - i32.load offset=16 i32.store - local.get $2 - global.set $30 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) - (param $0 i32) + (func $__GLOBAL__sub_I_envoy_filter_http_wasm_example_cc (type $8) + (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 + global.get $32 + local.set $0 + global.get $32 + i32.const 48 i32.add - global.set $30 + global.set $32 local.get $0 - i32.load - i32.load offset=16 + i32.const 24 + i32.add + local.tee $2 + i32.const 5 + i32.store offset=8 + local.get $2 + i32.const 6784 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add local.tee $1 + i32.const 6 + i32.store offset=8 + local.get $1 + i32.const 6800 + i32.store offset=12 + local.get $0 + i32.const 11024 + i32.store + local.get $0 + i32.const 10 + i32.store offset=4 + local.get $0 + i32.const 40 + i32.add + local.tee $3 + local.get $0 + i64.load align=4 + i64.store align=4 + local.get $2 + local.get $1 + local.get $3 + call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ + local.get $1 + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 local.get $1 - i32.store - local.get $2 - global.set $30 - return + i32.load + local.get $3 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.const 24 + i32.load offset=12 + i32.load offset=4 + local.tee $1 + i32.eqz + if $if_0 + local.get $0 + global.set $32 + return + end ;; $if_0 + local.get $2 + i32.load + local.get $1 + i32.const 127 + i32.and + i32.const 160 i32.add - local.tee $6 - i32.const 0 - i32.store + call_indirect $28 (type $0) local.get $0 - local.get $6 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE + global.set $32 + ) + + (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + i32.load offset=20 local.set $1 local.get $0 - i32.load offset=8 - local.set $3 local.get $1 - if $if_0 - local.get $0 - local.get $3 - i32.const 1 - i32.add - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - else - local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $1 + i32.const -2 + i32.and + local.set $2 + block $block (result i32) + local.get $1 i32.const 1 i32.and - if $if_1 - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 451 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 8448 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv + if $if local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=8 - local.set $3 - end ;; $if_1 - local.get $0 - i32.load offset=4 - i32.load offset=16 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $7 - local.get $6 - i32.load - local.tee $5 - i32.load offset=4 + i32.load offset=12 + local.set $2 + end ;; $if + local.get $2 + i32.eqz + end ;; $block + if $if_0 + i32.const 16 + call $__Znwm local.tee $1 - if $if_2 - loop $loop - local.get $1 - i32.load - local.tee $4 - if $if_3 - local.get $4 - local.set $1 - br $loop - end ;; $if_3 - end ;; $loop - else - local.get $5 - local.get $5 - i32.const 8 - i32.add - local.tee $4 - i32.load - local.tee $1 - i32.load - i32.ne - if $if_4 - local.get $4 - local.set $1 - loop $loop_0 (result i32) - local.get $1 - i32.load - local.tee $5 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.set $4 - local.get $4 - i32.load - local.get $5 - i32.ne - br_if $loop_0 - local.get $4 - end ;; $loop_0 - local.set $1 - end ;; $if_4 - end ;; $if_2 - local.get $6 + i64.const 0 + i64.store align=4 + local.get $1 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 local.get $1 + i32.const 1 + i32.or i32.store - local.get $7 - i32.const 4 - i32.add local.get $1 - i32.eq - if $if_5 - local.get $0 - local.get $3 - i32.const 2 - i32.add - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - else - local.get $0 - local.get $1 - i32.load offset=16 - i32.store - end ;; $if_5 + local.get $2 + i32.store offset=12 + local.get $1 + return end ;; $if_0 local.get $2 - global.set $30 + i32.load offset=60 + if $if_1 + local.get $2 + i32.load offset=48 + if $if_2 + i32.const 4552 + i64.const 16 + local.get $2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_2 + end ;; $if_1 + local.get $2 + i32.const 16 + i32.const 117 + call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE + local.tee $1 + i64.const 0 + i64.store align=4 + local.get $1 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store + local.get $1 + local.get $2 + i32.store offset=12 + local.get $1 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $6) + (func $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load + call $_free + ) + + (func $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $2) (param $0 i32) (param $1 i32) - (result i32) - (local $2 i32) + (param $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $3 - i32.const 24 + global.get $32 + i32.const 32 i32.add - local.set $6 - block $block - block $block_0 - local.get $0 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $0 - i32.const 4 - i32.add - local.tee $7 - i32.load - local.tee $5 - i32.eqz - br_if $block_0 - local.get $4 - local.set $2 - br $block - end ;; $block_0 + global.set $32 + local.get $2 + i32.eqz + if $if local.get $3 i32.const 3 i32.store local.get $3 - i32.const 8384 + i32.const 11565 i32.store offset=4 local.get $3 - i32.const 476 + i32.const 370 i32.store offset=8 local.get $3 i64.const 0 @@ -8794,758 +10407,333 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8639 + i32.const 11614 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load - local.tee $2 - local.set $4 - local.get $0 - i32.const 4 - i32.add - local.tee $7 - i32.load - local.set $5 - end ;; $block - local.get $0 - local.get $0 - i32.load offset=8 - local.get $5 - i32.load offset=4 - i32.const -1 - i32.add - i32.and - local.tee $8 - i32.store offset=8 - block $block_1 - local.get $2 - local.get $5 - i32.load offset=16 - local.tee $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - i32.eq - br_if $block_1 - local.get $2 - if $if - local.get $8 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $9 - i32.add - i32.load - local.get $2 - i32.ne - if $if_0 - local.get $2 - i32.load offset=16 - local.tee $2 - if $if_1 - block $block_2 - loop $loop - local.get $2 - local.get $4 - i32.ne - if $if_2 - local.get $2 - i32.load offset=16 - local.tee $2 - i32.eqz - br_if $block_2 - br $loop - end ;; $if_2 - end ;; $loop - br $block_1 - end ;; $block_2 - end ;; $if_1 - end ;; $if_0 - end ;; $if - local.get $6 - local.get $5 - local.get $4 - local.get $1 - call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE - local.get $0 - local.get $6 - i32.load offset=8 - local.tee $0 - i32.store offset=8 - local.get $7 - i32.load - i32.load offset=16 + end ;; $if + local.get $1 + i32.eqz + if $if_0 + i32.const 12 + call $__Znwm local.tee $1 - local.get $0 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - i32.eqz - br_if $block_1 local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 1 - i32.xor - i32.const 2 - i32.shl local.get $1 - i32.add - i32.load - i32.ne - local.set $0 + i32.store local.get $3 - global.set $30 - local.get $0 + global.set $32 return - end ;; $block_1 + end ;; $if_0 + local.get $1 + i32.load offset=60 + if $if_1 + local.get $1 + i32.load offset=48 + if $if_2 + i32.const 4560 + i64.const 16 + local.get $1 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_2 + end ;; $if_1 + local.get $1 + i32.const 16 + i32.const 118 + call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE + local.tee $1 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $0 + local.get $1 + i32.store local.get $3 - global.set $30 - i32.const 1 + global.set $32 ) - (func $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - global.get $30 - local.set $10 - global.get $30 - i32.const 16 + (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) + (local $0 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 256 i32.add - global.set $30 - local.get $2 - i32.load - local.get $2 - local.get $2 - i32.load8_s offset=11 - local.tee $7 + global.set $32 + local.get $0 + global.set $32 + i32.const 24524 i32.const 0 - i32.lt_s - local.tee $9 - select - local.tee $11 - i32.load8_s - local.tee $12 + i32.store + i32.const 24516 + i32.const 24664 + i32.store + i32.const 24520 + i32.const 0 + i32.store + i32.const 24528 + i32.const 0 + i32.store + i32.const 24512 + i32.const 6840 + i32.store + i32.const 24536 + call $__ZN6google8protobuf6StructC2Ev + i32.const 119 + i32.const 24536 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + i32.const 24568 + i32.const 6928 + i32.store + i32.const 24572 + i32.const 0 + i32.store + i32.const 24584 + i32.const 0 + i32.store + i32.const 6816 + i32.load if $if - local.get $12 - local.set $6 - local.get $11 - local.set $4 - loop $loop - local.get $5 - i32.const 5 - i32.mul - local.get $6 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.add - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.tee $6 - br_if $loop - end ;; $loop + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - local.get $1 - i32.load offset=16 - local.tee $4 - local.get $1 - i32.load offset=8 - local.get $5 - i32.add - local.get $1 - i32.load offset=4 - i32.const -1 - i32.add - i32.and - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_0 - block $block - local.get $5 - local.get $6 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $4 - i32.add - i32.load - i32.eq - if $if_1 - local.get $6 - i32.const -2 - i32.and - local.tee $5 - i32.const 2 - i32.shl - local.get $4 - i32.add - i32.load - local.set $4 - local.get $10 - local.get $2 - i32.store - local.get $10 - local.get $4 - i32.const 4 - i32.add - local.tee $2 - i32.load - local.get $2 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE - local.set $8 - local.get $2 - local.get $8 - i32.ne - if $if_2 - block $block_0 - local.get $8 - i32.load offset=16 - local.tee $2 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $9 - local.get $10 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $12 - block $block_1 - block $block_2 - local.get $2 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $9 - select - local.tee $11 - local.get $7 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $12 - select - local.tee $6 - local.get $11 - local.get $6 - i32.lt_u - select - local.tee $4 - i32.eqz - br_if $block_2 - local.get $7 - i32.load - local.get $7 - local.get $12 - select - local.get $2 - i32.load - local.get $2 - local.get $9 - select - local.get $4 - call $_memcmp - local.tee $4 - i32.eqz - br_if $block_2 - local.get $4 - i32.const 0 - i32.lt_s - br_if $block_0 - br $block_1 - end ;; $block_2 - local.get $6 - local.get $11 - i32.lt_u - br_if $block_0 - end ;; $block_1 - local.get $3 - if $if_3 - local.get $3 - local.get $8 - i32.store - local.get $8 - i32.load offset=16 - local.set $2 - end ;; $if_3 - local.get $0 - local.get $2 - i32.store - local.get $0 - local.get $1 - i32.store offset=4 - local.get $0 - local.get $5 - i32.store offset=8 - local.get $0 - local.get $5 - i32.store offset=12 - local.get $10 - global.set $30 - return - end ;; $block_0 - end ;; $if_2 - local.get $5 - local.set $1 - br $block - end ;; $if_1 - local.get $2 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $9 - select - local.tee $7 - i32.eqz - local.set $9 - local.get $5 - local.set $2 - loop $loop_0 - block $block_3 - local.get $2 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $8 - local.get $2 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.tee $4 - local.get $8 - select - local.get $7 - i32.eq - if $if_4 - block $block_4 - local.get $2 - i32.load - local.tee $5 - local.get $2 - local.get $8 - select - local.set $3 - local.get $8 - if $if_5 - local.get $9 - br_if $block_3 - local.get $3 - local.get $11 - local.get $7 - call $_memcmp - i32.eqz - br_if $block_3 - br $block_4 - end ;; $if_5 - local.get $9 - br_if $block_3 - local.get $5 - i32.const 255 - i32.and - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.get $12 - i32.eq - if $if_6 - local.get $2 - local.set $5 - local.get $11 - local.set $3 - loop $loop_1 - local.get $4 - i32.const -1 - i32.add - local.tee $4 - i32.eqz - br_if $block_3 - local.get $5 - i32.const 1 - i32.add - local.tee $5 - i32.load8_s - local.get $3 - i32.const 1 - i32.add - local.tee $3 - i32.load8_s - i32.eq - br_if $loop_1 - end ;; $loop_1 - end ;; $if_6 - end ;; $block_4 - end ;; $if_4 - local.get $2 - i32.load offset=16 - local.tee $2 - br_if $loop_0 - local.get $6 - local.set $1 - br $block - end ;; $block_3 - end ;; $loop_0 - local.get $0 - local.get $2 - i32.store - local.get $0 - local.get $1 - i32.store offset=4 - local.get $0 - local.get $6 - i32.store offset=8 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $10 - global.set $30 - return - end ;; $block - else - local.get $6 - local.set $1 - end ;; $if_0 - local.get $0 + i32.const 24588 i32.const 0 i32.store + i32.const 119 + i32.const 24568 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + i32.const 24624 + call $__ZN6google8protobuf9ListValueC2Ev + i32.const 119 + i32.const 24624 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + i32.const 24520 + i32.const 24568 + i32.store + ) + + (func $__ZN6google8protobuf6StructC2Ev (type $0) + (param $0 i32) + local.get $0 + i32.const 7176 + i32.store local.get $0 - i32.const 0 - i32.store offset=4 + i64.const 0 + i64.store offset=4 align=4 + local.get $0 + i64.const 0 + i64.store offset=12 align=4 + local.get $0 + i32.const 12 + i32.add + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv local.get $0 i32.const 0 - i32.store offset=8 + i32.store offset=16 local.get $0 - local.get $1 - i32.store offset=12 - local.get $10 - global.set $30 + i32.const 0 + i32.store offset=24 + i32.const 6816 + i32.load + i32.eqz + if $if + return + end ;; $if + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $5) + (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $1 + local.get $0 + i32.const 7008 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + i32.const 6816 + i32.load i32.eqz if $if - local.get $2 return end ;; $if + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + ) + + (func $__ZN6google8protobuf9ListValueD2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 local.get $0 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.set $3 - local.get $7 - i32.load offset=4 + i32.const 7008 + i32.store local.get $0 - i32.const 255 + i32.load offset=4 + local.tee $3 + i32.const -2 i32.and + local.set $1 local.get $3 - select - local.set $0 - local.get $3 + i32.const 1 + i32.and + if $if (result i32) + local.get $1 + i32.load offset=12 + else + local.get $1 + end ;; $if if $if_0 - loop $loop - local.get $1 - i32.load offset=16 - local.tee $3 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $5 - local.get $0 + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11753 + i32.store offset=4 + local.get $2 + i32.const 915 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 12935 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_1 + local.get $0 + i32.load offset=8 + i32.eqz + if $if_2 local.get $3 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $5 - select - local.tee $4 - i32.lt_u - local.set $6 - block $block - block $block_0 - local.get $0 - local.get $4 - local.get $6 - select - local.tee $8 - i32.eqz - br_if $block_0 + i32.load + local.tee $5 + i32.const 0 + i32.gt_s + if $if_3 (result i32) + i32.const 0 + local.set $1 + loop $loop local.get $3 + i32.const 4 + i32.add + local.get $1 + i32.const 2 + i32.shl + i32.add i32.load - local.get $3 + local.tee $4 + if $if_4 + local.get $4 + local.get $4 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_4 + local.get $1 + i32.const 1 + i32.add + local.tee $1 local.get $5 - select - local.get $7 - i32.load - local.get $8 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_0 - br $block - end ;; $block_0 - i32.const -1 - local.get $6 - local.get $4 - local.get $0 - i32.lt_u - select - local.set $3 - end ;; $block - local.get $2 - local.get $1 - local.get $3 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.set $2 - local.get $1 - i32.const 4 - i32.add - local.get $1 - local.get $3 - select - i32.load - local.tee $1 - br_if $loop - end ;; $loop - else - loop $loop_0 - local.get $1 - i32.load offset=16 - local.tee $3 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $5 - local.get $0 - local.get $3 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $5 - select - local.tee $4 - i32.lt_u - local.set $6 - block $block_1 - block $block_2 - local.get $0 - local.get $4 - local.get $6 - select - local.tee $8 - i32.eqz - br_if $block_2 - local.get $3 - i32.load - local.get $3 - local.get $5 - select - local.get $7 - local.get $8 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_2 - br $block_1 - end ;; $block_2 - i32.const -1 - local.get $6 - local.get $4 + i32.ne + br_if $loop + end ;; $loop local.get $0 - i32.lt_u - select - local.set $3 - end ;; $block_1 - local.get $2 - local.get $1 - local.get $3 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.set $2 - local.get $1 - i32.const 4 - i32.add - local.get $1 - local.get $3 - select - i32.load - local.tee $1 - br_if $loop_0 - end ;; $loop_0 - end ;; $if_0 - local.get $2 - ) - - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 6272 - i32.store - local.get $0 - i32.load offset=12 - if $if - return - end ;; $if + i32.load offset=20 + else + local.get $3 + end ;; $if_3 + call $_free + end ;; $if_2 + end ;; $if_1 local.get $0 - i32.load offset=4 - local.tee $1 - i32.const 15496 - i32.eq - local.get $1 - i32.eqz - i32.or - i32.eqz - if $if_0 + i32.const 0 + i32.store offset=20 + block $block + local.get $0 + i32.load offset=4 + local.tee $1 + i32.const 1 + i32.and + i32.eqz + br_if $block + local.get $1 + i32.const -2 + i32.and + local.tee $1 + local.tee $3 + i32.load offset=12 + local.get $1 + i32.eqz + i32.or + br_if $block local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_1 - local.get $1 + if $if_5 + local.get $3 i32.load call $_free - end ;; $if_1 + end ;; $if_5 local.get $1 call $_free - end ;; $if_0 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.eqz - if $if_2 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $2 + global.set $32 return - end ;; $if_2 - local.get $0 + end ;; $block local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + i32.const 0 + i32.store offset=4 + local.get $2 + global.set $32 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) + (func $__ZN6google8protobuf9ListValueD0Ev (type $0) (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 6272 - i32.store - local.get $0 - i32.load offset=12 - if $if - local.get $0 - call $_free - return - end ;; $if - local.get $0 - i32.load offset=4 - local.tee $1 - i32.const 15496 - i32.eq - local.get $1 - i32.eqz - i32.or - i32.eqz - if $if_0 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_1 - local.get $1 - i32.load - call $_free - end ;; $if_1 - local.get $1 - call $_free - end ;; $if_0 local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - if $if_2 - local.get $0 - call $_free - return - end ;; $if_2 - local.get $1 - local.get $1 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + call $__ZN6google8protobuf9ListValueD2Ev local.get $0 call $_free ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $3) + (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $3) (param $0 i32) (param $1 i32) local.get $0 @@ -9554,145 +10742,151 @@ local.get $0 i32.const 0 i32.store offset=8 - ) - - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $4) - (param $0 i32) - (result i32) - i32.const 20 - call $__Znwm - local.tee $0 - i32.const 0 - i32.store offset=12 local.get $0 - i32.const 15496 - i32.store offset=4 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store local.get $0 - i32.const 0 + i32.const -2147483616 i32.store offset=8 local.get $0 + i32.const 25 + i32.store offset=4 + local.get $1 + i32.const 14222 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 14230 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 14238 + i64.load align=1 + i64.store offset=16 align=1 + local.get $1 + i32.const 14246 + i32.load8_s + i32.store8 offset=24 + local.get $1 i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 5856 - i32.store - local.get $0 + i32.store8 offset=25 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $6) + (func $__ZNK6google8protobuf9ListValue3NewEv (type $4) + (param $0 i32) + (result i32) + i32.const 0 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $6) (param $0 i32) (param $1 i32) (result i32) local.get $1 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $4) + (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $4) (param $0 i32) (result i32) + (local $1 i32) local.get $0 - i32.load offset=12 + i32.load offset=4 + local.tee $1 + i32.const -2 + i32.and + local.set $0 + local.get $1 + i32.const 1 + i32.and + if $if (result i32) + local.get $0 + i32.load offset=12 + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv (type $0) + (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.load offset=4 + ) + + (func $__ZN6google8protobuf9ListValue5ClearEv (type $0) (param $0 i32) (local $1 i32) - (local $2 i32) + local.get $0 + i32.const 8 + i32.add + call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase5ClearINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvv local.get $0 i32.load offset=4 - local.tee $1 - i32.const 15496 - i32.ne + local.tee $0 + i32.const 1 + i32.and + i32.eqz if $if - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 - local.get $1 - i32.load - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store offset=4 - else - local.get $1 - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store8 offset=11 - end ;; $if_0 + return end ;; $if local.get $0 - i32.load offset=8 - local.tee $1 - if $if_1 + i32.const -2 + i32.and + local.tee $0 + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 local.get $1 - call $__ZN6google8protobuf5Value10clear_kindEv + i32.load + i32.const 0 + i32.store8 local.get $1 - i32.load offset=4 - local.tee $1 - i32.const 1 - i32.and - if $if_2 - local.get $1 - i32.const -2 - i32.and - local.tee $1 - local.set $2 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $2 - i32.load - i32.const 0 - i32.store8 - local.get $2 - i32.const 0 - i32.store offset=4 - else - local.get $1 - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_2 - end ;; $if_1 - local.get $0 - local.get $0 - i32.load offset=16 - i32.const -4 - i32.and - i32.store offset=16 + i32.const 0 + i32.store offset=4 + else + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=11 + end ;; $if_0 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $3) + (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $4) + (param $0 i32) + (result i32) + i32.const 1 + ) + + (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4672 + i32.const 4768 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 - call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ + call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 10255 - i32.const 10296 + i32.const 13788 + i32.const 13829 i32.const 92 - i32.const 10368 + i32.const 13878 call $___assert_fail end ;; $if ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) + (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) (param $0 i32) (param $1 i32) (result i32) @@ -9701,22 +10895,90 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 40 + i32.add + local.tee $7 local.get $0 i32.const 4 i32.add - local.set $5 - block $block + i32.store + local.get $7 + i32.const 4 + i32.add + local.tee $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const 1 + i32.and + if $if + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $5 + i32.load offset=8 + i32.store offset=8 + local.get $5 + local.get $2 + i32.const -2 + i32.and + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $2 + local.get $4 + i32.load offset=8 + i32.store offset=8 + end ;; $if + local.get $4 + i32.const 32 + i32.add + local.tee $2 + local.tee $3 + i32.const 7496 + i32.store + local.get $3 + local.get $5 + i32.store offset=4 + local.get $4 + i32.const 12 + i32.add + local.tee $9 + local.get $2 + call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb + local.get $0 + i32.const 8 + i32.add + local.set $8 + block $block (result i32) block $block_0 - loop $loop - block $block_1 + loop $loop (result i32) + block $block_1 (result i32) block $block_2 block $block_3 local.get $1 @@ -9725,7 +10987,7 @@ local.get $1 i32.load offset=4 i32.lt_u - if $if + if $if_0 local.get $3 i32.load8_s local.tee $6 @@ -9733,266 +10995,353 @@ i32.and local.set $2 local.get $6 - i32.const -1 - i32.le_s - br_if $block_3 - local.get $1 - local.get $3 - i32.const 1 - i32.add - i32.store + i32.const 0 + i32.gt_s + if $if_1 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + br $block_3 + end ;; $if_1 else i32.const 0 local.set $2 - br $block_3 - end ;; $if - br $block_2 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj + local.tee $2 + i32.const -1 + i32.add + i32.const 126 + i32.gt_u + br_if $block_2 end ;; $block_3 - local.get $1 local.get $2 - call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj - local.set $2 - end ;; $block_2 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - local.get $2 - br_table - $block_8 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_7 $block_5 $block_5 $block_5 $block_5 $block_5 - $block_5 $block_5 $block_6 - $block_5 ;; default - end ;; $block_8 - i32.const 1 - local.set $0 - br $block - end ;; $block_7 - local.get $0 - local.get $0 - i32.load offset=16 - i32.const 1 - i32.or - i32.store offset=16 - local.get $5 - i32.load - local.tee $2 - i32.const 15496 - i32.eq - if $if_0 - local.get $5 + i32.const 10 + i32.ne + br_if $block_2 + block $block_4 + block $block_5 + block $block_6 local.get $0 - i32.load offset=12 - i32.const 15496 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 - i32.load + i32.load offset=20 + local.tee $3 + if $if_2 (result i32) + local.get $0 + i32.load offset=12 + local.tee $6 + local.get $3 + i32.load + local.tee $2 + i32.lt_s + if $if_3 (result i32) + local.get $0 + local.get $6 + i32.const 1 + i32.add + i32.store offset=12 + local.get $3 + i32.const 4 + i32.add + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + else + local.get $0 + i32.load offset=16 + local.get $2 + i32.eq + if $if_4 + br $block_6 + else + local.get $2 + local.set $6 + local.get $3 + local.set $2 + br $block_5 + end ;; $if_4 + unreachable + end ;; $if_3 + else + local.get $0 + i32.load offset=16 + local.set $2 + br $block_6 + end ;; $if_2 local.set $2 - end ;; $if_0 - local.get $1 + br $block_4 + end ;; $block_6 + local.get $8 + i32.load offset=4 + local.tee $3 local.get $2 - call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE - i32.eqz - if $if_1 - i32.const 0 - local.set $0 - br $block - end ;; $if_1 - local.get $0 - local.get $0 - i32.load offset=16 i32.const 1 - i32.or - i32.store offset=16 - br $block_4 - end ;; $block_6 - local.get $0 - local.get $0 - i32.load offset=16 - i32.const 2 - i32.or - i32.store offset=16 - local.get $0 - i32.load offset=8 - local.tee $2 - i32.eqz - if $if_2 - local.get $0 - local.get $0 - i32.load offset=12 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + i32.add local.tee $2 - i32.store offset=8 - end ;; $if_2 - block $block_9 - block $block_10 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 - i32.ge_u - br_if $block_10 - local.get $3 - i32.load8_s - local.tee $6 - i32.const -1 - i32.le_s - br_if $block_10 - local.get $1 + i32.lt_s + if $if_5 + local.get $8 + local.get $2 local.get $3 - i32.const 1 - i32.add - i32.store - local.get $6 - i32.const 255 - i32.and - local.set $3 - br $block_9 - end ;; $block_10 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $3 - i32.const -1 - i32.le_s - if $if_3 - i32.const 0 - local.set $0 - br $block - end ;; $if_3 - end ;; $block_9 - local.get $4 - local.get $1 - local.get $3 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $4 - i32.load offset=4 - i32.const 0 - i32.lt_s - br_if $block_1 + i32.sub + call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi + drop + end ;; $if_5 + local.get $0 + i32.load offset=20 + local.tee $2 + i32.load + local.set $6 + end ;; $block_5 local.get $2 - local.get $1 - call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - i32.eqz - br_if $block_1 - local.get $1 - local.get $4 + local.get $6 + i32.const 1 + i32.add + i32.store + local.get $8 i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - i32.eqz - if $if_4 - i32.const 0 - local.set $0 - br $block - end ;; $if_4 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.set $2 local.get $0 + i32.load offset=20 + local.set $3 local.get $0 - i32.load offset=16 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.const 1 + i32.add + i32.store offset=12 + local.get $3 + i32.const 4 + i32.add + local.get $6 i32.const 2 - i32.or - i32.store offset=16 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - i32.eq - if $if_5 + i32.shl + i32.add + local.get $2 + i32.store + end ;; $block_4 + block $block_7 + block $block_8 local.get $1 - i32.load offset=32 - br_if $block_0 + i32.load + local.tee $3 local.get $1 - i32.load offset=12 + i32.load offset=4 + i32.ge_u + br_if $block_8 + local.get $3 + i32.load8_s + local.tee $6 + i32.const -1 + i32.le_s + br_if $block_8 local.get $1 - i32.load offset=28 - i32.eq - br_if $block_0 - end ;; $if_5 - br $block_4 - end ;; $block_5 - local.get $2 - i32.const 7 - i32.and - i32.const 4 - i32.eq - if $if_6 - i32.const 1 - local.set $0 - br $block - end ;; $if_6 + local.get $3 + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 255 + i32.and + local.set $3 + br $block_7 + end ;; $block_8 + i32.const 0 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $3 + i32.const -1 + i32.le_s + br_if $block_1 + drop + end ;; $block_7 + local.get $4 local.get $1 + local.get $3 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $4 + i32.load offset=4 + i32.const 0 + i32.lt_s + br_if $block_0 local.get $2 - call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj + local.get $1 + call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE i32.eqz - if $if_7 - i32.const 0 - local.set $0 - br $block - end ;; $if_7 - end ;; $block_4 - br $loop + br_if $block_0 + i32.const 0 + local.get $1 + local.get $4 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + i32.eqz + br_if $block_1 + drop + br $loop + end ;; $block_2 + i32.const 1 + local.get $2 + i32.eqz + br_if $block_1 + drop + local.get $1 + local.get $2 + local.get $9 + call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE + br_if $loop + i32.const 0 end ;; $block_1 end ;; $loop - local.get $4 - global.set $30 - i32.const 0 - return + br $block end ;; $block_0 - local.get $1 i32.const 0 - i32.store offset=20 - local.get $1 - i32.const 1 - i32.store8 offset=24 + end ;; $block + local.set $1 + local.get $9 + call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev + local.get $7 + i32.load offset=8 + local.get $5 + i32.load8_s offset=11 + local.tee $0 + i32.const 255 + i32.and + local.get $0 + i32.const 0 + i32.lt_s + select + if $if_6 (result i32) local.get $4 - global.set $30 + local.get $7 + i32.load + local.tee $0 + i32.load + local.tee $2 i32.const 1 + i32.and + if $if_7 (result i32) + local.get $2 + i32.const -2 + i32.and + else + local.get $0 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_7 + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + i32.load offset=8 + i32.store offset=8 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + i32.load offset=8 + i32.store offset=8 + local.get $5 + i32.load8_s offset=11 + else + local.get $0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.ge_s + if $if_8 + local.get $4 + global.set $32 + local.get $1 return - end ;; $block + end ;; $if_8 + local.get $5 + i32.load + call $_free local.get $4 - global.set $30 - local.get $0 + global.set $32 + local.get $1 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $4) + (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $4) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) + (local $5 i32) local.get $0 - i32.load offset=16 - local.tee $2 + i32.load offset=4 + local.tee $1 + i32.const -2 + i32.and + i32.const 24664 + local.get $1 i32.const 1 i32.and + select + local.tee $2 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s if $if (result i32) - local.get $0 - i32.load - i32.load offset=72 - local.set $2 - local.get $0 local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.tee $3 - i32.load8_s offset=11 - local.set $1 - local.get $0 - i32.load offset=16 - local.set $2 - local.get $3 i32.load offset=4 + else local.get $1 i32.const 255 i32.and + end ;; $if + local.get $0 + i32.load offset=12 + local.tee $3 + i32.add + local.set $1 + local.get $3 + i32.eqz + if $if_0 + local.get $0 local.get $1 - i32.const 0 - i32.lt_s - select - local.tee $1 - i32.const 1 - i32.add + i32.store offset=24 + local.get $1 + return + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.set $4 + i32.const 0 + local.set $2 + loop $loop + local.get $4 + local.get $2 + call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi + call $__ZNK6google8protobuf5Value12ByteSizeLongEv + local.tee $5 local.get $1 + i32.add + local.get $5 i32.const 1 i32.or i32.clz @@ -10005,1200 +11354,475 @@ i32.const 6 i32.shr_u i32.add - else - i32.const 0 - end ;; $if - local.set $1 - local.get $2 - i32.const 2 - i32.and - i32.eqz - if $if_0 - local.get $1 - return - end ;; $if_0 + local.set $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $3 + i32.ne + br_if $loop + end ;; $loop local.get $0 - i32.load - i32.load offset=76 - local.set $2 local.get $1 - local.get $0 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - call $__ZNK6google8protobuf5Value12ByteSizeLongEv - local.tee $0 - i32.const 1 - i32.add - local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - i32.add + i32.store offset=24 + local.get $1 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) + (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) local.get $0 - i32.load - i32.load offset=72 - local.set $2 + i32.load offset=12 + local.tee $4 + if $if + local.get $0 + i32.const 8 + i32.add + local.set $3 + loop $loop + i32.const 1 + local.get $3 + local.get $2 + call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $4 + i32.ne + br_if $loop + end ;; $loop + end ;; $if local.get $0 + i32.load offset=4 + local.tee $2 + i32.const -2 + i32.and + i32.const 24664 local.get $2 - i32.const 63 + i32.const 1 i32.and - call_indirect $26 (type $4) - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load - i32.load offset=76 - local.set $2 + select + local.tee $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $2 + i32.load + local.set $2 + end ;; $if_0 local.get $0 - local.get $2 - i32.const 63 + i32.load offset=4 + local.tee $0 + i32.const -2 i32.and - call_indirect $26 (type $4) - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - ) - - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) + i32.const 24664 local.get $0 - i32.load offset=16 - local.tee $2 i32.const 1 i32.and - if $if (result i32) - local.get $0 - i32.load - i32.load offset=72 - local.set $2 - local.get $0 + select + local.tee $3 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + if $if_1 + local.get $1 local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.tee $3 - i32.load8_s offset=11 - local.set $1 - local.get $0 - i32.load offset=16 - local.set $2 local.get $3 i32.load offset=4 + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi + else local.get $1 + local.get $2 + local.get $0 i32.const 255 i32.and - local.get $1 - i32.const 0 - i32.lt_s - select - local.tee $1 - i32.const 1 - i32.add - local.get $1 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - else - i32.const 0 - end ;; $if - local.set $1 - local.get $2 - i32.const 2 - i32.and - i32.eqz - if $if_0 - local.get $1 - return - end ;; $if_0 - local.get $0 - i32.load - i32.load offset=76 - local.set $2 - local.get $1 - local.get $0 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - i32.load offset=16 - local.tee $0 - i32.const 1 - i32.add + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi + end ;; $if_1 + ) + + (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $4) + (param $0 i32) + (result i32) local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 31 - i32.xor - i32.const 9 - i32.mul - i32.const 73 - i32.add - i32.const 6 - i32.shr_u - i32.add - i32.add + i32.load offset=24 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $5) + (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - local.get $0 - i32.load - i32.load offset=72 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $3 - local.get $2 - i32.const 10 - i32.store8 - local.get $3 - local.get $2 - i32.const 1 - i32.add - call $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh - local.set $2 - local.get $0 - i32.load - i32.load offset=76 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $4 - local.get $2 - i32.const 18 - i32.store8 - local.get $2 - i32.const 1 - i32.add + global.get $32 local.set $2 - local.get $4 - i32.load offset=16 - local.tee $0 - i32.const 127 - i32.gt_u - if $if - loop $loop (result i32) - local.get $2 - local.get $0 - i32.const 128 - i32.or - i32.store8 - local.get $0 - i32.const 7 - i32.shr_u - local.set $3 - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $0 - i32.const 16383 - i32.gt_u - if $if_0 (result i32) - local.get $3 - local.set $0 - br $loop - else - local.get $3 - end ;; $if_0 - end ;; $loop - local.set $0 - end ;; $if - local.get $2 - local.get $0 - i32.store8 - local.get $4 - i32.load + global.get $32 i32.const -64 i32.sub - i32.load - local.set $0 - local.get $4 - local.get $1 + global.set $32 local.get $2 - i32.const 1 - i32.add - local.get $0 - i32.const 15 - i32.and - i32.const 82 + i32.const 24 i32.add - call_indirect $26 (type $5) - ) - - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $4) - (param $0 i32) - (result i32) - local.get $0 - i32.load offset=20 - ) - - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 + local.set $3 + local.get $1 + i32.const -1 + i32.le_s if $if - local.get $0 - i32.load offset=60 - if $if_0 - local.get $0 - i32.load offset=48 - if $if_1 - i32.const 4768 - i64.const 24 - local.get $0 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_1 - end ;; $if_0 - local.get $0 - i32.const 24 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $1 - i32.const 5944 + local.get $3 + i32.const 3 i32.store - local.get $1 - local.get $0 + local.get $3 + i32.const 11815 i32.store offset=4 - local.get $1 + local.get $3 + i32.const 1505 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 i32.const 0 - i32.store offset=16 - i32.const 5832 - i32.load - if $if_2 - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - end ;; $if_2 + i32.store offset=20 + local.get $3 + i32.const 11867 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if + local.get $0 + i32.load offset=4 + local.get $1 + i32.gt_s + if $if_0 + local.get $0 + i32.load offset=12 + i32.const 4 + i32.add local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load local.set $0 - else - i32.const 24 - call $__Znwm - local.tee $0 - i32.const 5944 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 + local.get $2 + global.set $32 local.get $0 - i32.const 0 - i32.store offset=16 - i32.const 5832 - i32.load - if $if_3 - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - end ;; $if_3 - end ;; $if - local.get $0 + return + end ;; $if_0 + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11815 + i32.store offset=4 + local.get $2 + i32.const 1506 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 i32.const 0 i32.store offset=20 + local.get $2 + i32.const 11898 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=12 + i32.const 4 + i32.add + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $0 + local.get $2 + global.set $32 local.get $0 ) - (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) + (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $4) (param $0 i32) - (param $1 i32) (result i32) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $4 - i32.const 48 - i32.add - local.tee $8 - local.get $0 - i32.const 4 - i32.add - i32.store - local.get $8 - i32.const 4 - i32.add - local.tee $6 - i64.const 0 - i64.store align=4 - local.get $6 - i32.const 0 - i32.store offset=8 local.get $0 i32.load offset=4 - local.tee $2 + local.tee $1 + i32.const -2 + i32.and + i32.const 24664 + local.get $1 i32.const 1 i32.and - if $if - local.get $4 - local.get $6 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $6 - i32.load offset=8 - i32.store offset=8 - local.get $6 + select + local.tee $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else local.get $2 - i32.const -2 + i32.const 255 i32.and - local.tee $2 - i64.load align=4 - i64.store align=4 - local.get $6 - local.get $2 - i32.load offset=8 - i32.store offset=8 - local.get $2 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $2 - local.get $4 - i32.load offset=8 - i32.store offset=8 end ;; $if - local.get $4 - i32.const 40 - i32.add - local.tee $2 - local.tee $5 - i32.const 6496 - i32.store - local.get $5 - local.get $6 - i32.store offset=4 - local.get $4 - i32.const 16 - i32.add - local.tee $9 - local.get $2 - call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb - local.get $0 - i32.const 8 - i32.add - local.set $5 - block $block (result i32) + local.set $3 + block $block block $block_0 block $block_1 block $block_2 - loop $loop (result i32) - block $block_3 (result i32) - block $block_4 - block $block_5 - local.get $1 - i32.load - local.tee $3 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + local.get $0 + i32.load offset=20 + i32.const 1 + i32.sub + br_table + $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 + $block_0 ;; default + end ;; $block_6 + local.get $0 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + i32.const 11 + else local.get $1 - i32.load offset=4 - i32.lt_u - if $if_0 - local.get $3 - i32.load8_s - local.tee $7 - i32.const 255 - i32.and - local.set $2 - local.get $7 - i32.const 0 - i32.gt_s - if $if_1 - local.get $1 - local.get $3 - i32.const 1 - i32.add - i32.store - br $block_5 - end ;; $if_1 - else - i32.const 0 - local.set $2 - end ;; $if_0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj - local.tee $2 - i32.const -1 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 i32.add - i32.const 126 - i32.gt_u - br_if $block_4 - end ;; $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - local.get $2 - i32.const 3 - i32.shr_u - i32.const 1 - i32.sub - br_table - $block_12 $block_11 $block_10 $block_9 $block_8 $block_7 - $block_6 ;; default - end ;; $block_12 - local.get $2 - i32.const 255 - i32.and - i32.const 8 - i32.ne - br_if $block_4 - block $block_13 - block $block_14 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 - i32.lt_u - if $if_2 - local.get $3 - i32.load8_s - local.tee $7 - i32.const 255 - i32.and - local.set $2 - local.get $7 - i32.const -1 - i32.le_s - br_if $block_14 - local.get $1 - local.get $3 - i32.const 1 - i32.add - i32.store - else - i32.const 0 - local.set $2 - br $block_14 - end ;; $if_2 - br $block_13 - end ;; $block_14 - local.get $1 - local.get $2 - call $__ZN6google8protobuf2io16CodedInputStream20ReadVarint32FallbackEj - local.tee $10 - i32.wrap_i64 - local.set $2 - i32.const 0 - local.get $10 - i64.const -1 - i64.le_s - br_if $block_3 - drop - end ;; $block_13 - local.get $0 - i32.load offset=20 - i32.const 1 - i32.ne - if $if_3 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 1 - i32.store offset=20 - end ;; $if_3 - local.get $5 - local.get $2 - i32.store - br $loop - end ;; $block_11 - local.get $2 - i32.const 255 - i32.and - i32.const 17 - i32.ne - br_if $block_4 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load - local.tee $2 - i32.sub - i32.const 7 - i32.gt_s - if $if_4 (result f64) - local.get $4 - local.get $2 - i64.load align=1 - local.tee $10 - i64.store - local.get $1 - local.get $2 - i32.const 8 - i32.add - i32.store - local.get $10 - f64.reinterpret_i64 - else - local.get $1 - local.get $4 - call $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy - i32.eqz - br_if $block_2 - local.get $4 - f64.load - end ;; $if_4 - f64.store offset=8 - local.get $0 - i32.const 2 - i32.store offset=20 - br $loop - end ;; $block_10 - local.get $2 - i32.const 255 - i32.and - i32.const 26 - i32.ne - br_if $block_4 - local.get $0 - i32.load offset=20 - i32.const 3 - i32.ne - if $if_5 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 3 - i32.store offset=20 - local.get $5 - i32.const 15496 - i32.store - end ;; $if_5 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $3 - i32.const 1 - i32.and - if $if_6 - local.get $2 - i32.load offset=12 - local.set $2 - end ;; $if_6 - i32.const 0 - local.get $1 - local.get $5 - i32.load - local.tee $3 - i32.const 15496 - i32.eq - if $if_7 (result i32) - local.get $5 - local.get $2 - i32.const 15496 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 - i32.load - else - local.get $3 - end ;; $if_7 - call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE - i32.eqz - br_if $block_3 - drop - local.get $0 - i32.load offset=20 - i32.const 3 - i32.eq - local.tee $3 - if $if_8 (result i32) - local.get $5 - i32.load - local.tee $2 - else - i32.const 15496 - local.set $2 - i32.const 15496 - end ;; $if_8 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_9 (result i32) - local.get $2 - i32.load - else - local.get $2 - end ;; $if_9 - local.get $3 - if $if_10 (result i32) - local.get $5 - i32.load - local.tee $3 - else - i32.const 15496 - local.set $3 - i32.const 15496 - end ;; $if_10 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - if $if_11 (result i32) - local.get $3 - i32.load offset=4 - else - local.get $2 - i32.const 255 - i32.and - end ;; $if_11 - i32.const 0 - i32.const 8683 - call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ - br_if $loop - i32.const 0 - br $block_3 - end ;; $block_9 - local.get $2 - i32.const 255 - i32.and - i32.const 32 - i32.ne - br_if $block_4 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - block $block_15 - block $block_16 - local.get $1 - i32.load - local.tee $2 - local.get $1 - i32.load offset=4 - i32.ge_u - br_if $block_16 - local.get $2 - i32.load8_s - local.tee $3 - i32.const -1 - i32.le_s - br_if $block_16 - local.get $1 - local.get $2 - i32.const 1 - i32.add - i32.store - local.get $3 - i32.const 0 - i32.ne - local.set $2 - br $block_15 - end ;; $block_16 - local.get $4 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv - local.get $4 - i64.load - i64.const 0 - i64.ne - local.set $2 - i32.const 0 - local.get $4 - i32.load8_s offset=8 - i32.eqz - br_if $block_3 - drop - end ;; $block_15 - local.get $5 - local.get $2 - i32.const 1 - i32.and - i32.store8 - local.get $0 - i32.const 4 - i32.store offset=20 - br $loop - end ;; $block_8 - local.get $2 - i32.const 255 - i32.and - i32.const 42 - i32.ne - br_if $block_4 - local.get $0 - i32.load offset=20 - i32.const 5 - i32.eq - if $if_12 - local.get $5 - i32.load - local.set $2 - else - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 5 - i32.store offset=20 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $5 - local.get $3 - i32.const 1 - i32.and - if $if_13 (result i32) - local.get $2 - i32.load offset=12 - else - local.get $2 - end ;; $if_13 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ - local.tee $2 - i32.store - end ;; $if_12 - block $block_17 - block $block_18 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 - i32.ge_u - br_if $block_18 - local.get $3 - i32.load8_s - local.tee $7 - i32.const -1 - i32.le_s - br_if $block_18 - local.get $1 - local.get $3 - i32.const 1 - i32.add - i32.store - local.get $7 - i32.const 255 - i32.and - local.set $3 - br $block_17 - end ;; $block_18 - i32.const 0 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $3 - i32.const -1 - i32.le_s - br_if $block_3 - drop - end ;; $block_17 - local.get $4 - local.get $1 - local.get $3 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $4 - i32.load offset=4 - i32.const 0 - i32.lt_s - br_if $block_1 - local.get $2 - local.get $1 - call $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - i32.eqz - br_if $block_1 - local.get $1 - local.get $4 - i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - br_if $loop - i32.const 0 - br $block_3 - end ;; $block_7 - local.get $2 - i32.const 255 - i32.and - i32.const 50 - i32.ne - br_if $block_4 - local.get $0 - i32.load offset=20 i32.const 6 - i32.eq - if $if_14 - local.get $5 - i32.load - local.set $2 - else - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 6 - i32.store offset=20 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $5 - local.get $3 - i32.const 1 - i32.and - if $if_15 (result i32) - local.get $2 - i32.load offset=12 - else - local.get $2 - end ;; $if_15 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ - local.tee $2 - i32.store - end ;; $if_14 - block $block_19 - block $block_20 - local.get $1 - i32.load - local.tee $3 - local.get $1 - i32.load offset=4 - i32.ge_u - br_if $block_20 - local.get $3 - i32.load8_s - local.tee $7 - i32.const -1 - i32.le_s - br_if $block_20 - local.get $1 - local.get $3 - i32.const 1 - i32.add - i32.store - local.get $7 - i32.const 255 - i32.and - local.set $3 - br $block_19 - end ;; $block_20 - i32.const 0 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $3 - i32.const -1 - i32.le_s - br_if $block_3 - drop - end ;; $block_19 - local.get $4 - local.get $1 - local.get $3 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $4 - i32.load offset=4 - i32.const 0 - i32.lt_s - br_if $block_0 - local.get $2 - local.get $1 - call $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - i32.eqz - br_if $block_0 - local.get $1 - local.get $4 - i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - br_if $loop - i32.const 0 - br $block_3 - end ;; $block_6 - end ;; $block_4 - i32.const 1 - local.get $2 - i32.eqz - br_if $block_3 - drop - local.get $1 - local.get $2 - local.get $9 - call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE - br_if $loop - i32.const 0 - end ;; $block_3 - end ;; $loop + i32.shr_u + i32.const 1 + i32.add + end ;; $if_0 + local.get $3 + i32.add + local.tee $0 + i32.store offset=16 + br $block + end ;; $block_5 + local.get $0 + local.get $3 + i32.const 9 + i32.add + local.tee $0 + i32.store offset=16 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_s offset=11 + local.set $1 + local.get $0 + local.get $2 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $1 + i32.const 0 + i32.lt_s + select + local.tee $0 + local.get $3 + i32.const 1 + i32.add + i32.add + local.get $0 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.tee $0 + i32.store offset=16 + br $block + end ;; $block_3 + local.get $0 + local.get $3 + i32.const 2 + i32.add + local.tee $0 + i32.store offset=16 br $block end ;; $block_2 - i32.const 0 + local.get $0 + local.get $0 + i32.load offset=8 + call $__ZNK6google8protobuf6Struct12ByteSizeLongEv + local.tee $0 + local.get $3 + i32.const 1 + i32.add + i32.add + local.get $0 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.tee $0 + i32.store offset=16 br $block end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - i32.const 0 - end ;; $block - local.set $1 - local.get $9 - call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev - local.get $8 - i32.load offset=8 - local.get $6 - i32.load8_s offset=11 - local.tee $0 - i32.const 255 - i32.and - local.get $0 - i32.const 0 - i32.lt_s - select - if $if_16 (result i32) - local.get $4 - local.get $8 - i32.load - local.tee $0 - i32.load - local.tee $2 - i32.const 1 - i32.and - if $if_17 (result i32) - local.get $2 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load offset=4 + local.tee $1 i32.const -2 i32.and - else - local.get $0 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_17 - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - local.get $6 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $6 - i32.load offset=8 - i32.store offset=8 - local.get $6 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $6 - local.get $4 - i32.load offset=8 - i32.store offset=8 - local.get $6 - i32.load8_s offset=11 - else - local.get $0 - end ;; $if_16 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.ge_s - if $if_18 - local.get $4 - global.set $30 - local.get $1 - return - end ;; $if_18 - local.get $6 - i32.load - call $_free - local.get $4 - global.set $30 - local.get $1 - ) - - (func $__ZN6google8protobuf5Value10clear_kindEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - block $block - block $block_0 - block $block_1 - block $block_2 - local.get $0 - i32.load offset=20 - i32.const 3 - i32.sub - br_table - $block_2 $block_1 $block_0 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $0 + i32.const 24664 + local.get $1 + i32.const 1 + i32.and + select + local.tee $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + if $if_1 (result i32) + local.get $1 i32.load offset=4 - local.tee $2 - i32.const -2 - i32.and - local.set $1 + else local.get $2 - i32.const 1 + i32.const 255 i32.and - if $if (result i32) - local.get $1 - i32.load offset=12 - else - local.get $1 - end ;; $if - br_if $block - local.get $0 - i32.load offset=8 - local.tee $1 - i32.const 15496 - i32.eq - local.get $1 - i32.eqz - i32.or - br_if $block - local.get $1 - i32.load8_s offset=11 + end ;; $if_1 + local.set $1 + local.get $4 + i32.load offset=12 + local.tee $5 + local.get $1 + i32.add + local.set $1 + local.get $5 + if $if_2 + local.get $4 + i32.const 8 + i32.add + local.set $6 i32.const 0 - i32.lt_s - if $if_0 + local.set $2 + loop $loop + local.get $6 + local.get $2 + call $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi + call $__ZNK6google8protobuf5Value12ByteSizeLongEv + local.tee $7 local.get $1 - i32.load - call $_free - end ;; $if_0 - local.get $1 - call $_free - br $block - end ;; $block_1 + i32.add + local.get $7 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.set $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $5 + i32.ne + br_if $loop + end ;; $loop + end ;; $if_2 + local.get $4 + local.get $1 + i32.store offset=24 local.get $0 - i32.const 0 - i32.store offset=20 - return - end ;; $block_0 - local.get $0 - i32.load offset=4 - local.tee $2 - i32.const -2 - i32.and - local.set $1 - local.get $2 - i32.const 1 - i32.and - if $if_1 (result i32) + local.get $3 + i32.const 1 + i32.add local.get $1 - i32.load offset=12 - else + i32.add local.get $1 - end ;; $if_1 - br_if $block + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.tee $0 + i32.store offset=16 + br $block + end ;; $block_0 local.get $0 - i32.load offset=8 - local.tee $1 - i32.eqz - br_if $block - local.get $1 - local.get $1 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + local.get $3 + i32.store offset=16 + local.get $3 + return end ;; $block local.get $0 - i32.const 0 - i32.store offset=20 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $4) + (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $4) (param $0 i32) (result i32) (local $1 i32) - local.get $0 - i32.eqz - if $if - i32.const 28 - call $__Znwm - local.tee $0 - call $__ZN6google8protobuf6StructC2Ev - local.get $0 - return - end ;; $if - local.get $0 - i32.load offset=60 - if $if_0 - local.get $0 - i32.load offset=48 - if $if_1 - i32.const 4720 - i64.const 32 - local.get $0 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_1 - end ;; $if_0 - local.get $0 - i32.const 32 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $1 - local.get $0 - call $__ZN6google8protobuf6StructC2EPNS0_5ArenaE - local.get $1 - ) - - (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11206,1332 +11830,656 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 96 - i32.add - global.set $30 - local.get $2 - i32.const 72 - i32.add - local.tee $8 - local.get $0 - i32.const 4 - i32.add - i32.store - local.get $8 - i32.const 4 + global.get $32 + local.set $4 + global.get $32 + i32.const 32 i32.add - local.tee $4 - i64.const 0 - i64.store align=4 - local.get $4 - i32.const 0 - i32.store offset=8 + global.set $32 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 + i32.const -2 + i32.and + i32.const 24664 + local.get $1 i32.const 1 i32.and - if $if - local.get $2 - local.get $4 - i64.load align=4 - i64.store align=4 + select + local.tee $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else local.get $2 - local.get $4 - i32.load offset=8 - i32.store offset=8 - local.get $4 - local.get $3 - i32.const -2 + i32.const 255 i32.and - local.tee $3 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $3 - local.get $2 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $2 - i32.load offset=8 - i32.store offset=8 end ;; $if - local.get $2 + local.set $3 + local.get $0 + i32.load offset=20 + local.tee $2 + i32.load + local.set $5 + local.get $4 i32.const 12 i32.add - local.set $3 + local.tee $1 local.get $2 - i32.const -64 - i32.sub - local.tee $5 - local.tee $7 - i32.const 6496 - i32.store - local.get $7 - local.get $4 i32.store offset=4 + local.get $1 local.get $2 - i32.const 40 - i32.add - local.tee $7 - local.get $5 - call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb - local.get $0 - i32.const 8 - i32.add - local.set $9 - local.get $0 - i32.const 12 - i32.add - local.set $10 + i32.load offset=12 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm local.get $3 - i32.const 8 + local.get $5 i32.add local.set $5 - block $block (result i32) - block $block_0 - loop $loop - block $block_1 - block $block_2 - block $block_3 - local.get $1 - i32.load - local.tee $6 - local.get $1 - i32.load offset=4 - i32.lt_u - if $if_0 - local.get $6 - i32.load8_s - local.tee $11 - i32.const 255 - i32.and - local.set $0 - local.get $11 - i32.const 0 - i32.gt_s - if $if_1 - local.get $1 - local.get $6 - i32.const 1 - i32.add - i32.store - br $block_3 - end ;; $if_1 - else - i32.const 0 - local.set $0 - end ;; $if_0 - local.get $1 - local.get $0 - call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj - local.tee $0 - i32.const -1 - i32.add - i32.const 126 - i32.gt_u - br_if $block_2 - end ;; $block_3 - local.get $0 - i32.const 10 - i32.ne - br_if $block_2 - local.get $3 - local.get $9 - i32.store - local.get $3 - local.get $10 - i32.store offset=4 - local.get $5 - i64.const 0 - i64.store align=4 - local.get $5 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=24 - block $block_4 (result i32) - block $block_5 - local.get $1 - i32.load - local.tee $0 - local.get $1 - i32.load offset=4 - i32.lt_u - if $if_2 - local.get $0 - i32.load8_s - local.tee $6 - i32.const -1 - i32.gt_s - if $if_3 - local.get $1 - local.get $0 - i32.const 1 - i32.add - i32.store - local.get $6 - i32.const 255 - i32.and - local.set $0 - br $block_5 - end ;; $if_3 - end ;; $if_2 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $0 - i32.const -1 - i32.gt_s - if $if_4 (result i32) - br $block_5 - else - i32.const 6 - end ;; $if_4 - br $block_4 - end ;; $block_5 - local.get $2 - local.get $1 - local.get $0 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $2 - i32.load offset=4 - i32.const 0 - i32.ge_s - if $if_5 - local.get $3 - local.get $1 - call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - if $if_6 - i32.const 6 - local.get $1 - local.get $2 - i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - i32.eqz - br_if $block_4 - drop - i32.const 0 - i32.const 6 - local.get $5 - i32.load - local.get $5 - local.get $5 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $6 - select - local.get $3 - i32.load offset=12 - local.get $0 - i32.const 255 - i32.and - local.get $6 - select - i32.const 0 - i32.const 8718 - call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ - select - br $block_4 - end ;; $if_6 - end ;; $if_5 - i32.const 6 - end ;; $block_4 - local.set $6 - local.get $3 - i32.load offset=24 - local.set $0 - local.get $3 - i32.const 0 - i32.store offset=24 - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - local.get $5 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_8 - local.get $5 - i32.load - call $_free - end ;; $if_8 - block $block_6 - local.get $6 - i32.const 7 - i32.and - br_table - $block_6 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 - $block_0 ;; default - end ;; $block_6 - br $loop - end ;; $block_2 - local.get $0 - i32.eqz - br_if $block_0 - local.get $1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE - br_if $loop - end ;; $block_1 - end ;; $loop - i32.const 0 - br $block - end ;; $block_0 - i32.const 1 - end ;; $block - local.set $1 - local.get $7 - call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev - local.get $8 + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 i32.load offset=8 + local.set $3 local.get $4 - i32.load8_s offset=11 - local.tee $0 - i32.const 255 - i32.and - local.get $0 - i32.const 0 - i32.lt_s - select - if $if_9 (result i32) - local.get $2 - local.get $8 - i32.load - local.tee $0 - i32.load - local.tee $3 - i32.const 1 - i32.and - if $if_10 (result i32) - local.get $3 - i32.const -2 - i32.and - else - local.get $0 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_10 - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $2 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $4 - i32.load offset=8 - i32.store offset=8 - local.get $4 - local.get $2 - i64.load align=4 - i64.store align=4 - local.get $4 - local.get $2 - i32.load offset=8 - i32.store offset=8 - local.get $4 - i32.load8_s offset=11 - else - local.get $0 - end ;; $if_9 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.ge_s - if $if_11 - local.get $2 - global.set $30 - local.get $1 - return - end ;; $if_11 - local.get $4 - i32.load - call $_free - local.get $2 - global.set $30 local.get $1 - ) - - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - i32.eqz - if $if - i32.const 28 - call $__Znwm - local.tee $0 - call $__ZN6google8protobuf9ListValueC2Ev - local.get $0 - return - end ;; $if - local.get $0 - i32.load offset=60 - if $if_0 - local.get $0 - i32.load offset=48 - if $if_1 - i32.const 4640 - i64.const 32 - local.get $0 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_1 - end ;; $if_0 - local.get $0 - i32.const 32 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + i32.load local.tee $1 - local.get $0 - call $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE - local.get $1 - ) - - (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $3) - (param $0 i32) - (param $1 i32) - local.get $0 - i32.const 6024 i32.store - local.get $0 - local.get $1 + local.get $4 + local.get $2 i32.store offset=4 - local.get $0 - local.get $1 + local.get $4 + local.get $3 i32.store offset=8 - local.get $0 - i64.const 0 - i64.store offset=12 align=4 - local.get $0 - i64.const 0 - i64.store offset=20 align=4 - i32.const 5832 - i32.load - i32.eqz - if $if - return - end ;; $if - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - ) - - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 block $block - block $block_0 + local.get $1 + i32.eqz + br_if $block + i32.const 0 + local.set $2 + loop $loop + local.get $2 + if $if_0 + i32.const 0 + local.get $2 + local.get $2 + local.get $2 + i32.load + i32.load offset=20 + i32.const 63 + i32.and + call_indirect $28 (type $4) + select + local.set $3 + local.get $4 + i32.load + local.set $1 + else + i32.const 0 + local.set $3 + end ;; $if_0 local.get $1 - i32.load + i32.load offset=12 + local.set $7 + local.get $0 + i32.load offset=8 local.tee $2 + if $if_1 + local.get $2 + i32.load offset=60 + if $if_2 + local.get $2 + i32.load offset=48 + if $if_3 + i32.const 4608 + i64.const 32 + local.get $2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_3 + end ;; $if_2 + local.get $2 + i32.const 32 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $1 + local.get $2 + i32.store offset=12 + else + i32.const 28 + call $__Znwm + local.tee $1 + i32.const 0 + i32.store offset=12 + end ;; $if_1 local.get $1 - i32.load offset=4 - i32.ge_u - br_if $block_0 - local.get $2 - i32.load8_s - i32.const 10 - i32.ne - br_if $block_0 + i32.const 24664 + i32.store offset=4 local.get $1 - local.get $2 - i32.const 1 - i32.add + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 7088 i32.store local.get $1 - local.get $0 - i32.const 8 + local.get $7 + i32.store offset=20 + local.get $1 + local.get $7 + i32.const 16 i32.add - local.tee $6 - call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE - i32.eqz - if $if - local.get $4 - global.set $30 - i32.const 0 - return - end ;; $if + i32.store offset=24 local.get $1 - i32.load offset=4 + i32.const 3 + i32.store offset=16 local.get $1 - i32.load - local.tee $2 - i32.sub - i32.const 0 - i32.gt_s - if $if_0 - local.get $2 - i32.load8_s - i32.const 18 - i32.eq - if $if_1 - local.get $0 - i32.load offset=4 - local.tee $2 - i32.load offset=8 - i32.load - local.set $3 - local.get $0 - local.get $2 - local.get $6 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ - local.tee $5 - i32.store offset=20 + local.set $2 + block $block_0 + block $block_1 local.get $3 - local.get $0 - i32.load offset=4 - i32.load offset=8 - i32.load - i32.ne - if $if_2 - local.get $1 - i32.load offset=4 - local.tee $3 - local.get $1 + if $if_4 (result i32) + local.get $3 + local.get $3 i32.load - local.tee $2 - i32.sub + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.const 16 + i32.add local.tee $7 + i32.load i32.const 1 - i32.lt_s - if $if_3 - local.get $1 - i32.const 1 - local.get $7 - call $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii - drop - local.get $1 - i32.load - local.set $2 - local.get $1 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=20 - local.set $5 - else - local.get $1 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - i32.store - end ;; $if_3 - block $block_1 - block $block_2 - local.get $2 - local.get $3 - i32.lt_u - if $if_4 - local.get $2 - i32.load8_s - local.tee $3 - i32.const -1 - i32.gt_s - if $if_5 - local.get $1 - local.get $2 - i32.const 1 - i32.add - i32.store - local.get $3 - i32.const 255 - i32.and - local.set $2 - br $block_2 - end ;; $if_5 - end ;; $if_4 - local.get $1 - call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv - local.tee $2 - i32.const -1 - i32.gt_s - br_if $block_2 - br $block_1 - end ;; $block_2 - local.get $4 - local.get $1 - local.get $2 - call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi - local.get $4 - i32.load offset=4 - i32.const 0 - i32.ge_s - if $if_6 - local.get $5 - local.get $1 - call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - if $if_7 - local.get $1 - local.get $4 - i32.load - call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi - i32.eqz - br_if $block_1 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - i32.eq - if $if_8 - block $block_3 - local.get $1 - i32.load offset=32 - i32.eqz - if $if_9 - local.get $1 - i32.load offset=12 - local.get $1 - i32.load offset=28 - i32.ne - br_if $block_3 - end ;; $if_9 - local.get $1 - i32.const 0 - i32.store offset=20 - local.get $1 - i32.const 1 - i32.store8 offset=24 - local.get $4 - global.set $30 - i32.const 1 - return - end ;; $block_3 - end ;; $if_8 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE - local.set $0 - local.get $4 - global.set $30 - local.get $0 - return - end ;; $if_7 - end ;; $if_6 - end ;; $block_1 - local.get $0 - i32.load offset=4 - local.get $6 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ - local.get $4 - global.set $30 + i32.and + br_if $block_1 i32.const 0 - return - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $4 - i32.const 0 - i32.store - local.get $4 - i32.const 0 - i32.store16 offset=4 - local.get $4 - i32.const 0 - i32.store8 offset=6 - local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_10 - local.get $2 + local.set $6 + local.get $2 + else + local.get $2 + i32.const 16 + i32.add + local.set $7 + br $block_1 + end ;; $if_4 + local.set $3 + br $block_0 + end ;; $block_1 + local.get $2 + local.tee $3 + local.get $1 + i32.load + i32.load offset=72 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.tee $8 + i32.load8_s offset=11 + local.set $6 + local.get $8 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $6 + i32.const 0 + i32.lt_s + select + local.tee $6 + i32.const 1 + i32.add + local.get $6 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.set $6 + end ;; $block_0 + local.get $7 i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=12 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $2 - i32.const 0 - i32.store8 offset=11 - end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.get $4 + i32.const 2 + i32.and + if $if_5 (result i32) + local.get $3 + local.get $1 + i32.load + i32.load offset=76 + i32.const 63 + i32.and + call_indirect $28 (type $4) + call $__ZNK6google8protobuf5Value12ByteSizeLongEv + local.tee $3 + i32.const 1 + i32.add + local.get $3 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + else + i32.const 0 + end ;; $if_5 + local.get $6 + i32.add + local.set $3 + local.get $4 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv + local.get $3 + local.get $5 + i32.add + local.get $3 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + local.set $5 + local.get $4 + i32.load + local.tee $3 + if $if_6 + local.get $3 + local.set $1 + br $loop + end ;; $if_6 + end ;; $loop + local.get $1 + i32.eqz + br_if $block + local.get $1 + local.get $1 i32.load - i32.store offset=12 - local.get $0 - local.get $4 - i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 - local.get $4 - i32.load8_s offset=6 - i32.store8 offset=18 - local.get $0 - i32.const 0 - i32.store8 offset=19 - end ;; $block - local.get $0 - i32.load - i32.load - local.tee $2 - if $if_11 - local.get $2 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ - local.set $2 - else - i32.const 20 - call $__Znwm - local.tee $2 - i32.const 0 - i32.store offset=12 - local.get $2 - i32.const 15496 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.const 5856 - i32.store - end ;; $if_11 - local.get $0 - i32.load offset=24 - local.set $3 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $3 - if $if_12 - local.get $3 + i32.load offset=20 + i32.const 63 + i32.and + call_indirect $28 (type $4) + br_if $block + local.get $1 + local.get $1 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 - i32.load offset=24 - local.set $2 - end ;; $if_12 - local.get $2 - local.get $2 - i32.load offset=16 - i32.const 1 - i32.or - i32.store offset=16 - local.get $2 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $3 - i32.const 15496 - i32.eq - if $if_13 (result i32) - local.get $5 - local.get $2 - i32.load offset=12 - i32.const 15496 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 - i32.load - else - local.get $3 - end ;; $if_13 - local.get $0 - i32.const 8 - i32.add - local.tee $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - local.get $0 - i32.load offset=24 - local.tee $3 - i32.load - i32.load offset=44 - local.set $5 - local.get $3 - local.get $1 - local.get $5 - i32.const 15 - i32.and - i32.const 66 - i32.add - call_indirect $26 (type $6) - local.tee $5 - if $if_14 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.load - i32.load offset=72 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - local.get $0 - local.get $0 - i32.load offset=4 - local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ - local.tee $2 - i32.store offset=20 - local.get $0 - i32.load offset=24 - local.tee $3 - local.get $3 - i32.load offset=16 - i32.const 2 - i32.or - i32.store offset=16 - local.get $3 - i32.load offset=8 - local.tee $1 - i32.eqz - if $if_15 - local.get $3 - local.get $3 - i32.load offset=12 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.tee $1 - i32.store offset=8 - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 - local.get $1 - call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.load - i32.load offset=20 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - i32.eqz - if $if_16 + i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $block local.get $0 - i32.const 0 + local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $6) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $3) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 24 i32.add - global.set $30 + local.set $3 local.get $0 - i32.load offset=8 - local.set $4 - local.get $3 - i32.const 16 - i32.add - local.tee $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $3 - local.get $4 - local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE - local.get $3 - i32.load - local.set $4 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + i32.load offset=4 + local.tee $5 + i32.load offset=12 + local.tee $4 + local.get $5 + i32.load offset=4 + local.tee $6 + i32.ne if $if - local.get $2 + local.get $5 + i32.load offset=16 + local.get $4 + i32.const 2 + i32.shl + i32.add i32.load - call $_free + if $if_0 (result i32) + local.get $6 + else + local.get $3 + i32.const 3 + i32.store + local.get $3 + i32.const 11940 + i32.store offset=4 + local.get $3 + i32.const 418 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 12024 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=4 + local.tee $5 + i32.load offset=4 + end ;; $if_0 + local.set $4 end ;; $if - local.get $4 - i32.load offset=12 - local.tee $2 - if $if_0 - local.get $3 - global.set $30 - local.get $2 - i32.const 16 - i32.add - return - end ;; $if_0 - local.get $4 - local.get $0 - local.get $1 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ - local.tee $0 - i32.store offset=12 - local.get $3 - global.set $30 local.get $0 - i32.const 16 - i32.add - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $2 - i32.const 32 - i32.add - local.tee $3 + i32.const 0 + i32.store local.get $0 - i32.load offset=8 local.get $1 - i32.const 0 - call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load offset=8 - local.set $5 - local.get $3 - i32.load - local.tee $1 - i32.eqz - if $if + i32.store offset=8 + local.get $4 + local.get $1 + i32.le_u + if $if_1 local.get $2 - global.set $30 + global.set $32 return - end ;; $if - local.get $2 - local.get $1 - i32.store - local.get $2 - local.get $4 - i32.store offset=4 - local.get $2 + end ;; $if_1 local.get $5 - i32.store offset=8 - local.get $0 + i32.load offset=16 + local.set $6 + block $block + block $block_0 + loop $loop + local.get $1 + i32.const 2 + i32.shl + local.get $6 + i32.add + i32.load + local.tee $3 + i32.eqz + if $if_2 + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.store offset=8 + local.get $1 + local.get $4 + i32.ge_u + br_if $block_0 + br $loop + end ;; $if_2 + end ;; $loop + br $block + end ;; $block_0 + local.get $2 + global.set $32 + return + end ;; $block + local.get $1 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $6 + i32.add i32.load - i32.eqz - if $if_0 - local.get $1 - i32.load offset=12 - local.tee $1 - if $if_1 - local.get $1 - call $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev - local.get $1 - call $_free - end ;; $if_1 - end ;; $if_0 - local.get $2 - local.get $2 - i64.load - i64.store offset=16 - local.get $2 - local.get $2 - i32.load offset=8 - i32.store offset=24 - local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $0 - i32.load offset=8 - local.set $0 - local.get $3 - local.get $2 - i64.load offset=16 align=4 - i64.store align=4 local.get $3 - local.get $2 - i32.load offset=24 - i32.store offset=8 - local.get $0 + i32.ne + if $if_3 + local.get $0 + local.get $3 + i32.store + local.get $2 + global.set $32 + return + end ;; $if_3 local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE - local.get $2 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load - i32.load - local.tee $2 - if $if + i32.load offset=12 + i32.eqz + if $if_4 local.get $2 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ - local.set $2 - else - i32.const 20 - call $__Znwm - local.tee $2 - i32.const 0 - i32.store offset=12 + i32.const 3 + i32.store local.get $2 - i32.const 15496 + i32.const 11940 i32.store offset=4 local.get $2 - i32.const 0 + i32.const 427 i32.store offset=8 local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 i32.const 0 - i32.store offset=16 + i32.store offset=20 local.get $2 - i32.const 5856 - i32.store - end ;; $if - local.get $0 - i32.load offset=24 - local.set $3 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $3 - if $if_0 - local.get $3 - i32.load - i32.load offset=4 - local.set $2 - local.get $3 + i32.const 12141 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.load offset=24 - local.set $2 - end ;; $if_0 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_4 local.get $0 - i32.load offset=20 - local.set $4 - local.get $2 - local.get $2 + local.get $3 + i32.load i32.load offset=16 - i32.const 2 - i32.or - i32.store offset=16 - local.get $2 - i32.load offset=8 - local.tee $3 - if $if_1 - local.get $3 - local.set $2 - else - local.get $2 - local.get $2 - i32.load offset=12 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.tee $2 - i32.store offset=8 - end ;; $if_1 + i32.store local.get $2 - local.get $4 - call $__ZN6google8protobuf5Value4SwapEPS1_ - local.get $0 - i32.load offset=4 - local.get $0 - i32.const 8 + global.set $32 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - local.tee $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ + global.set $32 local.get $0 - i32.load offset=24 - local.tee $4 - local.get $4 - i32.load offset=16 - i32.const 1 - i32.or - i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 i32.load - local.tee $2 - i32.const 15496 - i32.eq - if $if_2 - local.get $5 - local.get $4 - i32.load offset=12 - i32.const 15496 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 - i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $2 - i32.load - i32.const 0 - i32.store8 - local.get $2 - i32.const 0 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 + i32.load offset=16 + local.tee $1 + if $if + local.get $0 + local.get $1 + i32.store local.get $2 - i32.const 0 - i32.store8 offset=11 - end ;; $if_3 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 - i64.load align=4 - i64.store align=4 + global.set $32 + return + end ;; $if local.get $2 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store align=4 - local.get $3 + i32.const 24 + i32.add + local.tee $6 i32.const 0 - i32.store offset=8 + i32.store local.get $0 - i32.load offset=24 - local.tee $2 - i32.load - i32.load offset=44 - local.set $4 - local.get $2 + local.get $6 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE + local.set $1 + local.get $0 + i32.load offset=8 + local.set $3 local.get $1 - local.get $4 - i32.const 15 - i32.and - i32.const 66 - i32.add - call_indirect $26 (type $6) - local.tee $4 - if $if_4 + if $if_0 local.get $0 - i32.load offset=24 - local.tee $1 - i32.load - i32.load offset=72 - local.set $2 local.get $3 - local.get $1 - local.get $2 - i32.const 63 + i32.const 1 + i32.add + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + else + local.get $3 + i32.const 1 i32.and - call_indirect $26 (type $4) - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - local.get $0 + if $if_1 + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 451 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 11981 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=8 + local.set $3 + end ;; $if_1 local.get $0 i32.load offset=4 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ - local.tee $2 - i32.store offset=20 - local.get $0 - i32.load offset=24 - local.tee $3 - local.get $3 i32.load offset=16 - i32.const 2 - i32.or - i32.store offset=16 local.get $3 - i32.load offset=8 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $7 + local.get $6 + i32.load + local.tee $5 + i32.load offset=4 local.tee $1 - i32.eqz + if $if_2 + loop $loop + local.get $1 + i32.load + local.tee $4 + if $if_3 + local.get $4 + local.set $1 + br $loop + end ;; $if_3 + end ;; $loop + else + local.get $5 + local.get $5 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.tee $1 + i32.load + i32.ne + if $if_4 + local.get $4 + local.set $1 + loop $loop_0 (result i32) + local.get $1 + i32.load + local.tee $5 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.set $4 + local.get $4 + i32.load + local.get $5 + i32.ne + br_if $loop_0 + local.get $4 + end ;; $loop_0 + local.set $1 + end ;; $if_4 + end ;; $if_2 + local.get $6 + local.get $1 + i32.store + local.get $7 + i32.const 4 + i32.add + local.get $1 + i32.eq if $if_5 + local.get $0 local.get $3 - local.get $3 - i32.load offset=12 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.tee $1 - i32.store offset=8 + i32.const 2 + i32.add + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + else local.get $0 - i32.load offset=20 - local.set $2 + local.get $1 + i32.load offset=16 + i32.store end ;; $if_5 - local.get $2 - local.get $1 - call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.load - i32.load offset=20 - local.set $2 - local.get $1 + end ;; $if_0 local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - i32.eqz - if $if_6 - local.get $4 - return - end ;; $if_6 - local.get $0 - i32.const 0 - i32.store offset=24 - local.get $4 - ) - - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - if $if - local.get $0 - i32.load offset=60 - if $if_0 - local.get $0 - i32.load offset=48 - if $if_1 - i32.const 4672 - i64.const 24 - local.get $0 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_1 - end ;; $if_0 - local.get $0 - i32.const 24 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $1 - local.get $0 - i32.store offset=12 - local.get $1 - local.set $0 - else - i32.const 20 - call $__Znwm - local.tee $0 - i32.const 0 - i32.store offset=12 - end ;; $if - local.get $0 - i32.const 15496 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 5856 - i32.store - local.get $0 + global.set $32 ) - (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12539,2776 +12487,2457 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - global.get $30 + (local $9 i32) + global.get $32 local.set $3 - global.get $30 - i32.const 16 + global.get $32 + i32.const 48 i32.add - global.set $30 - block $block - local.get $0 - local.get $1 - i32.eq - br_if $block + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $6 + block $block + block $block_0 + local.get $0 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $0 + i32.const 4 + i32.add + local.tee $7 + i32.load + local.tee $5 + i32.eqz + br_if $block_0 + local.get $4 + local.set $2 + br $block + end ;; $block_0 + local.get $3 + i32.const 3 + i32.store + local.get $3 + i32.const 11940 + i32.store offset=4 + local.get $3 + i32.const 476 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 12172 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load + local.tee $2 + local.set $4 local.get $0 i32.const 4 i32.add - local.tee $5 + local.tee $7 i32.load - local.tee $2 - i32.const 1 - i32.and - i32.eqz - local.set $7 + local.set $5 + end ;; $block + local.get $0 + local.get $0 + i32.load offset=8 + local.get $5 + i32.load offset=4 + i32.const -1 + i32.add + i32.and + local.tee $8 + i32.store offset=8 + block $block_1 local.get $2 - i32.const -2 - i32.and - local.set $2 - local.get $7 - if $if (result i32) - local.get $2 - else - local.get $2 - i32.load offset=12 - end ;; $if - local.set $4 - local.get $1 - i32.load offset=4 - local.tee $8 - i32.const -2 - i32.and - local.set $6 + local.get $5 + i32.load offset=16 + local.tee $9 local.get $8 - i32.const 1 - i32.and - if $if_0 - local.get $6 - i32.load offset=12 - local.set $6 - end ;; $if_0 - local.get $4 - local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 i32.eq - if $if_1 - local.get $0 - i64.load offset=8 - local.set $9 - local.get $0 - local.get $1 - i64.load offset=8 - i64.store offset=8 - local.get $1 + br_if $block_1 + local.get $2 + if $if + local.get $8 + i32.const 1 + i32.xor + i32.const 2 + i32.shl local.get $9 - i64.store offset=8 - local.get $0 - i32.load offset=20 - local.set $2 - local.get $0 - local.get $1 - i32.load offset=20 - i32.store offset=20 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $5 - i32.load - local.tee $0 - local.get $1 - i32.const 4 i32.add - local.tee $1 i32.load - local.tee $2 - i32.or - i32.const 1 - i32.and - i32.eqz - br_if $block - local.get $2 - i32.const 1 - i32.and - if $if_2 - local.get $0 - local.set $1 - local.get $2 - i32.const -2 - i32.and - local.set $0 - else - local.get $1 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - local.set $0 - local.get $5 - i32.load - local.set $1 - end ;; $if_2 - local.get $3 - local.get $1 - i32.const 1 - i32.and - if $if_3 (result i32) - local.get $1 - i32.const -2 - i32.and - else - local.get $5 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_3 - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - local.get $1 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - local.get $3 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $3 - i32.load offset=8 - i32.store offset=8 - br $block - end ;; $if_1 - local.get $7 - i32.eqz - if $if_4 - local.get $2 - i32.load offset=12 - local.set $2 - end ;; $if_4 - local.get $2 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.tee $4 - local.get $1 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ - local.get $1 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 1 - i32.and - if $if_5 - local.get $2 - i32.const -2 - i32.and - local.tee $2 - local.set $6 local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $6 - i32.load - i32.const 0 - i32.store8 - local.get $6 - i32.const 0 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 + i32.ne + if $if_0 local.get $2 - i32.const 0 - i32.store8 offset=11 - end ;; $if_6 - end ;; $if_5 - local.get $1 - local.get $0 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ - local.get $0 - i64.load offset=8 - local.set $9 - local.get $0 - local.get $4 - i64.load offset=8 - i64.store offset=8 - local.get $4 - local.get $9 - i64.store offset=8 - local.get $0 - i32.load offset=20 - local.set $1 - local.get $0 - local.get $4 - i32.load offset=20 - i32.store offset=20 + i32.load offset=16 + local.tee $2 + if $if_1 + block $block_2 + loop $loop + local.get $2 + local.get $4 + i32.ne + if $if_2 + local.get $2 + i32.load offset=16 + local.tee $2 + i32.eqz + br_if $block_2 + br $loop + end ;; $if_2 + end ;; $loop + br $block_1 + end ;; $block_2 + end ;; $if_1 + end ;; $if_0 + end ;; $if + local.get $6 + local.get $5 local.get $4 local.get $1 - i32.store offset=20 - local.get $5 - i32.load + call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE + local.get $0 + local.get $6 + i32.load offset=8 local.tee $0 - local.get $4 - i32.const 4 - i32.add + i32.store offset=8 + local.get $7 + i32.load + i32.load offset=16 local.tee $1 + local.get $0 + i32.const 2 + i32.shl + i32.add i32.load local.tee $2 - i32.or - i32.const 1 - i32.and - if $if_7 - local.get $2 - i32.const 1 - i32.and - if $if_8 - local.get $0 - local.set $1 - local.get $2 - i32.const -2 - i32.and - local.set $0 - else - local.get $1 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - local.set $0 - local.get $5 - i32.load - local.set $1 - end ;; $if_8 - local.get $3 - local.get $1 - i32.const 1 - i32.and - if $if_9 (result i32) - local.get $1 - i32.const -2 - i32.and - else - local.get $5 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_9 - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - local.get $1 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - local.get $3 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $5 - i32.load - local.set $0 - end ;; $if_7 - local.get $0 - i32.const -2 - i32.and - local.set $1 + i32.eqz + br_if $block_1 + local.get $2 local.get $0 i32.const 1 - i32.and - if $if_10 - local.get $1 - i32.load offset=12 - local.set $1 - end ;; $if_10 + i32.xor + i32.const 2 + i32.shl local.get $1 - br_if $block - local.get $4 + i32.add i32.load - i32.load offset=4 + i32.ne local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) local.get $3 - global.set $30 + global.set $32 + local.get $0 return - end ;; $block + end ;; $block_1 local.get $3 - global.set $30 + global.set $32 + i32.const 1 ) - (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $3) + (func $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE (type $1) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 f64) - global.get $30 - local.set $4 - global.get $30 - i32.const 32 + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + global.get $32 + local.set $10 + global.get $32 + i32.const 16 i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq + global.set $32 + local.get $2 + i32.load + local.get $2 + local.get $2 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.tee $9 + select + local.tee $11 + i32.load8_s + local.tee $12 if $if - local.get $4 - i32.const 3 - i32.store - local.get $4 - i32.const 8176 - i32.store offset=4 - local.get $4 - i32.const 796 - i32.store offset=8 - local.get $4 - i64.const 0 - i64.store offset=12 align=4 - local.get $4 - i32.const 0 - i32.store offset=20 - local.get $4 - i32.const 8757 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $4 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $12 + local.set $6 + local.get $11 + local.set $4 + loop $loop + local.get $5 + i32.const 5 + i32.mul + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.tee $6 + br_if $loop + end ;; $loop end ;; $if - local.get $0 - i32.const 4 + local.get $1 + i32.load offset=16 + local.tee $4 + local.get $1 + i32.load offset=8 + local.get $5 i32.add - local.set $2 local.get $1 i32.load offset=4 - local.tee $3 - i32.const 1 + i32.const -1 + i32.add i32.and + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 if $if_0 - local.get $2 - i32.load - local.tee $5 - i32.const 1 - i32.and - if $if_1 (result i32) + block $block local.get $5 - i32.const -2 - i32.and - else - local.get $2 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_1 - local.get $3 - i32.const -2 - i32.and - local.tee $3 - local.tee $5 - i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $6 - select - local.get $5 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $6 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - end ;; $if_0 - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - local.get $1 - i32.load offset=20 - i32.const 1 - i32.sub - br_table - $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 - $block_0 ;; default - end ;; $block_6 - local.get $1 - i32.load offset=8 - local.set $1 - local.get $0 - i32.load offset=20 - i32.const 1 - i32.ne - if $if_2 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 1 - i32.store offset=20 - end ;; $if_2 - local.get $0 - local.get $1 - i32.store offset=8 - br $block - end ;; $block_5 - local.get $1 - f64.load offset=8 - local.set $7 - local.get $0 - i32.load offset=20 - i32.const 2 - i32.ne - if $if_3 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 2 - i32.store offset=20 - end ;; $if_3 - local.get $0 - local.get $7 - f64.store offset=8 - br $block - end ;; $block_4 - local.get $1 - i32.load offset=8 - local.set $3 - local.get $0 - i32.load offset=20 - i32.const 3 - i32.eq - if $if_4 - local.get $0 - i32.const 8 - i32.add - local.set $0 - else - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 3 - i32.store offset=20 - local.get $0 - i32.const 8 - i32.add - local.tee $0 - i32.const 15496 - i32.store - end ;; $if_4 - local.get $2 - i32.load + local.get $6 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $4 + i32.add + i32.load + i32.eq + if $if_1 + local.get $6 + i32.const -2 + i32.and + local.tee $5 + i32.const 2 + i32.shl + local.get $4 + i32.add + i32.load + local.set $4 + local.get $10 + local.get $2 + i32.store + local.get $10 + local.get $4 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.get $2 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE + local.set $8 + local.get $2 + local.get $8 + i32.ne + if $if_2 + block $block_0 + local.get $8 + i32.load offset=16 local.tee $2 - i32.const -2 - i32.and - local.set $1 - local.get $2 - i32.const 1 - i32.and - if $if_5 - local.get $1 - i32.load offset=12 - local.set $1 - end ;; $if_5 - local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $9 + local.get $10 i32.load - local.tee $2 - i32.const 15496 - i32.eq - if $if_6 - local.get $0 - local.get $1 - local.get $3 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - else - local.get $2 + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $12 + block $block_1 + block $block_2 + local.get $2 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $9 + select + local.tee $11 + local.get $7 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $12 + select + local.tee $6 + local.get $11 + local.get $6 + i32.lt_u + select + local.tee $4 + i32.eqz + br_if $block_2 + local.get $7 + i32.load + local.get $7 + local.get $12 + select + local.get $2 + i32.load + local.get $2 + local.get $9 + select + local.get $4 + call $_memcmp + local.tee $4 + i32.eqz + br_if $block_2 + local.get $4 + i32.const 0 + i32.lt_s + br_if $block_0 + br $block_1 + end ;; $block_2 + local.get $6 + local.get $11 + i32.lt_u + br_if $block_0 + end ;; $block_1 + local.get $3 + if $if_3 local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - end ;; $if_6 - local.get $4 - global.set $30 - return - end ;; $block_3 - local.get $1 - i32.load8_s offset=8 - local.set $1 - local.get $0 - i32.load offset=20 - i32.const 4 - i32.ne - if $if_7 + local.get $8 + i32.store + local.get $8 + i32.load offset=16 + local.set $2 + end ;; $if_3 local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv + local.get $2 + i32.store local.get $0 - i32.const 4 - i32.store offset=20 - end ;; $if_7 - local.get $0 - local.get $1 - i32.store8 offset=8 - br $block - end ;; $block_2 - block $block_7 (result i32) - block $block_8 + local.get $1 + i32.store offset=4 local.get $0 - i32.load offset=20 - i32.const 5 - i32.eq - if $if_8 (result i32) - local.get $0 - i32.load offset=8 - local.set $0 - br $block_8 - else - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 5 - i32.store offset=20 - local.get $2 - i32.load - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $0 - local.get $3 - i32.const 1 - i32.and - if $if_9 (result i32) - local.get $2 - i32.load offset=12 - else - local.get $2 - end ;; $if_9 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ - local.tee $0 - i32.store offset=8 - local.get $1 - i32.load offset=20 - i32.const 5 - i32.eq - br_if $block_8 - i32.const 15368 - end ;; $if_8 - br $block_7 - end ;; $block_8 - local.get $1 - i32.load offset=8 - end ;; $block_7 + local.get $5 + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=12 + local.get $10 + global.set $32 + return + end ;; $block_0 + end ;; $if_2 + local.get $5 local.set $1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf6Struct9MergeFromERKS1_ br $block - end ;; $block_1 - block $block_9 (result i32) - block $block_10 - local.get $0 - i32.load offset=20 - i32.const 6 + end ;; $if_1 + local.get $2 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $9 + select + local.tee $7 + i32.eqz + local.set $9 + local.get $5 + local.set $2 + loop $loop_0 + block $block_3 + local.get $2 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $8 + local.get $2 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.tee $4 + local.get $8 + select + local.get $7 i32.eq - if $if_10 (result i32) - local.get $0 - i32.load offset=8 - local.set $0 - br $block_10 - else - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.const 6 - i32.store offset=20 - local.get $2 - i32.load - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $0 - local.get $3 - i32.const 1 - i32.and - if $if_11 (result i32) + if $if_4 + block $block_4 local.get $2 - i32.load offset=12 - else + i32.load + local.tee $5 local.get $2 - end ;; $if_11 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ - local.tee $0 - i32.store offset=8 - local.get $1 - i32.load offset=20 - i32.const 6 - i32.eq - br_if $block_10 - i32.const 15456 - end ;; $if_10 - br $block_9 - end ;; $block_10 - local.get $1 - i32.load offset=8 - end ;; $block_9 - local.set $1 + local.get $8 + select + local.set $3 + local.get $8 + if $if_5 + local.get $9 + br_if $block_3 + local.get $3 + local.get $11 + local.get $7 + call $_memcmp + i32.eqz + br_if $block_3 + br $block_4 + end ;; $if_5 + local.get $9 + br_if $block_3 + local.get $5 + i32.const 255 + i32.and + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.get $12 + i32.eq + if $if_6 + local.get $2 + local.set $5 + local.get $11 + local.set $3 + loop $loop_1 + local.get $4 + i32.const -1 + i32.add + local.tee $4 + i32.eqz + br_if $block_3 + local.get $5 + i32.const 1 + i32.add + local.tee $5 + i32.load8_s + local.get $3 + i32.const 1 + i32.add + local.tee $3 + i32.load8_s + i32.eq + br_if $loop_1 + end ;; $loop_1 + end ;; $if_6 + end ;; $block_4 + end ;; $if_4 + local.get $2 + i32.load offset=16 + local.tee $2 + br_if $loop_0 + local.get $6 + local.set $1 + br $block + end ;; $block_3 + end ;; $loop_0 + local.get $0 + local.get $2 + i32.store local.get $0 local.get $1 - call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ - br $block - end ;; $block_0 - local.get $4 - global.set $30 - return - end ;; $block - local.get $4 - global.set $30 + i32.store offset=4 + local.get $0 + local.get $6 + i32.store offset=8 + local.get $0 + local.get $6 + i32.store offset=12 + local.get $10 + global.set $32 + return + end ;; $block + else + local.get $6 + local.set $1 + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $10 + global.set $32 ) - (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $5) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + (local $7 i32) + (local $8 i32) local.get $1 - i32.eq + i32.eqz if $if - local.get $3 - i32.const 3 - i32.store - local.get $3 - i32.const 8176 - i32.store offset=4 - local.get $3 - i32.const 341 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 8757 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $2 + return end ;; $if local.get $0 - i32.const 4 - i32.add - local.set $2 - local.get $1 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.set $3 + local.get $7 i32.load offset=4 - local.tee $4 - i32.const 1 + local.get $0 + i32.const 255 i32.and - if $if_0 - local.get $2 - i32.load - local.tee $5 - i32.const 1 - i32.and - if $if_1 (result i32) - local.get $5 - i32.const -2 - i32.and - else - local.get $2 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_1 - local.get $4 - i32.const -2 - i32.and - local.tee $2 - local.tee $4 - i32.load - local.get $2 - local.get $2 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $5 - select - local.get $4 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $5 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - end ;; $if_0 - local.get $3 - i32.const 24 - i32.add - local.set $2 local.get $3 - i32.const 36 - i32.add - local.tee $4 - local.get $1 - i32.load offset=20 - local.tee $1 - i32.store offset=4 - local.get $4 - local.get $1 - i32.load offset=12 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - local.get $4 - i32.load offset=4 - local.set $5 - local.get $4 - i32.load offset=8 - local.set $6 - local.get $2 - local.get $4 - i32.load - local.tee $1 - i32.store - local.get $2 - local.get $5 - i32.store offset=4 - local.get $2 - local.get $6 - i32.store offset=8 - local.get $1 - i32.eqz - if $if_2 - local.get $3 - global.set $30 - return - end ;; $if_2 - local.get $0 - i32.const 12 - i32.add - local.set $6 - local.get $1 + select local.set $0 - loop $loop - local.get $0 - i32.load offset=12 - local.tee $0 - i32.const 16 - i32.add - local.set $4 - local.get $4 - local.get $6 - local.get $0 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ - local.tee $0 - i32.ne - if $if_3 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv + local.get $3 + if $if_0 + loop $loop + local.get $1 + i32.load offset=16 + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $5 local.get $0 + local.get $3 i32.load offset=4 - local.tee $1 - i32.const 1 + local.get $4 + i32.const 255 i32.and - if $if_4 - local.get $1 - i32.const -2 - i32.and - local.tee $1 - local.set $5 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_5 - local.get $5 + local.get $5 + select + local.tee $4 + i32.lt_u + local.set $6 + block $block + block $block_0 + local.get $0 + local.get $4 + local.get $6 + select + local.tee $8 + i32.eqz + br_if $block_0 + local.get $3 i32.load - i32.const 0 - i32.store8 + local.get $3 local.get $5 - i32.const 0 - i32.store offset=4 - else - local.get $1 - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store8 offset=11 - end ;; $if_5 - end ;; $if_4 + select + local.get $7 + i32.load + local.get $8 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_0 + br $block + end ;; $block_0 + i32.const -1 + local.get $6 + local.get $4 + local.get $0 + i32.lt_u + select + local.set $3 + end ;; $block + local.get $2 + local.get $1 + local.get $3 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.set $2 + local.get $1 + i32.const 4 + i32.add + local.get $1 + local.get $3 + select + i32.load + local.tee $1 + br_if $loop + end ;; $loop + else + loop $loop_0 + local.get $1 + i32.load offset=16 + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $5 local.get $0 + local.get $3 + i32.load offset=4 local.get $4 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ - end ;; $if_3 - local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $2 - i32.load - local.tee $0 - br_if $loop - end ;; $loop - local.get $3 - global.set $30 + i32.const 255 + i32.and + local.get $5 + select + local.tee $4 + i32.lt_u + local.set $6 + block $block_1 + block $block_2 + local.get $0 + local.get $4 + local.get $6 + select + local.tee $8 + i32.eqz + br_if $block_2 + local.get $3 + i32.load + local.get $3 + local.get $5 + select + local.get $7 + local.get $8 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_2 + br $block_1 + end ;; $block_2 + i32.const -1 + local.get $6 + local.get $4 + local.get $0 + i32.lt_u + select + local.set $3 + end ;; $block_1 + local.get $2 + local.get $1 + local.get $3 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.set $2 + local.get $1 + i32.const 4 + i32.add + local.get $1 + local.get $3 + select + i32.load + local.tee $1 + br_if $loop_0 + end ;; $loop_0 + end ;; $if_0 + local.get $2 ) - (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $3) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev (type $0) (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 + (local $1 i32) local.get $0 - local.get $1 - i32.eq + i32.const 7256 + i32.store + local.get $0 + i32.load offset=12 if $if - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8176 - i32.store offset=4 - local.get $2 - i32.const 1040 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 8757 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + return end ;; $if - local.get $1 + local.get $0 i32.load offset=4 - local.tee $3 - i32.const 1 - i32.and + local.tee $1 + i32.const 24664 + i32.eq + local.get $1 + i32.eqz + i32.or i32.eqz if $if_0 - local.get $0 - i32.const 8 - i32.add local.get $1 - i32.const 8 - i32.add - call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ - local.get $2 - global.set $30 - return + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $1 + i32.load + call $_free + end ;; $if_1 + local.get $1 + call $_free end ;; $if_0 local.get $0 - i32.const 4 - i32.add - local.tee $4 - i32.load - local.tee $5 - i32.const 1 - i32.and - if $if_1 (result i32) - local.get $5 - i32.const -2 - i32.and - else - local.get $4 - call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv - end ;; $if_1 - local.get $3 - i32.const -2 - i32.and - local.tee $3 - local.tee $4 + i32.load offset=8 + local.tee $0 + i32.eqz + if $if_2 + return + end ;; $if_2 + local.get $0 + local.get $0 i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - select - local.get $4 i32.load offset=4 - local.get $3 - i32.const 255 + i32.const 127 i32.and - local.get $5 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 + i32.const 160 i32.add - call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ - local.get $2 - global.set $30 + call_indirect $28 (type $0) ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $3) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 32 - i32.add - global.set $30 + (local $1 i32) local.get $0 - local.get $1 - i32.eq + i32.const 7256 + i32.store + local.get $0 + i32.load offset=12 if $if - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8236 - i32.store offset=4 - local.get $2 - i32.const 1586 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 8791 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + call $_free + return end ;; $if - local.get $1 + local.get $0 i32.load offset=4 - local.tee $3 + local.tee $1 + i32.const 24664 + i32.eq + local.get $1 + i32.eqz + i32.or i32.eqz if $if_0 - local.get $2 - global.set $30 - return + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $1 + i32.load + call $_free + end ;; $if_1 + local.get $1 + call $_free end ;; $if_0 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.eqz + if $if_2 + local.get $0 + call $_free + return + end ;; $if_2 local.get $1 - i32.load offset=12 - local.set $5 + local.get $1 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) local.get $0 - local.get $3 - call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi - local.set $6 + call $_free + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $3) + (param $0 i32) + (param $1 i32) local.get $0 - i32.load offset=12 - i32.load + i64.const 0 + i64.store align=4 local.get $0 - i32.load offset=4 - i32.sub - local.tee $4 i32.const 0 - i32.gt_s - local.get $3 + i32.store offset=8 + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $4) + (param $0 i32) + (result i32) + i32.const 20 + call $__Znwm + local.tee $0 i32.const 0 - i32.gt_s - i32.and - if $if_1 - i32.const 0 - local.set $1 - loop $loop - local.get $5 - i32.const 4 - i32.add - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $1 - i32.const 2 - i32.shl - local.get $6 - i32.add - i32.load - call $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $4 - i32.lt_s - local.get $1 - local.get $3 - i32.lt_s - i32.and - br_if $loop - end ;; $loop - end ;; $if_1 - local.get $0 - i32.load - local.set $7 - local.get $4 - local.get $3 - i32.lt_s - if $if_2 - local.get $4 - local.set $1 - loop $loop_0 - local.get $5 - i32.const 4 - i32.add - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - local.tee $4 - call $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ - local.get $1 - i32.const 2 - i32.shl - local.get $6 - i32.add - local.get $4 - i32.store - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - end ;; $if_2 - local.get $0 - local.get $3 + i32.store offset=12 local.get $0 - i32.load offset=4 - i32.add - local.tee $1 + i32.const 24664 i32.store offset=4 local.get $0 - i32.load offset=12 - local.tee $0 - i32.load - local.get $1 - i32.ge_s - if $if_3 - local.get $2 - global.set $30 - return - end ;; $if_3 + i32.const 0 + i32.store offset=8 local.get $0 - local.get $1 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 6840 i32.store - local.get $2 - global.set $30 + local.get $0 ) - (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $3) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $6) (param $0 i32) (param $1 i32) + (result i32) local.get $1 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $4) + (param $0 i32) + (result i32) local.get $0 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ + i32.load offset=12 ) - (func $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev (type $0) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv (type $0) (param $0 i32) (local $1 i32) (local $2 i32) local.get $0 - i32.const 16 - i32.add - local.tee $1 - i32.const 5944 - i32.store - local.get $1 - call $__ZN6google8protobuf5Value10SharedDtorEv - local.get $0 - i32.load offset=20 + i32.load offset=4 local.tee $1 - i32.const 1 - i32.and + i32.const 24664 + i32.ne if $if local.get $1 - i32.const -2 - i32.and - local.tee $1 - local.tee $2 - i32.load offset=12 + i32.load8_s offset=11 i32.const 0 - i32.ne - local.get $1 - i32.eqz - i32.or - i32.eqz + i32.lt_s if $if_0 local.get $1 - i32.load8_s offset=11 + i32.load i32.const 0 - i32.lt_s - if $if_1 - local.get $2 - i32.load - call $_free - end ;; $if_1 + i32.store8 local.get $1 - call $_free + i32.const 0 + i32.store offset=4 + else + local.get $1 + i32.const 0 + i32.store8 + local.get $1 + i32.const 0 + i32.store8 offset=11 end ;; $if_0 end ;; $if local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s - if $if_2 - return - end ;; $if_2 - local.get $0 - i32.load - call $_free - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 80 - i32.add - global.set $30 - local.get $3 - i32.const 48 - i32.add - local.set $2 - local.get $1 - i32.load offset=4 - local.get $0 - i32.ne - if $if - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 601 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9288 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if - local.get $3 - i32.const 24 - i32.add - local.set $2 - local.get $3 - i32.const 72 - i32.add - local.tee $8 - i32.const 0 - i32.store - local.get $1 - local.get $8 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE - local.set $5 - local.get $1 - i32.load - local.set $6 - local.get $0 - i32.load offset=16 - local.tee $4 - local.get $1 i32.load offset=8 local.tee $1 - i32.const 2 - i32.shl - i32.add - local.tee $7 - i32.load - local.tee $9 - i32.eqz - local.set $10 - local.get $1 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $4 - i32.add - local.set $4 - local.get $5 - if $if_0 - block $block - block $block_0 - local.get $10 - br_if $block_0 - local.get $9 - local.get $4 - i32.load - i32.eq - br_if $block_0 - br $block - end ;; $block_0 - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 607 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9322 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=16 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $7 - end ;; $block - local.get $0 - local.get $6 - local.get $7 - i32.load - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ - local.set $2 - local.get $0 - i32.load offset=16 + if $if_1 local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - i32.store - else - block $block_1 - block $block_2 - local.get $10 - br_if $block_2 - local.get $4 - i32.load - local.get $9 - i32.ne - br_if $block_2 - br $block_1 - end ;; $block_2 - local.get $3 - i32.const 3 - i32.store - local.get $3 - i32.const 8384 - i32.store offset=4 - local.get $3 - i32.const 612 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 9366 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=16 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $7 - end ;; $block_1 - local.get $7 - i32.load - local.tee $5 - local.get $8 - i32.load - i32.const 16 - i32.add - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ - local.get $5 - i32.load offset=12 - i32.eqz - if $if_1 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $1 + i32.load offset=4 + local.tee $1 + i32.const 1 + i32.and + if $if_2 local.get $1 i32.const -2 i32.and + local.tee $1 local.set $2 - local.get $0 - i32.load offset=20 - local.set $4 - local.get $5 - local.get $5 - i32.load offset=4 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE - local.get $4 - i32.eqz - if $if_2 - local.get $5 - call $_free - end ;; $if_2 - local.get $0 - i32.load offset=16 local.get $1 - i32.const 1 - i32.or - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $0 - i32.load offset=16 - local.get $2 - i32.const 2 - i32.shl - i32.add + i32.load8_s offset=11 i32.const 0 - i32.store - local.get $2 - local.set $1 - end ;; $if_1 - end ;; $if_0 - local.get $6 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $6 - i32.load - call $_free - end ;; $if_3 - local.get $0 - i32.load offset=20 - i32.eqz - if $if_4 - local.get $6 - call $_free - end ;; $if_4 - local.get $0 - local.get $0 - i32.load - i32.const -1 - i32.add - i32.store - local.get $1 - local.get $0 - i32.load offset=12 - i32.ne - if $if_5 - local.get $3 - global.set $30 - return - end ;; $if_5 - local.get $1 + i32.lt_s + if $if_3 + local.get $2 + i32.load + i32.const 0 + i32.store8 + local.get $2 + i32.const 0 + i32.store offset=4 + else + local.get $1 + i32.const 0 + i32.store8 + local.get $1 + i32.const 0 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 local.get $0 - i32.load offset=4 - local.tee $4 - i32.ge_u - if $if_6 - local.get $3 - global.set $30 - return - end ;; $if_6 local.get $0 i32.load offset=16 - local.set $2 - loop $loop - local.get $1 - i32.const 2 - i32.shl - local.get $2 - i32.add - i32.load - i32.eqz - if $if_7 - local.get $0 - local.get $1 - i32.const 1 - i32.add - local.tee $1 - i32.store offset=12 - local.get $1 - local.get $4 - i32.lt_u - br_if $loop - end ;; $if_7 - end ;; $loop - local.get $3 - global.set $30 + i32.const -4 + i32.and + i32.store offset=16 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $5) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - local.get $2 - i32.load offset=16 - local.set $3 local.get $1 - local.get $2 - i32.eq - if $if (result i32) - local.get $3 - else - local.get $2 + i32.const 4768 + i32.const 4624 + call $___dynamic_cast + if $if local.get $0 local.get $1 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ - i32.store offset=16 - local.get $2 + call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ + else + i32.const 13788 + i32.const 13829 + i32.const 92 + i32.const 13878 + call $___assert_fail end ;; $if ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $3) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $1 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.set $4 local.get $0 i32.const 4 i32.add - local.tee $2 - i32.load - local.get $2 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE - local.tee $3 - local.get $2 - i32.eq - if $if - return - end ;; $if - local.get $3 - i32.load offset=16 - local.tee $2 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s local.set $5 - local.get $1 - i32.load - local.tee $1 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $7 block $block block $block_0 - local.get $2 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $5 - select - local.tee $4 - local.get $1 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $7 - select - local.tee $6 + loop $loop + block $block_1 + block $block_2 + block $block_3 + local.get $1 + i32.load + local.tee $3 + local.get $1 + i32.load offset=4 + i32.lt_u + if $if + local.get $3 + i32.load8_s + local.tee $6 + i32.const 255 + i32.and + local.set $2 + local.get $6 + i32.const -1 + i32.le_s + br_if $block_3 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + else + i32.const 0 + local.set $2 + br $block_3 + end ;; $if + br $block_2 + end ;; $block_3 + local.get $1 + local.get $2 + call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj + local.set $2 + end ;; $block_2 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + local.get $2 + br_table + $block_8 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_5 $block_7 $block_5 $block_5 $block_5 $block_5 $block_5 + $block_5 $block_5 $block_6 + $block_5 ;; default + end ;; $block_8 + i32.const 1 + local.set $0 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 1 + i32.or + i32.store offset=16 + local.get $5 + i32.load + local.tee $2 + i32.const 24664 + i32.eq + if $if_0 + local.get $5 + local.get $0 + i32.load offset=12 + i32.const 24664 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $5 + i32.load + local.set $2 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE + i32.eqz + if $if_1 + i32.const 0 + local.set $0 + br $block + end ;; $if_1 + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 1 + i32.or + i32.store offset=16 + br $block_4 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 2 + i32.or + i32.store offset=16 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.eqz + if $if_2 + local.get $0 + local.get $0 + i32.load offset=12 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $2 + i32.store offset=8 + end ;; $if_2 + block $block_9 + block $block_10 + local.get $1 + i32.load + local.tee $3 + local.get $1 + i32.load offset=4 + i32.ge_u + br_if $block_10 + local.get $3 + i32.load8_s + local.tee $6 + i32.const -1 + i32.le_s + br_if $block_10 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 255 + i32.and + local.set $3 + br $block_9 + end ;; $block_10 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $3 + i32.const -1 + i32.le_s + if $if_3 + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $block_9 + local.get $4 + local.get $1 + local.get $3 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $4 + i32.load offset=4 + i32.const 0 + i32.lt_s + br_if $block_1 + local.get $2 + local.get $1 + call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + i32.eqz + br_if $block_1 + local.get $1 + local.get $4 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + i32.eqz + if $if_4 + i32.const 0 + local.set $0 + br $block + end ;; $if_4 + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 2 + i32.or + i32.store offset=16 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 + local.get $1 + i32.load offset=32 + br_if $block_0 + local.get $1 + i32.load offset=12 + local.get $1 + i32.load offset=28 + i32.eq + br_if $block_0 + end ;; $if_5 + br $block_4 + end ;; $block_5 + local.get $2 + i32.const 7 + i32.and + i32.const 4 + i32.eq + if $if_6 + i32.const 1 + local.set $0 + br $block + end ;; $if_6 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj + i32.eqz + if $if_7 + i32.const 0 + local.set $0 + br $block + end ;; $if_7 + end ;; $block_4 + br $loop + end ;; $block_1 + end ;; $loop local.get $4 - local.get $6 - i32.lt_u - select - local.tee $8 - i32.eqz - br_if $block_0 - local.get $1 - i32.load - local.get $1 - local.get $7 - select - local.get $2 - i32.load - local.get $2 - local.get $5 - select - local.get $8 - call $_memcmp - local.tee $1 - i32.eqz - br_if $block_0 - local.get $1 + global.set $32 i32.const 0 - i32.lt_s - if $if_0 - return - end ;; $if_0 - br $block + return end ;; $block_0 - local.get $6 + local.get $1 + i32.const 0 + i32.store offset=20 + local.get $1 + i32.const 1 + i32.store8 offset=24 local.get $4 - i32.lt_u - if $if_1 - return - end ;; $if_1 + global.set $32 + i32.const 1 + return end ;; $block - local.get $3 - i32.load offset=4 - local.tee $1 - if $if_2 - loop $loop - local.get $1 - i32.load - local.tee $2 - if $if_3 - local.get $2 - local.set $1 - br $loop - end ;; $if_3 - end ;; $loop - else - local.get $3 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.tee $2 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $2 + i32.const 1 + i32.and + if $if (result i32) + local.get $0 i32.load - local.get $3 - i32.eq - if $if_4 (result i32) - local.get $2 - else - loop $loop_0 (result i32) - local.get $1 - i32.load - local.tee $5 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.set $2 - local.get $2 - i32.load - local.get $5 - i32.ne - br_if $loop_0 - local.get $2 - end ;; $loop_0 - end ;; $if_4 + i32.load offset=72 + local.set $2 + local.get $0 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.tee $3 + i32.load8_s offset=11 local.set $1 - end ;; $if_2 - local.get $0 - i32.load - local.get $3 - i32.eq - if $if_5 local.get $0 + i32.load offset=16 + local.set $2 + local.get $3 + i32.load offset=4 local.get $1 - i32.store - end ;; $if_5 + i32.const 255 + i32.and + local.get $1 + i32.const 0 + i32.lt_s + select + local.tee $1 + i32.const 1 + i32.add + local.get $1 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + else + i32.const 0 + end ;; $if + local.set $1 + local.get $2 + i32.const 2 + i32.and + i32.eqz + if $if_0 + local.get $1 + return + end ;; $if_0 local.get $0 + i32.load + i32.load offset=76 + local.set $2 + local.get $1 local.get $0 - i32.load offset=12 - i32.const -1 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + call $__ZNK6google8protobuf5Value12ByteSizeLongEv + local.tee $0 + i32.const 1 i32.add - i32.store offset=12 - local.get $0 - i32.load offset=4 - local.get $3 - call $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ local.get $0 - i32.load offset=8 - if $if_6 - return - end ;; $if_6 - local.get $3 - call $_free + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + i32.add ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $3) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) (param $0 i32) (param $1 i32) - local.get $1 - i32.eqz - if $if - return - end ;; $if + (local $2 i32) local.get $0 - local.get $1 i32.load - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + i32.load offset=72 + local.set $2 local.get $0 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) local.get $1 - i32.load offset=4 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 - i32.load offset=8 - if $if_0 - return - end ;; $if_0 + i32.load + i32.load offset=76 + local.set $2 + local.get $0 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) local.get $1 - call $_free + call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) - (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $3) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $4) (param $0 i32) - (param $1 i32) + (result i32) + (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - block $block - block $block_0 - local.get $1 - i32.load - local.tee $4 - if $if (result i32) - local.get $1 - i32.load offset=4 - local.tee $2 - if $if_0 (result i32) - loop $loop - local.get $2 - i32.load - local.tee $4 - if $if_1 - local.get $4 - local.set $2 - br $loop - end ;; $if_1 - end ;; $loop - local.get $2 - else - local.get $1 - local.tee $2 - local.set $3 - br $block_0 - end ;; $if_0 - else - local.get $1 - local.tee $2 - end ;; $if - local.tee $4 - i32.load offset=4 - local.tee $5 - if $if_2 (result i32) - local.get $4 - local.set $3 - local.get $5 - local.set $4 - br $block_0 - else - local.get $4 - i32.const 8 - i32.add - local.set $6 - i32.const 0 - local.set $5 - local.get $4 - end ;; $if_2 - local.set $3 - br $block - end ;; $block_0 - local.get $4 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.const 1 + i32.and + if $if (result i32) + local.get $0 + i32.load + i32.load offset=72 + local.set $2 + local.get $0 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.tee $3 + i32.load8_s offset=11 + local.set $1 + local.get $0 + i32.load offset=16 + local.set $2 local.get $3 - i32.const 8 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $1 + i32.const 0 + i32.lt_s + select + local.tee $1 + i32.const 1 i32.add - local.tee $5 - i32.load - i32.store offset=8 - local.get $5 - local.set $6 + local.get $1 i32.const 1 - local.set $8 - local.get $4 - local.set $5 - end ;; $block - local.get $6 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + else + i32.const 0 + end ;; $if + local.set $1 + local.get $2 + i32.const 2 + i32.and + i32.eqz + if $if_0 + local.get $1 + return + end ;; $if_0 + local.get $0 i32.load - local.tee $7 + i32.load offset=76 + local.set $2 + local.get $1 + local.get $0 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + i32.load offset=16 + local.tee $0 + i32.const 1 + i32.add + local.get $0 + i32.const 1 + i32.or + i32.clz + i32.const 31 + i32.xor + i32.const 9 + i32.mul + i32.const 73 + i32.add + i32.const 6 + i32.shr_u + i32.add + i32.add + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 i32.load - local.tee $4 + i32.load offset=72 + local.set $3 + local.get $0 local.get $3 - i32.eq - if $if_3 - local.get $7 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.eq - if $if_4 (result i32) - local.get $5 - local.set $0 - i32.const 0 - else - local.get $7 - i32.load offset=4 - end ;; $if_4 - local.set $4 - else - local.get $7 - local.get $5 - i32.store offset=4 - end ;; $if_3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $3 + local.get $2 + i32.const 10 + i32.store8 local.get $3 - i32.load8_s offset=12 - local.set $7 - local.get $1 + local.get $2 + i32.const 1 + i32.add + call $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh + local.set $2 + local.get $0 + i32.load + i32.load offset=76 + local.set $3 + local.get $0 local.get $3 - i32.ne - if $if_5 - local.get $6 - local.get $1 - i32.load offset=8 - local.tee $6 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $4 + local.get $2 + i32.const 18 + i32.store8 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + i32.load offset=16 + local.tee $0 + i32.const 127 + i32.gt_u + if $if + loop $loop (result i32) + local.get $2 + local.get $0 + i32.const 128 + i32.or + i32.store8 + local.get $0 + i32.const 7 + i32.shr_u + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 16383 + i32.gt_u + if $if_0 (result i32) + local.get $3 + local.set $0 + br $loop + else + local.get $3 + end ;; $if_0 + end ;; $loop + local.set $0 + end ;; $if + local.get $2 + local.get $0 + i32.store8 + local.get $4 + i32.load + i32.const -64 + i32.sub + i32.load + local.set $0 + local.get $4 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.get $0 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $5) + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.load offset=20 + ) + + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + if $if + local.get $0 + i32.load offset=60 + if $if_0 + local.get $0 + i32.load offset=48 + if $if_1 + i32.const 4720 + i64.const 24 + local.get $0 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_1 + end ;; $if_0 + local.get $0 + i32.const 24 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $1 + i32.const 6928 i32.store - local.get $6 - local.get $6 - i32.const 4 - i32.add local.get $1 + local.get $0 + i32.store offset=4 local.get $1 - i32.load offset=8 + i32.const 0 + i32.store offset=16 + i32.const 6816 i32.load - i32.eq - select - local.get $3 - i32.store - local.get $2 + if $if_2 + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + end ;; $if_2 local.get $1 - i32.load - local.tee $2 + local.set $0 + else + i32.const 24 + call $__Znwm + local.tee $0 + i32.const 6928 i32.store - local.get $2 - local.get $3 - i32.store offset=8 - local.get $3 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.store offset=4 - local.get $2 - if $if_6 - local.get $2 - local.get $3 - i32.store offset=8 - end ;; $if_6 - local.get $3 - local.get $1 - i32.load8_s offset=12 - i32.store8 offset=12 - local.get $3 local.get $0 + i32.const 0 + i32.store offset=4 local.get $0 - local.get $1 - i32.eq - select - local.set $0 - end ;; $if_5 + i32.const 0 + i32.store offset=16 + i32.const 6816 + i32.load + if $if_3 + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + end ;; $if_3 + end ;; $if local.get $0 i32.const 0 - i32.ne - local.get $7 + i32.store offset=20 + local.get $0 + ) + + (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 48 + i32.add + local.tee $8 + local.get $0 + i32.const 4 + i32.add + i32.store + local.get $8 + i32.const 4 + i32.add + local.tee $6 + i64.const 0 + i64.store align=4 + local.get $6 i32.const 0 - i32.ne + i32.store offset=8 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const 1 i32.and - i32.eqz - if $if_7 - return - end ;; $if_7 - local.get $8 - if $if_8 - local.get $5 - i32.const 1 - i32.store8 offset=12 - return - end ;; $if_8 + if $if + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $6 + i32.load offset=8 + i32.store offset=8 + local.get $6 + local.get $2 + i32.const -2 + i32.and + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $6 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $2 + local.get $4 + i32.load offset=8 + i32.store offset=8 + end ;; $if local.get $4 - local.set $2 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - loop $loop_0 - block $block_10 - local.get $2 - i32.load8_s offset=12 - i32.const 0 - i32.ne - local.set $4 - local.get $2 - local.tee $1 - i32.load offset=8 - local.tee $3 - i32.load - local.get $1 - i32.eq - if $if_9 - local.get $4 - i32.eqz - if $if_10 - local.get $2 - i32.const 1 - i32.store8 offset=12 - local.get $3 - i32.const 0 - i32.store8 offset=12 - local.get $3 - local.get $1 - i32.load offset=4 - local.tee $4 - i32.store - local.get $4 - if $if_11 - local.get $4 - local.get $3 - i32.store offset=8 - end ;; $if_11 - local.get $1 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $3 - local.get $3 - i32.load offset=8 - local.tee $1 - i32.load - i32.eq - if $if_12 (result i32) - local.get $1 - local.get $2 - i32.store - local.get $3 - i32.load - else - local.get $1 - local.get $2 - i32.store offset=4 - local.get $4 - end ;; $if_12 - local.set $1 - local.get $2 - local.get $3 - i32.store offset=4 - local.get $3 - local.get $2 - i32.store offset=8 - local.get $2 - local.get $0 - local.get $0 - local.get $3 - i32.eq - select - local.set $0 - end ;; $if_10 - local.get $1 - i32.load - local.tee $3 - i32.eqz - local.tee $4 - i32.eqz - if $if_13 - local.get $3 - i32.load8_s offset=12 - i32.eqz - br_if $block_6 - end ;; $if_13 - local.get $1 - i32.load offset=4 - local.tee $2 - if $if_14 - local.get $2 - i32.load8_s offset=12 - i32.eqz - br_if $block_7 - end ;; $if_14 - local.get $1 - i32.const 0 - i32.store8 offset=12 - local.get $1 - i32.load offset=8 - local.tee $1 - local.get $0 - i32.eq - local.get $1 - i32.load8_s offset=12 - i32.eqz - i32.or - br_if $block_8 - else - local.get $4 - i32.eqz - if $if_15 + i32.const 40 + i32.add + local.tee $2 + local.tee $5 + i32.const 7496 + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $4 + i32.const 16 + i32.add + local.tee $9 + local.get $2 + call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb + local.get $0 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + loop $loop (result i32) + block $block_3 (result i32) + block $block_4 + block $block_5 + local.get $1 + i32.load + local.tee $3 + local.get $1 + i32.load offset=4 + i32.lt_u + if $if_0 + local.get $3 + i32.load8_s + local.tee $7 + i32.const 255 + i32.and + local.set $2 + local.get $7 + i32.const 0 + i32.gt_s + if $if_1 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + br $block_5 + end ;; $if_1 + else + i32.const 0 + local.set $2 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj + local.tee $2 + i32.const -1 + i32.add + i32.const 126 + i32.gt_u + br_if $block_4 + end ;; $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + local.get $2 + i32.const 3 + i32.shr_u + i32.const 1 + i32.sub + br_table + $block_12 $block_11 $block_10 $block_9 $block_8 $block_7 + $block_6 ;; default + end ;; $block_12 local.get $2 + i32.const 255 + i32.and + i32.const 8 + i32.ne + br_if $block_4 + block $block_13 + block $block_14 + local.get $1 + i32.load + local.tee $3 + local.get $1 + i32.load offset=4 + i32.lt_u + if $if_2 + local.get $3 + i32.load8_s + local.tee $7 + i32.const 255 + i32.and + local.set $2 + local.get $7 + i32.const -1 + i32.le_s + br_if $block_14 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + else + i32.const 0 + local.set $2 + br $block_14 + end ;; $if_2 + br $block_13 + end ;; $block_14 + local.get $1 + local.get $2 + call $__ZN6google8protobuf2io16CodedInputStream20ReadVarint32FallbackEj + local.tee $10 + i32.wrap_i64 + local.set $2 + i32.const 0 + local.get $10 + i64.const -1 + i64.le_s + br_if $block_3 + drop + end ;; $block_13 + local.get $0 + i32.load offset=20 i32.const 1 - i32.store8 offset=12 - local.get $3 - i32.const 0 - i32.store8 offset=12 - local.get $3 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.load - local.tee $2 - i32.store offset=4 + i32.ne + if $if_3 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 1 + i32.store offset=20 + end ;; $if_3 + local.get $5 local.get $2 - if $if_16 - local.get $2 - local.get $3 - i32.store offset=8 - end ;; $if_16 + i32.store + br $loop + end ;; $block_11 + local.get $2 + i32.const 255 + i32.and + i32.const 17 + i32.ne + br_if $block_4 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + i32.const 7 + i32.gt_s + if $if_4 (result f64) local.get $4 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $3 - i32.load offset=8 - local.tee $2 local.get $2 - i32.const 4 - i32.add - local.get $3 + i64.load align=1 + local.tee $10 + i64.store + local.get $1 local.get $2 - i32.load - i32.eq - select - local.get $4 + i32.const 8 + i32.add i32.store + local.get $10 + f64.reinterpret_i64 + else + local.get $1 local.get $4 - local.get $3 - i32.store - local.get $3 + call $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy + i32.eqz + br_if $block_2 local.get $4 - i32.store offset=8 - local.get $1 - local.get $0 - local.get $1 - i32.load - local.tee $1 - local.get $0 - i32.eq - select - local.set $0 - local.get $1 - i32.load offset=4 - local.set $1 - end ;; $if_15 + f64.load + end ;; $if_4 + f64.store offset=8 + local.get $0 + i32.const 2 + i32.store offset=20 + br $loop + end ;; $block_10 + local.get $2 + i32.const 255 + i32.and + i32.const 26 + i32.ne + br_if $block_4 + local.get $0 + i32.load offset=20 + i32.const 3 + i32.ne + if $if_5 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 3 + i32.store offset=20 + local.get $5 + i32.const 24664 + i32.store + end ;; $if_5 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $3 + i32.const 1 + i32.and + if $if_6 + local.get $2 + i32.load offset=12 + local.set $2 + end ;; $if_6 + i32.const 0 + local.get $1 + local.get $5 + i32.load + local.tee $3 + i32.const 24664 + i32.eq + if $if_7 (result i32) + local.get $5 + local.get $2 + i32.const 24664 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $5 + i32.load + else + local.get $3 + end ;; $if_7 + call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE + i32.eqz + br_if $block_3 + drop + local.get $0 + i32.load offset=20 + i32.const 3 + i32.eq + local.tee $3 + if $if_8 (result i32) + local.get $5 + i32.load + local.tee $2 + else + i32.const 24664 + local.set $2 + i32.const 24664 + end ;; $if_8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_9 (result i32) + local.get $2 + i32.load + else + local.get $2 + end ;; $if_9 + local.get $3 + if $if_10 (result i32) + local.get $5 + i32.load + local.tee $3 + else + i32.const 24664 + local.set $3 + i32.const 24664 + end ;; $if_10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + if $if_11 (result i32) + local.get $3 + i32.load offset=4 + else + local.get $2 + i32.const 255 + i32.and + end ;; $if_11 + i32.const 0 + i32.const 12216 + call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ + br_if $loop + i32.const 0 + br $block_3 + end ;; $block_9 + local.get $2 + i32.const 255 + i32.and + i32.const 32 + i32.ne + br_if $block_4 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + block $block_15 + block $block_16 local.get $1 i32.load - local.tee $5 - if $if_17 - local.get $5 - i32.load8_s offset=12 - i32.eqz - br_if $block_9 - end ;; $if_17 + local.tee $2 local.get $1 i32.load offset=4 - local.tee $2 - if $if_18 - local.get $2 - i32.load8_s offset=12 - i32.eqz - br_if $block_5 - end ;; $if_18 + i32.ge_u + br_if $block_16 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -1 + i32.le_s + br_if $block_16 local.get $1 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $3 i32.const 0 - i32.store8 offset=12 - local.get $1 - i32.load offset=8 - local.tee $1 - local.get $0 - i32.eq - br_if $block_10 - local.get $1 - i32.load8_s offset=12 - i32.eqz - if $if_19 - local.get $1 - local.set $0 - br $block_10 - end ;; $if_19 - end ;; $if_9 + i32.ne + local.set $2 + br $block_15 + end ;; $block_16 + local.get $4 local.get $1 - i32.load offset=8 - local.tee $2 - i32.const 4 - i32.add + call $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv + local.get $4 + i64.load + i64.const 0 + i64.ne + local.set $2 + i32.const 0 + local.get $4 + i32.load8_s offset=8 + i32.eqz + br_if $block_3 + drop + end ;; $block_15 + local.get $5 + local.get $2 + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.const 4 + i32.store offset=20 + br $loop + end ;; $block_8 + local.get $2 + i32.const 255 + i32.and + i32.const 42 + i32.ne + br_if $block_4 + local.get $0 + i32.load offset=20 + i32.const 5 + i32.eq + if $if_12 + local.get $5 + i32.load + local.set $2 + else + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 5 + i32.store offset=20 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $5 + local.get $3 + i32.const 1 + i32.and + if $if_13 (result i32) local.get $2 - local.get $1 + i32.load offset=12 + else local.get $2 + end ;; $if_13 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ + local.tee $2 + i32.store + end ;; $if_12 + block $block_17 + block $block_18 + local.get $1 i32.load - i32.eq - select - i32.load - local.set $2 - br $loop_0 - end ;; $block_10 - end ;; $loop_0 - local.get $0 - i32.const 1 - i32.store8 offset=12 - return - end ;; $block_9 - local.get $1 - i32.load offset=4 - local.tee $2 - br_if $block_5 - local.get $1 - local.set $0 - br $block_3 - end ;; $block_8 - local.get $1 - i32.const 1 - i32.store8 offset=12 - return - end ;; $block_7 - local.get $1 - i32.const 4 - i32.add - local.set $0 - local.get $4 - if $if_20 (result i32) - local.get $2 - else - local.get $3 - i32.const 12 - i32.add - local.tee $0 - i32.load8_s - i32.eqz - br_if $block_4 - local.get $1 - i32.const 4 - i32.add - local.tee $0 - i32.load - end ;; $if_20 - local.tee $5 - i32.const 12 - i32.add - local.tee $3 + local.tee $3 + local.get $1 + i32.load offset=4 + i32.ge_u + br_if $block_18 + local.get $3 + i32.load8_s + local.tee $7 + i32.const -1 + i32.le_s + br_if $block_18 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 255 + i32.and + local.set $3 + br $block_17 + end ;; $block_18 + i32.const 0 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $3 + i32.const -1 + i32.le_s + br_if $block_3 + drop + end ;; $block_17 + local.get $4 + local.get $1 + local.get $3 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $4 + i32.load offset=4 + i32.const 0 + i32.lt_s + br_if $block_1 + local.get $2 + local.get $1 + call $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + i32.eqz + br_if $block_1 + local.get $1 + local.get $4 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + br_if $loop + i32.const 0 + br $block_3 + end ;; $block_7 + local.get $2 + i32.const 255 + i32.and + i32.const 50 + i32.ne + br_if $block_4 + local.get $0 + i32.load offset=20 + i32.const 6 + i32.eq + if $if_14 + local.get $5 + i32.load + local.set $2 + else + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 6 + i32.store offset=20 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $5 + local.get $3 + i32.const 1 + i32.and + if $if_15 (result i32) + local.get $2 + i32.load offset=12 + else + local.get $2 + end ;; $if_15 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ + local.tee $2 + i32.store + end ;; $if_14 + block $block_19 + block $block_20 + local.get $1 + i32.load + local.tee $3 + local.get $1 + i32.load offset=4 + i32.ge_u + br_if $block_20 + local.get $3 + i32.load8_s + local.tee $7 + i32.const -1 + i32.le_s + br_if $block_20 + local.get $1 + local.get $3 + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 255 + i32.and + local.set $3 + br $block_19 + end ;; $block_20 + i32.const 0 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $3 + i32.const -1 + i32.le_s + br_if $block_3 + drop + end ;; $block_19 + local.get $4 + local.get $1 + local.get $3 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $4 + i32.load offset=4 + i32.const 0 + i32.lt_s + br_if $block_0 + local.get $2 + local.get $1 + call $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + i32.eqz + br_if $block_0 + local.get $1 + local.get $4 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + br_if $loop + i32.const 0 + br $block_3 + end ;; $block_6 + end ;; $block_4 i32.const 1 - i32.store8 + local.get $2 + i32.eqz + br_if $block_3 + drop local.get $1 - i32.const 12 - i32.add - local.tee $4 + local.get $2 + local.get $9 + call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE + br_if $loop i32.const 0 - i32.store8 - local.get $0 - local.get $5 - i32.load - local.tee $0 - i32.store - local.get $0 - if $if_21 - local.get $0 - local.get $1 - i32.store offset=8 - end ;; $if_21 - local.get $5 - i32.const 8 - i32.add - local.tee $2 - local.get $1 - i32.load offset=8 - i32.store - local.get $1 - i32.load offset=8 - local.tee $0 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.load - local.get $1 - i32.eq - select - local.get $5 - i32.store - local.get $5 - local.get $1 - i32.store - local.get $1 - local.get $5 - i32.store offset=8 - local.get $4 - local.set $0 - br $block_2 - end ;; $block_6 - local.get $3 - i32.const 12 - i32.add - local.set $0 - br $block_4 - end ;; $block_5 - local.get $1 - local.set $0 - local.get $2 - i32.const 12 - i32.add - local.tee $2 - i32.load8_s - br_if $block_3 - local.get $1 - i32.const 12 - i32.add - local.set $3 - local.get $2 - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $2 - br $block_1 - end ;; $block_4 - local.get $1 - i32.const 12 - i32.add - local.set $3 - local.get $1 - i32.const 8 - i32.add - local.set $2 - br $block_2 - end ;; $block_3 - local.get $5 - i32.const 12 - i32.add - local.tee $3 - i32.const 1 - i32.store8 - local.get $1 - i32.const 12 - i32.add - local.tee $4 + end ;; $block_3 + end ;; $loop + br $block + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 i32.const 0 - i32.store8 - local.get $0 - local.get $5 - i32.load offset=4 - local.tee $0 - i32.store - local.get $0 - if $if_22 - local.get $0 - local.get $1 - i32.store offset=8 - end ;; $if_22 - local.get $5 - i32.const 8 - i32.add - local.tee $2 - local.get $1 - i32.load offset=8 - i32.store - local.get $1 - i32.load offset=8 - local.tee $0 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.load - local.get $1 - i32.eq - select - local.get $5 - i32.store - local.get $5 - local.get $1 - i32.store offset=4 - local.get $1 - local.get $5 - i32.store offset=8 - local.get $4 - local.set $0 - br $block_1 - end ;; $block_2 - local.get $3 - local.get $2 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $1 + local.get $9 + call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev + local.get $8 + i32.load offset=8 + local.get $6 + i32.load8_s offset=11 + local.tee $0 + i32.const 255 + i32.and + local.get $0 + i32.const 0 + i32.lt_s + select + if $if_16 (result i32) + local.get $4 + local.get $8 + i32.load + local.tee $0 i32.load local.tee $2 - i32.load8_s offset=12 - i32.store8 - local.get $2 i32.const 1 - i32.store8 offset=12 - local.get $0 - i32.const 1 - i32.store8 - local.get $2 - local.get $2 - i32.load - local.tee $1 - i32.load offset=4 + i32.and + if $if_17 (result i32) + local.get $2 + i32.const -2 + i32.and + else + local.get $0 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_17 local.tee $0 - i32.store + i64.load align=4 + i64.store align=4 + local.get $4 local.get $0 - if $if_23 - local.get $0 - local.get $2 - i32.store offset=8 - end ;; $if_23 - local.get $1 - local.get $2 i32.load offset=8 i32.store offset=8 - local.get $2 - i32.load offset=8 - local.tee $0 local.get $0 - i32.const 4 - i32.add - local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $0 - i32.load - i32.eq - select - local.get $1 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $2 - local.get $1 + local.get $6 + i32.load offset=8 i32.store offset=8 - return - end ;; $block_1 - local.get $3 - local.get $2 - i32.load - local.tee $2 - i32.load8_s offset=12 - i32.store8 - local.get $2 - i32.const 1 - i32.store8 offset=12 - local.get $0 - i32.const 1 - i32.store8 - local.get $2 - local.get $2 - i32.load offset=4 - local.tee $1 - i32.load - local.tee $0 - i32.store offset=4 - local.get $0 - if $if_24 - local.get $0 - local.get $2 + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $6 + local.get $4 + i32.load offset=8 i32.store offset=8 - end ;; $if_24 - local.get $1 - local.get $2 - i32.load offset=8 - i32.store offset=8 - local.get $2 - i32.load offset=8 - local.tee $0 - local.get $0 - i32.const 4 - i32.add - local.get $2 - local.get $0 + local.get $6 + i32.load8_s offset=11 + else + local.get $0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.ge_s + if $if_18 + local.get $4 + global.set $32 + local.get $1 + return + end ;; $if_18 + local.get $6 i32.load - i32.eq - select - local.get $1 - i32.store - local.get $1 - local.get $2 - i32.store - local.get $2 + call $_free + local.get $4 + global.set $32 local.get $1 - i32.store offset=8 ) - (func $__ZN6google8protobuf5Value10SharedDtorEv (type $0) + (func $__ZN6google8protobuf5Value10clear_kindEv (type $0) (param $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $3 - i32.const 1 - i32.and - if $if (result i32) - local.get $2 - i32.load offset=12 - else - local.get $2 - end ;; $if - if $if_0 - local.get $1 - i32.const 3 - i32.store - local.get $1 - i32.const 8176 - i32.store offset=4 - local.get $1 - i32.const 495 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store offset=12 align=4 - local.get $1 - i32.const 0 - i32.store offset=20 - local.get $1 - i32.const 9402 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $1 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $0 - i32.load offset=20 - i32.eqz - if $if_1 - local.get $1 - global.set $30 - return - end ;; $if_1 - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $1 - global.set $30 - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $4 - i32.const 16 - i32.add - local.get $1 - local.get $2 - i32.const 0 - call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE - local.get $4 - i32.load offset=16 - local.tee $3 - if $if - local.get $4 - i32.load offset=20 - local.set $1 - local.get $4 - i32.load offset=24 - local.set $2 - local.get $0 - local.get $3 - i32.store - local.get $0 - local.get $1 - i32.store offset=4 - local.get $0 - local.get $2 - i32.store offset=8 - local.get $0 - i32.const 0 - i32.store8 offset=12 - local.get $4 - global.set $30 - return - end ;; $if block $block block $block_0 - local.get $1 - i32.load offset=4 - local.tee $5 - i32.const 12 - i32.mul - local.tee $6 - i32.const 4 - i32.shr_u - local.tee $7 - local.get $1 - i32.load - i32.const 1 - i32.add - local.tee $3 - i32.gt_u - if $if_0 - local.get $5 - i32.const 8 - i32.gt_u - local.get $6 - i32.const 6 - i32.shr_u - local.get $3 - i32.ge_u + block $block_1 + block $block_2 + local.get $0 + i32.load offset=20 + i32.const 3 + i32.sub + br_table + $block_2 $block_1 $block_0 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const -2 i32.and - if $if_1 - local.get $3 - i32.const 5 - i32.mul - i32.const 2 - i32.shr_u - i32.const 1 - i32.add - local.set $8 - i32.const 1 - local.set $3 - loop $loop - local.get $3 - i32.const 1 - i32.add - local.set $6 - local.get $8 - local.get $3 - i32.shl - local.get $7 - i32.lt_u - if $if_2 - local.get $6 - local.set $3 - br $loop - end ;; $if_2 - end ;; $loop - local.get $5 - local.get $5 - local.get $3 - i32.shr_u - local.tee $3 - i32.const 8 - local.get $3 - i32.const 8 - i32.gt_u - select - local.tee $3 - i32.ne - if $if_3 - local.get $1 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm - br $block_0 - end ;; $if_3 - end ;; $if_1 - else - local.get $5 - i32.const 134217728 - i32.le_u - if $if_4 + local.set $1 + local.get $2 + i32.const 1 + i32.and + if $if (result i32) local.get $1 - local.get $5 - i32.const 1 - i32.shl - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm - br $block_0 - end ;; $if_4 - end ;; $if_0 - br $block + i32.load offset=12 + else + local.get $1 + end ;; $if + br_if $block + local.get $0 + i32.load offset=8 + local.tee $1 + i32.const 24664 + i32.eq + local.get $1 + i32.eqz + i32.or + br_if $block + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load + call $_free + end ;; $if_0 + local.get $1 + call $_free + br $block + end ;; $block_1 + local.get $0 + i32.const 0 + i32.store offset=20 + return end ;; $block_0 - local.get $4 - local.get $1 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const -2 + i32.and + local.set $1 local.get $2 - i32.const 0 - call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE - local.get $4 - local.get $4 - i64.load align=4 - i64.store offset=16 align=4 - local.get $4 - local.get $4 + i32.const 1 + i32.and + if $if_1 (result i32) + local.get $1 + i32.load offset=12 + else + local.get $1 + end ;; $if_1 + br_if $block + local.get $0 i32.load offset=8 - i32.store offset=24 - local.get $4 - local.get $4 - i32.load offset=12 - i32.store offset=28 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + local.get $1 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) end ;; $block - local.get $4 - i32.load offset=28 - local.set $6 - local.get $1 - i32.load offset=20 - local.tee $3 - if $if_5 (result i32) - local.get $3 - i32.load offset=60 - if $if_6 - local.get $3 - i32.load offset=48 - if $if_7 - i32.const 5464 - i64.const 24 - local.get $3 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_7 - end ;; $if_6 - local.get $3 - i32.const 24 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - else - i32.const 20 - call $__Znwm - end ;; $if_5 - local.tee $3 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $3 - local.get $2 - i32.load offset=12 - i32.store offset=12 - local.get $4 - local.get $1 - local.get $6 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE - local.get $1 - local.get $1 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $4 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $4 - i32.load offset=8 - i32.store offset=8 local.get $0 - i32.const 1 - i32.store8 offset=12 - local.get $4 - global.set $30 + i32.const 0 + i32.store offset=20 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $6) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $4) (param $0 i32) - (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) + (local $1 i32) local.get $0 - i32.load - local.tee $2 i32.eqz if $if - i32.const 40 + i32.const 28 call $__Znwm local.tee $0 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $0 - i32.const 5944 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - i32.const 0 - i32.store offset=32 - i32.const 5832 - i32.load - if $if_0 - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=36 + call $__ZN6google8protobuf6StructC2Ev local.get $0 return end ;; $if - local.get $2 + local.get $0 i32.load offset=60 - if $if_1 - local.get $2 + if $if_0 + local.get $0 i32.load offset=48 - if $if_2 - i32.const 5464 - i64.const 40 - local.get $2 + if $if_1 + i32.const 4672 + i64.const 32 + local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 - local.get $2 - i32.const 40 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $2 - i64.const 0 - i64.store align=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - if $if_3 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E - end ;; $if_3 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_1 + end ;; $if_0 local.get $0 - i32.load - local.set $0 - local.get $2 - i32.const 5944 - i32.store offset=16 - local.get $2 + i32.const 32 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $1 local.get $0 - i32.store offset=20 - local.get $2 - i32.const 0 - i32.store offset=32 - i32.const 5832 - i32.load - if $if_4 - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - end ;; $if_4 - local.get $2 - i32.const 0 - i32.store offset=36 - local.get $2 + call $__ZN6google8protobuf6StructC2EPNS0_5ArenaE local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - local.get $2 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $3) + (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15318,2213 +14947,2029 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + (local $11 i32) + global.get $32 local.set $2 - global.get $30 - i32.const 48 + global.get $32 + i32.const 96 i32.add - global.set $30 - local.get $1 - i32.const 7 - i32.le_u + global.set $32 + local.get $2 + i32.const 72 + i32.add + local.tee $8 + local.get $0 + i32.const 4 + i32.add + i32.store + local.get $8 + i32.const 4 + i32.add + local.tee $4 + i64.const 0 + i64.store align=4 + local.get $4 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const 1 + i32.and if $if local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $2 - i32.const 765 + local.get $4 + i32.load offset=8 i32.store offset=8 + local.get $4 + local.get $3 + i32.const -2 + i32.and + local.tee $3 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i32.load offset=8 + i32.store offset=8 + local.get $3 local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9872 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv + i64.load align=4 + i64.store align=4 + local.get $3 local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + i32.load offset=8 + i32.store offset=8 end ;; $if local.get $2 - i32.const 24 + i32.const 12 i32.add - local.set $10 - local.get $0 - i32.load offset=16 - local.set $4 - local.get $0 - i32.load offset=4 - local.set $6 - local.get $0 - local.get $1 + local.set $3 + local.get $2 + i32.const -64 + i32.sub + local.tee $5 + local.tee $7 + i32.const 7496 + i32.store + local.get $7 + local.get $4 i32.store offset=4 + local.get $2 + i32.const 40 + i32.add + local.tee $7 + local.get $5 + call $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb local.get $0 + i32.const 8 + i32.add + local.set $9 local.get $0 - local.get $1 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm - i32.store offset=16 - local.get $0 - i32.load offset=12 - local.set $1 - local.get $0 - local.get $0 - i32.load offset=4 - i32.store offset=12 - local.get $1 - local.get $6 - i32.lt_u - if $if_0 - loop $loop - local.get $1 - i32.const 2 - i32.shl - local.get $4 - i32.add - i32.load - local.tee $3 - if $if_1 - block $block - local.get $3 - local.get $1 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $4 - i32.add - i32.load - i32.eq - if $if_2 - local.get $1 - i32.const 1 - i32.add - local.set $3 + i32.const 12 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + loop $loop + block $block_1 + block $block_2 + block $block_3 + local.get $1 + i32.load + local.tee $6 + local.get $1 + i32.load offset=4 + i32.lt_u + if $if_0 + local.get $6 + i32.load8_s + local.tee $11 + i32.const 255 + i32.and + local.set $0 + local.get $11 + i32.const 0 + i32.gt_s + if $if_1 + local.get $1 + local.get $6 + i32.const 1 + i32.add + i32.store + br $block_3 + end ;; $if_1 + else + i32.const 0 + local.set $0 + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj + local.tee $0 + i32.const -1 + i32.add + i32.const 126 + i32.gt_u + br_if $block_2 + end ;; $block_3 local.get $0 - local.get $4 - local.get $1 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12TransferTreeEPKPvm + i32.const 10 + i32.ne + br_if $block_2 local.get $3 - local.set $1 - br $block - end ;; $if_2 - loop $loop_0 + local.get $9 + i32.store local.get $3 - i32.load offset=16 - local.set $7 + local.get $10 + i32.store offset=4 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 local.get $3 - i32.load + i32.const 0 + i32.store offset=24 + block $block_4 (result i32) + block $block_5 + local.get $1 + i32.load + local.tee $0 + local.get $1 + i32.load offset=4 + i32.lt_u + if $if_2 + local.get $0 + i32.load8_s + local.tee $6 + i32.const -1 + i32.gt_s + if $if_3 + local.get $1 + local.get $0 + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 255 + i32.and + local.set $0 + br $block_5 + end ;; $if_3 + end ;; $if_2 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $0 + i32.const -1 + i32.gt_s + if $if_4 (result i32) + br $block_5 + else + i32.const 6 + end ;; $if_4 + br $block_4 + end ;; $block_5 + local.get $2 + local.get $1 + local.get $0 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $2 + i32.load offset=4 + i32.const 0 + i32.ge_s + if $if_5 + local.get $3 + local.get $1 + call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + if $if_6 + i32.const 6 + local.get $1 + local.get $2 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + i32.eqz + br_if $block_4 + drop + i32.const 0 + i32.const 6 + local.get $5 + i32.load + local.get $5 + local.get $5 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $6 + select + local.get $3 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + local.get $6 + select + i32.const 0 + i32.const 12251 + call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ + select + br $block_4 + end ;; $if_6 + end ;; $if_5 + i32.const 6 + end ;; $block_4 + local.set $6 local.get $3 + i32.load offset=24 + local.set $0 local.get $3 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.tee $8 - i32.load8_s - local.tee $9 - if $if_3 - i32.const 0 - local.set $5 - loop $loop_1 - local.get $9 - local.get $5 - i32.const 5 - i32.mul - i32.add - local.set $5 - local.get $8 - i32.const 1 - i32.add - local.tee $8 - i32.load8_s - local.tee $9 - br_if $loop_1 - end ;; $loop_1 - else - i32.const 0 - local.set $5 - end ;; $if_3 - local.get $10 - local.get $0 + i32.store offset=24 local.get $0 - i32.load offset=8 + if $if_7 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_7 local.get $5 - i32.add - local.get $0 - i32.load offset=4 - i32.const -1 - i32.add - i32.and - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE - local.get $7 - if $if_4 - local.get $7 - local.set $3 - br $loop_0 - end ;; $if_4 - end ;; $loop_0 - end ;; $block - end ;; $if_1 - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $6 - i32.lt_u - br_if $loop - end ;; $loop - end ;; $if_0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_8 + local.get $5 + i32.load + call $_free + end ;; $if_8 + block $block_6 + local.get $6 + i32.const 7 + i32.and + br_table + $block_6 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_6 + br $loop + end ;; $block_2 + local.get $0 + i32.eqz + br_if $block_0 + local.get $1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE + br_if $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + i32.const 1 + end ;; $block + local.set $1 + local.get $7 + call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev + local.get $8 + i32.load offset=8 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 255 + i32.and local.get $0 - i32.load offset=20 - if $if_5 + i32.const 0 + i32.lt_s + select + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.load + local.tee $0 + i32.load + local.tee $3 + i32.const 1 + i32.and + if $if_10 (result i32) + local.get $3 + i32.const -2 + i32.and + else + local.get $0 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_10 + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $2 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + i32.load offset=8 + i32.store offset=8 + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $4 + i32.load8_s offset=11 + else + local.get $0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.ge_s + if $if_11 local.get $2 - global.set $30 + global.set $32 + local.get $1 return - end ;; $if_5 + end ;; $if_11 local.get $4 + i32.load call $_free local.get $2 - global.set $30 + global.set $32 + local.get $1 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $1) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.eqz + if $if + i32.const 28 + call $__Znwm + local.tee $0 + call $__ZN6google8protobuf9ListValueC2Ev + local.get $0 + return + end ;; $if + local.get $0 + i32.load offset=60 + if $if_0 + local.get $0 + i32.load offset=48 + if $if_1 + i32.const 4592 + i64.const 32 + local.get $0 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_1 + end ;; $if_0 + local.get $0 + i32.const 32 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $1 + local.get $0 + call $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE + local.get $1 + ) + + (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 112 - i32.add - global.set $30 - local.get $5 - i32.const 48 - i32.add - local.set $4 + local.get $0 + i32.const 7008 + i32.store + local.get $0 local.get $1 - i32.load offset=12 - local.tee $7 + i32.store offset=4 + local.get $0 local.get $1 - i32.load offset=4 - i32.ne + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store offset=12 align=4 + local.get $0 + i64.const 0 + i64.store offset=20 align=4 + i32.const 6816 + i32.load + i32.eqz if $if - local.get $1 - i32.load offset=16 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - i32.eqz - if $if_0 - local.get $4 - i32.const 3 - i32.store - local.get $4 - i32.const 8384 - i32.store offset=4 - local.get $4 - i32.const 672 - i32.store offset=8 - local.get $4 - i64.const 0 - i64.store offset=12 align=4 - local.get $4 - i32.const 0 - i32.store offset=20 - local.get $4 - i32.const 9446 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $4 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 + return end ;; $if - local.get $5 - i32.const 24 - i32.add + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + ) + + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 local.set $4 - local.get $5 - i32.const 72 - i32.add - local.tee $6 - local.get $1 - local.get $3 - i32.const 0 - call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE - local.get $6 - i32.load - if $if_1 - local.get $4 - i32.const 3 - i32.store - local.get $4 - i32.const 8384 - i32.store offset=4 - local.get $4 - i32.const 678 - i32.store offset=8 - local.get $4 - i64.const 0 - i64.store offset=12 align=4 - local.get $4 - i32.const 0 - i32.store offset=20 - local.get $4 - i32.const 9547 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $4 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_1 - local.get $1 - i32.load offset=16 - local.tee $7 - local.get $2 - i32.const 2 - i32.shl + global.get $32 + i32.const 16 i32.add - local.tee $8 - i32.load - local.tee $4 - if $if_2 - local.get $4 - local.get $2 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $7 - i32.add - i32.load - i32.eq - if $if_3 - local.get $0 + global.set $32 + block $block + block $block_0 local.get $1 - local.get $2 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE - local.get $5 - global.set $30 - return - end ;; $if_3 - i32.const 0 - local.set $7 - loop $loop - local.get $7 + i32.load + local.tee $2 + local.get $1 + i32.load offset=4 + i32.ge_u + br_if $block_0 + local.get $2 + i32.load8_s + i32.const 10 + i32.ne + br_if $block_0 + local.get $1 + local.get $2 i32.const 1 i32.add - local.set $7 - local.get $4 - i32.load offset=16 - local.tee $4 - br_if $loop - end ;; $loop - local.get $7 - i32.const 9 - i32.lt_u - if $if_4 - local.get $7 + i32.store + local.get $1 + local.get $0 i32.const 8 - i32.ne - if $if_5 - local.get $3 - local.get $8 - i32.load - i32.store offset=16 - local.get $8 - local.get $3 - i32.store - local.get $0 - local.get $3 - i32.store + i32.add + local.tee $3 + call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE + i32.eqz + if $if + local.get $4 + global.set $32 + i32.const 0 + return + end ;; $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_s + if $if_0 + local.get $2 + i32.load8_s + i32.const 18 + i32.eq + if $if_1 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.load offset=8 + i32.load + local.set $6 + local.get $0 + local.get $2 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ + local.tee $5 + i32.store offset=20 + local.get $6 + local.get $0 + i32.load offset=4 + i32.load offset=8 + i32.load + i32.ne + if $if_2 + local.get $1 + i32.load offset=4 + local.tee $6 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $7 + i32.const 1 + i32.lt_s + if $if_3 + local.get $1 + i32.const 1 + local.get $7 + call $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii + drop + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $6 + local.get $0 + i32.load offset=20 + local.set $5 + else + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + end ;; $if_3 + block $block_1 + block $block_2 + local.get $2 + local.get $6 + i32.lt_u + if $if_4 + local.get $2 + i32.load8_s + local.tee $6 + i32.const -1 + i32.gt_s + if $if_5 + local.get $1 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 255 + i32.and + local.set $2 + br $block_2 + end ;; $if_5 + end ;; $if_4 + local.get $1 + call $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv + local.tee $2 + i32.const -1 + i32.gt_s + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $4 + local.get $1 + local.get $2 + call $__ZN6google8protobuf2io16CodedInputStream35IncrementRecursionDepthAndPushLimitEi + local.get $4 + i32.load offset=4 + i32.const 0 + i32.ge_s + if $if_6 + local.get $5 + local.get $1 + call $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + if $if_7 + local.get $1 + local.get $4 + i32.load + call $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi + i32.eqz + br_if $block_1 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_8 + block $block_3 + local.get $1 + i32.load offset=32 + i32.eqz + if $if_9 + local.get $1 + i32.load offset=12 + local.get $1 + i32.load offset=28 + i32.ne + br_if $block_3 + end ;; $if_9 + local.get $1 + i32.const 0 + i32.store offset=20 + local.get $1 + i32.const 1 + i32.store8 offset=24 + local.get $4 + global.set $32 + i32.const 1 + return + end ;; $block_3 + end ;; $if_8 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE + local.set $0 + local.get $4 + global.set $32 + local.get $0 + return + end ;; $if_7 + end ;; $if_6 + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ + local.get $4 + global.set $32 + i32.const 0 + return + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $4 + i32.const 0 + i32.store + local.get $4 + i32.const 0 + i32.store16 offset=4 + local.get $4 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.load8_s offset=19 + i32.const 0 + i32.lt_s + if $if_10 + local.get $0 + i32.load offset=8 + i32.const 0 + i32.store8 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 + i32.const 0 + i32.lt_s + if $if_11 local.get $0 - local.get $1 - i32.store offset=4 + i32.load offset=8 + call $_free local.get $0 - local.get $2 - i32.store offset=8 - local.get $5 - global.set $30 - return - end ;; $if_5 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $6 - i32.const 3 - i32.store - local.get $6 - i32.const 8384 - i32.store offset=4 - local.get $6 - i32.const 878 - i32.store offset=8 - local.get $6 - i64.const 0 - i64.store offset=12 align=4 - local.get $6 + local.get $0 i32.const 0 - i32.store offset=20 - local.get $6 - i32.const 9603 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $6 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_4 - local.get $1 + i32.store8 offset=8 + local.get $0 + i32.const 0 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 + end ;; $if_10 + local.get $0 + i32.const 0 + i32.store offset=8 local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm - local.get $6 - local.get $1 + local.get $4 + i32.load + i32.store + local.get $2 + local.get $4 + i32.load16_s offset=4 + i32.store16 offset=4 + local.get $2 + local.get $4 + i32.load8_s offset=6 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=19 + end ;; $block + local.get $0 + i32.load + i32.load + local.tee $2 + if $if_12 + local.get $2 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ + local.set $2 + else + i32.const 20 + call $__Znwm + local.tee $2 + i32.const 0 + i32.store offset=12 + local.get $2 + i32.const 24664 + i32.store offset=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.const 0 + i32.store offset=16 local.get $2 + i32.const 6840 + i32.store + end ;; $if_12 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $3 + if $if_13 + local.get $3 local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE - local.get $6 i32.load - local.set $3 - local.get $6 i32.load offset=4 - local.set $4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $0 + i32.load offset=24 + local.set $2 + end ;; $if_13 + local.get $2 + local.get $2 + i32.load offset=16 + i32.const 1 + i32.or + i32.store offset=16 + local.get $2 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $5 + i32.const 24664 + i32.eq + if $if_14 (result i32) + local.get $3 local.get $2 - i32.const -2 + i32.load offset=12 + i32.const 24664 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + else + local.get $5 + end ;; $if_14 + local.get $0 + i32.const 8 + i32.add + local.tee $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ + local.get $0 + i32.load offset=24 + local.tee $3 + i32.load + i32.load offset=44 + local.set $5 + local.get $3 + local.get $1 + local.get $5 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.tee $5 + if $if_15 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.load + i32.load offset=72 + local.set $3 + local.get $2 + local.get $1 + local.get $3 + i32.const 63 i32.and - local.get $6 - i32.load offset=8 + call_indirect $28 (type $4) + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 - i32.ne - if $if_6 - local.get $5 - i32.const 3 - i32.store - local.get $5 - i32.const 8384 - i32.store offset=4 - local.get $5 - i32.const 685 - i32.store offset=8 - local.get $5 - i64.const 0 - i64.store offset=12 align=4 - local.get $5 - i32.const 0 - i32.store offset=20 - local.get $5 - i32.const 9643 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $5 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_6 - else + i32.store offset=20 + local.get $0 + i32.load offset=24 + local.tee $3 local.get $3 - local.get $4 + i32.load offset=16 + i32.const 2 + i32.or i32.store offset=16 - local.get $8 local.get $3 - i32.store + i32.load offset=8 + local.tee $1 + if $if_16 (result i32) + local.get $2 + else + local.get $3 + local.get $3 + i32.load offset=12 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $1 + i32.store offset=8 + local.get $0 + i32.load offset=20 + end ;; $if_16 local.get $1 - local.set $4 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $1 - i32.load offset=12 + call $__ZN6google8protobuf5Value4SwapEPS1_ + end ;; $if_15 + local.get $0 + i32.load offset=24 local.tee $1 - local.get $2 + i32.load + i32.load offset=20 + local.set $2 local.get $1 - i32.lt_u - select - i32.store offset=12 - local.get $0 - local.get $3 - i32.store + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + i32.eqz + if $if_17 + local.get $4 + global.set $32 + local.get $5 + return + end ;; $if_17 local.get $0 + i32.const 0 + i32.store offset=24 local.get $4 - i32.store offset=4 - local.get $0 - local.get $2 - i32.store offset=8 + global.set $32 local.get $5 - global.set $30 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 96 + global.get $32 + local.set $3 + global.get $32 + i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 72 - i32.add - local.set $9 - local.get $5 - i32.const -64 - i32.sub - local.set $7 - local.get $5 - i32.const 40 - i32.add - local.set $2 - local.get $5 - i32.const 16 - i32.add - local.set $11 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $4 - local.get $1 - i32.const 2 - i32.shl + i32.load offset=8 + local.set $4 + local.get $3 + i32.const 16 i32.add - i32.load - local.set $3 + local.tee $2 local.get $1 - i32.const 1 - i32.xor - i32.const 2 - i32.shl + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 0 + i32.store offset=12 + local.get $3 local.get $4 - i32.add + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE + local.get $3 + i32.load local.set $4 - block $block - block $block_0 - local.get $3 - if $if - local.get $3 - local.get $4 - i32.load - i32.eq - br_if $block_0 - end ;; $if - local.get $4 - i32.load - local.tee $4 - i32.eqz - local.get $3 - local.get $4 - i32.ne - i32.or - i32.eqz - br_if $block_0 - br $block - end ;; $block_0 - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 837 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9765 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $block - local.get $0 - i32.load offset=20 + i32.load + call $_free + end ;; $if + local.get $4 + i32.load offset=12 local.tee $2 - if $if_0 (result i32) - local.get $2 - i32.load offset=60 - if $if_1 - local.get $2 - i32.load offset=48 - if $if_2 - i32.const 5464 - i64.const 16 - local.get $2 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 + if $if_0 + local.get $3 + global.set $32 local.get $2 i32.const 16 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - else - i32.const 16 - call $__Znwm + i32.add + return end ;; $if_0 - local.set $6 + local.get $4 local.get $0 - i32.load offset=20 - local.set $2 - local.get $5 - i32.const 0 - i32.store offset=4 - local.get $5 - local.get $2 - i32.store offset=8 - local.get $5 - i32.const 0 + local.get $1 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ + local.tee $0 i32.store offset=12 - local.get $5 - local.get $5 - i32.const 4 + local.get $3 + global.set $32 + local.get $0 + i32.const 16 i32.add - local.tee $4 - i32.store - local.get $6 - i32.const 0 - i32.store - local.get $5 - i32.load offset=8 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 local.set $2 - local.get $6 - i32.const 4 + global.get $32 + i32.const 48 i32.add - local.tee $8 - i32.const 0 - i32.store - local.get $6 + global.set $32 local.get $2 - i32.store offset=8 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $6 - local.get $8 - i32.store - local.get $4 - local.get $5 - i32.load - local.tee $2 - i32.ne - if $if_3 - loop $loop - local.get $7 - local.get $8 - i32.store - local.get $9 - local.get $7 - i32.load - i32.store - local.get $6 - local.get $9 - local.get $2 - i32.const 16 - i32.add - local.tee $3 - local.get $3 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE30__emplace_hint_unique_key_argsIS7_JRKS7_EEENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEENS_21__tree_const_iteratorIS7_SP_lEERKT_DpOT0_ - local.get $2 - i32.load offset=4 - local.tee $3 - if $if_4 - local.get $3 - local.set $2 - loop $loop_0 - local.get $2 - i32.load - local.tee $3 - if $if_5 - local.get $3 - local.set $2 - br $loop_0 - end ;; $if_5 - end ;; $loop_0 - else - local.get $2 - local.get $2 - i32.const 8 - i32.add - local.tee $3 - i32.load - local.tee $2 - i32.load - i32.ne - if $if_6 - local.get $3 - local.set $2 - loop $loop_1 (result i32) - local.get $2 - i32.load - local.tee $10 - i32.const 8 - i32.add - local.tee $2 - i32.load - local.set $3 - local.get $3 - i32.load - local.get $10 - i32.ne - br_if $loop_1 - local.get $3 - end ;; $loop_1 - local.set $2 - end ;; $if_6 - end ;; $if_4 - local.get $2 - local.get $4 - i32.ne - br_if $loop - end ;; $loop - end ;; $if_3 - local.get $5 - local.get $4 - i32.load - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE - local.get $0 - i32.load offset=16 - local.tee $2 - local.get $1 - i32.const 2 - i32.shl + i32.const 32 i32.add - i32.load local.tee $3 - if $if_7 (result i32) - i32.const 0 - local.set $2 - loop $loop_2 - local.get $7 - local.get $3 - i32.store - local.get $9 - local.get $6 - local.get $7 - local.get $7 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $3 - i32.load offset=16 - local.set $4 - local.get $3 - i32.const 0 - i32.store offset=16 - local.get $4 - if $if_8 - local.get $4 - local.set $3 - br $loop_2 - end ;; $if_8 - end ;; $loop_2 - local.get $2 - local.set $8 - local.get $0 - i32.load offset=16 - else - i32.const 0 - local.set $8 - local.get $2 - end ;; $if_7 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 1 - i32.xor - local.tee $10 - i32.const 2 - i32.shl - i32.add + i32.const 0 + call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE + local.get $3 + i32.load offset=4 + local.set $4 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $3 i32.load - local.tee $3 - if $if_9 - i32.const 0 - local.set $2 - loop $loop_3 - local.get $7 - local.get $3 - i32.store - local.get $9 - local.get $6 - local.get $7 - local.get $7 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $3 - i32.load offset=16 - local.set $4 - local.get $3 - i32.const 0 - i32.store offset=16 - local.get $4 - if $if_10 - local.get $4 - local.set $3 - br $loop_3 - end ;; $if_10 - end ;; $loop_3 - else - i32.const 0 - local.set $2 - end ;; $if_9 - local.get $6 - i32.load offset=12 - local.get $2 - local.get $8 - i32.add - i32.eq - if $if_11 - local.get $0 - i32.load offset=16 - local.get $10 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - local.get $0 - i32.load offset=16 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - local.get $5 - global.set $30 + local.tee $1 + i32.eqz + if $if + local.get $2 + global.set $32 return - end ;; $if_11 - local.get $11 - local.tee $2 - i32.const 3 + end ;; $if + local.get $2 + local.get $1 i32.store local.get $2 - i32.const 8384 + local.get $4 i32.store offset=4 local.get $2 - i32.const 848 + local.get $5 i32.store offset=8 + local.get $0 + i32.load + i32.eqz + if $if_0 + local.get $1 + i32.load offset=12 + local.tee $1 + if $if_1 + local.get $1 + call $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev + local.get $1 + call $_free + end ;; $if_1 + end ;; $if_0 local.get $2 - i64.const 0 - i64.store offset=12 align=4 local.get $2 - i32.const 0 - i32.store offset=20 + i64.load + i64.store offset=16 local.get $2 - i32.const 9830 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev + i32.load offset=8 + i32.store offset=24 + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv local.get $0 - i32.load offset=16 - local.get $10 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store + i32.load offset=8 + local.set $0 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $3 + local.get $2 + i32.load offset=24 + i32.store offset=8 local.get $0 - i32.load offset=16 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - local.get $5 - global.set $30 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE + local.get $2 + global.set $32 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $1) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $1 - i32.load offset=16 - local.tee $6 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.tee $5 + local.get $0 i32.load - local.get $2 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $6 - i32.add i32.load - i32.ne + local.tee $3 if $if - local.get $4 - i32.const 3 - i32.store - local.get $4 - i32.const 8384 + local.get $3 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ + local.set $2 + else + i32.const 20 + call $__Znwm + local.tee $2 + i32.const 0 + i32.store offset=12 + local.get $2 + i32.const 24664 i32.store offset=4 - local.get $4 - i32.const 713 + local.get $2 + i32.const 0 i32.store offset=8 - local.get $4 - i64.const 0 - i64.store offset=12 align=4 - local.get $4 + local.get $2 i32.const 0 - i32.store offset=20 - local.get $4 - i32.const 9718 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $4 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $1 - i32.load offset=16 + i32.store offset=16 local.get $2 - i32.const 2 - i32.shl - i32.add - local.set $5 + i32.const 6840 + i32.store end ;; $if + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + local.get $2 + i32.store offset=24 local.get $3 - i32.const 0 - i32.store offset=16 - local.get $5 - i32.load - local.set $6 + if $if_0 + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $0 + i32.load offset=24 + local.set $2 + end ;; $if_0 + local.get $0 + i32.load offset=20 + local.set $4 + local.get $2 + local.get $2 + i32.load offset=16 + i32.const 2 + i32.or + i32.store offset=16 + local.get $2 + i32.load offset=8 + local.tee $3 + if $if_1 + local.get $3 + local.set $2 + else + local.get $2 + local.get $2 + i32.load offset=12 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $2 + i32.store offset=8 + end ;; $if_1 + local.get $2 local.get $4 - i32.const 24 + call $__ZN6google8protobuf5Value4SwapEPS1_ + local.get $0 + i32.load offset=4 + local.get $0 + i32.const 8 i32.add local.tee $5 - local.get $3 - i32.store - local.get $4 - i32.const 32 - i32.add - local.get $6 - local.get $5 - local.get $5 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 + i32.load offset=24 + local.tee $4 local.get $4 - i32.load offset=32 i32.load offset=16 - i32.store + i32.const 1 + i32.or + i32.store offset=16 + block $block (result i32) + local.get $4 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $2 + i32.const 24664 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24664 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block + if $if_3 + local.get $2 + i32.load + i32.const 0 + i32.store8 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $2 + i32.const 0 + i32.store8 offset=11 + end ;; $if_3 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $2 + local.get $5 + i32.load offset=8 + i32.store offset=8 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 local.get $0 + i32.load offset=24 + local.tee $2 + i32.load + i32.load offset=44 + local.set $3 + local.get $2 local.get $1 - i32.store offset=4 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.tee $4 + if $if_5 + local.get $0 + i32.load offset=24 + local.tee $3 + i32.load + i32.load offset=72 + local.set $1 + local.get $5 + local.get $3 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ + local.get $0 + local.get $0 + i32.load offset=4 + local.get $5 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ + local.tee $2 + i32.store offset=20 + local.get $0 + i32.load offset=24 + local.tee $3 + local.get $3 + i32.load offset=16 + i32.const 2 + i32.or + i32.store offset=16 + local.get $3 + i32.load offset=8 + local.tee $1 + if $if_6 (result i32) + local.get $2 + else + local.get $3 + local.get $3 + i32.load offset=12 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $1 + i32.store offset=8 + local.get $0 + i32.load offset=20 + end ;; $if_6 + local.get $1 + call $__ZN6google8protobuf5Value4SwapEPS1_ + end ;; $if_5 local.get $0 - local.get $2 - i32.const -2 + i32.load offset=24 + local.tee $3 + i32.load + i32.load offset=20 + local.set $1 + local.get $3 + local.get $1 + i32.const 63 i32.and - i32.store offset=8 + call_indirect $28 (type $4) + i32.eqz + if $if_7 + local.get $4 + return + end ;; $if_7 + local.get $0 + i32.const 0 + i32.store offset=24 local.get $4 - global.set $30 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $1) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - local.get $4 - local.get $2 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ - local.tee $5 - i32.load - local.tee $2 + (result i32) + (local $1 i32) + local.get $0 if $if local.get $0 - local.get $2 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - local.get $4 - global.set $30 - return - end ;; $if - local.get $1 - i32.load offset=8 - local.tee $2 - if $if_0 (result i32) - local.get $2 i32.load offset=60 - if $if_1 - local.get $2 + if $if_0 + local.get $0 i32.load offset=48 - if $if_2 - i32.const 5464 + if $if_1 + i32.const 4624 i64.const 24 - local.get $2 + local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 - local.get $2 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_1 + end ;; $if_0 + local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $1 + local.get $0 + i32.store offset=12 + local.get $1 + local.set $0 else i32.const 20 call $__Znwm - end ;; $if_0 - local.tee $2 - local.get $3 - i32.load - i32.store offset=16 - local.get $4 - i32.load - local.set $3 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 + local.tee $0 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $0 + i32.const 24664 i32.store offset=4 - local.get $2 - local.get $3 + local.get $0 + i32.const 0 i32.store offset=8 - local.get $5 - local.get $2 - i32.store - local.get $1 - i32.load - i32.load - local.tee $3 - if $if_3 (result i32) - local.get $1 - local.get $3 - i32.store - local.get $5 - i32.load - else - local.get $2 - end ;; $if_3 - local.set $3 - local.get $1 - i32.load offset=4 - local.get $3 - call $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ - local.get $1 - local.get $1 - i32.load offset=12 - i32.const 1 - i32.add - i32.store offset=12 local.get $0 - local.get $2 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 6840 i32.store local.get $0 - i32.const 1 - i32.store8 offset=4 - local.get $4 - global.set $30 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $5) + (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - local.tee $5 - i32.eqz - if $if - local.get $1 - local.get $3 - i32.store - local.get $3 - return - end ;; $if - local.get $0 - i32.const 4 - i32.add + (local $9 i64) + global.get $32 local.set $3 - local.get $2 - i32.load - local.tee $8 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.set $2 - local.get $8 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 block $block - block $block_0 - block $block_1 + local.get $0 + local.get $1 + i32.eq + br_if $block + local.get $0 + i32.const 4 + i32.add + local.tee $5 + i32.load + local.tee $2 + i32.const 1 + i32.and + i32.eqz + local.set $7 + local.get $2 + i32.const -2 + i32.and + local.set $2 + local.get $7 + if $if (result i32) + local.get $2 + else + local.get $2 + i32.load offset=12 + end ;; $if + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $8 + i32.const -2 + i32.and + local.set $6 + local.get $8 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.load offset=12 + local.set $6 + end ;; $if_0 + local.get $4 + local.get $6 + i32.eq + if $if_1 + local.get $0 + i64.load offset=8 + local.set $9 + local.get $0 + local.get $1 + i64.load offset=8 + i64.store offset=8 + local.get $1 + local.get $9 + i64.store offset=8 + local.get $0 + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=20 + i32.store offset=20 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $5 + i32.load + local.tee $0 + local.get $1 + i32.const 4 + i32.add + local.tee $1 + i32.load + local.tee $2 + i32.or + i32.const 1 + i32.and + i32.eqz + br_if $block + local.get $2 + i32.const 1 + i32.and + if $if_2 + local.get $0 + local.set $1 local.get $2 - if $if_0 - local.get $5 - local.set $0 - local.get $3 - local.set $2 - loop $loop - local.get $0 - i32.load offset=16 - local.tee $9 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 - local.get $9 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $4 - select - local.tee $7 - local.get $6 - i32.lt_u - local.set $10 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - local.get $7 - local.get $6 - local.get $10 - select - local.tee $11 - i32.eqz - local.tee $12 - i32.eqz - if $if_1 - local.get $8 - i32.load - local.tee $5 - local.get $9 - i32.load - local.get $9 - local.get $4 - select - local.tee $3 - local.get $11 - call $_memcmp - local.tee $13 - if $if_2 - local.get $13 - i32.const 0 - i32.lt_s - br_if $block_5 - br $block_6 - end ;; $if_2 - end ;; $if_1 - local.get $6 - local.get $7 - i32.lt_u - br_if $block_5 - local.get $12 - br_if $block_4 - local.get $8 - i32.load - local.set $5 - local.get $9 - i32.load - local.get $9 - local.get $4 - select - local.set $3 - end ;; $block_6 - local.get $3 - local.get $5 - local.get $11 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_4 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_3 - br $block - end ;; $block_5 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_1 - local.get $0 - local.set $2 - br $block_2 - end ;; $block_4 - local.get $10 - br_if $block_3 - br $block - end ;; $block_3 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - end ;; $block_2 - local.get $3 - local.set $0 - br $loop - unreachable - end ;; $loop - unreachable - else - local.get $5 - local.set $0 - local.get $3 - local.set $2 - loop $loop_0 - local.get $0 - i32.load offset=16 - local.tee $4 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $7 - local.get $4 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $7 - select - local.tee $10 - local.get $6 - i32.lt_u - local.set $11 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - local.get $10 - local.get $6 - local.get $11 - select - local.tee $12 - i32.eqz - local.tee $13 - i32.eqz - if $if_3 - local.get $8 - local.get $4 - i32.load - local.get $4 - local.get $7 - select - local.tee $3 - local.get $12 - call $_memcmp - local.tee $5 - if $if_4 - local.get $5 - i32.const 0 - i32.lt_s - br_if $block_11 - br $block_10 - end ;; $if_4 - end ;; $if_3 - local.get $6 - local.get $10 - i32.ge_u - if $if_5 - local.get $13 - if $if_6 - br $block_9 - else - local.get $4 - i32.load - local.get $4 - local.get $7 - select - local.set $3 - br $block_10 - end ;; $if_6 - unreachable - end ;; $if_5 - end ;; $block_11 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_1 - local.get $0 - local.set $2 - br $block_7 - end ;; $block_10 - local.get $3 - local.get $8 - local.get $12 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_9 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_8 - br $block - end ;; $block_9 - local.get $11 - br_if $block_8 - br $block - end ;; $block_8 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - end ;; $block_7 - local.get $3 - local.set $0 - br $loop_0 - unreachable - end ;; $loop_0 - unreachable - end ;; $if_0 - unreachable - end ;; $block_1 - local.get $0 - local.set $2 - local.get $1 - local.get $2 - i32.store - local.get $0 - return - end ;; $block_0 - local.get $1 - local.get $0 - i32.store - local.get $2 - return - end ;; $block - local.get $1 - local.get $0 - i32.store - local.get $2 - ) - - (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - local.get $0 - local.get $1 - i32.eq - local.tee $2 - i32.store8 offset=12 - local.get $2 - if $if - return - end ;; $if - block $block - block $block_0 - loop $loop - block $block_1 - local.get $1 - local.tee $5 - i32.load offset=8 - local.tee $3 - i32.const 12 - i32.add - local.tee $2 - i32.load8_s - br_if $block - local.get $3 - local.get $3 - i32.load offset=8 - local.tee $1 - i32.load - local.tee $4 - i32.eq - if $if_0 (result i32) - local.get $1 - i32.load offset=4 - local.tee $4 - i32.eqz - br_if $block_1 - local.get $4 - i32.const 12 - i32.add - local.tee $4 - i32.load8_s - br_if $block_1 - local.get $4 - else - local.get $4 - i32.eqz - br_if $block_0 - local.get $4 - i32.const 12 - i32.add - local.tee $4 - i32.load8_s - br_if $block_0 - local.get $4 - end ;; $if_0 - local.set $5 - local.get $2 - i32.const 1 - i32.store8 - local.get $1 - local.get $0 - local.get $1 - i32.eq - i32.store8 offset=12 - local.get $5 - i32.const 1 - i32.store8 - local.get $0 - local.get $1 - i32.ne - br_if $loop - br $block - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.load - i32.ne - if $if_1 - local.get $3 - local.get $3 - i32.load offset=4 - local.tee $0 - i32.load - local.tee $2 - i32.store offset=4 - local.get $2 - if $if_2 - local.get $2 - local.get $3 - i32.store offset=8 - local.get $3 - i32.load offset=8 - local.set $1 - end ;; $if_2 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $3 - i32.load offset=8 - local.tee $1 - local.get $1 - i32.const 4 - i32.add - local.get $3 + i32.const -2 + i32.and + local.set $0 + else local.get $1 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + local.set $0 + local.get $5 i32.load - i32.eq - select - local.get $0 - i32.store - local.get $0 - local.get $3 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $0 - i32.load offset=8 local.set $1 - local.get $0 - i32.const 12 - i32.add - local.set $2 - end ;; $if_1 - local.get $2 - i32.const 1 - i32.store8 - local.get $1 - i32.const 0 - i32.store8 offset=12 - local.get $1 + end ;; $if_2 + local.get $3 local.get $1 - i32.load - local.tee $0 - i32.load offset=4 - local.tee $2 - i32.store - local.get $2 - if $if_3 - local.get $2 + i32.const 1 + i32.and + if $if_3 (result i32) local.get $1 - i32.store offset=8 + i32.const -2 + i32.and + else + local.get $5 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv end ;; $if_3 - local.get $0 + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $3 local.get $1 i32.load offset=8 i32.store offset=8 local.get $1 - i32.load offset=8 - local.tee $2 - local.get $2 - i32.const 4 - i32.add - local.get $1 - local.get $2 - i32.load - i32.eq - select - local.get $0 - i32.store local.get $0 - local.get $1 - i32.store offset=4 + i64.load align=4 + i64.store align=4 local.get $1 local.get $0 - i32.store offset=8 - return - end ;; $block_0 - local.get $3 - i32.load - local.get $5 - i32.eq - if $if_4 - local.get $3 - local.get $5 - local.tee $0 - i32.load offset=4 - local.tee $2 - i32.store - local.get $2 - if $if_5 - local.get $2 - local.get $3 - i32.store offset=8 - local.get $3 - i32.load offset=8 - local.set $1 - end ;; $if_5 - local.get $5 - local.get $1 - i32.store offset=8 - local.get $3 i32.load offset=8 - local.tee $1 - local.get $1 - i32.const 4 - i32.add - local.get $3 - local.get $1 - i32.load - i32.eq - select - local.get $0 - i32.store + i32.store offset=8 local.get $0 local.get $3 - i32.store offset=4 - local.get $3 - local.get $0 - i32.store offset=8 + i64.load align=4 + i64.store align=4 local.get $0 + local.get $3 i32.load offset=8 - local.set $1 - local.get $0 - i32.const 12 - i32.add + i32.store offset=8 + br $block + end ;; $if_1 + local.get $7 + i32.eqz + if $if_4 + local.get $2 + i32.load offset=12 local.set $2 end ;; $if_4 local.get $2 - i32.const 1 - i32.store8 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $4 local.get $1 - i32.const 0 - i32.store8 offset=12 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ local.get $1 + call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 i32.load offset=4 - local.tee $0 - i32.load local.tee $2 - i32.store offset=4 - local.get $2 - if $if_6 + i32.const 1 + i32.and + if $if_5 local.get $2 - local.get $1 - i32.store offset=8 - end ;; $if_6 - local.get $0 + i32.const -2 + i32.and + local.tee $2 + local.set $6 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $6 + i32.load + i32.const 0 + i32.store8 + local.get $6 + i32.const 0 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $2 + i32.const 0 + i32.store8 offset=11 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.load offset=8 - i32.store offset=8 + local.get $0 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ + local.get $0 + i64.load offset=8 + local.set $9 + local.get $0 + local.get $4 + i64.load offset=8 + i64.store offset=8 + local.get $4 + local.get $9 + i64.store offset=8 + local.get $0 + i32.load offset=20 + local.set $1 + local.get $0 + local.get $4 + i32.load offset=20 + i32.store offset=20 + local.get $4 local.get $1 - i32.load offset=8 - local.tee $2 - local.get $2 + i32.store offset=20 + local.get $5 + i32.load + local.tee $0 + local.get $4 i32.const 4 i32.add - local.get $1 - local.get $2 + local.tee $1 i32.load - i32.eq - select - local.get $0 - i32.store - local.get $0 - local.get $1 - i32.store - local.get $1 + local.tee $2 + i32.or + i32.const 1 + i32.and + if $if_7 + local.get $2 + i32.const 1 + i32.and + if $if_8 + local.get $0 + local.set $1 + local.get $2 + i32.const -2 + i32.and + local.set $0 + else + local.get $1 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + local.set $0 + local.get $5 + i32.load + local.set $1 + end ;; $if_8 + local.get $3 + local.get $1 + i32.const 1 + i32.and + if $if_9 (result i32) + local.get $1 + i32.const -2 + i32.and + else + local.get $5 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_9 + local.tee $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + i32.load offset=8 + i32.store offset=8 + local.get $5 + i32.load + local.set $0 + end ;; $if_7 local.get $0 - i32.store offset=8 + i32.const -2 + i32.and + local.set $1 + local.get $0 + i32.const 1 + i32.and + if $if_10 + local.get $1 + i32.load offset=12 + local.set $1 + end ;; $if_10 + local.get $1 + br_if $block + local.get $4 + i32.load + i32.load offset=4 + local.set $0 + local.get $4 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $3 + global.set $32 + return end ;; $block + local.get $3 + global.set $32 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE30__emplace_hint_unique_key_argsIS7_JRKS7_EEENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEENS_21__tree_const_iteratorIS7_SP_lEERKT_DpOT0_ (type $1) + (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (local $2 i32) + (local $3 i32) (local $4 i32) - global.get $30 + (local $5 i32) + (local $6 i32) + (local $7 f64) + global.get $32 local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $4 - local.get $1 - i32.load - i32.store - local.get $4 - i32.const 12 + global.get $32 + i32.const 32 i32.add - local.tee $1 - local.get $4 - i32.load - i32.store + global.set $32 local.get $0 local.get $1 - local.get $4 - i32.const 8 - i32.add - local.get $4 - i32.const 4 - i32.add - local.get $2 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ - local.tee $2 - i32.load + i32.eq if $if local.get $4 - global.set $30 - return + i32.const 3 + i32.store + local.get $4 + i32.const 11753 + i32.store offset=4 + local.get $4 + i32.const 796 + i32.store offset=8 + local.get $4 + i64.const 0 + i64.store offset=12 align=4 + local.get $4 + i32.const 0 + i32.store offset=20 + local.get $4 + i32.const 12290 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $4 + call $__ZN6google8protobuf8internal10LogMessageD2Ev end ;; $if local.get $0 - i32.load offset=8 - local.tee $1 - if $if_0 (result i32) - local.get $1 - i32.load offset=60 - if $if_1 - local.get $1 - i32.load offset=48 - if $if_2 - i32.const 5464 - i64.const 24 - local.get $1 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_2 - end ;; $if_1 - local.get $1 - i32.const 24 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - else - i32.const 20 - call $__Znwm - end ;; $if_0 - local.tee $1 - local.get $3 - i32.load - i32.store offset=16 - local.get $4 - i32.load offset=8 - local.set $3 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - i32.store offset=4 - local.get $1 - local.get $3 - i32.store offset=8 - local.get $2 + i32.const 4 + i32.add + local.set $2 local.get $1 - i32.store - local.get $0 - i32.load - i32.load + i32.load offset=4 local.tee $3 - if $if_3 - local.get $0 - local.get $3 - i32.store + i32.const 1 + i32.and + if $if_0 local.get $2 i32.load - local.set $1 - end ;; $if_3 - local.get $0 - i32.load offset=4 - local.get $1 - call $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ - local.get $0 - local.get $0 - i32.load offset=12 - i32.const 1 - i32.add - i32.store offset=12 + local.tee $5 + i32.const 1 + i32.and + if $if_1 (result i32) + local.get $5 + i32.const -2 + i32.and + else + local.get $2 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_1 + local.get $3 + i32.const -2 + i32.and + local.tee $3 + local.tee $5 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + select + local.get $5 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $6 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + end ;; $if_0 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + local.get $1 + i32.load offset=20 + i32.const 1 + i32.sub + br_table + $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 + $block_0 ;; default + end ;; $block_6 + local.get $1 + i32.load offset=8 + local.set $1 + local.get $0 + i32.load offset=20 + i32.const 1 + i32.ne + if $if_2 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 1 + i32.store offset=20 + end ;; $if_2 + local.get $0 + local.get $1 + i32.store offset=8 + br $block + end ;; $block_5 + local.get $1 + f64.load offset=8 + local.set $7 + local.get $0 + i32.load offset=20 + i32.const 2 + i32.ne + if $if_3 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 2 + i32.store offset=20 + end ;; $if_3 + local.get $0 + local.get $7 + f64.store offset=8 + br $block + end ;; $block_4 + local.get $1 + i32.load offset=8 + local.set $3 + local.get $0 + i32.load offset=20 + i32.const 3 + i32.eq + if $if_4 + local.get $0 + i32.const 8 + i32.add + local.set $0 + else + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 3 + i32.store offset=20 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.const 24664 + i32.store + end ;; $if_4 + local.get $2 + i32.load + local.tee $2 + i32.const -2 + i32.and + local.set $1 + local.get $2 + i32.const 1 + i32.and + if $if_5 + local.get $1 + i32.load offset=12 + local.set $1 + end ;; $if_5 + local.get $0 + i32.load + local.tee $2 + i32.const 24664 + i32.eq + if $if_6 + local.get $0 + local.get $1 + local.get $3 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + else + local.get $2 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ + end ;; $if_6 + local.get $4 + global.set $32 + return + end ;; $block_3 + local.get $1 + i32.load8_s offset=8 + local.set $1 + local.get $0 + i32.load offset=20 + i32.const 4 + i32.ne + if $if_7 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 4 + i32.store offset=20 + end ;; $if_7 + local.get $0 + local.get $1 + i32.store8 offset=8 + br $block + end ;; $block_2 + block $block_7 (result i32) + block $block_8 + local.get $0 + i32.load offset=20 + i32.const 5 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.load offset=8 + local.set $0 + br $block_8 + else + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 5 + i32.store offset=20 + local.get $2 + i32.load + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $0 + local.get $3 + i32.const 1 + i32.and + if $if_9 (result i32) + local.get $2 + i32.load offset=12 + else + local.get $2 + end ;; $if_9 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ + local.tee $0 + i32.store offset=8 + local.get $1 + i32.load offset=20 + i32.const 5 + i32.eq + br_if $block_8 + i32.const 24536 + end ;; $if_8 + br $block_7 + end ;; $block_8 + local.get $1 + i32.load offset=8 + end ;; $block_7 + local.set $1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf6Struct9MergeFromERKS1_ + br $block + end ;; $block_1 + block $block_9 (result i32) + block $block_10 + local.get $0 + i32.load offset=20 + i32.const 6 + i32.eq + if $if_10 (result i32) + local.get $0 + i32.load offset=8 + local.set $0 + br $block_10 + else + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.const 6 + i32.store offset=20 + local.get $2 + i32.load + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $0 + local.get $3 + i32.const 1 + i32.and + if $if_11 (result i32) + local.get $2 + i32.load offset=12 + else + local.get $2 + end ;; $if_11 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ + local.tee $0 + i32.store offset=8 + local.get $1 + i32.load offset=20 + i32.const 6 + i32.eq + br_if $block_10 + i32.const 24624 + end ;; $if_10 + br $block_9 + end ;; $block_10 + local.get $1 + i32.load offset=8 + end ;; $block_9 + local.set $1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ + br $block + end ;; $block_0 + local.get $4 + global.set $32 + return + end ;; $block local.get $4 - global.set $30 + global.set $32 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) + (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - local.get $1 - i32.load - local.tee $6 - local.set $7 + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 local.get $0 - i32.const 4 - i32.add - local.tee $15 - local.get $6 - i32.ne + local.get $1 + i32.eq if $if - block $block - local.get $6 - i32.load offset=16 - local.tee $13 - i32.load8_s offset=11 - local.tee $5 - i32.const 0 - i32.lt_s - local.set $17 - local.get $4 - i32.load - local.tee $9 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.set $16 - local.get $13 - i32.load offset=4 - local.get $5 - i32.const 255 - i32.and - local.get $17 - select - local.tee $18 - local.get $9 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $16 - select - local.tee $14 - i32.lt_u - local.set $11 - block $block_0 - block $block_1 - block $block_2 - block $block_3 - local.get $18 - local.get $14 - local.get $11 - select - local.tee $12 - i32.eqz - local.tee $8 - i32.eqz - if $if_0 - local.get $9 - i32.load - local.get $9 - local.get $16 - select - local.tee $5 - local.get $13 - i32.load - local.get $13 - local.get $17 - select - local.tee $1 - local.get $12 - call $_memcmp - local.tee $10 - if $if_1 - local.get $10 - i32.const 0 - i32.lt_s - br_if $block - br $block_3 - end ;; $if_1 - end ;; $if_0 - local.get $14 - local.get $18 - i32.lt_u - br_if $block - local.get $8 - br_if $block_2 - local.get $13 - i32.load - local.get $13 - local.get $17 - select - local.set $1 - local.get $9 - i32.load - local.get $9 - local.get $16 - select - local.set $5 - end ;; $block_3 - local.get $1 - local.get $5 - local.get $12 - call $_memcmp - local.tee $1 - i32.eqz - br_if $block_2 - local.get $1 - i32.const 0 - i32.ge_s - br_if $block_1 - br $block_0 - end ;; $block_2 - local.get $11 - i32.eqz - br_if $block_1 - br $block_0 - end ;; $block_1 - local.get $2 - local.get $7 - i32.store - local.get $3 - local.get $7 - i32.store - local.get $3 - return - end ;; $block_0 - local.get $6 - i32.load offset=4 - local.tee $1 - if $if_2 - loop $loop - local.get $1 - i32.load - local.tee $3 - if $if_3 - local.get $3 - local.set $1 - br $loop - end ;; $if_3 - end ;; $loop - else - local.get $6 - i32.const 8 - i32.add - local.tee $3 - i32.load - local.tee $1 - i32.load - local.get $6 - i32.ne - if $if_4 - local.get $3 - local.set $1 - loop $loop_0 (result i32) - local.get $1 - i32.load - local.tee $5 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.set $3 - local.get $3 - i32.load - local.get $5 - i32.ne - br_if $loop_0 - local.get $3 - end ;; $loop_0 - local.set $1 - end ;; $if_4 - end ;; $if_2 - local.get $1 - local.get $15 - i32.ne - if $if_5 - block $block_4 - local.get $1 - i32.load offset=16 - local.tee $8 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $10 - block $block_5 - block $block_6 - local.get $8 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $10 - select - local.tee $5 - local.get $14 - local.get $5 - local.get $14 - i32.lt_u - select - local.tee $3 - i32.eqz - br_if $block_6 - local.get $9 - i32.load - local.get $9 - local.get $16 - select - local.get $8 - i32.load - local.get $8 - local.get $10 - select - local.get $3 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_6 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_4 - br $block_5 - end ;; $block_6 - local.get $14 - local.get $5 - i32.lt_u - br_if $block_4 - end ;; $block_5 - local.get $0 - local.get $2 - local.get $4 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ - return - end ;; $block_4 - end ;; $if_5 - local.get $6 - i32.load offset=4 - if $if_6 - local.get $2 - local.get $1 - i32.store - local.get $1 - return - else - local.get $2 - local.get $7 - i32.store - local.get $6 - i32.const 4 - i32.add - return - end ;; $if_6 - unreachable - end ;; $block - end ;; $if - local.get $6 - i32.load - local.set $5 - local.get $6 - local.get $0 - i32.load - i32.eq - if $if_7 - local.get $7 - local.set $1 - else - block $block_7 - local.get $5 - if $if_8 - local.get $5 - local.set $1 - loop $loop_1 - local.get $1 - i32.load offset=4 - local.tee $3 - if $if_9 - local.get $3 - local.set $1 - br $loop_1 - end ;; $if_9 - end ;; $loop_1 - else - local.get $6 - local.set $3 - loop $loop_2 - local.get $3 - i32.load offset=8 - local.tee $1 - i32.load - local.get $3 - i32.eq - if $if_10 - local.get $1 - local.set $3 - br $loop_2 - end ;; $if_10 - end ;; $loop_2 - end ;; $if_8 - local.get $4 - i32.load - local.tee $11 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $15 - local.get $1 - i32.load offset=16 - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $8 - block $block_8 - block $block_9 - local.get $11 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $15 - select - local.tee $10 - local.get $12 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $8 - select - local.tee $7 - local.get $10 - local.get $7 - i32.lt_u - select - local.tee $3 - i32.eqz - br_if $block_9 - local.get $12 - i32.load - local.get $12 - local.get $8 - select - local.get $11 - i32.load - local.get $11 - local.get $15 - select - local.get $3 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_9 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_7 - br $block_8 - end ;; $block_9 - local.get $7 - local.get $10 - i32.lt_u - br_if $block_7 - end ;; $block_8 - local.get $0 - local.get $2 - local.get $4 - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ - return - end ;; $block_7 - end ;; $if_7 - local.get $5 - if $if_11 (result i32) - local.get $2 - local.get $1 - i32.store - local.get $1 - i32.const 4 - i32.add - else - local.get $2 - local.get $6 - i32.store - local.get $6 - end ;; $if_11 - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $3 - i32.const 24 - i32.add - local.set $2 - local.get $1 - i32.const 7 - i32.le_u - if $if - local.get $2 - i32.const 3 - i32.store - local.get $2 - i32.const 8384 - i32.store offset=4 - local.get $2 - i32.const 926 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 0 - i32.store offset=20 - local.get $2 - i32.const 9925 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $2 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 8384 + i32.const 11753 i32.store offset=4 local.get $3 - i32.const 927 + i32.const 341 i32.store offset=8 local.get $3 i64.const 0 @@ -17533,475 +16978,510 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9960 + i32.const 12290 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $1 - i32.const 2 - i32.shl - local.set $2 + end ;; $if local.get $0 - i32.load offset=20 - local.tee $0 - i32.eqz - if $if_1 + i32.const 4 + i32.add + local.set $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.const 1 + i32.and + if $if_0 local.get $2 - call $__Znwm - local.tee $0 + i32.load + local.tee $5 + i32.const 1 + i32.and + if $if_1 (result i32) + local.get $5 + i32.const -2 + i32.and + else + local.get $2 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_1 + local.get $4 + i32.const -2 + i32.and + local.tee $2 + local.tee $4 + i32.load + local.get $2 + local.get $2 + i32.load8_s offset=11 + local.tee $2 i32.const 0 + i32.lt_s + local.tee $5 + select + local.get $4 + i32.load offset=4 local.get $2 - call $_memset + i32.const 255 + i32.and + local.get $5 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm drop - local.get $3 - global.set $30 - local.get $0 - return - end ;; $if_1 - local.get $2 - i32.const 7 + end ;; $if_0 + local.get $3 + i32.const 24 i32.add - i32.const -8 - i32.and - local.set $1 - local.get $0 - i32.load offset=60 - if $if_2 - local.get $0 - i32.load offset=48 - if $if_3 - i32.const 5464 - local.get $1 - i64.extend_i32_u - local.get $0 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_3 - end ;; $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $0 - i32.const 0 - local.get $2 - call $_memset - drop + local.set $2 local.get $3 - global.set $30 - local.get $0 - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12TransferTreeEPKPvm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 + i32.const 36 i32.add - global.set $30 - local.get $2 - i32.const 2 - i32.shl + local.tee $4 local.get $1 - i32.add + i32.load offset=20 + local.tee $1 + i32.store offset=4 + local.get $4 + local.get $1 + i32.load offset=12 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + local.get $4 + i32.load offset=4 + local.set $5 + local.get $4 + i32.load offset=8 + local.set $6 + local.get $2 + local.get $4 i32.load - local.tee $5 - i32.const 4 - i32.add - local.set $7 + local.tee $1 + i32.store + local.get $2 local.get $5 - i32.load - local.set $3 - loop $loop + i32.store offset=4 + local.get $2 + local.get $6 + i32.store offset=8 + local.get $1 + i32.eqz + if $if_2 local.get $3 - i32.load offset=16 - local.tee $6 - i32.load - local.get $6 - local.get $6 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.tee $2 - i32.load8_s - local.tee $8 - if $if - i32.const 0 - local.set $1 - loop $loop_0 - local.get $1 - i32.const 5 - i32.mul - local.get $8 - i32.add - local.set $1 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - i32.load8_s - local.tee $8 - br_if $loop_0 - end ;; $loop_0 - else - i32.const 0 - local.set $1 - end ;; $if - local.get $4 - local.get $0 - local.get $0 - i32.load offset=8 - local.get $1 - i32.add + global.set $32 + return + end ;; $if_2 + local.get $0 + i32.const 12 + i32.add + local.set $6 + local.get $1 + local.set $0 + loop $loop local.get $0 - i32.load offset=4 - i32.const -1 + i32.load offset=12 + local.tee $0 + i32.const 16 i32.add - i32.and + local.set $4 + local.get $4 local.get $6 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE - local.get $3 - i32.load offset=4 - local.tee $1 - if $if_0 - loop $loop_1 - local.get $1 - i32.load - local.tee $2 - if $if_1 - local.get $2 - local.set $1 - br $loop_1 - end ;; $if_1 - end ;; $loop_1 - else - local.get $3 - local.get $3 - i32.const 8 - i32.add - local.tee $2 - i32.load - local.tee $1 - i32.load - i32.ne - if $if_2 - local.get $2 - local.set $1 - loop $loop_2 (result i32) - local.get $1 - i32.load - local.tee $3 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.set $2 - local.get $2 - i32.load - local.get $3 - i32.ne - br_if $loop_2 - local.get $2 - end ;; $loop_2 - local.set $1 - end ;; $if_2 - end ;; $if_0 - local.get $1 - local.get $7 + local.get $0 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ + local.tee $0 i32.ne if $if_3 - local.get $1 - local.set $3 - br $loop + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.load offset=4 + local.tee $1 + i32.const 1 + i32.and + if $if_4 + local.get $1 + i32.const -2 + i32.and + local.tee $1 + local.set $5 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $5 + i32.load + i32.const 0 + i32.store8 + local.get $5 + i32.const 0 + i32.store offset=4 + else + local.get $1 + i32.const 0 + i32.store8 + local.get $1 + i32.const 0 + i32.store8 offset=11 + end ;; $if_5 + end ;; $if_4 + local.get $0 + local.get $4 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ end ;; $if_3 + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv + local.get $2 + i32.load + local.tee $0 + br_if $loop end ;; $loop - local.get $0 - i32.load offset=20 - local.set $0 - local.get $5 - local.get $7 - i32.load - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE - local.get $0 - if $if_4 - local.get $4 - global.set $30 - return - end ;; $if_4 - local.get $5 - call $_free - local.get $4 - global.set $30 + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $3) + (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - i32.const 6192 - i32.store - local.get $0 - local.get $1 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $0 - i32.const 12 + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - local.tee $2 - local.get $1 - i32.store - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $2 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 5832 - i32.load - i32.eqz - if $if - return - end ;; $if - call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) + global.set $32 local.get $0 - i32.load - local.tee $1 - local.set $2 local.get $1 - i32.eqz + i32.eq if $if - i32.const 24 - call $__Znwm - local.tee $1 - i32.const 0 + local.get $2 + i32.const 3 i32.store - local.get $1 - local.get $1 - i32.store offset=8 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.const 8 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm - i32.store offset=16 - local.get $1 - i32.const 8 - i32.store offset=12 - local.get $1 - i32.const 8 + i32.const 11753 i32.store offset=4 - local.get $0 - local.get $1 + local.get $2 + i32.const 1040 i32.store offset=8 - return + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 12290 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev end ;; $if local.get $1 - i32.load offset=60 + i32.load offset=4 + local.tee $3 + i32.const 1 + i32.and + i32.eqz if $if_0 + local.get $0 + i32.const 8 + i32.add local.get $1 - i32.load offset=48 - if $if_1 - i32.const 4736 - i64.const 24 - local.get $1 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_1 + i32.const 8 + i32.add + call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ + local.get $2 + global.set $32 + return end ;; $if_0 - local.get $1 - i32.const 24 - i32.const 59 - call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE - local.tee $1 - i32.const 0 - i32.store - local.get $1 - local.get $1 - i32.store offset=8 - local.get $1 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.tee $5 + i32.const 1 + i32.and + if $if_1 (result i32) + local.get $5 + i32.const -2 + i32.and + else + local.get $4 + call $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv + end ;; $if_1 + local.get $3 + i32.const -2 + i32.and + local.tee $3 + local.tee $4 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $3 i32.const 0 - i32.store offset=16 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.const 8 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm - i32.store offset=16 - local.get $1 + i32.lt_s + local.tee $5 + select + local.get $4 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $5 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 i32.const 8 - i32.store offset=12 + i32.add local.get $1 i32.const 8 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 + i32.add + call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ + local.get $2 + global.set $32 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev (type $0) + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $3) (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 local.get $0 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv - local.get $0 - i32.load + local.get $1 + i32.eq if $if - return + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11815 + i32.store offset=4 + local.get $2 + i32.const 1586 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 12324 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev end ;; $if - local.get $0 - i32.load offset=8 - local.tee $0 + local.get $1 + i32.load offset=4 + local.tee $3 i32.eqz if $if_0 + local.get $2 + global.set $32 return end ;; $if_0 - local.get $0 - i32.load offset=16 - if $if_1 - local.get $0 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv - local.get $0 - i32.load offset=20 - i32.eqz - if $if_2 - local.get $0 - i32.load offset=16 - call $_free - end ;; $if_2 - end ;; $if_1 - local.get $0 - call $_free - ) - - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 - i32.add - global.set $30 local.get $1 - i32.const 28 - i32.add - local.tee $3 + i32.load offset=12 + local.set $5 local.get $0 - i32.load offset=8 - local.tee $2 - i32.store offset=4 local.get $3 - local.get $2 + call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi + local.set $6 + local.get $0 i32.load offset=12 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - local.get $3 - i64.load offset=4 align=4 - local.set $4 - local.get $3 i32.load - local.tee $2 - i32.eqz - if $if - local.get $1 - global.set $30 - return - end ;; $if - loop $loop - local.get $1 - local.get $2 - i32.store - local.get $1 - local.get $4 - i64.store offset=4 align=4 - local.get $0 - i32.load - i32.eqz - if $if_0 - local.get $2 - i32.load offset=12 - local.tee $2 - if $if_1 - local.get $2 - call $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev + local.get $0 + i32.load offset=4 + i32.sub + local.tee $4 + i32.const 0 + i32.gt_s + local.get $3 + i32.const 0 + i32.gt_s + i32.and + if $if_1 + i32.const 0 + local.set $1 + loop $loop + local.get $5 + i32.const 4 + i32.add + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + i32.const 2 + i32.shl + local.get $6 + i32.add + i32.load + call $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ + local.get $1 + i32.const 1 + i32.add + local.tee $1 + local.get $4 + i32.lt_s + local.get $1 + local.get $3 + i32.lt_s + i32.and + br_if $loop + end ;; $loop + end ;; $if_1 + local.get $0 + i32.load + local.set $7 + local.get $4 + local.get $3 + i32.lt_s + if $if_2 + local.get $4 + local.set $1 + loop $loop_0 + local.get $5 + i32.const 4 + i32.add + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + local.tee $4 + call $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ + local.get $1 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.get $4 + i32.store + local.get $1 + i32.const 1 + i32.add + local.tee $1 + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + end ;; $if_2 + local.get $0 + local.get $3 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + i32.store offset=4 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.get $1 + i32.ge_s + if $if_3 + local.get $2 + global.set $32 + return + end ;; $if_3 + local.get $0 + local.get $1 + i32.store + local.get $2 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $3) + (param $0 i32) + (param $1 i32) + local.get $1 + local.get $0 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ + ) + + (func $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 16 + i32.add + local.tee $1 + i32.const 6928 + i32.store + local.get $1 + call $__ZN6google8protobuf5Value10SharedDtorEv + local.get $0 + i32.load offset=20 + local.tee $1 + i32.const 1 + i32.and + if $if + local.get $1 + i32.const -2 + i32.and + local.tee $1 + local.tee $2 + i32.load offset=12 + i32.const 0 + i32.ne + local.get $1 + i32.eqz + i32.or + i32.eqz + if $if_0 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 local.get $2 + i32.load call $_free end ;; $if_1 + local.get $1 + call $_free end ;; $if_0 - local.get $1 - local.get $1 - i64.load - i64.store offset=16 - local.get $1 - local.get $1 - i32.load offset=8 - i32.store offset=24 - local.get $1 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $0 - i32.load offset=8 - local.set $2 - local.get $3 - local.get $1 - i64.load offset=16 align=4 - i64.store align=4 - local.get $3 - local.get $1 - i32.load offset=24 - i32.store offset=8 - local.get $2 - local.get $3 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE - local.get $1 - i64.load offset=4 align=4 - local.set $4 - local.get $1 - i32.load - local.tee $2 - br_if $loop - end ;; $loop - local.get $1 - global.set $30 + end ;; $if + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_2 + return + end ;; $if_2 + local.get $0 + i32.load + call $_free ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -18011,578 +17491,325 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 32 + global.get $32 + local.set $3 + global.get $32 + i32.const 80 i32.add - global.set $30 - local.get $0 + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $1 i32.load offset=4 - i32.eqz + local.get $0 + i32.ne if $if - local.get $0 - i32.const 0 + local.get $2 + i32.const 3 i32.store - local.get $0 + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 601 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 i32.const 0 - i32.store offset=12 - local.get $5 - global.set $30 - return + i32.store offset=20 + local.get $2 + i32.const 12821 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev end ;; $if - loop $loop + local.get $3 + i32.const 24 + i32.add + local.set $2 + local.get $3 + i32.const 72 + i32.add + local.tee $8 + i32.const 0 + i32.store + local.get $1 + local.get $8 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE + local.set $5 + local.get $1 + i32.load + local.set $6 + local.get $0 + i32.load offset=16 + local.tee $4 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.const 2 + i32.shl + i32.add + local.tee $7 + i32.load + local.tee $9 + i32.eqz + local.set $10 + local.get $1 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $4 + i32.add + local.set $4 + local.get $5 + if $if_0 + block $block + block $block_0 + local.get $10 + br_if $block_0 + local.get $9 + local.get $4 + i32.load + i32.eq + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 607 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 12855 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=16 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $7 + end ;; $block + local.get $0 + local.get $6 + local.get $7 + i32.load + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ + local.set $2 local.get $0 i32.load offset=16 - local.tee $1 - local.get $2 + local.get $1 i32.const 2 i32.shl i32.add - local.tee $3 - i32.load - local.tee $4 - if $if_0 - block $block - local.get $2 - i32.const 1 - i32.xor - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.load - local.get $4 - i32.ne - if $if_1 - local.get $3 - i32.const 0 - i32.store - local.get $4 - local.set $1 - loop $loop_0 - local.get $1 - i32.load offset=16 - local.set $3 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_2 - local.get $1 - i32.load - call $_free - end ;; $if_2 - local.get $0 - i32.load offset=20 - i32.eqz - if $if_3 - local.get $1 - call $_free - end ;; $if_3 - local.get $3 - i32.eqz - br_if $block - local.get $3 - local.set $1 - br $loop_0 - unreachable - end ;; $loop_0 - unreachable - end ;; $if_1 - local.get $2 - i32.const 1 - i32.and - i32.eqz - local.get $4 - local.get $2 - i32.const 1 - i32.add - local.tee $9 - i32.const 2 - i32.shl - local.get $1 - i32.add - local.tee $1 - i32.load - i32.eq - i32.and - if $if_4 (result i32) - local.get $1 - else - local.get $5 - i32.const 3 - i32.store - local.get $5 - i32.const 8384 - i32.store offset=4 - local.get $5 - i32.const 527 - i32.store offset=8 - local.get $5 - i64.const 0 - i64.store offset=12 align=4 - local.get $5 - i32.const 0 - i32.store offset=20 - local.get $5 - i32.const 9997 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $5 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - local.get $0 - i32.load offset=16 - local.get $9 - i32.const 2 - i32.shl - i32.add - end ;; $if_4 - i32.const 0 - i32.store - local.get $0 - i32.load offset=16 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $4 - i32.const 4 - i32.add - local.set $7 + local.get $2 + i32.store + else + block $block_1 + block $block_2 + local.get $10 + br_if $block_2 local.get $4 i32.load - local.set $2 - loop $loop_1 - local.get $2 - i32.load offset=16 - local.set $8 - local.get $2 - local.tee $6 - i32.load offset=4 - local.tee $2 - if $if_5 - loop $loop_2 - local.get $2 - i32.load - local.tee $1 - if $if_6 - local.get $1 - local.set $2 - br $loop_2 - end ;; $if_6 - end ;; $loop_2 - else - local.get $6 - local.get $6 - i32.const 8 - i32.add - local.tee $2 - i32.load - local.tee $1 - i32.load - i32.eq - if $if_7 (result i32) - local.get $1 - else - loop $loop_3 (result i32) - local.get $2 - i32.load - local.tee $3 - i32.const 8 - i32.add - local.tee $2 - i32.load - local.set $1 - local.get $1 - i32.load - local.get $3 - i32.ne - br_if $loop_3 - local.get $1 - end ;; $loop_3 - end ;; $if_7 - local.set $2 - end ;; $if_5 - local.get $6 - i32.load offset=4 - local.tee $1 - if $if_8 - loop $loop_4 - local.get $1 - i32.load - local.tee $3 - if $if_9 - local.get $3 - local.set $1 - br $loop_4 - end ;; $if_9 - end ;; $loop_4 - else - local.get $6 - local.get $6 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.tee $3 - i32.load - i32.eq - if $if_10 (result i32) - local.get $3 - else - loop $loop_5 (result i32) - local.get $1 - i32.load - local.tee $10 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.set $3 - local.get $3 - i32.load - local.get $10 - i32.ne - br_if $loop_5 - local.get $3 - end ;; $loop_5 - end ;; $if_10 - local.set $1 - end ;; $if_8 - local.get $6 - local.get $4 - i32.load - i32.eq - if $if_11 - local.get $4 - local.get $1 - i32.store - end ;; $if_11 - local.get $4 - local.get $4 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $7 - i32.load - local.get $6 - call $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ - local.get $4 - i32.load offset=8 - i32.eqz - if $if_12 - local.get $6 - call $_free - end ;; $if_12 - local.get $8 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_13 - local.get $8 - i32.load - call $_free - end ;; $if_13 - local.get $0 - i32.load offset=20 - i32.eqz - if $if_14 - local.get $8 - call $_free - end ;; $if_14 - local.get $2 - local.get $7 - i32.ne - br_if $loop_1 - end ;; $loop_1 - local.get $0 - i32.load offset=20 - local.set $2 - local.get $4 - local.get $7 - i32.load - call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE - local.get $2 - i32.eqz - if $if_15 - local.get $4 - call $_free - end ;; $if_15 local.get $9 - local.set $2 - end ;; $block - end ;; $if_0 - local.get $2 - i32.const 1 + i32.ne + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 3 + i32.store + local.get $3 + i32.const 11940 + i32.store offset=4 + local.get $3 + i32.const 612 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 12899 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=16 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $7 + end ;; $block_1 + local.get $7 + i32.load + local.tee $5 + local.get $8 + i32.load + i32.const 16 i32.add - local.tee $2 - local.get $0 - i32.load offset=4 - local.tee $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - i32.const 0 - i32.store - local.get $0 - local.get $1 - i32.store offset=12 - local.get $5 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load offset=16 - i32.eqz - if $if - return - end ;; $if - local.get $0 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv - local.get $0 - i32.load offset=20 - if $if_0 - return - end ;; $if_0 - local.get $0 - i32.load offset=16 - call $_free - ) - - (func $__ZN6google8protobuf6StructD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $0 - i32.const 6192 - i32.store - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -2 - i32.and - local.set $2 - local.get $3 - i32.const 1 - i32.and - if $if (result i32) - local.get $2 - i32.load offset=12 - else - local.get $2 - end ;; $if - if $if_0 - local.get $1 - i32.const 3 - i32.store - local.get $1 - i32.const 8176 - i32.store offset=4 - local.get $1 - i32.const 150 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store offset=12 align=4 - local.get $1 - i32.const 0 - i32.store offset=20 - local.get $1 - i32.const 9402 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $1 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - i32.const 1 - i32.and - i32.eqz - br_if $block - local.get $2 - i32.const -2 - i32.and - local.tee $2 - local.tee $3 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ + local.get $5 i32.load offset=12 - local.get $2 i32.eqz - i32.or - br_if $block - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s if $if_1 - local.get $3 - i32.load - call $_free + local.get $1 + i32.const -2 + i32.and + local.set $2 + local.get $0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $5 + i32.load offset=4 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + local.get $4 + i32.eqz + if $if_2 + local.get $5 + call $_free + end ;; $if_2 + local.get $0 + i32.load offset=16 + local.get $1 + i32.const 1 + i32.or + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $0 + i32.load offset=16 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + local.set $1 end ;; $if_1 - local.get $2 - call $_free - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $1 - global.set $30 - return - end ;; $block - local.get $0 + end ;; $if_0 + local.get $6 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - global.set $30 - ) - - (func $__ZN6google8protobuf6StructD0Ev (type $0) - (param $0 i32) - local.get $0 - call $__ZN6google8protobuf6StructD2Ev - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $3) - (param $0 i32) - (param $1 i32) + i32.lt_s + if $if_3 + local.get $6 + i32.load + call $_free + end ;; $if_3 local.get $0 - i64.const 0 - i64.store align=4 + i32.load offset=20 + i32.eqz + if $if_4 + local.get $6 + call $_free + end ;; $if_4 local.get $0 - i32.const 0 - i32.store offset=8 local.get $0 - i32.const 32 - call $__Znwm - local.tee $1 + i32.load + i32.const -1 + i32.add i32.store - local.get $0 - i32.const -2147483616 - i32.store offset=8 - local.get $0 - i32.const 22 - i32.store offset=4 - local.get $1 - i32.const 10378 - i64.load align=1 - i64.store align=1 - local.get $1 - i32.const 10386 - i64.load align=1 - i64.store offset=8 align=1 - local.get $1 - i32.const 10394 - i32.load align=1 - i32.store offset=16 align=1 - local.get $1 - i32.const 10398 - i32.load16_s align=1 - i32.store16 offset=20 align=1 - local.get $1 - i32.const 0 - i32.store8 offset=22 - ) - - (func $__ZNK6google8protobuf6Struct3NewEv (type $4) - (param $0 i32) - (result i32) - i32.const 0 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) local.get $1 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZN6google8protobuf6Struct5ClearEv (type $0) - (param $0 i32) - (local $1 i32) local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv + i32.load offset=12 + i32.ne + if $if_5 + local.get $3 + global.set $32 + return + end ;; $if_5 + local.get $1 local.get $0 i32.load offset=4 - local.tee $0 - i32.const 1 - i32.and - i32.eqz - if $if + local.tee $4 + i32.ge_u + if $if_6 + local.get $3 + global.set $32 return - end ;; $if - local.get $0 - i32.const -2 - i32.and - local.tee $0 - local.set $1 + end ;; $if_6 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 + i32.load offset=16 + local.set $2 + loop $loop local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add i32.load - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store offset=4 - else - local.get $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=11 - end ;; $if_0 + i32.eqz + if $if_7 + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.store offset=12 + local.get $1 + local.get $4 + i32.lt_u + br_if $loop + end ;; $if_7 + end ;; $loop + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $5) (param $0 i32) (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + local.get $2 + i32.load offset=16 + local.set $3 local.get $1 - i32.const 4816 - i32.const 4720 - call $___dynamic_cast - if $if + local.get $2 + i32.eq + if $if (result i32) + local.get $3 + else + local.get $2 local.get $0 local.get $1 - call $__ZN6google8protobuf6Struct9MergeFromERKS1_ - else - i32.const 10255 - i32.const 10296 - i32.const 92 - i32.const 10368 - call $___assert_fail + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ + i32.store offset=16 + local.get $2 end ;; $if ) - (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -18592,2843 +17819,1705 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.set $5 + local.get $1 local.get $0 - i32.load offset=20 + i32.const 4 + i32.add local.tee $2 i32.load + local.get $2 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE local.tee $3 + local.get $2 + i32.eq if $if - block $block - local.get $3 - i32.const 1 - i32.ne - local.get $1 - i32.load8_s offset=18 - i32.const 0 - i32.ne + return + end ;; $if + local.get $3 + i32.load offset=16 + local.tee $2 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $5 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $7 + block $block + block $block_0 + local.get $2 + i32.load offset=4 + local.get $4 + i32.const 255 i32.and - i32.eqz - if $if_0 - local.get $6 - local.get $2 - i32.store offset=4 - local.get $6 - local.get $2 - i32.load offset=12 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - local.get $6 - i32.load offset=4 - local.set $3 - local.get $6 - i32.load offset=8 - local.set $4 - local.get $5 - local.get $6 - i32.load - local.tee $2 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $4 - i32.store offset=8 - local.get $2 - i32.eqz - br_if $block - i32.const 0 - local.set $3 - loop $loop - local.get $2 - i32.load offset=12 - local.set $7 - local.get $0 - i32.load offset=8 - local.tee $4 - if $if_1 - local.get $4 - i32.load offset=60 - if $if_2 - local.get $4 - i32.load offset=48 - if $if_3 - i32.const 4656 - i64.const 32 - local.get $4 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_3 - end ;; $if_2 - local.get $4 - i32.const 32 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $2 - local.get $4 - i32.store offset=12 - else - i32.const 28 - call $__Znwm - local.tee $2 - i32.const 0 - i32.store offset=12 - end ;; $if_1 - local.get $2 - i32.const 15496 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const 6104 - i32.store - local.get $2 - local.get $7 - i32.store offset=20 - local.get $2 - local.get $7 - i32.const 16 - i32.add - i32.store offset=24 - local.get $2 - i32.const 3 - i32.store offset=16 - local.get $3 - if $if_4 - local.get $3 - local.get $3 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_4 - i32.const 1 - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - i32.const 0 - local.get $2 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - call_indirect $26 (type $4) - select - local.set $3 - local.get $5 - i32.load - i32.load offset=12 - local.tee $2 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - if $if_5 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $2 - i32.load - local.set $2 - else - local.get $4 - i32.const 255 - i32.and - local.set $4 - end ;; $if_5 - local.get $2 - local.get $4 - i32.const 1 - i32.const 8718 - call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ - drop - local.get $5 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $5 - i32.load - local.tee $2 - br_if $loop - end ;; $loop - local.get $3 - i32.eqz - br_if $block - local.get $3 - local.get $3 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - br $block - end ;; $if_0 - i32.const -1 - local.get $3 - i32.const 2 - i32.shl - local.get $3 - i32.const 1073741823 - i32.gt_u + local.get $5 select - call $__Znwm - local.set $7 - local.get $6 - local.get $2 - i32.store offset=4 - local.get $6 - local.get $2 - i32.load offset=12 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm - local.get $6 + local.tee $4 + local.get $1 i32.load offset=4 - local.set $3 local.get $6 - i32.load offset=8 - local.set $4 - local.get $5 + i32.const 255 + i32.and + local.get $7 + select + local.tee $6 + local.get $4 local.get $6 + i32.lt_u + select + local.tee $8 + i32.eqz + br_if $block_0 + local.get $1 i32.load - local.tee $2 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $4 - i32.store offset=8 + local.get $1 local.get $7 + select local.get $2 - if $if_6 (result i32) - i32.const 0 - local.set $3 - loop $loop_0 (result i32) - local.get $3 - i32.const 2 - i32.shl - local.get $7 - i32.add - local.get $2 - i32.load offset=12 - i32.store - local.get $5 - call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $5 - i32.load - local.tee $2 - br_if $loop_0 - local.get $3 - end ;; $loop_0 - else - i32.const 0 - end ;; $if_6 - local.tee $9 - i32.const 2 - i32.shl - local.get $7 - i32.add - local.get $6 - call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ - local.get $9 - if $if_7 - i32.const 0 - local.set $3 - loop $loop_1 - local.get $8 - i32.const 2 - i32.shl - local.get $7 - i32.add - local.tee $10 - i32.load - local.set $4 - local.get $0 - i32.load offset=8 - local.tee $5 - if $if_8 - local.get $5 - i32.load offset=60 - if $if_9 - local.get $5 - i32.load offset=48 - if $if_10 - i32.const 4656 - i64.const 32 - local.get $5 - i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) - end ;; $if_10 - end ;; $if_9 - local.get $5 - i32.const 32 - call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm - local.tee $2 - local.get $5 - i32.store offset=12 - else - i32.const 28 - call $__Znwm - local.tee $2 - i32.const 0 - i32.store offset=12 - end ;; $if_8 - local.get $2 - i32.const 15496 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const 6104 - i32.store - local.get $2 - local.get $4 - i32.store offset=20 - local.get $2 - local.get $4 - i32.const 16 - i32.add - i32.store offset=24 - local.get $2 - i32.const 3 - i32.store offset=16 - local.get $3 - if $if_11 - local.get $3 - local.get $3 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_11 - i32.const 1 - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - i32.const 0 - local.get $2 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - call_indirect $26 (type $4) - select - local.set $3 - local.get $10 - i32.load - local.tee $2 - i32.load8_s offset=11 - local.tee $5 - i32.const 0 - i32.lt_s - if $if_12 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $2 - i32.load - local.set $2 - else - local.get $5 - i32.const 255 - i32.and - local.set $4 - end ;; $if_12 - local.get $2 - local.get $4 - i32.const 1 - i32.const 8718 - call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ - drop - local.get $8 - i32.const 1 - i32.add - local.tee $8 - local.get $9 - i32.lt_u - br_if $loop_1 - end ;; $loop_1 - local.get $3 - if $if_13 - local.get $3 - local.get $3 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_13 - end ;; $if_7 - local.get $7 - call $_free - end ;; $block - end ;; $if - local.get $0 + i32.load + local.get $2 + local.get $5 + select + local.get $8 + call $_memcmp + local.tee $1 + i32.eqz + br_if $block_0 + local.get $1 + i32.const 0 + i32.lt_s + if $if_0 + return + end ;; $if_0 + br $block + end ;; $block_0 + local.get $6 + local.get $4 + i32.lt_u + if $if_1 + return + end ;; $if_1 + end ;; $block + local.get $3 i32.load offset=4 - local.tee $2 - i32.const -2 - i32.and - i32.const 15496 - local.get $2 - i32.const 1 - i32.and - select - local.tee $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_14 - local.get $2 + local.tee $1 + if $if_2 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if_3 + local.get $2 + local.set $1 + br $loop + end ;; $if_3 + end ;; $loop + else + local.get $3 + i32.const 8 + i32.add + local.tee $1 i32.load - local.set $2 - end ;; $if_14 - local.get $0 - i32.load offset=4 - local.tee $0 - i32.const -2 - i32.and - i32.const 15496 + local.tee $2 + i32.load + local.get $3 + i32.eq + if $if_4 (result i32) + local.get $2 + else + loop $loop_0 (result i32) + local.get $1 + i32.load + local.tee $5 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.set $2 + local.get $2 + i32.load + local.get $5 + i32.ne + br_if $loop_0 + local.get $2 + end ;; $loop_0 + end ;; $if_4 + local.set $1 + end ;; $if_2 local.get $0 - i32.const 1 - i32.and - select - local.tee $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_15 - local.get $1 - local.get $2 + i32.load + local.get $3 + i32.eq + if $if_5 local.get $0 - i32.load offset=4 - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - else local.get $1 - local.get $2 - local.get $3 - i32.const 255 - i32.and - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - end ;; $if_15 - local.get $6 - global.set $30 + i32.store + end ;; $if_5 + local.get $0 + local.get $0 + i32.load offset=12 + i32.const -1 + i32.add + i32.store offset=12 + local.get $0 + i32.load offset=4 + local.get $3 + call $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ + local.get $0 + i32.load offset=8 + if $if_6 + return + end ;; $if_6 + local.get $3 + call $_free ) - (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $2) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - local.get $0 - local.set $3 local.get $1 - local.set $0 + i32.eqz + if $if + return + end ;; $if + local.get $0 + local.get $1 + i32.load + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + local.get $0 + local.get $1 + i32.load offset=4 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + local.get $0 + i32.load offset=8 + if $if_0 + return + end ;; $if_0 + local.get $1 + call $_free + ) + + (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) block $block block $block_0 - block $block_1 - block $block_2 - block $block_3 - loop $loop - block $block_4 - local.get $0 - local.tee $8 - i32.const -4 - i32.add - local.set $10 - local.get $0 - i32.const -8 - i32.add - local.set $5 - local.get $0 - local.set $15 - local.get $3 - local.set $9 - block $block_5 (result i32) - block $block_6 - block $block_7 - block $block_8 - loop $loop_0 - block $block_9 - block $block_10 - local.get $8 - local.get $9 - i32.sub - local.tee $1 - i32.const 2 - i32.shr_s - local.tee $0 - br_table - $block $block $block_4 $block_3 $block_2 $block_1 - $block_10 ;; default - end ;; $block_10 + local.get $1 + i32.load + local.tee $4 + if $if (result i32) + local.get $1 + i32.load offset=4 + local.tee $2 + if $if_0 (result i32) + loop $loop + local.get $2 + i32.load + local.tee $4 + if $if_1 + local.get $4 + local.set $2 + br $loop + end ;; $if_1 + end ;; $loop + local.get $2 + else + local.get $1 + local.tee $2 + local.set $3 + br $block_0 + end ;; $if_0 + else + local.get $1 + local.tee $2 + end ;; $if + local.tee $4 + i32.load offset=4 + local.tee $5 + if $if_2 (result i32) + local.get $4 + local.set $3 + local.get $5 + local.set $4 + br $block_0 + else + local.get $4 + i32.const 8 + i32.add + local.set $6 + i32.const 0 + local.set $5 + local.get $4 + end ;; $if_2 + local.set $3 + br $block + end ;; $block_0 + local.get $4 + local.get $3 + i32.const 8 + i32.add + local.tee $5 + i32.load + i32.store offset=8 + local.get $5 + local.set $6 + i32.const 1 + local.set $8 + local.get $4 + local.set $5 + end ;; $block + local.get $6 + i32.load + local.tee $7 + i32.load + local.tee $4 + local.get $3 + i32.eq + if $if_3 + local.get $7 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.eq + if $if_4 (result i32) + local.get $5 + local.set $0 + i32.const 0 + else + local.get $7 + i32.load offset=4 + end ;; $if_4 + local.set $4 + else + local.get $7 + local.get $5 + i32.store offset=4 + end ;; $if_3 + local.get $3 + i32.load8_s offset=12 + local.set $7 + local.get $1 + local.get $3 + i32.ne + if $if_5 + local.get $6 + local.get $1 + i32.load offset=8 + local.tee $6 + i32.store + local.get $6 + local.get $6 + i32.const 4 + i32.add + local.get $1 + local.get $1 + i32.load offset=8 + i32.load + i32.eq + select + local.get $3 + i32.store + local.get $2 + local.get $1 + i32.load + local.tee $2 + i32.store + local.get $2 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $1 + i32.load offset=4 + local.tee $2 + i32.store offset=4 + local.get $2 + if $if_6 + local.get $2 + local.get $3 + i32.store offset=8 + end ;; $if_6 + local.get $3 + local.get $1 + i32.load8_s offset=12 + i32.store8 offset=12 + local.get $3 + local.get $0 + local.get $0 + local.get $1 + i32.eq + select + local.set $0 + end ;; $if_5 + local.get $0 + i32.const 0 + i32.ne + local.get $7 + i32.const 0 + i32.ne + i32.and + i32.eqz + if $if_7 + return + end ;; $if_7 + local.get $8 + if $if_8 + local.get $5 + i32.const 1 + i32.store8 offset=12 + return + end ;; $if_8 + local.get $4 + local.set $2 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + loop $loop_0 + block $block_10 + local.get $2 + i32.load8_s offset=12 + i32.const 0 + i32.ne + local.set $4 + local.get $2 + local.tee $1 + i32.load offset=8 + local.tee $3 + i32.load + local.get $1 + i32.eq + if $if_9 + local.get $4 + i32.eqz + if $if_10 + local.get $2 + i32.const 1 + i32.store8 offset=12 + local.get $3 + i32.const 0 + i32.store8 offset=12 + local.get $3 local.get $1 - i32.const 124 - i32.lt_s - br_if $block_0 - local.get $0 - i32.const 2 - i32.div_s - i32.const 2 - i32.shl - local.get $9 - i32.add - local.set $12 + i32.load offset=4 + local.tee $4 + i32.store + local.get $4 + if $if_11 + local.get $4 + local.get $3 + i32.store offset=8 + end ;; $if_11 local.get $1 - i32.const 3996 - i32.gt_s - if $if (result i32) - local.get $9 - local.get $0 - i32.const 4 - i32.div_s - local.tee $0 - i32.const 2 - i32.shl - local.get $9 - i32.add - local.get $12 - local.get $0 - i32.const 2 - i32.shl - local.get $12 - i32.add - local.get $10 - call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ + local.get $3 + i32.load offset=8 + i32.store offset=8 + local.get $3 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.load + i32.eq + if $if_12 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $3 + i32.load else - local.get $9 - local.get $12 - local.get $10 - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - end ;; $if + local.get $1 + local.get $2 + i32.store offset=4 + local.get $4 + end ;; $if_12 local.set $1 - local.get $12 - i32.load - local.tee $14 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s + local.get $2 + local.get $3 + i32.store offset=4 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $0 + local.get $0 + local.get $3 + i32.eq + select local.set $0 - local.get $9 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $6 + end ;; $if_10 + local.get $1 + i32.load + local.tee $3 + i32.eqz + local.tee $4 + i32.eqz + if $if_13 + local.get $3 + i32.load8_s offset=12 + i32.eqz + br_if $block_6 + end ;; $if_13 + local.get $1 + i32.load offset=4 + local.tee $2 + if $if_14 + local.get $2 + i32.load8_s offset=12 + i32.eqz + br_if $block_7 + end ;; $if_14 + local.get $1 + i32.const 0 + i32.store8 offset=12 + local.get $1 + i32.load offset=8 + local.tee $1 + local.get $0 + i32.eq + local.get $1 + i32.load8_s offset=12 + i32.eqz + i32.or + br_if $block_8 + else + local.get $4 + i32.eqz + if $if_15 + local.get $2 + i32.const 1 + i32.store8 offset=12 + local.get $3 i32.const 0 - i32.lt_s - local.set $13 - block $block_11 - block $block_12 - block $block_13 - local.get $14 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $0 - select - local.tee $4 - local.get $7 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $13 - select - local.tee $3 - local.get $4 - local.get $3 - i32.lt_u - select - local.tee $6 - i32.eqz - br_if $block_13 - local.get $7 - i32.load - local.get $7 - local.get $13 - select - local.get $14 - i32.load - local.get $14 - local.get $0 - select - local.get $6 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_13 - local.get $6 - i32.const 0 - i32.ge_s - br_if $block_12 - local.get $10 - local.set $0 - br $block_11 - end ;; $block_13 - local.get $3 - local.get $4 - i32.ge_u - br_if $block_12 - local.get $10 - local.set $0 - br $block_11 - end ;; $block_12 - local.get $5 - local.get $9 - i32.eq - br_if $block_9 - block $block_14 - local.get $0 - if $if_0 - local.get $5 - local.set $0 - loop $loop_1 - local.get $0 - i32.load - local.tee $6 - i32.load8_s offset=11 - local.tee $16 - i32.const 0 - i32.lt_s - local.set $11 - block $block_15 - block $block_16 - local.get $4 - local.get $6 - i32.load offset=4 - local.get $16 - i32.const 255 - i32.and - local.get $11 - select - local.tee $16 - local.get $4 - local.get $16 - i32.lt_u - select - local.tee $17 - i32.eqz - br_if $block_16 - local.get $6 - i32.load - local.get $6 - local.get $11 - select - local.get $14 - i32.load - local.get $17 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_16 - local.get $6 - i32.const 0 - i32.lt_s - br_if $block_14 - br $block_15 - end ;; $block_16 - local.get $16 - local.get $4 - i32.lt_u - br_if $block_14 - end ;; $block_15 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - local.get $9 - i32.ne - br_if $loop_1 - end ;; $loop_1 - else - local.get $5 - local.set $0 - loop $loop_2 - local.get $0 - i32.load - local.tee $6 - i32.load8_s offset=11 - local.tee $16 - i32.const 0 - i32.lt_s - local.set $11 - block $block_17 - block $block_18 - local.get $4 - local.get $6 - i32.load offset=4 - local.get $16 - i32.const 255 - i32.and - local.get $11 - select - local.tee $16 - local.get $4 - local.get $16 - i32.lt_u - select - local.tee $17 - i32.eqz - br_if $block_18 - local.get $6 - i32.load - local.get $6 - local.get $11 - select - local.get $14 - local.get $17 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_18 - local.get $6 - i32.const 0 - i32.lt_s - br_if $block_14 - br $block_17 - end ;; $block_18 - local.get $16 - local.get $4 - i32.lt_u - br_if $block_14 - end ;; $block_17 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - local.get $9 - i32.ne - br_if $loop_2 - end ;; $loop_2 - end ;; $if_0 - br $block_9 - end ;; $block_14 - local.get $9 - local.get $0 - i32.load - i32.store - local.get $0 - local.get $7 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - end ;; $block_11 - local.get $9 + i32.store8 offset=12 + local.get $3 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.load + local.tee $2 + i32.store offset=4 + local.get $2 + if $if_16 + local.get $2 + local.get $3 + i32.store offset=8 + end ;; $if_16 + local.get $4 + local.get $3 + i32.load offset=8 + i32.store offset=8 + local.get $3 + i32.load offset=8 + local.tee $2 + local.get $2 i32.const 4 i32.add - local.tee $3 + local.get $3 + local.get $2 + i32.load + i32.eq + select + local.get $4 + i32.store + local.get $4 + local.get $3 + i32.store + local.get $3 + local.get $4 + i32.store offset=8 + local.get $1 local.get $0 - i32.lt_u - if $if_1 (result i32) - local.get $1 - local.set $7 - loop $loop_3 (result i32) - local.get $12 - i32.load - local.tee $14 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.set $13 - local.get $14 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $13 - select - local.set $4 - block $block_19 - local.get $13 - if $if_2 - local.get $3 - local.set $1 - loop $loop_4 - local.get $1 - i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $11 - i32.const 0 - i32.lt_s - local.set $6 - block $block_20 - block $block_21 - local.get $4 - local.get $3 - i32.load offset=4 - local.get $11 - i32.const 255 - i32.and - local.get $6 - select - local.tee $11 - local.get $4 - local.get $11 - i32.lt_u - select - local.tee $16 - i32.eqz - br_if $block_21 - local.get $3 - i32.load - local.get $3 - local.get $6 - select - local.get $14 - i32.load - local.get $16 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_21 - local.get $3 - i32.const 0 - i32.ge_s - br_if $block_19 - br $block_20 - end ;; $block_21 - local.get $11 - local.get $4 - i32.ge_u - br_if $block_19 - end ;; $block_20 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $loop_4 - unreachable - end ;; $loop_4 - unreachable - else - local.get $3 - local.set $1 - loop $loop_5 - local.get $1 - i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $11 - i32.const 0 - i32.lt_s - local.set $6 - block $block_22 - block $block_23 - local.get $4 - local.get $3 - i32.load offset=4 - local.get $11 - i32.const 255 - i32.and - local.get $6 - select - local.tee $11 - local.get $4 - local.get $11 - i32.lt_u - select - local.tee $16 - i32.eqz - br_if $block_23 - local.get $3 - i32.load - local.get $3 - local.get $6 - select - local.get $14 - local.get $16 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_23 - local.get $3 - i32.const 0 - i32.ge_s - br_if $block_19 - br $block_22 - end ;; $block_23 - local.get $11 - local.get $4 - i32.ge_u - br_if $block_19 - end ;; $block_22 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $loop_5 - unreachable - end ;; $loop_5 - unreachable - end ;; $if_2 - unreachable - end ;; $block_19 - block $block_24 - local.get $13 - if $if_3 - loop $loop_6 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $13 - block $block_25 - block $block_26 - local.get $4 - local.get $3 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $13 - select - local.tee $6 - local.get $4 - local.get $6 - i32.lt_u - select - local.tee $11 - i32.eqz - br_if $block_26 - local.get $3 - i32.load - local.get $3 - local.get $13 - select - local.get $14 - i32.load - local.get $11 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_26 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_24 - br $block_25 - end ;; $block_26 - local.get $6 - local.get $4 - i32.lt_u - br_if $block_24 - end ;; $block_25 - br $loop_6 - unreachable - end ;; $loop_6 - unreachable - else - loop $loop_7 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $13 - block $block_27 - block $block_28 - local.get $4 - local.get $3 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $13 - select - local.tee $6 - local.get $4 - local.get $6 - i32.lt_u - select - local.tee $11 - i32.eqz - br_if $block_28 - local.get $3 - i32.load - local.get $3 - local.get $13 - select - local.get $14 - local.get $11 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_28 - local.get $3 - i32.const 0 - i32.lt_s - br_if $block_24 - br $block_27 - end ;; $block_28 - local.get $6 - local.get $4 - i32.lt_u - br_if $block_24 - end ;; $block_27 - br $loop_7 - unreachable - end ;; $loop_7 - unreachable - end ;; $if_3 - unreachable - end ;; $block_24 - local.get $1 - local.get $0 - i32.gt_u - if $if_4 (result i32) - local.get $1 - local.set $3 - local.get $7 - else - local.get $1 - i32.load - local.set $3 - local.get $1 - local.get $0 - i32.load - i32.store - local.get $0 - local.get $3 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $3 - local.get $0 - local.get $12 - local.get $1 - local.get $12 - i32.eq - select - local.set $12 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop_3 - end ;; $if_4 - end ;; $loop_3 - else - local.get $1 - end ;; $if_1 + local.get $1 + i32.load + local.tee $1 + local.get $0 + i32.eq + select local.set $0 - local.get $3 - local.get $12 - i32.ne - if $if_5 - block $block_29 - local.get $3 - i32.load - local.tee $1 - i32.load8_s offset=11 - local.tee $13 - i32.const 0 - i32.lt_s - local.set $4 - local.get $12 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $14 - block $block_30 - block $block_31 - local.get $1 - i32.load offset=4 - local.get $13 - i32.const 255 - i32.and - local.get $4 - select - local.tee $13 - local.get $7 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $14 - select - local.tee $6 - local.get $13 - local.get $6 - i32.lt_u - select - local.tee $11 - i32.eqz - br_if $block_31 - local.get $7 - i32.load - local.get $7 - local.get $14 - select - local.get $1 - i32.load - local.get $1 - local.get $4 - select - local.get $11 - call $_memcmp - local.tee $4 - i32.eqz - br_if $block_31 - local.get $4 - i32.const 0 - i32.ge_s - br_if $block_29 - br $block_30 - end ;; $block_31 - local.get $6 - local.get $13 - i32.ge_u - br_if $block_29 - end ;; $block_30 - local.get $3 - local.get $7 - i32.store - local.get $12 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - end ;; $block_29 - end ;; $if_5 - local.get $0 + local.get $1 + i32.load offset=4 + local.set $1 + end ;; $if_15 + local.get $1 + i32.load + local.tee $5 + if $if_17 + local.get $5 + i32.load8_s offset=12 i32.eqz - if $if_6 - local.get $9 - local.get $3 - call $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ - local.set $0 - local.get $3 - i32.const 4 - i32.add - local.tee $1 - local.get $15 - call $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ - br_if $block_8 - local.get $0 - if $if_7 - i32.const 2 - local.set $0 - br $block_6 - end ;; $if_7 - end ;; $if_6 - local.get $3 - local.get $9 - i32.sub - local.get $15 - local.get $3 - i32.sub - i32.ge_s - br_if $block_7 - local.get $9 - local.get $3 + br_if $block_9 + end ;; $if_17 + local.get $1 + i32.load offset=4 + local.tee $2 + if $if_18 local.get $2 - call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ - local.get $3 - i32.const 4 - i32.add - local.set $9 - br $loop_0 - end ;; $block_9 - end ;; $loop_0 - local.get $9 - i32.const 4 - i32.add - local.set $0 - local.get $10 - i32.load - local.tee $1 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $5 - block $block_32 - block $block_33 - block $block_34 - local.get $1 - i32.load offset=4 - local.get $8 - i32.const 255 - i32.and - local.get $5 - select - local.tee $8 - local.get $3 - local.get $8 - local.get $3 - i32.lt_u - select - local.tee $4 - i32.eqz - br_if $block_34 - local.get $7 - i32.load - local.get $7 - local.get $13 - select - local.get $1 - i32.load - local.get $1 - local.get $5 - select - local.get $4 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_34 - local.get $5 - i32.const 0 - i32.ge_s - br_if $block_33 - br $block_32 - end ;; $block_34 - local.get $3 - local.get $8 - i32.ge_u - br_if $block_33 - br $block_32 - end ;; $block_33 + i32.load8_s offset=12 + i32.eqz + br_if $block_5 + end ;; $if_18 + local.get $1 + i32.const 0 + i32.store8 offset=12 + local.get $1 + i32.load offset=8 + local.tee $1 local.get $0 - local.get $10 i32.eq - br_if $block - block $block_35 - local.get $13 - if $if_8 - loop $loop_8 - local.get $0 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - block $block_36 - block $block_37 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.tee $4 - local.get $3 - local.get $4 - local.get $3 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_37 - local.get $7 - i32.load - local.get $5 - i32.load - local.get $5 - local.get $8 - select - local.get $12 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_37 - local.get $5 - i32.const 0 - i32.lt_s - br_if $block_35 - br $block_36 - end ;; $block_37 - local.get $3 - local.get $4 - i32.lt_u - br_if $block_35 - end ;; $block_36 - local.get $0 - i32.const 4 - i32.add - local.tee $0 - local.get $10 - i32.ne - br_if $loop_8 - br $block - unreachable - end ;; $loop_8 - unreachable - else - loop $loop_9 - local.get $0 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - block $block_38 - block $block_39 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.tee $4 - local.get $3 - local.get $4 - local.get $3 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_39 - local.get $7 - local.get $5 - i32.load - local.get $5 - local.get $8 - select - local.get $12 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_39 - local.get $5 - i32.const 0 - i32.lt_s - br_if $block_35 - br $block_38 - end ;; $block_39 - local.get $3 - local.get $4 - i32.lt_u - br_if $block_35 - end ;; $block_38 - local.get $0 - i32.const 4 - i32.add - local.tee $0 - local.get $10 - i32.ne - br_if $loop_9 - br $block - unreachable - end ;; $loop_9 - unreachable - end ;; $if_8 - unreachable - end ;; $block_35 - local.get $0 - i32.load - local.set $3 - local.get $0 + br_if $block_10 local.get $1 - i32.store - local.get $10 - local.get $3 - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - end ;; $block_32 - local.get $0 - local.get $10 + i32.load8_s offset=12 + i32.eqz + if $if_19 + local.get $1 + local.set $0 + br $block_10 + end ;; $if_19 + end ;; $if_9 + local.get $1 + i32.load offset=8 + local.tee $2 + i32.const 4 + i32.add + local.get $2 + local.get $1 + local.get $2 + i32.load i32.eq - br_if $block - local.get $0 - local.set $1 - local.get $10 - local.set $0 - loop $loop_10 - local.get $9 - i32.load - local.tee $10 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $5 - local.get $10 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $5 - select - local.set $3 - block $block_40 - local.get $5 - if $if_9 - loop $loop_11 - local.get $1 - i32.load - local.tee $8 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $7 - block $block_41 - block $block_42 - local.get $8 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $7 - select - local.tee $4 - local.get $3 - local.get $4 - local.get $3 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_42 - local.get $10 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $7 - select - local.get $12 - call $_memcmp - local.tee $8 - i32.eqz - br_if $block_42 - local.get $8 - i32.const 0 - i32.lt_s - br_if $block_40 - br $block_41 - end ;; $block_42 - local.get $3 - local.get $4 - i32.lt_u - br_if $block_40 - end ;; $block_41 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $loop_11 - unreachable - end ;; $loop_11 - unreachable - else - loop $loop_12 - local.get $1 - i32.load - local.tee $8 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $7 - block $block_43 - block $block_44 - local.get $8 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $7 - select - local.tee $4 - local.get $3 - local.get $4 - local.get $3 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_44 - local.get $10 - local.get $8 - i32.load - local.get $8 - local.get $7 - select - local.get $12 - call $_memcmp - local.tee $8 - i32.eqz - br_if $block_44 - local.get $8 - i32.const 0 - i32.lt_s - br_if $block_40 - br $block_43 - end ;; $block_44 - local.get $3 - local.get $4 - i32.lt_u - br_if $block_40 - end ;; $block_43 - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $loop_12 - unreachable - end ;; $loop_12 - unreachable - end ;; $if_9 - unreachable - end ;; $block_40 - block $block_45 - local.get $5 - if $if_10 - loop $loop_13 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $8 - block $block_46 - block $block_47 - local.get $5 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $8 - select - local.tee $7 - local.get $3 - local.get $7 - local.get $3 - i32.lt_u - select - local.tee $4 - i32.eqz - br_if $block_47 - local.get $10 - i32.load - local.get $5 - i32.load - local.get $5 - local.get $8 - select - local.get $4 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_47 - local.get $5 - i32.const 0 - i32.ge_s - br_if $block_45 - br $block_46 - end ;; $block_47 - local.get $3 - local.get $7 - i32.ge_u - br_if $block_45 - end ;; $block_46 - br $loop_13 - unreachable - end ;; $loop_13 - unreachable - else - loop $loop_14 - local.get $0 - i32.const -4 - i32.add - local.tee $0 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $8 - block $block_48 - block $block_49 - local.get $5 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $8 - select - local.tee $7 - local.get $3 - local.get $7 - local.get $3 - i32.lt_u - select - local.tee $4 - i32.eqz - br_if $block_49 - local.get $10 - local.get $5 - i32.load - local.get $5 - local.get $8 - select - local.get $4 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_49 - local.get $5 - i32.const 0 - i32.ge_s - br_if $block_45 - br $block_48 - end ;; $block_49 - local.get $3 - local.get $7 - i32.ge_u - br_if $block_45 - end ;; $block_48 - br $loop_14 - unreachable - end ;; $loop_14 - unreachable - end ;; $if_10 - unreachable - end ;; $block_45 - local.get $1 - local.get $0 - i32.lt_u - if $if_11 - local.get $1 - i32.load - local.set $3 - local.get $1 - local.get $0 - i32.load - i32.store - local.get $0 - local.get $3 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - br $loop_10 - else - i32.const 4 - local.set $0 - br $block_6 - end ;; $if_11 - unreachable - unreachable - end ;; $loop_10 - unreachable - end ;; $block_8 - local.get $9 - local.set $1 - local.get $15 - local.get $3 - local.get $0 - select - local.set $15 - i32.const 1 - i32.const 2 - local.get $0 - select - local.set $0 - br $block_6 - end ;; $block_7 - local.get $3 - i32.const 4 - i32.add - local.get $15 - local.get $2 - call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ - local.get $9 - local.set $1 - local.get $3 - br $block_5 - end ;; $block_6 - block $block_50 + select + i32.load + local.set $2 + br $loop_0 + end ;; $block_10 + end ;; $loop_0 local.get $0 - i32.const 7 - i32.and - br_table - $block_50 $block $block_50 $block $block_50 - $block ;; default - end ;; $block_50 - local.get $15 - end ;; $block_5 - local.set $0 + i32.const 1 + i32.store8 offset=12 + return + end ;; $block_9 + local.get $1 + i32.load offset=4 + local.tee $2 + br_if $block_5 + local.get $1 + local.set $0 + br $block_3 + end ;; $block_8 local.get $1 - local.set $3 - br $loop - end ;; $block_4 - end ;; $loop - local.get $9 - i32.load - local.tee $0 - i32.load8_s offset=11 - local.tee $10 - i32.const 0 - i32.lt_s - local.set $2 - local.get $15 - i32.const -4 - i32.add - local.tee $8 - i32.load - local.tee $1 - i32.load8_s offset=11 - local.tee $5 - i32.const 0 - i32.lt_s - local.set $3 - block $block_51 - block $block_52 - local.get $0 - i32.load offset=4 - local.get $10 - i32.const 255 - i32.and + i32.const 1 + i32.store8 offset=12 + return + end ;; $block_7 + local.get $1 + i32.const 4 + i32.add + local.set $0 + local.get $4 + if $if_20 (result i32) local.get $2 - select - local.tee $10 - local.get $1 - i32.load offset=4 - local.get $5 - i32.const 255 - i32.and + else local.get $3 - select - local.tee $5 - local.get $10 - local.get $5 - i32.lt_u - select - local.tee $15 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s i32.eqz - br_if $block_52 - local.get $1 - i32.load + br_if $block_4 local.get $1 - local.get $3 - select - local.get $0 + i32.const 4 + i32.add + local.tee $0 i32.load + end ;; $if_20 + local.tee $5 + i32.const 12 + i32.add + local.tee $3 + i32.const 1 + i32.store8 + local.get $1 + i32.const 12 + i32.add + local.tee $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $5 + i32.load + local.tee $0 + i32.store + local.get $0 + if $if_21 local.get $0 - local.get $2 - select - local.get $15 - call $_memcmp - local.tee $2 - i32.eqz - br_if $block_52 - local.get $2 - i32.const 0 - i32.ge_s - if $if_12 - return - end ;; $if_12 - br $block_51 - end ;; $block_52 + local.get $1 + i32.store offset=8 + end ;; $if_21 local.get $5 - local.get $10 - i32.ge_u - if $if_13 - return - end ;; $if_13 - end ;; $block_51 - local.get $9 - local.get $1 - i32.store - local.get $8 - local.get $0 - i32.store - return - end ;; $block_3 - local.get $9 - local.get $9 - i32.const 4 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i32.load offset=8 + i32.store + local.get $1 + i32.load offset=8 + local.tee $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.load + local.get $1 + i32.eq + select + local.get $5 + i32.store + local.get $5 + local.get $1 + i32.store + local.get $1 + local.get $5 + i32.store offset=8 + local.get $4 + local.set $0 + br $block_2 + end ;; $block_6 + local.get $3 + i32.const 12 + i32.add + local.set $0 + br $block_4 + end ;; $block_5 + local.get $1 + local.set $0 + local.get $2 + i32.const 12 i32.add - local.get $15 - i32.const -4 + local.tee $2 + i32.load8_s + br_if $block_3 + local.get $1 + i32.const 12 i32.add - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - drop - return - end ;; $block_2 - local.get $9 - local.get $9 - i32.const 4 + local.set $3 + local.get $2 + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $2 + br $block_1 + end ;; $block_4 + local.get $1 + i32.const 12 i32.add - local.get $9 + local.set $3 + local.get $1 i32.const 8 i32.add - local.get $15 - i32.const -4 - i32.add - call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ - drop - return - end ;; $block_1 - local.get $9 - local.get $9 - i32.const 4 - i32.add - local.get $9 - i32.const 8 - i32.add - local.get $9 + local.set $2 + br $block_2 + end ;; $block_3 + local.get $5 i32.const 12 i32.add - local.get $15 - i32.const -4 + local.tee $3 + i32.const 1 + i32.store8 + local.get $1 + i32.const 12 i32.add - call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ - drop - return - end ;; $block_0 - local.get $9 - local.get $15 - call $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ - end ;; $block - ) - - (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $3 - local.get $1 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $9 - local.get $7 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $3 - select - local.tee $4 - local.get $5 - i32.load offset=4 - local.get $8 - i32.const 255 - i32.and - local.get $9 - select - local.tee $6 - i32.lt_u - local.set $8 - block $block - block $block_0 - local.get $4 - local.get $6 - local.get $8 - select - local.tee $10 - i32.eqz - br_if $block_0 + local.tee $4 + i32.const 0 + i32.store8 + local.get $0 local.get $5 - i32.load + i32.load offset=4 + local.tee $0 + i32.store + local.get $0 + if $if_22 + local.get $0 + local.get $1 + i32.store offset=8 + end ;; $if_22 local.get $5 - local.get $9 - select - local.get $7 - i32.load - local.get $7 - local.get $3 - select - local.get $10 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_0 - br $block - end ;; $block_0 - i32.const -1 - local.get $8 - local.get $6 - local.get $4 - i32.lt_u - select - local.set $3 - end ;; $block - local.get $3 - i32.const 0 - i32.lt_s - local.set $11 - local.get $2 - i32.load - local.tee $4 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $3 - local.get $6 - local.get $4 - i32.load offset=4 - local.get $8 - i32.const 255 - i32.and - local.get $3 - select - local.tee $8 - i32.lt_u - local.set $10 - block $block_1 - block $block_2 - local.get $6 - local.get $8 - local.get $10 - select - local.tee $12 - i32.eqz - br_if $block_2 - local.get $4 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i32.load offset=8 + i32.store + local.get $1 + i32.load offset=8 + local.tee $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 i32.load - local.get $4 - local.get $3 + local.get $1 + i32.eq select local.get $5 - i32.load + i32.store local.get $5 - local.get $9 - select - local.get $12 - call $_memcmp - local.tee $3 - i32.eqz - br_if $block_2 - br $block_1 + local.get $1 + i32.store offset=4 + local.get $1 + local.get $5 + i32.store offset=8 + local.get $4 + local.set $0 + br $block_1 end ;; $block_2 - i32.const -1 - local.get $10 - local.get $8 - local.get $6 - i32.lt_u - select - local.set $3 - end ;; $block_1 - local.get $3 - i32.const 0 - i32.lt_s - local.set $6 - local.get $11 - i32.eqz - if $if - local.get $6 - i32.eqz - if $if_0 - i32.const 0 - return - end ;; $if_0 - local.get $1 - local.get $4 - i32.store + local.get $3 local.get $2 - local.get $5 - i32.store - local.get $0 i32.load local.tee $2 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $5 - local.get $1 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $6 - block $block_3 - block $block_4 - local.get $2 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $5 - select - local.tee $3 - local.get $7 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $6 - select - local.tee $4 - local.get $3 - local.get $4 - i32.lt_u - select - local.tee $9 - i32.eqz - br_if $block_4 - local.get $7 - i32.load - local.get $7 - local.get $6 - select - local.get $2 - i32.load - local.get $2 - local.get $5 - select - local.get $9 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_4 - local.get $5 - i32.const 0 - i32.ge_s - if $if_1 - i32.const 1 - return - end ;; $if_1 - br $block_3 - end ;; $block_4 - local.get $4 - local.get $3 - i32.ge_u - if $if_2 - i32.const 1 - return - end ;; $if_2 - end ;; $block_3 + i32.load8_s offset=12 + i32.store8 + local.get $2 + i32.const 1 + i32.store8 offset=12 local.get $0 - local.get $7 + i32.const 1 + i32.store8 + local.get $2 + local.get $2 + i32.load + local.tee $1 + i32.load offset=4 + local.tee $0 i32.store + local.get $0 + if $if_23 + local.get $0 + local.get $2 + i32.store offset=8 + end ;; $if_23 local.get $1 local.get $2 - i32.store - i32.const 2 - return - end ;; $if - local.get $6 - if $if_3 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i32.load offset=8 + local.tee $0 local.get $0 - local.get $4 - i32.store + i32.const 4 + i32.add local.get $2 - local.get $7 + local.get $0 + i32.load + i32.eq + select + local.get $1 i32.store - i32.const 1 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $2 + local.get $1 + i32.store offset=8 return - end ;; $if_3 + end ;; $block_1 + local.get $3 + local.get $2 + i32.load + local.tee $2 + i32.load8_s offset=12 + i32.store8 + local.get $2 + i32.const 1 + i32.store8 offset=12 local.get $0 - local.get $5 - i32.store - local.get $1 - local.get $7 - i32.store - local.get $7 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $5 + i32.const 1 + i32.store8 local.get $2 + local.get $2 + i32.load offset=4 + local.tee $1 i32.load local.tee $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $6 - block $block_5 - block $block_6 - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $5 - select - local.tee $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $6 - select - local.tee $4 - local.get $3 - local.get $4 - i32.lt_u - select - local.tee $9 - i32.eqz - br_if $block_6 - local.get $0 - i32.load - local.get $0 - local.get $6 - select - local.get $7 - i32.load - local.get $7 - local.get $5 - select - local.get $9 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_6 - local.get $5 - i32.const 0 - i32.ge_s - if $if_4 - i32.const 1 - return - end ;; $if_4 - br $block_5 - end ;; $block_6 - local.get $4 - local.get $3 - i32.ge_u - if $if_5 - i32.const 1 - return - end ;; $if_5 - end ;; $block_5 + i32.store offset=4 + local.get $0 + if $if_24 + local.get $0 + local.get $2 + i32.store offset=8 + end ;; $if_24 local.get $1 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i32.load offset=8 + local.tee $0 local.get $0 + i32.const 4 + i32.add + local.get $2 + local.get $0 + i32.load + i32.eq + select + local.get $1 i32.store + local.get $1 local.get $2 - local.get $7 i32.store - i32.const 2 + local.get $2 + local.get $1 + i32.store offset=8 ) - (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $16) + (func $__ZN6google8protobuf5Value10SharedDtorEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -2 + i32.and + local.set $2 + local.get $3 + i32.const 1 + i32.and + if $if (result i32) + local.get $2 + i32.load offset=12 + else + local.get $2 + end ;; $if + if $if_0 + local.get $1 + i32.const 3 + i32.store + local.get $1 + i32.const 11753 + i32.store offset=4 + local.get $1 + i32.const 495 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 0 + i32.store offset=20 + local.get $1 + i32.const 12935 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $1 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $0 + i32.load offset=20 + i32.eqz + if $if_1 + local.get $1 + global.set $32 + return + end ;; $if_1 + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $1 + global.set $32 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (result i32) + (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $0 + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 16 + i32.add local.get $1 local.get $2 - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - local.set $10 - local.get $2 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $6 - local.get $3 - i32.load - local.tee $7 - i32.load8_s offset=11 - local.tee $8 i32.const 0 - i32.lt_s - local.set $9 + call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE + local.get $4 + i32.load offset=16 + local.tee $3 + if $if + local.get $4 + i32.load offset=20 + local.set $1 + local.get $4 + i32.load offset=24 + local.set $2 + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $1 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store8 offset=12 + local.get $4 + global.set $32 + return + end ;; $if block $block block $block_0 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $6 - select - local.tee $4 - local.get $7 + local.get $1 i32.load offset=4 - local.get $8 - i32.const 255 - i32.and - local.get $9 - select - local.tee $8 - local.get $4 - local.get $8 - i32.lt_u - select - local.tee $11 - i32.eqz - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $9 - select - local.get $5 - i32.load - local.get $5 - local.get $6 - select - local.get $11 - call $_memcmp + local.tee $5 + i32.const 12 + i32.mul local.tee $6 - i32.eqz - br_if $block_0 - local.get $6 - i32.const 0 - i32.ge_s - if $if - local.get $10 - return - end ;; $if + i32.const 4 + i32.shr_u + local.tee $7 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.gt_u + if $if_0 + local.get $5 + i32.const 8 + i32.gt_u + local.get $6 + i32.const 6 + i32.shr_u + local.get $3 + i32.ge_u + i32.and + if $if_1 + local.get $3 + i32.const 5 + i32.mul + i32.const 2 + i32.shr_u + i32.const 1 + i32.add + local.set $8 + i32.const 1 + local.set $3 + loop $loop + local.get $3 + i32.const 1 + i32.add + local.set $6 + local.get $8 + local.get $3 + i32.shl + local.get $7 + i32.lt_u + if $if_2 + local.get $6 + local.set $3 + br $loop + end ;; $if_2 + end ;; $loop + local.get $5 + local.get $5 + local.get $3 + i32.shr_u + local.tee $3 + i32.const 8 + local.get $3 + i32.const 8 + i32.gt_u + select + local.tee $3 + i32.ne + if $if_3 + local.get $1 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm + br $block_0 + end ;; $if_3 + end ;; $if_1 + else + local.get $5 + i32.const 134217728 + i32.le_u + if $if_4 + local.get $1 + local.get $5 + i32.const 1 + i32.shl + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm + br $block_0 + end ;; $if_4 + end ;; $if_0 br $block end ;; $block_0 - local.get $8 local.get $4 - i32.ge_u - if $if_0 - local.get $10 - return - end ;; $if_0 + local.get $1 + local.get $2 + i32.const 0 + call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE + local.get $4 + local.get $4 + i64.load align=4 + i64.store offset=16 align=4 + local.get $4 + local.get $4 + i32.load offset=8 + i32.store offset=24 + local.get $4 + local.get $4 + i32.load offset=12 + i32.store offset=28 end ;; $block + local.get $4 + i32.load offset=28 + local.set $6 + local.get $1 + i32.load offset=20 + local.tee $3 + if $if_5 (result i32) + local.get $3 + i32.load offset=60 + if $if_6 + local.get $3 + i32.load offset=48 + if $if_7 + i32.const 6504 + i64.const 24 + local.get $3 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_7 + end ;; $if_6 + local.get $3 + i32.const 24 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + else + i32.const 20 + call $__Znwm + end ;; $if_5 + local.tee $3 local.get $2 - local.get $7 - i32.store + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $3 - local.get $5 - i32.store - local.get $10 + local.get $2 + i32.load offset=12 + i32.store offset=12 + local.get $4 + local.get $1 + local.get $6 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE + local.get $1 + local.get $1 + i32.load i32.const 1 i32.add - local.set $7 - local.get $1 + i32.store + local.get $0 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=12 + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $6 + local.tee $2 + i32.eqz + if $if + i32.const 40 + call $__Znwm + local.tee $0 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $0 + i32.const 6928 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + i32.const 0 + i32.store offset=32 + i32.const 6816 + i32.load + if $if_0 + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=36 + local.get $0 + return + end ;; $if local.get $2 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $9 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $6 - select - local.tee $4 - local.get $5 - i32.load offset=4 - local.get $8 - i32.const 255 - i32.and - local.get $9 - select - local.tee $8 - local.get $4 - local.get $8 - i32.lt_u - select - local.tee $11 - i32.eqz - br_if $block_2 - local.get $5 - i32.load - local.get $5 - local.get $9 - select - local.get $3 - i32.load - local.get $3 - local.get $6 - select - local.get $11 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_2 - local.get $6 - i32.const 0 - i32.ge_s - if $if_1 - local.get $7 - return - end ;; $if_1 - br $block_1 - end ;; $block_2 - local.get $8 - local.get $4 - i32.ge_u + i32.load offset=60 + if $if_1 + local.get $2 + i32.load offset=48 if $if_2 - local.get $7 - return + i32.const 6504 + i64.const 40 + local.get $2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 - end ;; $block_1 - local.get $1 - local.get $5 - i32.store + end ;; $if_1 local.get $2 - local.get $3 - i32.store - local.get $10 - i32.const 2 - i32.add - local.set $5 + i32.const 40 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.set $2 local.get $0 i32.load - local.tee $2 - i32.load8_s offset=11 - local.tee $9 + local.set $3 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 i32.const 0 - i32.lt_s - local.set $7 - local.get $1 + i32.store offset=8 + local.get $2 + if $if_3 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E + end ;; $if_3 + local.get $0 i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $6 - block $block_3 - block $block_4 - local.get $2 - i32.load offset=4 - local.get $9 - i32.const 255 - i32.and - local.get $7 - select - local.tee $9 - local.get $3 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $6 - select - local.tee $4 - local.get $9 - local.get $4 - i32.lt_u - select - local.tee $8 - i32.eqz - br_if $block_4 - local.get $3 - i32.load - local.get $3 - local.get $6 - select - local.get $2 - i32.load - local.get $2 - local.get $7 - select - local.get $8 - call $_memcmp - local.tee $7 - i32.eqz - br_if $block_4 - local.get $7 - i32.const 0 - i32.ge_s - if $if_3 - local.get $5 - return - end ;; $if_3 - br $block_3 - end ;; $block_4 - local.get $4 - local.get $9 - i32.ge_u - if $if_4 - local.get $5 - return - end ;; $if_4 - end ;; $block_3 + local.set $0 + local.get $2 + i32.const 6928 + i32.store offset=16 + local.get $2 local.get $0 - local.get $3 - i32.store + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=32 + i32.const 6816 + i32.load + if $if_4 + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE + end ;; $if_4 + local.get $2 + i32.const 0 + i32.store offset=36 + local.get $2 local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $2 - i32.store - local.get $10 - i32.const 3 - i32.add ) - (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $15) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 local.get $1 + i32.const 7 + i32.le_u + if $if + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 765 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 13405 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if local.get $2 - local.get $3 - call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ - local.set $11 - local.get $3 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $6 - local.get $4 - i32.load - local.tee $8 - i32.load8_s offset=11 - local.tee $10 - i32.const 0 - i32.lt_s - local.set $9 - block $block - block $block_0 - local.get $5 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $6 - select - local.tee $7 - local.get $8 - i32.load offset=4 - local.get $10 - i32.const 255 - i32.and - local.get $9 - select - local.tee $10 - local.get $7 - local.get $10 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_0 - local.get $8 - i32.load - local.get $8 - local.get $9 - select - local.get $5 - i32.load - local.get $5 - local.get $6 - select - local.get $12 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_0 - local.get $6 - i32.const 0 - i32.ge_s - if $if - local.get $11 - return - end ;; $if - br $block - end ;; $block_0 - local.get $10 - local.get $7 - i32.ge_u - if $if_0 - local.get $11 - return - end ;; $if_0 - end ;; $block - local.get $3 - local.get $8 - i32.store - local.get $4 - local.get $5 - i32.store - local.get $11 - i32.const 1 + i32.const 24 i32.add - local.set $8 - local.get $2 - i32.load - local.tee $4 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s + local.set $10 + local.get $0 + i32.load offset=16 + local.set $4 + local.get $0 + i32.load offset=4 local.set $6 - local.get $3 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $10 - i32.const 0 - i32.lt_s - local.set $9 - block $block_1 - block $block_2 - local.get $4 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $6 - select - local.tee $7 - local.get $5 - i32.load offset=4 - local.get $10 - i32.const 255 - i32.and - local.get $9 - select - local.tee $10 - local.get $7 - local.get $10 - i32.lt_u - select - local.tee $12 - i32.eqz - br_if $block_2 - local.get $5 - i32.load - local.get $5 - local.get $9 - select + local.get $0 + local.get $1 + i32.store offset=4 + local.get $0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm + i32.store offset=16 + local.get $0 + i32.load offset=12 + local.set $1 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + local.get $6 + i32.lt_u + if $if_0 + loop $loop + local.get $1 + i32.const 2 + i32.shl local.get $4 + i32.add i32.load - local.get $4 - local.get $6 - select - local.get $12 - call $_memcmp - local.tee $6 - i32.eqz - br_if $block_2 - local.get $6 - i32.const 0 - i32.ge_s + local.tee $3 if $if_1 - local.get $8 - return + block $block + local.get $3 + local.get $1 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $4 + i32.add + i32.load + i32.eq + if $if_2 + local.get $1 + i32.const 1 + i32.add + local.set $3 + local.get $0 + local.get $4 + local.get $1 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12TransferTreeEPKPvm + local.get $3 + local.set $1 + br $block + end ;; $if_2 + loop $loop_0 + local.get $3 + i32.load offset=16 + local.set $7 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.tee $8 + i32.load8_s + local.tee $9 + if $if_3 + i32.const 0 + local.set $5 + loop $loop_1 + local.get $9 + local.get $5 + i32.const 5 + i32.mul + i32.add + local.set $5 + local.get $8 + i32.const 1 + i32.add + local.tee $8 + i32.load8_s + local.tee $9 + br_if $loop_1 + end ;; $loop_1 + else + i32.const 0 + local.set $5 + end ;; $if_3 + local.get $10 + local.get $0 + local.get $0 + i32.load offset=8 + local.get $5 + i32.add + local.get $0 + i32.load offset=4 + i32.const -1 + i32.add + i32.and + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE + local.get $7 + if $if_4 + local.get $7 + local.set $3 + br $loop_0 + end ;; $if_4 + end ;; $loop_0 + end ;; $block end ;; $if_1 - br $block_1 - end ;; $block_2 - local.get $10 - local.get $7 - i32.ge_u - if $if_2 - local.get $8 - return - end ;; $if_2 - end ;; $block_1 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + local.get $6 + i32.lt_u + br_if $loop + end ;; $loop + end ;; $if_0 + local.get $0 + i32.load offset=20 + if $if_5 + local.get $2 + global.set $32 + return + end ;; $if_5 + local.get $4 + call $_free local.get $2 + global.set $32 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 112 + i32.add + global.set $32 local.get $5 - i32.store - local.get $3 - local.get $4 - i32.store - local.get $11 - i32.const 2 + i32.const 48 i32.add - local.set $5 + local.set $4 local.get $1 - i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $9 - i32.const 0 - i32.lt_s - local.set $8 - local.get $2 - i32.load - local.tee $4 - i32.load8_s offset=11 + i32.load offset=12 local.tee $7 - i32.const 0 - i32.lt_s - local.set $6 - block $block_3 - block $block_4 - local.get $3 - i32.load offset=4 - local.get $9 - i32.const 255 - i32.and - local.get $8 - select - local.tee $9 + local.get $1 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=16 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + i32.eqz + if $if_0 local.get $4 - i32.load offset=4 - local.get $7 - i32.const 255 - i32.and - local.get $6 - select - local.tee $7 - local.get $9 - local.get $7 - i32.lt_u - select - local.tee $10 - i32.eqz - br_if $block_4 + i32.const 3 + i32.store local.get $4 - i32.load + i32.const 11940 + i32.store offset=4 + local.get $4 + i32.const 672 + i32.store offset=8 + local.get $4 + i64.const 0 + i64.store offset=12 align=4 local.get $4 - local.get $6 - select - local.get $3 - i32.load - local.get $3 - local.get $8 - select - local.get $10 - call $_memcmp - local.tee $8 - i32.eqz - br_if $block_4 - local.get $8 i32.const 0 - i32.ge_s - if $if_3 - local.get $5 - return - end ;; $if_3 - br $block_3 - end ;; $block_4 - local.get $7 - local.get $9 - i32.ge_u - if $if_4 - local.get $5 - return - end ;; $if_4 - end ;; $block_3 - local.get $1 - local.get $4 - i32.store - local.get $2 - local.get $3 - i32.store - local.get $11 - i32.const 3 + i32.store offset=20 + local.get $4 + i32.const 12979 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $4 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + end ;; $if + local.get $5 + i32.const 24 i32.add local.set $4 - local.get $0 - i32.load - local.tee $2 - i32.load8_s offset=11 + local.get $5 + i32.const 72 + i32.add local.tee $6 + local.get $1 + local.get $3 i32.const 0 - i32.lt_s - local.set $5 + call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE + local.get $6 + i32.load + if $if_1 + local.get $4 + i32.const 3 + i32.store + local.get $4 + i32.const 11940 + i32.store offset=4 + local.get $4 + i32.const 678 + i32.store offset=8 + local.get $4 + i64.const 0 + i64.store offset=12 align=4 + local.get $4 + i32.const 0 + i32.store offset=20 + local.get $4 + i32.const 13080 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $4 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_1 local.get $1 + i32.load offset=16 + local.tee $7 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.tee $8 i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $9 - i32.const 0 - i32.lt_s - local.set $8 - block $block_5 - block $block_6 + local.tee $4 + if $if_2 + local.get $4 + local.get $2 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $7 + i32.add + i32.load + i32.eq + if $if_3 + local.get $0 + local.get $1 local.get $2 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $5 - select - local.tee $6 - local.get $3 - i32.load offset=4 - local.get $9 - i32.const 255 - i32.and - local.get $8 - select - local.tee $9 - local.get $6 - local.get $9 - i32.lt_u - select - local.tee $7 - i32.eqz - br_if $block_6 - local.get $3 - i32.load local.get $3 - local.get $8 - select - local.get $2 - i32.load - local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - select + global.set $32 + return + end ;; $if_3 + i32.const 0 + local.set $7 + loop $loop local.get $7 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_6 - local.get $5 - i32.const 0 - i32.ge_s + i32.const 1 + i32.add + local.set $7 + local.get $4 + i32.load offset=16 + local.tee $4 + br_if $loop + end ;; $loop + local.get $7 + i32.const 9 + i32.lt_u + if $if_4 + local.get $7 + i32.const 8 + i32.ne if $if_5 - local.get $4 + local.get $3 + local.get $8 + i32.load + i32.store offset=16 + local.get $8 + local.get $3 + i32.store + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $1 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $5 + global.set $32 return end ;; $if_5 - br $block_5 - end ;; $block_6 - local.get $9 + else + local.get $6 + i32.const 3 + i32.store + local.get $6 + i32.const 11940 + i32.store offset=4 + local.get $6 + i32.const 878 + i32.store offset=8 + local.get $6 + i64.const 0 + i64.store offset=12 align=4 + local.get $6 + i32.const 0 + i32.store offset=20 + local.get $6 + i32.const 13136 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $6 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_4 + local.get $1 + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm local.get $6 - i32.ge_u + local.get $1 + local.get $2 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE + local.get $6 + i32.load + local.set $3 + local.get $6 + i32.load offset=4 + local.set $4 + local.get $2 + i32.const -2 + i32.and + local.get $6 + i32.load offset=8 + local.tee $2 + i32.ne if $if_6 - local.get $4 - return + local.get $5 + i32.const 3 + i32.store + local.get $5 + i32.const 11940 + i32.store offset=4 + local.get $5 + i32.const 685 + i32.store offset=8 + local.get $5 + i64.const 0 + i64.store offset=12 align=4 + local.get $5 + i32.const 0 + i32.store offset=20 + local.get $5 + i32.const 13176 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $5 + call $__ZN6google8protobuf8internal10LogMessageD2Ev end ;; $if_6 - end ;; $block_5 + else + local.get $3 + local.get $4 + i32.store offset=16 + local.get $8 + local.get $3 + i32.store + local.get $1 + local.set $4 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.get $2 + local.get $1 + i32.lt_u + select + i32.store offset=12 local.get $0 local.get $3 i32.store - local.get $1 + local.get $0 + local.get $4 + i32.store offset=4 + local.get $0 local.get $2 - i32.store - local.get $11 - i32.const 4 - i32.add + i32.store offset=8 + local.get $5 + global.set $32 ) - (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -21441,2306 +19530,1297 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - local.get $0 - i32.const 4 + global.get $32 + local.set $5 + global.get $32 + i32.const 96 i32.add - local.get $0 - i32.const 8 + global.set $32 + local.get $5 + i32.const 72 i32.add - local.tee $3 - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - drop - local.get $1 - local.get $0 - i32.const 12 + local.set $9 + local.get $5 + i32.const -64 + i32.sub + local.set $7 + local.get $5 + i32.const 40 i32.add - local.tee $7 - i32.eq - if $if - return - end ;; $if - loop $loop - local.get $3 - i32.load - local.tee $5 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.set $8 - local.get $7 - i32.load - local.tee $11 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $9 - block $block - block $block_0 - block $block_1 - local.get $5 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $8 - select - local.tee $10 - local.get $11 - local.tee $2 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $9 - select - local.tee $4 - local.get $10 - local.get $4 - i32.lt_u - select - local.tee $6 - i32.eqz - br_if $block_1 - local.get $2 - i32.load - local.get $2 - local.get $9 - select - local.get $5 - i32.load - local.get $5 - local.get $8 - select - local.get $6 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_1 - local.get $5 - i32.const 0 - i32.lt_s - br_if $block_0 - br $block - end ;; $block_1 + local.set $2 + local.get $5 + i32.const 16 + i32.add + local.set $11 + local.get $0 + i32.load offset=16 + local.tee $4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $3 + local.get $1 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $4 + i32.add + local.set $4 + block $block + block $block_0 + local.get $3 + if $if + local.get $3 local.get $4 - local.get $10 - i32.lt_u + i32.load + i32.eq br_if $block_0 - br $block - end ;; $block_0 + end ;; $if + local.get $4 + i32.load + local.tee $4 + i32.eqz + local.get $3 + local.get $4 + i32.ne + i32.or + i32.eqz + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 837 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 13298 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $block + local.get $0 + i32.load offset=20 + local.tee $2 + if $if_0 (result i32) + local.get $2 + i32.load offset=60 + if $if_1 local.get $2 - local.set $8 + i32.load offset=48 + if $if_2 + i32.const 6504 + i64.const 16 + local.get $2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_2 + end ;; $if_1 + local.get $2 + i32.const 16 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + else + i32.const 16 + call $__Znwm + end ;; $if_0 + local.set $6 + local.get $0 + i32.load offset=20 + local.set $2 + local.get $5 + i32.const 0 + i32.store offset=4 + local.get $5 + local.get $2 + i32.store offset=8 + local.get $5 + i32.const 0 + i32.store offset=12 + local.get $5 + local.get $5 + i32.const 4 + i32.add + local.tee $4 + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.load offset=8 + local.set $2 + local.get $6 + i32.const 4 + i32.add + local.tee $8 + i32.const 0 + i32.store + local.get $6 + local.get $2 + i32.store offset=8 + local.get $6 + i32.const 0 + i32.store offset=12 + local.get $6 + local.get $8 + i32.store + local.get $4 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_3 + loop $loop local.get $7 - local.set $2 - loop $loop_0 - block $block_2 + local.get $8 + i32.store + local.get $9 + local.get $7 + i32.load + i32.store + local.get $6 + local.get $9 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $3 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE30__emplace_hint_unique_key_argsIS7_JRKS7_EEENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEENS_21__tree_const_iteratorIS7_SP_lEERKT_DpOT0_ + local.get $2 + i32.load offset=4 + local.tee $3 + if $if_4 + local.get $3 + local.set $2 + loop $loop_0 local.get $2 - local.get $3 - i32.load - i32.store - local.get $0 - local.get $3 - i32.eq - if $if_0 - local.get $0 - local.set $3 - br $block_2 - end ;; $if_0 - local.get $3 - i32.const -4 - i32.add - local.tee $5 i32.load - local.tee $2 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $9 - local.get $11 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $10 - local.get $2 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $9 - select - local.tee $4 - local.get $11 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $10 - select - local.tee $6 - i32.lt_u - local.set $12 - block $block_3 - block $block_4 - local.get $4 - local.get $6 - local.get $12 - select - local.tee $13 - i32.eqz - br_if $block_4 - local.get $8 - i32.load - local.get $11 - local.get $10 - select - local.get $2 - i32.load - local.get $2 - local.get $9 - select - local.get $13 - call $_memcmp - local.tee $2 - i32.eqz - br_if $block_4 - br $block_3 - end ;; $block_4 - i32.const -1 - local.get $12 - local.get $6 - local.get $4 - i32.lt_u - select - local.set $2 - end ;; $block_3 - local.get $2 - i32.const 0 - i32.lt_s - if $if_1 + local.tee $3 + if $if_5 local.get $3 local.set $2 - local.get $5 - local.set $3 br $loop_0 - end ;; $if_1 - end ;; $block_2 - end ;; $loop_0 - local.get $3 - local.get $8 - i32.store - end ;; $block - local.get $7 - i32.const 4 - i32.add - local.tee $2 - local.get $1 - i32.ne - if $if_2 - local.get $7 - local.set $3 - local.get $2 - local.set $7 - br $loop - end ;; $if_2 - end ;; $loop - ) - - (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - local.get $1 - local.get $0 - i32.sub - i32.const 2 - i32.shr_s - br_table - $block $block $block_4 $block_3 $block_2 $block_1 - $block_0 ;; default - end ;; $block_4 - local.get $0 + end ;; $if_5 + end ;; $loop_0 + else + local.get $2 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.load + local.tee $2 + i32.load + i32.ne + if $if_6 + local.get $3 + local.set $2 + loop $loop_1 (result i32) + local.get $2 i32.load - local.tee $3 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.set $5 - local.get $1 - i32.const -4 + local.tee $10 + i32.const 8 i32.add - local.tee $8 + local.tee $2 i32.load - local.tee $1 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $9 - block $block_5 - block $block_6 - local.get $3 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $5 - select - local.tee $2 - local.get $1 - i32.load offset=4 - local.get $4 - i32.const 255 - i32.and - local.get $9 - select - local.tee $4 - local.get $2 - local.get $4 - i32.lt_u - select - local.tee $7 - i32.eqz - br_if $block_6 - local.get $1 - i32.load - local.get $1 - local.get $9 - select - local.get $3 - i32.load - local.get $3 - local.get $5 - select - local.get $7 - call $_memcmp - local.tee $5 - i32.eqz - br_if $block_6 - local.get $5 - i32.const 0 - i32.ge_s - br_if $block - br $block_5 - end ;; $block_6 - local.get $4 - local.get $2 - i32.ge_u - br_if $block - end ;; $block_5 - local.get $0 - local.get $1 - i32.store - local.get $8 + local.set $3 local.get $3 - i32.store - br $block - end ;; $block_3 - local.get $0 - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const -4 - i32.add - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - drop - br $block - end ;; $block_2 - local.get $0 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const -4 - i32.add - call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ - drop - br $block - end ;; $block_1 - local.get $0 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.add - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const -4 - i32.add - call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ - drop - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.add - local.tee $3 - call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ - drop - local.get $1 - local.get $0 - i32.const 12 - i32.add - local.tee $5 - i32.eq - br_if $block - loop $loop - block $block_7 - local.get $3 - i32.load - local.tee $4 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.set $7 - local.get $5 - i32.load - local.tee $8 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $11 - block $block_8 - block $block_9 - block $block_10 - local.get $4 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $7 - select - local.tee $12 - local.get $8 - local.tee $2 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $11 - select - local.tee $6 - local.get $12 - local.get $6 - i32.lt_u - select - local.tee $10 - i32.eqz - br_if $block_10 - local.get $2 - i32.load - local.get $2 - local.get $11 - select - local.get $4 - i32.load - local.get $4 - local.get $7 - select - local.get $10 - call $_memcmp - local.tee $4 - i32.eqz - br_if $block_10 - local.get $4 - i32.const 0 - i32.lt_s - br_if $block_9 - local.get $9 - local.set $3 - br $block_8 - end ;; $block_10 - local.get $6 - local.get $12 - i32.lt_u - br_if $block_9 - local.get $9 - local.set $3 - br $block_8 - end ;; $block_9 - local.get $2 - local.set $7 - local.get $5 + i32.load + local.get $10 + i32.ne + br_if $loop_1 + local.get $3 + end ;; $loop_1 local.set $2 - loop $loop_0 - block $block_11 - local.get $2 - local.get $3 - i32.load - i32.store - local.get $0 - local.get $3 - i32.eq - if $if - local.get $0 - local.set $3 - br $block_11 - end ;; $if - local.get $3 - i32.const -4 - i32.add - local.tee $4 - i32.load - local.tee $2 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.set $11 - local.get $8 - i32.load8_s offset=11 - local.tee $10 - i32.const 0 - i32.lt_s - local.set $12 - local.get $2 - i32.load offset=4 - local.get $6 - i32.const 255 - i32.and - local.get $11 - select - local.tee $6 - local.get $8 - i32.load offset=4 - local.get $10 - i32.const 255 - i32.and - local.get $12 - select - local.tee $10 - i32.lt_u - local.set $13 - block $block_12 - block $block_13 - local.get $6 - local.get $10 - local.get $13 - select - local.tee $14 - i32.eqz - br_if $block_13 - local.get $7 - i32.load - local.get $8 - local.get $12 - select - local.get $2 - i32.load - local.get $2 - local.get $11 - select - local.get $14 - call $_memcmp - local.tee $2 - i32.eqz - br_if $block_13 - br $block_12 - end ;; $block_13 - i32.const -1 - local.get $13 - local.get $10 - local.get $6 - i32.lt_u - select - local.set $2 - end ;; $block_12 - local.get $2 - i32.const 0 - i32.lt_s - if $if_0 - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_0 - end ;; $if_0 - end ;; $block_11 - end ;; $loop_0 - local.get $3 - local.get $7 - i32.store - local.get $9 - i32.const 1 - i32.add - local.tee $3 - i32.const 8 - i32.eq - br_if $block_7 - end ;; $block_8 - local.get $1 - local.get $5 - i32.const 4 - i32.add - local.tee $4 - i32.eq - br_if $block - local.get $5 - local.set $2 - local.get $3 - local.set $9 - local.get $4 - local.set $5 - local.get $2 - local.set $3 - br $loop - end ;; $block_7 + end ;; $if_6 + end ;; $if_4 + local.get $2 + local.get $4 + i32.ne + br_if $loop end ;; $loop - local.get $1 - local.get $5 - i32.const 4 - i32.add - i32.eq - return - end ;; $block - i32.const 1 - ) - - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 + end ;; $if_3 + local.get $5 + local.get $4 + i32.load + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + local.get $0 i32.load offset=16 local.tee $2 - i32.eqz - if $if - return - end ;; $if - local.get $2 - i32.const 1 - i32.and - if $if_0 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - i32.const 15496 - i32.eq - if $if_1 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_7 (result i32) + i32.const 0 + local.set $2 + loop $loop_2 + local.get $7 + local.get $3 + i32.store + local.get $9 + local.get $6 + local.get $7 + local.get $7 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ local.get $2 - local.get $0 - i32.load offset=12 - i32.const 15496 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - end ;; $if_1 - local.get $1 - i32.load - i32.load offset=72 - local.set $3 - local.get $1 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $3 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.load offset=16 + local.set $4 + local.get $3 + i32.const 0 + i32.store offset=16 + local.get $4 + if $if_8 + local.get $4 + local.set $3 + br $loop_2 + end ;; $if_8 + end ;; $loop_2 local.get $2 - i32.load - local.tee $4 - i32.const 15496 - i32.eq - if $if_2 + local.set $8 + local.get $0 + i32.load offset=16 + else + i32.const 0 + local.set $8 + local.get $2 + end ;; $if_7 + local.get $1 + i32.const 1 + i32.xor + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_9 + i32.const 0 + local.set $2 + loop $loop_3 + local.get $7 + local.get $3 + i32.store + local.get $9 + local.get $6 + local.get $7 + local.get $7 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ local.get $2 - local.get $0 - i32.load offset=12 + i32.const 1 + i32.add + local.set $2 local.get $3 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - else - local.get $4 + i32.load offset=16 + local.set $4 local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ - end ;; $if_2 + i32.const 0 + i32.store offset=16 + local.get $4 + if $if_10 + local.get $4 + local.set $3 + br $loop_3 + end ;; $if_10 + end ;; $loop_3 + else + i32.const 0 + local.set $2 + end ;; $if_9 + local.get $6 + i32.load offset=12 + local.get $2 + local.get $8 + i32.add + i32.eq + if $if_11 local.get $0 + i32.load offset=16 + local.get $10 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store local.get $0 i32.load offset=16 - i32.const 1 - i32.or - i32.store offset=16 local.get $1 - i32.load offset=16 - local.set $2 - end ;; $if_0 - local.get $2 - i32.const 2 - i32.and - i32.eqz - if $if_3 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + local.get $5 + global.set $32 return - end ;; $if_3 - local.get $0 - i32.load offset=8 - i32.eqz - if $if_4 - local.get $0 - local.get $0 - i32.load offset=12 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - i32.store offset=8 - end ;; $if_4 - local.get $1 - i32.load - i32.load offset=76 - local.set $2 - local.get $1 + end ;; $if_11 + local.get $11 + local.tee $2 + i32.const 3 + i32.store local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $1 - local.get $0 - i32.load offset=8 - local.get $1 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ - local.get $0 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 848 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 13363 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 i32.load offset=16 + local.get $10 i32.const 2 - i32.or - i32.store offset=16 - ) - - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $4) - (param $0 i32) - (result i32) - local.get $0 - i32.load offset=8 - local.tee $0 - i32.const 15352 - i32.load + i32.shl + i32.add + local.get $6 + i32.store local.get $0 - select + i32.load offset=16 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + local.get $5 + global.set $32 ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase5ClearINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvv (type $0) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $1) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 32 + global.get $32 + local.set $4 + global.get $32 + i32.const 48 i32.add - global.set $30 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const -1 - i32.le_s + global.set $32 + local.get $1 + i32.load offset=16 + local.tee $6 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.get $2 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $6 + i32.add + i32.load + i32.ne if $if - local.get $1 + local.get $4 i32.const 3 i32.store - local.get $1 - i32.const 8236 + local.get $4 + i32.const 11940 i32.store offset=4 - local.get $1 - i32.const 1567 + local.get $4 + i32.const 713 i32.store offset=8 - local.get $1 + local.get $4 i64.const 0 i64.store offset=12 align=4 - local.get $1 + local.get $4 i32.const 0 i32.store offset=20 - local.get $1 - i32.const 10685 + local.get $4 + i32.const 13251 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $1 + local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 - return - end ;; $if - local.get $3 - i32.eqz - if $if_0 - local.get $1 - global.set $30 - return - end ;; $if_0 - local.get $0 - i32.load offset=12 - local.set $6 - loop $loop - local.get $2 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.const 4 - i32.add + i32.load offset=16 local.get $2 i32.const 2 i32.shl i32.add - i32.load - local.tee $2 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $2 - i32.load offset=4 - local.tee $2 - i32.const 1 - i32.and - if $if_1 - local.get $2 - i32.const -2 - i32.and - local.tee $2 - local.set $5 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_2 - local.get $5 - i32.load - i32.const 0 - i32.store8 - local.get $5 - i32.const 0 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $2 - i32.const 0 - i32.store8 offset=11 - end ;; $if_2 - end ;; $if_1 - local.get $4 - local.get $3 - i32.lt_s - if $if_3 - local.get $4 - local.set $2 - br $loop - end ;; $if_3 - end ;; $loop - local.get $0 + local.set $5 + end ;; $if + local.get $3 i32.const 0 - i32.store offset=4 - local.get $1 - global.set $30 - ) - - (func $__ZN6google8protobuf5ValueD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 5944 + i32.store offset=16 + local.get $5 + i32.load + local.set $6 + local.get $4 + i32.const 24 + i32.add + local.tee $5 + local.get $3 i32.store + local.get $4 + i32.const 32 + i32.add + local.get $6 + local.get $5 + local.get $5 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ local.get $0 - call $__ZN6google8protobuf5Value10SharedDtorEv + local.get $4 + i32.load offset=32 + i32.load offset=16 + i32.store local.get $0 - i32.load offset=4 - local.tee $1 - i32.const 1 - i32.and - i32.eqz - if $if - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if local.get $1 + i32.store offset=4 + local.get $0 + local.get $2 i32.const -2 i32.and - local.tee $1 - local.tee $2 - i32.load offset=12 - local.get $1 - i32.eqz - i32.or - if $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if_0 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_1 - local.get $2 - i32.load - call $_free - end ;; $if_1 - local.get $1 - call $_free - local.get $0 - i32.const 0 - i32.store offset=4 + i32.store offset=8 + local.get $4 + global.set $32 ) - (func $__ZN6google8protobuf5ValueD0Ev (type $0) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $1) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 5944 - i32.store - local.get $0 - call $__ZN6google8protobuf5Value10SharedDtorEv - local.get $0 - i32.load offset=4 - local.tee $1 - i32.const 1 - i32.and - i32.eqz + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $4 + local.get $2 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ + local.tee $5 + i32.load + local.tee $2 if $if local.get $0 - call $_free + local.get $2 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $4 + global.set $32 return end ;; $if local.get $1 - i32.const -2 - i32.and - local.tee $1 + i32.load offset=8 local.tee $2 - i32.load offset=12 - local.get $1 - i32.eqz - i32.or - if $if_0 - local.get $0 - call $_free - return + if $if_0 (result i32) + local.get $2 + i32.load offset=60 + if $if_1 + local.get $2 + i32.load offset=48 + if $if_2 + i32.const 6504 + i64.const 24 + local.get $2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_2 + end ;; $if_1 + local.get $2 + i32.const 24 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + else + i32.const 20 + call $__Znwm end ;; $if_0 - local.get $1 - i32.load8_s offset=11 + local.tee $2 + local.get $3 + i32.load + i32.store offset=16 + local.get $4 + i32.load + local.set $3 + local.get $2 i32.const 0 - i32.lt_s - if $if_1 - local.get $2 - i32.load - call $_free - end ;; $if_1 - local.get $1 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $3) - (param $0 i32) - (param $1 i32) - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 + i32.store + local.get $2 i32.const 0 + i32.store offset=4 + local.get $2 + local.get $3 i32.store offset=8 - local.get $0 - i32.const 32 - call $__Znwm - local.tee $1 + local.get $5 + local.get $2 i32.store - local.get $0 - i32.const -2147483616 - i32.store offset=8 - local.get $0 - i32.const 21 - i32.store offset=4 - local.get $1 - i32.const 10767 - i64.load align=1 - i64.store align=1 - local.get $1 - i32.const 10775 - i64.load align=1 - i64.store offset=8 align=1 local.get $1 - i32.const 10783 - i32.load align=1 - i32.store offset=16 align=1 + i32.load + i32.load + local.tee $3 + if $if_3 (result i32) + local.get $1 + local.get $3 + i32.store + local.get $5 + i32.load + else + local.get $2 + end ;; $if_3 + local.set $3 local.get $1 - i32.const 10787 - i32.load8_s - i32.store8 offset=20 + i32.load offset=4 + local.get $3 + call $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ local.get $1 - i32.const 0 - i32.store8 offset=21 - ) - - (func $__ZNK6google8protobuf5Value3NewEv (type $4) - (param $0 i32) - (result i32) - i32.const 0 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) local.get $1 - call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ - ) - - (func $__ZN6google8protobuf5Value5ClearEv (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - call $__ZN6google8protobuf5Value10clear_kindEv - local.get $0 - i32.load offset=4 - local.tee $0 + i32.load offset=12 i32.const 1 - i32.and - i32.eqz - if $if - return - end ;; $if + i32.add + i32.store offset=12 local.get $0 - i32.const -2 - i32.and - local.tee $0 - local.set $1 + local.get $2 + i32.store local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 - local.get $1 - i32.load - i32.const 0 - i32.store8 - local.get $1 - i32.const 0 - i32.store offset=4 - else - local.get $0 - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 offset=11 - end ;; $if_0 - ) - - (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 4816 - i32.const 4768 - call $___dynamic_cast - if $if - local.get $0 - local.get $1 - call $__ZN6google8protobuf5Value9MergeFromERKS1_ - else - i32.const 10255 - i32.const 10296 - i32.const 92 - i32.const 10368 - call $___assert_fail - end ;; $if + i32.const 1 + i32.store8 offset=4 + local.get $4 + global.set $32 ) - (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $5) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) local.get $0 - i32.load offset=20 - local.tee $2 - i32.const 1 - i32.eq + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $5 + i32.eqz if $if - local.get $0 - i32.load offset=8 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if - local.get $2 - i32.const 2 - i32.eq - if $if_0 - local.get $0 - f64.load offset=8 local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite11WriteDoubleEidPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if_0 - local.get $2 - i32.const 3 - i32.eq - if $if_1 - local.get $0 - i32.load offset=8 - local.tee $2 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_2 - local.get $2 - i32.load offset=4 - local.set $3 - local.get $2 - i32.load - local.set $2 - else - local.get $3 - i32.const 255 - i32.and - local.set $3 - end ;; $if_2 - local.get $2 local.get $3 - i32.const 1 - i32.const 8683 - call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ - drop - local.get $0 - i32.load offset=20 - i32.const 3 - i32.eq - if $if_3 (result i32) - local.get $0 - i32.load offset=8 - else - i32.const 15496 - end ;; $if_3 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if_1 - local.get $2 + i32.store + local.get $3 + return + end ;; $if + local.get $0 i32.const 4 - i32.eq - if $if_4 - local.get $0 - i32.load8_s offset=8 - i32.const 0 - i32.ne - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if_4 - local.get $2 - i32.const 5 - i32.eq - if $if_5 - i32.const 5 - local.get $0 - i32.load offset=8 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - local.get $0 - i32.load offset=20 - local.set $2 - end ;; $if_5 + i32.add + local.set $3 local.get $2 - i32.const 6 - i32.eq - if $if_6 - i32.const 6 - local.get $0 - i32.load offset=8 - local.get $1 - call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE - end ;; $if_6 - local.get $0 + i32.load + local.tee $8 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.set $2 + local.get $8 i32.load offset=4 - local.tee $2 - i32.const -2 + local.get $0 + i32.const 255 i32.and - i32.const 15496 local.get $2 - i32.const 1 - i32.and select - local.tee $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_7 - local.get $2 - i32.load - local.set $2 - end ;; $if_7 - local.get $0 - i32.load offset=4 - local.tee $0 - i32.const -2 - i32.and - i32.const 15496 - local.get $0 - i32.const 1 - i32.and - select - local.tee $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_8 + local.set $6 + block $block + block $block_0 + block $block_1 + local.get $2 + if $if_0 + local.get $5 + local.set $0 + local.get $3 + local.set $2 + loop $loop + local.get $0 + i32.load offset=16 + local.tee $9 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $9 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $4 + select + local.tee $7 + local.get $6 + i32.lt_u + local.set $10 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + local.get $7 + local.get $6 + local.get $10 + select + local.tee $11 + i32.eqz + local.tee $12 + i32.eqz + if $if_1 + local.get $8 + i32.load + local.tee $5 + local.get $9 + i32.load + local.get $9 + local.get $4 + select + local.tee $3 + local.get $11 + call $_memcmp + local.tee $13 + if $if_2 + local.get $13 + i32.const 0 + i32.lt_s + br_if $block_5 + br $block_6 + end ;; $if_2 + end ;; $if_1 + local.get $6 + local.get $7 + i32.lt_u + br_if $block_5 + local.get $12 + br_if $block_4 + local.get $8 + i32.load + local.set $5 + local.get $9 + i32.load + local.get $9 + local.get $4 + select + local.set $3 + end ;; $block_6 + local.get $3 + local.get $5 + local.get $11 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_4 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_3 + br $block + end ;; $block_5 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + local.get $0 + local.set $2 + br $block_2 + end ;; $block_4 + local.get $10 + br_if $block_3 + br $block + end ;; $block_3 + local.get $0 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $block_2 + local.get $3 + local.set $0 + br $loop + unreachable + end ;; $loop + unreachable + else + local.get $5 + local.set $0 + local.get $3 + local.set $2 + loop $loop_0 + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $7 + local.get $4 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $7 + select + local.tee $10 + local.get $6 + i32.lt_u + local.set $11 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $10 + local.get $6 + local.get $11 + select + local.tee $12 + i32.eqz + local.tee $13 + i32.eqz + if $if_3 + local.get $8 + local.get $4 + i32.load + local.get $4 + local.get $7 + select + local.tee $3 + local.get $12 + call $_memcmp + local.tee $5 + if $if_4 + local.get $5 + i32.const 0 + i32.lt_s + br_if $block_11 + br $block_10 + end ;; $if_4 + end ;; $if_3 + local.get $6 + local.get $10 + i32.ge_u + if $if_5 + local.get $13 + if $if_6 + br $block_9 + else + local.get $4 + i32.load + local.get $4 + local.get $7 + select + local.set $3 + br $block_10 + end ;; $if_6 + unreachable + end ;; $if_5 + end ;; $block_11 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + local.get $0 + local.set $2 + br $block_7 + end ;; $block_10 + local.get $3 + local.get $8 + local.get $12 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_9 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_8 + br $block + end ;; $block_9 + local.get $11 + br_if $block_8 + br $block + end ;; $block_8 + local.get $0 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $block_7 + local.get $3 + local.set $0 + br $loop_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_0 + unreachable + end ;; $block_1 + local.get $0 + local.set $2 + local.get $1 + local.get $2 + i32.store + local.get $0 + return + end ;; $block_0 local.get $1 - local.get $2 local.get $0 - i32.load offset=4 - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - else - local.get $1 + i32.store local.get $2 - local.get $3 - i32.const 255 - i32.and - call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi - end ;; $if_8 - ) - - (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $4) - (param $0 i32) - (result i32) + return + end ;; $block + local.get $1 local.get $0 - i32.load offset=16 + i32.store + local.get $2 ) - (func $_proxy_onConfigure (type $2) + (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - call $__ZL14getRootContextj - local.tee $4 - i32.load - i32.load offset=24 - local.set $5 - i32.const 8 - call $__Znwm - local.tee $0 local.get $1 - i32.store local.get $0 + local.get $1 + i32.eq + local.tee $2 + i32.store8 offset=12 local.get $2 - i32.store offset=4 - local.get $3 - local.get $0 - i32.store - local.get $4 - local.get $3 - local.get $5 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $3 - i32.load - local.set $0 - local.get $3 - i32.const 0 - i32.store - local.get $0 - i32.eqz if $if - local.get $3 - global.set $30 return end ;; $if - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - local.get $3 - global.set $30 - ) - - (func $_proxy_onCreate (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 - i32.const 16 - i32.add - local.set $9 - local.get $5 - i32.const 4 - i32.add - local.set $4 - i32.const 16 - call $__Znwm - local.tee $2 - local.get $0 - i32.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE block $block block $block_0 + loop $loop + block $block_1 + local.get $1 + local.tee $5 + i32.load offset=8 + local.tee $3 + i32.const 12 + i32.add + local.tee $2 + i32.load8_s + br_if $block + local.get $3 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.load + local.tee $4 + i32.eq + if $if_0 (result i32) + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eqz + br_if $block_1 + local.get $4 + i32.const 12 + i32.add + local.tee $4 + i32.load8_s + br_if $block_1 + local.get $4 + else + local.get $4 + i32.eqz + br_if $block_0 + local.get $4 + i32.const 12 + i32.add + local.tee $4 + i32.load8_s + br_if $block_0 + local.get $4 + end ;; $if_0 + local.set $5 + local.get $2 + i32.const 1 + i32.store8 + local.get $1 + local.get $0 + local.get $1 + i32.eq + i32.store8 offset=12 + local.get $5 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + i32.ne + br_if $loop + br $block + end ;; $block_1 + end ;; $loop + local.get $5 local.get $3 - i32.load8_s offset=4 - if $if + i32.load + i32.ne + if $if_1 + local.get $3 local.get $3 + i32.load offset=4 + local.tee $0 i32.load - local.set $8 - br $block_0 - else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + local.tee $2 + i32.store offset=4 local.get $2 - call $_free + if $if_2 + local.get $2 + local.get $3 + i32.store offset=8 + local.get $3 + i32.load offset=8 + local.set $1 + end ;; $if_2 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $3 + i32.load offset=8 + local.tee $1 + local.get $1 + i32.const 4 + i32.add local.get $3 + local.get $1 i32.load - local.set $8 + i32.eq + select + local.get $0 + i32.store + local.get $0 local.get $3 - i32.load8_s offset=4 - br_if $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $3 - local.get $1 - i32.store - local.get $3 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - i32.load - local.tee $1 - i32.load - i32.load offset=8 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.tee $1 - i32.const 68 - i32.add - local.tee $2 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - if $if_1 - local.get $2 - i32.load - local.set $6 - local.get $1 - i32.load offset=72 - local.set $2 - local.get $4 - i64.const 0 - i64.store align=4 - local.get $4 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - if $if_2 - call $_abort - else - local.get $2 - local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 - else - local.get $4 - i64.const 0 - i64.store align=4 - local.get $4 - i32.const 0 - i32.store offset=8 - local.get $6 - i32.const 255 - i32.and - local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 - local.get $1 - local.set $2 - block $block_1 - block $block_2 - local.get $7 - i32.const 11 - i32.lt_u - if $if_3 (result i32) - local.get $4 - local.get $7 - i32.store8 offset=11 - local.get $7 - if $if_4 (result i32) - local.get $4 - local.set $1 - br $block_2 - else - local.get $4 - end ;; $if_4 - else - local.get $4 - local.get $7 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $6 - call $__Znwm - local.tee $1 - i32.store - local.get $4 - local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $4 - local.get $7 - i32.store offset=4 - br $block_2 - end ;; $if_3 - local.set $1 - br $block_1 - end ;; $block_2 - local.get $1 - local.get $10 - local.get $7 - call $_memcpy - drop - end ;; $block_1 - local.get $1 - local.get $7 - i32.add - i32.const 0 - i32.store8 - i32.const 15572 - i32.load - local.tee $1 - if $if_5 - block $block_3 (result i32) - local.get $1 - local.get $4 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ - local.tee $1 - i32.eqz - if $if_6 - local.get $3 - local.get $4 - call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ - i32.const 4 - local.get $3 - i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $1 - select - local.get $3 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $1 - select - call $_proxy_log - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 - i32.const 1 - local.set $1 - i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 i32.store - local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 44 - call $___cxa_throw - end ;; $if_8 - local.get $5 - local.get $0 local.get $3 - local.get $9 local.get $0 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $5 - i32.load - local.set $1 - local.get $5 - i32.const 0 - i32.store - local.get $8 - i32.load offset=12 - local.set $0 - local.get $8 - local.get $1 - i32.store offset=12 + i32.store offset=8 local.get $0 - if $if_9 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $5 - i32.load - local.set $0 - local.get $5 - i32.const 0 - i32.store - local.get $0 - if $if_10 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_10 - else - local.get $5 - i32.const 0 - i32.store - end ;; $if_9 - i32.const 0 + i32.load offset=8 local.set $1 - i32.const 0 - end ;; $block_3 - local.set $0 - else - i32.const 72 - call $__Znwm - local.tee $1 - i64.const 0 - i64.store offset=4 align=4 - local.get $1 - i64.const 0 - i64.store offset=12 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=20 - local.get $1 - i64.const 0 - i64.store offset=24 align=4 + local.get $0 + i32.const 12 + i32.add + local.set $2 + end ;; $if_1 + local.get $2 + i32.const 1 + i32.store8 local.get $1 - i64.const 0 - i64.store offset=32 align=4 + i32.const 0 + i32.store8 offset=12 local.get $1 - i32.const 1065353216 - i32.store offset=40 local.get $1 - i64.const 0 - i64.store offset=44 align=4 + i32.load + local.tee $0 + i32.load offset=4 + local.tee $2 + i32.store + local.get $2 + if $if_3 + local.get $2 + local.get $1 + i32.store offset=8 + end ;; $if_3 + local.get $0 local.get $1 - i64.const 0 - i64.store offset=52 align=4 + i32.load offset=8 + i32.store offset=8 local.get $1 - i32.const 1065353216 - i32.store offset=60 + i32.load offset=8 + local.tee $2 + local.get $2 + i32.const 4 + i32.add local.get $1 - i32.const -64 - i32.sub + local.get $2 + i32.load + i32.eq + select local.get $0 i32.store + local.get $0 local.get $1 - i32.const 6360 - i32.store - local.get $1 - local.get $2 - i32.store offset=68 - local.get $8 - i32.load offset=12 - local.set $0 - local.get $8 + i32.store offset=4 local.get $1 - i32.store offset=12 local.get $0 - if $if_11 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 + i32.store offset=8 + return + end ;; $block_0 + local.get $3 + i32.load + local.get $5 + i32.eq + if $if_4 + local.get $3 + local.get $5 + local.tee $0 + i32.load offset=4 + local.tee $2 + i32.store + local.get $2 + if $if_5 + local.get $2 + local.get $3 + i32.store offset=8 + local.get $3 + i32.load offset=8 local.set $1 - end ;; $if_11 + end ;; $if_5 + local.get $5 local.get $1 - i32.load - i32.load offset=12 - local.set $0 + i32.store offset=8 + local.get $3 + i32.load offset=8 + local.tee $1 + local.get $1 + i32.const 4 + i32.add + local.get $3 local.get $1 - local.get $0 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $0 - i32.const 1 - local.set $1 - end ;; $if_5 - local.get $4 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_12 - local.get $4 i32.load - call $_free - end ;; $if_12 - local.get $1 - if $if_13 + i32.eq + select local.get $0 + i32.store local.get $0 - i32.load - i32.load offset=24 - i32.const 63 - i32.and - i32.const 112 + local.get $3 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $0 + i32.load offset=8 + local.set $1 + local.get $0 + i32.const 12 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 - return - end ;; $if_13 + local.set $2 + end ;; $if_4 + local.get $2 + i32.const 1 + i32.store8 + local.get $1 + i32.const 0 + i32.store8 offset=12 + local.get $1 + local.get $1 + i32.load offset=4 + local.tee $0 + i32.load + local.tee $2 + i32.store offset=4 + local.get $2 + if $if_6 + local.get $2 + local.get $1 + i32.store offset=8 + end ;; $if_6 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + i32.load offset=8 + local.tee $2 + local.get $2 + i32.const 4 + i32.add + local.get $1 + local.get $2 + i32.load + i32.eq + select + local.get $0 + i32.store + local.get $0 + local.get $1 + i32.store + local.get $1 + local.get $0 + i32.store offset=8 end ;; $block - local.get $8 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=12 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.tee $0 - i32.load - i32.load offset=24 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 ) - (func $_proxy_onDelete (type $0) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE30__emplace_hint_unique_key_argsIS7_JRKS7_EEENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEENS_21__tree_const_iteratorIS7_SP_lEERKT_DpOT0_ (type $1) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $1 - global.get $30 + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 - call $__Z10getContextj - local.tee $2 - i32.load - i32.load offset=68 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + global.set $32 + local.get $4 local.get $1 - local.get $0 + i32.load i32.store - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ - local.get $1 - global.set $30 - ) - - (func $_proxy_onDone (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 + local.get $4 + i32.const 12 + i32.add + local.tee $1 + local.get $4 i32.load - i32.load offset=60 - local.set $1 + i32.store local.get $0 local.get $1 - i32.const 63 - i32.and - i32.const 112 + local.get $4 + i32.const 8 i32.add - call_indirect $26 (type $0) - ) - - (func $_proxy_onGrpcClose (type $7) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 16 + local.get $4 + i32.const 4 i32.add - global.set $30 - local.get $0 - call $__ZL14getRootContextj - local.tee $6 - i32.load - i32.load offset=60 - local.set $7 - i32.const 8 - call $__Znwm - local.tee $0 - local.get $3 - i32.store - local.get $0 - local.get $4 - i32.store offset=4 - local.get $5 - local.get $0 - i32.store - local.get $6 - local.get $1 local.get $2 - local.get $5 - local.get $7 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $5 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ + local.tee $2 i32.load - local.set $0 - local.get $5 - i32.const 0 - i32.store - local.get $0 - i32.eqz if $if - local.get $5 - global.set $30 + local.get $4 + global.set $32 return end ;; $if local.get $0 - i32.load - call $_free - local.get $0 - call $_free - local.get $5 - global.set $30 - ) - - (func $_proxy_onGrpcCreateInitialMetadata (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - local.get $0 - call $__ZL14getRootContextj - local.tee $0 - i32.load - i32.load offset=44 - local.set $2 - local.get $0 - local.get $1 - local.get $2 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - ) - - (func $_proxy_onGrpcReceive (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - call $__ZL14getRootContextj - local.tee $5 - i32.load - i32.load offset=56 - local.set $6 - i32.const 8 - call $__Znwm - local.tee $0 - local.get $2 - i32.store - local.get $0 + i32.load offset=8 + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.load offset=60 + if $if_1 + local.get $1 + i32.load offset=48 + if $if_2 + i32.const 6504 + i64.const 24 + local.get $1 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_2 + end ;; $if_1 + local.get $1 + i32.const 24 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + else + i32.const 20 + call $__Znwm + end ;; $if_0 + local.tee $1 local.get $3 - i32.store offset=4 - local.get $4 - local.get $0 - i32.store - local.get $5 - local.get $1 - local.get $4 - local.get $6 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $4 i32.load - local.set $0 + i32.store offset=16 local.get $4 + i32.load offset=8 + local.set $3 + local.get $1 i32.const 0 i32.store - local.get $0 - i32.eqz - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - local.get $4 - global.set $30 - ) - - (func $_proxy_onGrpcReceiveInitialMetadata (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - local.get $0 - call $__ZL14getRootContextj - local.tee $0 - i32.load - i32.load offset=48 - local.set $2 - local.get $0 local.get $1 - local.get $2 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - ) - - (func $_proxy_onGrpcReceiveTrailingMetadata (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - local.get $0 - call $__ZL14getRootContextj - local.tee $0 - i32.load - i32.load offset=52 - local.set $2 - local.get $0 + i32.const 0 + i32.store offset=4 local.get $1 - local.get $2 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - ) - - (func $_proxy_onHttpCallResponse (type $17) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - global.get $30 - local.set $8 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $8 - i32.const 8 - i32.add - local.set $9 - local.get $8 - i32.const 4 - i32.add - local.set $10 - local.get $0 - call $__ZL14getRootContextj - local.tee $11 - i32.load - i32.load offset=40 - local.set $12 - i32.const 8 - call $__Znwm - local.tee $0 - local.get $2 - i32.store - local.get $0 local.get $3 - i32.store offset=4 - local.get $9 - local.get $0 - i32.store - i32.const 8 - call $__Znwm - local.tee $0 - local.get $4 - i32.store - local.get $0 - local.get $5 - i32.store offset=4 - local.get $10 - local.get $0 - i32.store - i32.const 8 - call $__Znwm - local.tee $0 - local.get $6 - i32.store - local.get $0 - local.get $7 - i32.store offset=4 - local.get $8 - local.get $0 - i32.store - local.get $11 + i32.store offset=8 + local.get $2 local.get $1 - local.get $9 - local.get $10 - local.get $8 - local.get $12 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - local.get $8 - i32.load - local.set $0 - local.get $8 - i32.const 0 i32.store local.get $0 - if $if - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if - local.get $10 i32.load - local.set $0 - local.get $10 - i32.const 0 - i32.store - local.get $0 - if $if_0 + i32.load + local.tee $3 + if $if_3 local.get $0 + local.get $3 + i32.store + local.get $2 i32.load - call $_free - local.get $0 - call $_free - end ;; $if_0 - local.get $9 - i32.load - local.set $0 - local.get $9 - i32.const 0 - i32.store - local.get $0 - i32.eqz - if $if_1 - local.get $8 - global.set $30 - return - end ;; $if_1 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - local.get $8 - global.set $30 - ) - - (func $_proxy_onLog (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.const -64 - i32.sub - i32.load - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - ) - - (func $_proxy_onQueueReady (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - local.get $0 - call $__ZL14getRootContextj - local.tee $0 - i32.load - i32.load offset=36 - local.set $2 - local.get $0 - local.get $1 - local.get $2 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - ) - - (func $_proxy_onRequestBody (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=36 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - i32.const 0 - i32.ne - local.get $3 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $5) - ) - - (func $_proxy_onRequestHeaders (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=28 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $_proxy_onRequestMetadata (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=32 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $_proxy_onRequestTrailers (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=40 - local.set $1 + local.set $1 + end ;; $if_3 local.get $0 + i32.load offset=4 local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $_proxy_onResponseBody (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) + call $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=52 - local.set $3 local.get $0 - local.get $1 - local.get $2 - i32.const 0 - i32.ne - local.get $3 - i32.const 15 - i32.and - i32.const 82 + i32.load offset=12 + i32.const 1 i32.add - call_indirect $26 (type $5) - ) - - (func $_proxy_onResponseHeaders (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=44 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $_proxy_onResponseMetadata (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=48 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - ) - - (func $_proxy_onResponseTrailers (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - call $__Z10getContextj - local.tee $0 - i32.load - i32.load offset=56 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) + i32.store offset=12 + local.get $4 + global.set $32 ) - (func $_proxy_onStart (type $7) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) + (result i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -23752,1718 +20832,1516 @@ (local $13 i32) (local $14 i32) (local $15 i32) - global.get $30 + (local $16 i32) + (local $17 i32) + (local $18 i32) + local.get $1 + i32.load + local.tee $6 local.set $7 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 - i32.const 16 - i32.add - local.set $6 - local.get $7 - i32.const 8 - i32.add - local.set $11 - local.get $7 - i32.const 12 + local.get $0 + i32.const 4 i32.add - local.set $12 - i32.const 8 - call $__Znwm - local.tee $8 - local.get $1 - i32.store - local.get $8 - local.get $2 - i32.store offset=4 - local.get $1 - local.set $13 - block $block - block $block_0 - i32.const 15532 - i32.load + local.tee $15 + local.get $6 + i32.ne + if $if + block $block + local.get $6 + i32.load offset=16 + local.tee $13 + i32.load8_s offset=11 local.tee $5 - i32.eqz - br_if $block_0 - i32.const 15528 + i32.const 0 + i32.lt_s + local.set $17 + local.get $4 i32.load + local.tee $9 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.set $16 + local.get $13 + i32.load offset=4 local.get $5 - local.get $5 - i32.const -1 - i32.add - local.tee $10 + i32.const 255 i32.and - i32.eqz - local.tee $14 - if $if (result i32) - local.get $0 - local.get $10 - i32.and - else - local.get $5 - local.get $0 - i32.gt_u - if $if_0 (result i32) - local.get $0 - else - local.get $5 - if $if_1 (result i32) - local.get $0 - local.get $5 - i32.rem_u - else - i32.const 0 - end ;; $if_1 - end ;; $if_0 - end ;; $if - local.tee $15 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - br_if $block_0 + local.get $17 + select + local.tee $18 + local.get $9 + i32.load offset=4 local.get $1 - i32.load - local.tee $1 - i32.eqz - br_if $block_0 - block $block_1 - local.get $14 - if $if_2 - loop $loop - local.get $0 + i32.const 255 + i32.and + local.get $16 + select + local.tee $14 + i32.lt_u + local.set $11 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $18 + local.get $14 + local.get $11 + select + local.tee $12 + i32.eqz + local.tee $8 + i32.eqz + if $if_0 + local.get $9 + i32.load + local.get $9 + local.get $16 + select + local.tee $5 + local.get $13 + i32.load + local.get $13 + local.get $17 + select + local.tee $1 + local.get $12 + call $_memcmp + local.tee $10 + if $if_1 + local.get $10 + i32.const 0 + i32.lt_s + br_if $block + br $block_3 + end ;; $if_1 + end ;; $if_0 + local.get $14 + local.get $18 + i32.lt_u + br_if $block + local.get $8 + br_if $block_2 + local.get $13 + i32.load + local.get $13 + local.get $17 + select + local.set $1 + local.get $9 + i32.load + local.get $9 + local.get $16 + select + local.set $5 + end ;; $block_3 local.get $1 - i32.load offset=4 - local.tee $5 - i32.eq - local.tee $14 local.get $5 - local.get $10 - i32.and - local.get $15 - i32.eq - i32.or + local.get $12 + call $_memcmp + local.tee $1 i32.eqz - br_if $block_0 - local.get $14 - if $if_3 - local.get $0 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_1 - end ;; $if_3 + br_if $block_2 local.get $1 - i32.load - local.tee $1 - br_if $loop + i32.const 0 + i32.ge_s + br_if $block_1 br $block_0 - unreachable - end ;; $loop - unreachable - else - loop $loop_0 - local.get $0 - local.get $1 - i32.load offset=4 - local.tee $10 - i32.eq - if $if_4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_1 - else - local.get $10 - local.get $5 - i32.ge_u - if $if_5 (result i32) - local.get $5 - if $if_6 (result i32) - local.get $10 - local.get $5 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $10 - end ;; $if_5 - local.get $15 - i32.ne - br_if $block_0 - end ;; $if_4 + end ;; $block_2 + local.get $11 + i32.eqz + br_if $block_1 + br $block_0 + end ;; $block_1 + local.get $2 + local.get $7 + i32.store + local.get $3 + local.get $7 + i32.store + local.get $3 + return + end ;; $block_0 + local.get $6 + i32.load offset=4 + local.tee $1 + if $if_2 + loop $loop + local.get $1 + i32.load + local.tee $3 + if $if_3 + local.get $3 + local.set $1 + br $loop + end ;; $if_3 + end ;; $loop + else + local.get $6 + i32.const 8 + i32.add + local.tee $3 + i32.load + local.tee $1 + i32.load + local.get $6 + i32.ne + if $if_4 + local.get $3 + local.set $1 + loop $loop_0 (result i32) local.get $1 i32.load + local.tee $5 + i32.const 8 + i32.add local.tee $1 + i32.load + local.set $3 + local.get $3 + i32.load + local.get $5 + i32.ne br_if $loop_0 - br $block_0 - unreachable + local.get $3 end ;; $loop_0 - unreachable - end ;; $if_2 - unreachable - end ;; $block_1 - local.get $1 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 - local.get $0 + local.set $1 + end ;; $if_4 + end ;; $if_2 local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $0 - br $block - end ;; $block_0 - i32.const 15568 - i32.load - i32.eqz - if $if_7 - i32.const 160 - call $__Znwm - local.tee $5 - i64.const 0 - i64.store offset=4 align=4 - local.get $5 - i64.const 0 - i64.store offset=12 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=20 - local.get $5 - i64.const 0 - i64.store offset=24 align=4 - local.get $5 - i64.const 0 - i64.store offset=32 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=40 - local.get $5 - i64.const 0 - i64.store offset=44 align=4 - local.get $5 - i64.const 0 - i64.store offset=52 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=60 - local.get $5 - i32.const -64 - i32.sub - local.get $0 - i32.store - local.get $5 - i32.const 5648 - i32.store + local.get $15 + i32.ne + if $if_5 + block $block_4 + local.get $1 + i32.load offset=16 + local.tee $8 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $10 + block $block_5 + block $block_6 + local.get $8 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $10 + select + local.tee $5 + local.get $14 + local.get $5 + local.get $14 + i32.lt_u + select + local.tee $3 + i32.eqz + br_if $block_6 + local.get $9 + i32.load + local.get $9 + local.get $16 + select + local.get $8 + i32.load + local.get $8 + local.get $10 + select + local.get $3 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_6 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_4 + br $block_5 + end ;; $block_6 + local.get $14 + local.get $5 + i32.lt_u + br_if $block_4 + end ;; $block_5 + local.get $0 + local.get $2 + local.get $4 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ + return + end ;; $block_4 + end ;; $if_5 + local.get $6 + i32.load offset=4 + if $if_6 + local.get $2 + local.get $1 + i32.store + local.get $1 + return + else + local.get $2 + local.get $7 + i32.store + local.get $6 + i32.const 4 + i32.add + return + end ;; $if_6 + unreachable + end ;; $block + end ;; $if + local.get $6 + i32.load + local.set $5 + local.get $6 + local.get $0 + i32.load + i32.eq + if $if_7 + local.get $7 + local.set $1 + else + block $block_7 local.get $5 - i32.const 68 - i32.add - local.tee $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u if $if_8 - call $_abort - end ;; $if_8 - block $block_2 - block $block_3 - local.get $2 - i32.const 11 - i32.lt_u + local.get $5 + local.set $1 + loop $loop_1 + local.get $1 + i32.load offset=4 + local.tee $3 if $if_9 - local.get $5 - local.get $2 - i32.store8 offset=79 - local.get $2 - br_if $block_3 - else - local.get $1 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $6 - call $__Znwm - local.tee $1 - i32.store - local.get $5 - local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=76 - local.get $5 - local.get $2 - i32.store offset=72 - br $block_3 + local.get $3 + local.set $1 + br $loop_1 end ;; $if_9 - br $block_2 - end ;; $block_3 - local.get $1 - local.get $13 - local.get $2 - call $_memcpy - drop - end ;; $block_2 + end ;; $loop_1 + else + local.get $6 + local.set $3 + loop $loop_2 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.load + local.get $3 + i32.eq + if $if_10 + local.get $1 + local.set $3 + br $loop_2 + end ;; $if_10 + end ;; $loop_2 + end ;; $if_8 + local.get $4 + i32.load + local.tee $11 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $15 local.get $1 - local.get $2 - i32.add + i32.load offset=16 + local.tee $12 + i32.load8_s offset=11 + local.tee $3 i32.const 0 - i32.store8 - local.get $5 - i64.const 0 - i64.store offset=80 align=4 - local.get $5 - i64.const 0 - i64.store offset=88 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=96 - local.get $5 - i64.const 0 - i64.store offset=100 align=4 - local.get $5 - i64.const 0 - i64.store offset=108 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=116 - local.get $5 - i64.const 0 - i64.store offset=120 align=4 - local.get $5 - i64.const 0 - i64.store offset=128 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=136 - local.get $5 - i64.const 0 - i64.store offset=140 align=4 - local.get $5 - i64.const 0 - i64.store offset=148 align=4 - local.get $5 - i32.const 1065353216 - i32.store offset=156 - local.get $9 - local.get $0 - i32.store - local.get $9 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - local.tee $1 - i32.load - local.set $0 - local.get $1 - local.get $5 - i32.store + i32.lt_s + local.set $8 + block $block_8 + block $block_9 + local.get $11 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $15 + select + local.tee $10 + local.get $12 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $8 + select + local.tee $7 + local.get $10 + local.get $7 + i32.lt_u + select + local.tee $3 + i32.eqz + br_if $block_9 + local.get $12 + i32.load + local.get $12 + local.get $8 + select + local.get $11 + i32.load + local.get $11 + local.get $15 + select + local.get $3 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_9 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_7 + br $block_8 + end ;; $block_9 + local.get $7 + local.get $10 + i32.lt_u + br_if $block_7 + end ;; $block_8 local.get $0 - if $if_10 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_10 - local.get $5 - local.set $0 - br $block - end ;; $if_7 + local.get $2 + local.get $4 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ + return + end ;; $block_7 + end ;; $if_7 + local.get $5 + if $if_11 (result i32) + local.get $2 + local.get $1 + i32.store + local.get $1 + i32.const 4 + i32.add + else + local.get $2 local.get $6 - i64.const 0 - i64.store align=4 + i32.store local.get $6 + end ;; $if_11 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $2 + local.get $1 + i32.const 7 + i32.le_u + if $if + local.get $2 + i32.const 3 + i32.store + local.get $2 + i32.const 11940 + i32.store offset=4 + local.get $2 + i32.const 926 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 13458 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $2 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if + local.get $1 + local.get $1 + i32.const -1 + i32.add + i32.and + if $if_0 + local.get $3 + i32.const 3 + i32.store + local.get $3 + i32.const 11940 + i32.store offset=4 + local.get $3 + i32.const 927 i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 13493 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $1 + i32.const 2 + i32.shl + local.set $2 + local.get $0 + i32.load offset=20 + local.tee $0 + i32.eqz + if $if_1 local.get $2 - i32.const -17 - i32.gt_u - if $if_11 - call $_abort - end ;; $if_11 - block $block_4 - block $block_5 - local.get $2 - i32.const 11 - i32.lt_u - if $if_12 (result i32) - local.get $6 - local.get $2 - i32.store8 offset=11 - local.get $2 - if $if_13 (result i32) - local.get $6 - local.set $1 - br $block_5 - else - local.get $6 - end ;; $if_13 - else - local.get $6 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $5 - call $__Znwm - local.tee $1 - i32.store - local.get $6 - local.get $5 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=4 - br $block_5 - end ;; $if_12 - local.set $1 - br $block_4 - end ;; $block_5 + call $__Znwm + local.tee $0 + i32.const 0 + local.get $2 + call $_memset + drop + local.get $3 + global.set $32 + local.get $0 + return + end ;; $if_1 + local.get $2 + i32.const 7 + i32.add + i32.const -8 + i32.and + local.set $1 + local.get $0 + i32.load offset=60 + if $if_2 + local.get $0 + i32.load offset=48 + if $if_3 + i32.const 6504 local.get $1 - local.get $13 - local.get $2 - call $_memcpy - drop - end ;; $block_4 + i64.extend_i32_u + local.get $0 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_3 + end ;; $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $0 + i32.const 0 + local.get $2 + call $_memset + drop + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12TransferTreeEPKPvm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + local.tee $5 + i32.const 4 + i32.add + local.set $7 + local.get $5 + i32.load + local.set $3 + loop $loop + local.get $3 + i32.load offset=16 + local.tee $6 + i32.load + local.get $6 + local.get $6 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.tee $2 + i32.load8_s + local.tee $8 + if $if + i32.const 0 + local.set $1 + loop $loop_0 + local.get $1 + i32.const 5 + i32.mul + local.get $8 + i32.add + local.set $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + local.tee $8 + br_if $loop_0 + end ;; $loop_0 + else + i32.const 0 + local.set $1 + end ;; $if + local.get $4 + local.get $0 + local.get $0 + i32.load offset=8 local.get $1 - local.get $2 i32.add - i32.const 0 - i32.store8 - i32.const 15568 - i32.load + local.get $0 + i32.load offset=4 + i32.const -1 + i32.add + i32.and local.get $6 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE + local.get $3 + i32.load offset=4 local.tee $1 - if $if_14 (result i32) - local.get $8 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - i32.load - i32.store - local.get $7 - local.get $2 - i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception + if $if_0 + loop $loop_1 + local.get $1 + i32.load local.tee $2 - i32.const 6832 - i32.store - local.get $2 - i32.const 5296 - i32.const 44 - call $___cxa_throw - end ;; $if_15 - local.get $11 - local.get $1 - local.get $9 - local.get $7 - local.get $1 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 210 + if $if_1 + local.get $2 + local.set $1 + br $loop_1 + end ;; $if_1 + end ;; $loop_1 + else + local.get $3 + local.get $3 + i32.const 8 i32.add - call_indirect $26 (type $1) - local.get $11 + local.tee $2 i32.load local.tee $1 i32.load - i32.load offset=8 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $1 - local.get $6 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ - local.get $1 - i32.store - local.get $9 - local.get $0 - i32.store - local.get $9 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - local.set $2 - local.get $11 - i32.load - local.set $5 - local.get $11 - i32.const 0 - i32.store - local.get $2 - i32.load - local.set $0 - local.get $2 - local.get $5 - i32.store - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 - i32.load - local.set $0 - local.get $11 - i32.const 0 - i32.store - local.get $0 - if $if_17 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_17 + i32.ne + if $if_2 + local.get $2 + local.set $1 + loop $loop_2 (result i32) + local.get $1 + i32.load + local.tee $3 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.set $2 + local.get $2 + i32.load + local.get $3 + i32.ne + br_if $loop_2 + local.get $2 + end ;; $loop_2 + local.set $1 + end ;; $if_2 + end ;; $if_0 + local.get $1 + local.get $7 + i32.ne + if $if_3 local.get $1 - else - local.get $8 - i32.load - local.set $10 - local.get $8 - i32.load offset=4 - local.set $5 - i32.const 160 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store offset=4 align=4 - local.get $2 - i64.const 0 - i64.store offset=12 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=20 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=40 - local.get $2 - i64.const 0 - i64.store offset=44 align=4 - local.get $2 - i64.const 0 - i64.store offset=52 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=60 - local.get $2 - i32.const -64 - i32.sub - local.get $0 - i32.store - local.get $2 - i32.const 5648 - i32.store - local.get $2 - i32.const 68 - i32.add - local.tee $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $5 - i32.const -17 - i32.gt_u - if $if_18 - call $_abort - end ;; $if_18 - block $block_6 - block $block_7 - local.get $5 - i32.const 11 - i32.lt_u - if $if_19 - local.get $2 - local.get $5 - i32.store8 offset=79 - local.get $5 - br_if $block_7 - else - local.get $1 - local.get $5 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $13 - call $__Znwm - local.tee $1 - i32.store - local.get $2 - local.get $13 - i32.const -2147483648 - i32.or - i32.store offset=76 - local.get $2 - local.get $5 - i32.store offset=72 - br $block_7 - end ;; $if_19 - br $block_6 - end ;; $block_7 - local.get $1 - local.get $10 - local.get $5 - call $_memcpy - drop - end ;; $block_6 - local.get $1 - local.get $5 - i32.add - i32.const 0 - i32.store8 - local.get $2 - i64.const 0 - i64.store offset=80 align=4 - local.get $2 - i64.const 0 - i64.store offset=88 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=96 - local.get $2 - i64.const 0 - i64.store offset=100 align=4 - local.get $2 - i64.const 0 - i64.store offset=108 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=116 - local.get $2 - i64.const 0 - i64.store offset=120 align=4 - local.get $2 - i64.const 0 - i64.store offset=128 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=136 - local.get $2 - i64.const 0 - i64.store offset=140 align=4 - local.get $2 - i64.const 0 - i64.store offset=148 align=4 - local.get $2 - i32.const 1065353216 - i32.store offset=156 - local.get $9 - local.get $0 - i32.store - local.get $9 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - local.tee $1 - i32.load - local.set $0 - local.get $1 - local.get $2 - i32.store - local.get $0 - if $if_20 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_20 - local.get $2 - end ;; $if_14 - local.set $0 - local.get $6 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_21 - local.get $6 - i32.load - call $_free - end ;; $if_21 - end ;; $block + local.set $3 + br $loop + end ;; $if_3 + end ;; $loop local.get $0 + i32.load offset=20 + local.set $0 + local.get $5 + local.get $7 i32.load - i32.load offset=28 - local.set $2 - i32.const 8 - call $__Znwm - local.tee $1 - local.get $3 + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE + local.get $0 + if $if_4 + local.get $4 + global.set $32 + return + end ;; $if_4 + local.get $5 + call $_free + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 7176 i32.store + local.get $0 local.get $1 - local.get $4 i32.store offset=4 - local.get $12 + local.get $0 local.get $1 - i32.store + i32.store offset=8 local.get $0 - local.get $12 - local.get $2 - i32.const 31 - i32.and - i32.const 176 + i32.const 12 i32.add - call_indirect $26 (type $3) - local.get $12 - i32.load - local.set $0 - local.get $12 - i32.const 0 + local.tee $2 + local.get $1 i32.store local.get $0 - i32.eqz - if $if_22 - local.get $8 - i32.load - call $_free - local.get $8 - call $_free - local.get $7 - global.set $30 - return - end ;; $if_22 - local.get $0 - i32.load - call $_free + i32.const 0 + i32.store offset=16 + local.get $2 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv local.get $0 - call $_free - local.get $8 - i32.load - call $_free - local.get $8 - call $_free - local.get $7 - global.set $30 - ) - - (func $_proxy_onTick (type $0) - (param $0 i32) - (local $1 i32) + i32.const 0 + i32.store offset=16 local.get $0 - call $__ZL14getRootContextj - local.tee $0 + i32.const 0 + i32.store offset=24 + i32.const 6816 i32.load - i32.load offset=32 - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) + i32.eqz + if $if + return + end ;; $if + call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) - (func $__ZL14getRootContextj (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE4InitEv (type $0) (param $0 i32) - (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - i32.const 15532 + local.get $0 i32.load local.tee $1 + local.set $2 + local.get $1 i32.eqz if $if + i32.const 24 + call $__Znwm + local.tee $1 + i32.const 0 + i32.store + local.get $1 + local.get $1 + i32.store offset=8 + local.get $1 i32.const 0 + i32.store offset=16 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.const 8 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm + i32.store offset=16 + local.get $1 + i32.const 8 + i32.store offset=12 + local.get $1 + i32.const 8 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 return end ;; $if - i32.const 15528 - i32.load - local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $3 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $0 - local.get $3 - i32.and - else + i32.load offset=60 + if $if_0 local.get $1 - local.get $0 - i32.gt_u - if $if_1 (result i32) - local.get $0 - else + i32.load offset=48 + if $if_1 + i32.const 4688 + i64.const 24 local.get $1 - if $if_2 (result i32) - local.get $0 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_2 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 - local.tee $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - i32.eqz - if $if_3 - i32.const 0 - return - end ;; $if_3 + local.get $1 + i32.const 24 + i32.const 120 + call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE + local.tee $1 + i32.const 0 + i32.store + local.get $1 + local.get $1 + i32.store offset=8 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.const 8 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm + i32.store offset=16 + local.get $1 + i32.const 8 + i32.store offset=12 + local.get $1 + i32.const 8 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev (type $0) + (param $0 i32) + local.get $0 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv + local.get $0 i32.load - local.tee $2 - i32.eqz - if $if_4 - i32.const 0 - return - end ;; $if_4 - block $block - local.get $4 - if $if_5 - loop $loop - local.get $0 - local.get $2 - i32.load offset=4 - local.tee $1 - i32.eq - local.tee $4 - local.get $1 - local.get $3 - i32.and - local.get $5 - i32.eq - i32.or - if $if_6 - local.get $4 - if $if_7 - local.get $0 - local.get $2 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $2 - i32.load - local.tee $2 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $0 - local.get $2 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_8 - local.get $0 - local.get $2 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $3 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $3 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $3 - end ;; $if_9 - local.get $5 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $2 - i32.load - local.tee $2 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - i32.const 0 + if $if return - end ;; $block - local.get $2 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 + end ;; $if local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) + i32.load offset=8 + local.tee $0 i32.eqz - if $if_11 - i32.const 0 + if $if_0 return - end ;; $if_11 - local.get $2 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 + end ;; $if_0 local.get $0 - local.get $1 - i32.const 63 - i32.and - call_indirect $26 (type $4) + i32.load offset=16 + if $if_1 + local.get $0 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv + local.get $0 + i32.load offset=20 + i32.eqz + if $if_2 + local.get $0 + i32.load offset=16 + call $_free + end ;; $if_2 + end ;; $if_1 + local.get $0 + call $_free ) - (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv (type $0) (param $0 i32) - (result i32) (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 f32) - (local $8 f32) + (local $4 i64) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 28 + i32.add + local.tee $3 local.get $0 - i32.load - local.set $4 - i32.const 15532 - i32.load + i32.load offset=8 + local.tee $2 + i32.store offset=4 + local.get $3 + local.get $2 + i32.load offset=12 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + local.get $3 + i64.load offset=4 align=4 + local.set $4 + local.get $3 + i32.load local.tee $2 i32.eqz - local.tee $6 if $if - i32.const 0 - local.set $0 - else - i32.const 15528 - i32.load - local.get $2 + local.get $1 + global.set $32 + return + end ;; $if + loop $loop + local.get $1 local.get $2 - i32.const -1 - i32.add - local.tee $5 - i32.and + i32.store + local.get $1 + local.get $4 + i64.store offset=4 align=4 + local.get $0 + i32.load i32.eqz - local.tee $3 - if $if_0 (result i32) - local.get $4 - local.get $5 - i32.and - else - local.get $4 + if $if_0 local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else + i32.load offset=12 + local.tee $2 + if $if_1 local.get $2 - if $if_2 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 + call $__ZN6google8protobuf7MapPairINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev + local.get $2 + call $_free end ;; $if_1 end ;; $if_0 - local.tee $0 + local.get $1 + local.get $1 + i64.load + i64.store offset=16 + local.get $1 + local.get $1 + i32.load offset=8 + i32.store offset=24 + local.get $1 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv + local.get $0 + i32.load offset=8 + local.set $2 + local.get $3 + local.get $1 + i64.load offset=16 align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=24 + i32.store offset=8 + local.get $2 + local.get $3 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE + local.get $1 + i64.load offset=4 align=4 + local.set $4 + local.get $1 + i32.load + local.tee $2 + br_if $loop + end ;; $loop + local.get $1 + global.set $32 + ) + + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + i32.eqz + if $if + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $5 + global.set $32 + return + end ;; $if + loop $loop + local.get $0 + i32.load offset=16 + local.tee $1 + local.get $2 i32.const 2 i32.shl i32.add + local.tee $3 i32.load - local.tee $1 - if $if_3 - local.get $1 - i32.load - local.tee $1 - if $if_4 - block $block + local.tee $4 + if $if_0 + block $block + local.get $2 + i32.const 1 + i32.xor + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.load + local.get $4 + i32.ne + if $if_1 local.get $3 - if $if_5 - loop $loop - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $3 - i32.eq - local.get $3 - local.get $5 - i32.and - local.get $0 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_0 - local.get $1 - i32.load - local.tee $1 - br_if $loop - br $block - end ;; $block_0 - end ;; $loop - local.get $1 - i32.const 12 - i32.add - return - end ;; $if_5 + i32.const 0 + i32.store + local.get $4 + local.set $1 loop $loop_0 - block $block_1 - local.get $1 - i32.load offset=4 - local.tee $3 - local.get $4 - i32.ne - if $if_6 - local.get $3 - local.get $2 - i32.ge_u - if $if_7 (result i32) - local.get $2 - if $if_8 (result i32) - local.get $3 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_8 - else - local.get $3 - end ;; $if_7 - local.get $0 - i32.ne - br_if $block - end ;; $if_6 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_1 + local.get $1 + i32.load offset=16 + local.set $3 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 local.get $1 i32.load - local.tee $1 - br_if $loop_0 - br $block - end ;; $block_1 + call $_free + end ;; $if_2 + local.get $0 + i32.load offset=20 + i32.eqz + if $if_3 + local.get $1 + call $_free + end ;; $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $3 + local.set $1 + br $loop_0 + unreachable end ;; $loop_0 - local.get $1 - i32.const 12 - i32.add - return - end ;; $block - end ;; $if_4 - end ;; $if_3 - end ;; $if - i32.const 16 - call $__Znwm - local.tee $3 - local.get $4 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - i32.const 0 - i32.store - local.get $6 - i32.const 15544 - f32.load - local.tee $8 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15540 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $7 - f32.lt - i32.or - if $if_9 - block $block_2 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $2 - local.get $7 - local.get $8 - f32.div - f32.ceil - local.tee $7 - local.get $7 - f32.ne - if $if_10 (result i32) - i32.const 0 - else - local.get $7 - f32.const 0x1.000000p+32 - f32.ge - if $if_11 (result i32) - i32.const 0 - else - local.get $7 - f32.const -0x1.000000p-0 - f32.le - if $if_12 (result i32) - i32.const 0 - else - local.get $7 - i32.trunc_f32_u - end ;; $if_12 - end ;; $if_11 - end ;; $if_10 - local.tee $0 - local.get $2 - local.get $2 - local.get $0 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 15532 - i32.load - local.tee $1 - i32.const -1 - i32.add - local.tee $0 - local.get $4 - i32.and - local.get $0 - local.get $1 - i32.and - i32.eqz - br_if $block_2 - drop - local.get $4 - local.get $1 - i32.lt_u - if $if_13 (result i32) + unreachable + end ;; $if_1 + local.get $2 + i32.const 1 + i32.and + i32.eqz local.get $4 - else + local.get $2 + i32.const 1 + i32.add + local.tee $9 + i32.const 2 + i32.shl local.get $1 - if $if_14 (result i32) - local.get $4 + i32.add + local.tee $1 + i32.load + i32.eq + i32.and + if $if_4 (result i32) local.get $1 - i32.rem_u else + local.get $5 + i32.const 3 + i32.store + local.get $5 + i32.const 11940 + i32.store offset=4 + local.get $5 + i32.const 527 + i32.store offset=8 + local.get $5 + i64.const 0 + i64.store offset=12 align=4 + local.get $5 i32.const 0 - end ;; $if_14 - end ;; $if_13 - end ;; $block_2 - local.set $0 - else - local.get $2 - local.set $1 - end ;; $if_9 - block $block_3 - block $block_4 - i32.const 15528 - i32.load - local.get $0 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - local.tee $0 - if $if_15 - local.get $3 - local.get $0 - i32.load - i32.store - br $block_4 - else - local.get $3 - i32.const 15536 - i32.load - i32.store - i32.const 15536 - local.get $3 + i32.store offset=20 + local.get $5 + i32.const 13530 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $5 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $0 + i32.load offset=16 + local.get $9 + i32.const 2 + i32.shl + i32.add + end ;; $if_4 + i32.const 0 i32.store + local.get $0 + i32.load offset=16 local.get $2 - i32.const 15536 + i32.const 2 + i32.shl + i32.add + i32.const 0 i32.store - local.get $3 + local.get $4 + i32.const 4 + i32.add + local.set $7 + local.get $4 i32.load - local.tee $0 - if $if_16 - local.get $0 + local.set $2 + loop $loop_1 + local.get $2 + i32.load offset=16 + local.set $8 + local.get $2 + local.tee $6 i32.load offset=4 - local.set $0 - i32.const 15528 - i32.load - local.get $1 - local.get $1 - i32.const -1 - i32.add local.tee $2 - i32.and - if $if_17 (result i32) - local.get $0 - local.get $1 - i32.ge_u - if $if_18 (result i32) - local.get $1 - if $if_19 (result i32) - local.get $0 + if $if_5 + loop $loop_2 + local.get $2 + i32.load + local.tee $1 + if $if_6 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_19 - else - local.get $0 - end ;; $if_18 + local.set $2 + br $loop_2 + end ;; $if_6 + end ;; $loop_2 else - local.get $0 - local.get $2 - i32.and - end ;; $if_17 - i32.const 2 - i32.shl - i32.add - local.set $0 - br $block_4 - end ;; $if_16 - end ;; $if_15 - br $block_3 - end ;; $block_4 - local.get $0 - local.get $3 - i32.store - end ;; $block_3 - i32.const 15540 - i32.const 15540 - i32.load - i32.const 1 - i32.add - i32.store - local.get $3 - i32.const 12 - i32.add - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $5 - select - local.set $6 - block $block - block $block_0 - block $block_1 - block $block_2 - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $5 - select - local.tee $5 - i32.const 3 - i32.gt_u - if $if (result i32) local.get $6 - local.set $2 - local.get $5 + local.get $6 + i32.const 8 + i32.add + local.tee $2 + i32.load local.tee $1 - local.set $3 - loop $loop - local.get $2 - i32.load align=1 - i32.const 1540483477 - i32.mul - local.tee $4 - local.get $4 - i32.const 24 - i32.shr_u - i32.xor - i32.const 1540483477 - i32.mul + i32.load + i32.eq + if $if_7 (result i32) local.get $1 - i32.const 1540483477 - i32.mul - i32.xor - local.set $1 - local.get $2 - i32.const 4 - i32.add - local.set $2 - local.get $3 - i32.const -4 - i32.add + else + loop $loop_3 (result i32) + local.get $2 + i32.load + local.tee $3 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.set $1 + local.get $1 + i32.load + local.get $3 + i32.ne + br_if $loop_3 + local.get $1 + end ;; $loop_3 + end ;; $if_7 + local.set $2 + end ;; $if_5 + local.get $6 + i32.load offset=4 + local.tee $1 + if $if_8 + loop $loop_4 + local.get $1 + i32.load local.tee $3 - i32.const 3 - i32.gt_u - br_if $loop - end ;; $loop - local.get $5 - i32.const -4 - i32.add - local.tee $3 - i32.const -4 - i32.and - local.tee $4 - i32.const 4 - i32.add + if $if_9 + local.get $3 + local.set $1 + br $loop_4 + end ;; $if_9 + end ;; $loop_4 + else + local.get $6 local.get $6 + i32.const 8 i32.add - local.set $2 - local.get $3 + local.tee $1 + i32.load + local.tee $3 + i32.load + i32.eq + if $if_10 (result i32) + local.get $3 + else + loop $loop_5 (result i32) + local.get $1 + i32.load + local.tee $10 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.set $3 + local.get $3 + i32.load + local.get $10 + i32.ne + br_if $loop_5 + local.get $3 + end ;; $loop_5 + end ;; $if_10 + local.set $1 + end ;; $if_8 + local.get $6 + local.get $4 + i32.load + i32.eq + if $if_11 local.get $4 - i32.sub - else + local.get $1 + i32.store + end ;; $if_11 + local.get $4 + local.get $4 + i32.load offset=12 + i32.const -1 + i32.add + i32.store offset=12 + local.get $7 + i32.load + local.get $6 + call $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ + local.get $4 + i32.load offset=8 + i32.eqz + if $if_12 local.get $6 - local.set $2 - local.get $5 - local.tee $1 - end ;; $if - i32.const 1 - i32.sub - br_table - $block_0 $block_1 $block_2 - $block ;; default - end ;; $block_2 - local.get $1 + call $_free + end ;; $if_12 + local.get $8 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_13 + local.get $8 + i32.load + call $_free + end ;; $if_13 + local.get $0 + i32.load offset=20 + i32.eqz + if $if_14 + local.get $8 + call $_free + end ;; $if_14 + local.get $2 + local.get $7 + i32.ne + br_if $loop_1 + end ;; $loop_1 + local.get $0 + i32.load offset=20 + local.set $2 + local.get $4 + local.get $7 + i32.load + call $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE local.get $2 - i32.load8_u offset=2 - i32.const 16 - i32.shl - i32.xor - local.set $1 - end ;; $block_1 - local.get $1 - local.get $2 - i32.load8_u offset=1 - i32.const 8 - i32.shl - i32.xor - local.set $1 - end ;; $block_0 - local.get $1 + i32.eqz + if $if_15 + local.get $4 + call $_free + end ;; $if_15 + local.get $9 + local.set $2 + end ;; $block + end ;; $if_0 local.get $2 - i32.load8_u - i32.xor - i32.const 1540483477 - i32.mul - local.set $1 - end ;; $block + i32.const 1 + i32.add + local.tee $2 + local.get $0 + i32.load offset=4 + local.tee $1 + i32.lt_u + br_if $loop + end ;; $loop local.get $0 - i32.load offset=4 - local.tee $4 + i32.const 0 + i32.store + local.get $0 + local.get $1 + i32.store offset=12 + local.get $5 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) + (param $0 i32) + local.get $0 + i32.load offset=16 i32.eqz + if $if + return + end ;; $if + local.get $0 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv + local.get $0 + i32.load offset=20 if $if_0 - i32.const 0 return end ;; $if_0 - local.get $1 - local.get $1 - i32.const 13 - i32.shr_u - i32.xor - i32.const 1540483477 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - local.set $7 local.get $0 - i32.load - local.get $4 - local.get $4 - i32.const -1 + i32.load offset=16 + call $_free + ) + + (func $__ZN6google8protobuf6StructD2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 i32.add - local.tee $8 + global.set $32 + local.get $0 + i32.const 7176 + i32.store + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -2 i32.and - i32.eqz - local.tee $1 - if $if_1 (result i32) - local.get $7 - local.get $8 - i32.and + local.set $2 + local.get $3 + i32.const 1 + i32.and + if $if (result i32) + local.get $2 + i32.load offset=12 else - local.get $7 - local.get $4 - i32.lt_u - if $if_2 (result i32) - local.get $7 - else - local.get $4 - if $if_3 (result i32) - local.get $7 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_3 - end ;; $if_2 - end ;; $if_1 - local.tee $11 - i32.const 2 - i32.shl + local.get $2 + end ;; $if + if $if_0 + local.get $1 + i32.const 3 + i32.store + local.get $1 + i32.const 11753 + i32.store offset=4 + local.get $1 + i32.const 150 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 0 + i32.store offset=20 + local.get $1 + i32.const 12935 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $1 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $0 + i32.const 12 i32.add - i32.load - local.tee $0 - i32.eqz - if $if_4 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEED2Ev + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const 1 + i32.and + i32.eqz + br_if $block + local.get $2 + i32.const -2 + i32.and + local.tee $2 + local.tee $3 + i32.load offset=12 + local.get $2 + i32.eqz + i32.or + br_if $block + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $3 + i32.load + call $_free + end ;; $if_1 + local.get $2 + call $_free + local.get $0 i32.const 0 + i32.store offset=4 + local.get $1 + global.set $32 return - end ;; $if_4 + end ;; $block local.get $0 - i32.load + i32.const 0 + i32.store offset=4 + local.get $1 + global.set $32 + ) + + (func $__ZN6google8protobuf6StructD0Ev (type $0) + (param $0 i32) + local.get $0 + call $__ZN6google8protobuf6StructD2Ev + local.get $0 + call $_free + ) + + (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 22 + i32.store offset=4 + local.get $1 + i32.const 13888 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 13896 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 13904 + i32.load align=1 + i32.store offset=16 align=1 + local.get $1 + i32.const 13908 + i32.load16_s align=1 + i32.store16 offset=20 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=22 + ) + + (func $__ZNK6google8protobuf6Struct3NewEv (type $4) + (param $0 i32) + (result i32) + i32.const 0 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZN6google8protobuf6Struct5ClearEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 12 + i32.add + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5clearEv + local.get $0 + i32.load offset=4 local.tee $0 + i32.const 1 + i32.and i32.eqz - if $if_5 - i32.const 0 + if $if return - end ;; $if_5 - local.get $5 - i32.eqz - local.set $9 - local.get $1 - if $if_6 - loop $loop_0 - block $block_3 - local.get $0 - i32.load offset=4 - local.tee $1 - local.get $7 - i32.eq - local.tee $2 - local.get $1 - local.get $8 - i32.and - local.get $11 - i32.eq - i32.or - i32.eqz - if $if_7 - i32.const 0 - local.set $0 - br $block_3 - end ;; $if_7 - local.get $2 - if $if_8 - block $block_4 - local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.set $3 - local.get $5 - local.get $0 - i32.load offset=12 - local.get $1 - i32.const 255 - i32.and - local.tee $1 - local.get $3 - select - i32.eq - if $if_9 - local.get $2 - i32.load - local.tee $4 - local.get $2 - local.get $3 - select - local.set $10 - local.get $3 - if $if_10 - local.get $9 - br_if $block_3 - local.get $10 - local.get $6 - local.get $5 - call $_memcmp - br_if $block_4 - br $block_3 - end ;; $if_10 - local.get $9 - br_if $block_3 - local.get $6 - i32.load8_u - local.get $4 - i32.const 255 - i32.and - i32.eq - if $if_11 - local.get $6 - local.set $3 - loop $loop_1 - local.get $1 - i32.const -1 - i32.add - local.tee $1 - i32.eqz - br_if $block_3 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - i32.load8_s - local.get $3 - i32.const 1 - i32.add - local.tee $3 - i32.load8_s - i32.eq - br_if $loop_1 - end ;; $loop_1 - end ;; $if_11 - end ;; $if_9 - end ;; $block_4 - end ;; $if_8 - local.get $0 - i32.load - local.tee $0 - br_if $loop_0 - i32.const 0 - local.set $0 - end ;; $block_3 - end ;; $loop_0 - local.get $0 - return - end ;; $if_6 - loop $loop_2 - block $block_5 - local.get $0 - i32.load offset=4 - local.tee $1 - local.get $7 - i32.eq - if $if_12 - block $block_6 - local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.set $3 - local.get $5 - local.get $0 - i32.load offset=12 - local.get $1 - i32.const 255 - i32.and - local.tee $1 - local.get $3 - select - i32.eq - if $if_13 - local.get $2 - i32.load - local.tee $8 - local.get $2 - local.get $3 - select - local.set $10 - local.get $3 - if $if_14 - local.get $9 - br_if $block_5 - local.get $10 - local.get $6 - local.get $5 - call $_memcmp - br_if $block_6 - br $block_5 - end ;; $if_14 - local.get $9 - br_if $block_5 - local.get $6 - i32.load8_u - local.get $8 - i32.const 255 - i32.and - i32.eq - if $if_15 - local.get $6 - local.set $3 - loop $loop_3 - local.get $1 - i32.const -1 - i32.add - local.tee $1 - i32.eqz - br_if $block_5 - local.get $2 - i32.const 1 - i32.add - local.tee $2 - i32.load8_s - local.get $3 - i32.const 1 - i32.add - local.tee $3 - i32.load8_s - i32.eq - br_if $loop_3 - end ;; $loop_3 - end ;; $if_15 - end ;; $if_13 - end ;; $block_6 - else - local.get $1 - local.get $4 - i32.ge_u - if $if_16 (result i32) - local.get $4 - if $if_17 (result i32) - local.get $1 - local.get $4 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $1 - end ;; $if_16 - local.get $11 - i32.ne - if $if_18 - i32.const 0 - local.set $0 - br $block_5 - end ;; $if_18 - end ;; $if_12 - local.get $0 - i32.load - local.tee $0 - br_if $loop_2 - i32.const 0 - local.set $0 - end ;; $block_5 - end ;; $loop_2 + end ;; $if + local.get $0 + i32.const -2 + i32.and + local.tee $0 + local.set $1 local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load + i32.const 0 + i32.store8 + local.get $1 + i32.const 0 + i32.store offset=4 + else + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=11 + end ;; $if_0 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $4) + (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + local.get $1 + i32.const 4768 + i32.const 4672 + call $___dynamic_cast + if $if + local.get $0 + local.get $1 + call $__ZN6google8protobuf6Struct9MergeFromERKS1_ + else + i32.const 13788 + i32.const 13829 + i32.const 92 + i32.const 13878 + call $___assert_fail + end ;; $if + ) + + (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -25473,809 +22351,460 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.load - local.get $0 + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 12 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s + i32.load offset=20 local.tee $2 - select - local.set $4 - block $block - block $block_0 - block $block_1 - block $block_2 - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $2 - select - local.tee $9 - i32.const 3 - i32.gt_u - if $if (result i32) - local.get $4 - local.set $1 - local.get $9 - local.tee $5 - local.set $3 - loop $loop - local.get $1 - i32.load align=1 - i32.const 1540483477 - i32.mul - local.tee $2 - local.get $2 - i32.const 24 - i32.shr_u - i32.xor - i32.const 1540483477 - i32.mul - local.get $5 - i32.const 1540483477 - i32.mul - i32.xor - local.set $5 - local.get $1 - i32.const 4 - i32.add - local.set $1 - local.get $3 - i32.const -4 - i32.add - local.tee $3 - i32.const 3 - i32.gt_u - br_if $loop - end ;; $loop - local.get $9 - i32.const -4 - i32.add - local.tee $2 - i32.const -4 - i32.and - local.tee $6 - i32.const 4 - i32.add - local.get $4 - i32.add - local.set $1 - local.get $2 - local.get $6 - i32.sub - else - local.get $4 - local.set $1 - local.get $9 - local.tee $5 - end ;; $if - i32.const 1 - i32.sub - br_table - $block_0 $block_1 $block_2 - $block ;; default - end ;; $block_2 - local.get $5 - local.get $1 - i32.load8_u offset=2 - i32.const 16 - i32.shl - i32.xor - local.set $5 - end ;; $block_1 - local.get $5 + i32.load + local.tee $3 + if $if + block $block + local.get $3 + i32.const 1 + i32.ne local.get $1 - i32.load8_u offset=1 - i32.const 8 - i32.shl - i32.xor - local.set $5 - end ;; $block_0 - local.get $5 - local.get $1 - i32.load8_u - i32.xor - i32.const 1540483477 - i32.mul - local.set $5 - end ;; $block - local.get $5 - local.get $5 - i32.const 13 - i32.shr_u - i32.xor - i32.const 1540483477 - i32.mul - local.tee $1 - local.get $1 - i32.const 15 - i32.shr_u - i32.xor - local.set $6 - block $block_3 - i32.const 15552 - i32.load - local.tee $2 - i32.eqz - local.tee $12 - if $if_0 + i32.load8_s offset=18 i32.const 0 - local.set $5 - else - i32.const 15548 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $10 + i32.ne i32.and i32.eqz - local.tee $7 - if $if_1 (result i32) + if $if_0 local.get $6 - local.get $10 - i32.and - else + local.get $2 + i32.store offset=4 local.get $6 local.get $2 - i32.lt_u - if $if_2 (result i32) - local.get $6 - else + i32.load offset=12 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + local.get $6 + i32.load offset=4 + local.set $3 + local.get $6 + i32.load offset=8 + local.set $4 + local.get $5 + local.get $6 + i32.load + local.tee $2 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $4 + i32.store offset=8 + local.get $2 + i32.eqz + br_if $block + i32.const 0 + local.set $3 + loop $loop local.get $2 - if $if_3 (result i32) - local.get $6 - local.get $2 - i32.rem_u + i32.load offset=12 + local.set $7 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if_1 + local.get $4 + i32.load offset=60 + if $if_2 + local.get $4 + i32.load offset=48 + if $if_3 + i32.const 4608 + i64.const 32 + local.get $4 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_3 + end ;; $if_2 + local.get $4 + i32.const 32 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $2 + local.get $4 + i32.store offset=12 else + i32.const 28 + call $__Znwm + local.tee $2 i32.const 0 - end ;; $if_3 - end ;; $if_2 - end ;; $if_1 - local.tee $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - if $if_4 - local.get $1 - i32.load - local.tee $3 - if $if_5 - block $block_4 - local.get $9 - i32.eqz - local.set $1 - local.get $7 - if $if_6 - local.get $1 - if $if_7 - loop $loop_0 - block $block_5 - local.get $3 - i32.load offset=4 - local.tee $1 - local.get $6 - i32.eq - local.get $1 - local.get $10 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block_4 - local.get $3 - i32.load offset=12 - local.get $3 - i32.load8_s offset=19 - local.tee $1 - i32.const 255 - i32.and - local.get $1 - i32.const 0 - i32.lt_s - select - i32.eqz - br_if $block_5 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_4 - end ;; $block_5 - end ;; $loop_0 - br $block_3 - end ;; $if_7 - loop $loop_1 - block $block_6 - local.get $3 - i32.load offset=4 - local.tee $1 - local.get $6 - i32.eq - local.get $1 - local.get $10 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block_4 - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $1 - local.get $9 - local.get $3 - i32.load offset=12 - local.get $8 - i32.const 255 - i32.and - local.tee $8 - local.get $1 - select - i32.eq - if $if_8 - block $block_7 - local.get $7 - i32.load - local.set $11 - local.get $1 - if $if_9 - local.get $11 - local.get $4 - local.get $9 - call $_memcmp - br_if $block_7 - br $block_6 - end ;; $if_9 - local.get $4 - i32.load8_u - local.get $11 - i32.const 255 - i32.and - i32.eq - if $if_10 - local.get $4 - local.set $1 - loop $loop_2 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - i32.eqz - br_if $block_6 - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - local.get $1 - i32.const 1 - i32.add - local.tee $1 - i32.load8_s - i32.eq - br_if $loop_2 - end ;; $loop_2 - end ;; $if_10 - end ;; $block_7 - end ;; $if_8 - local.get $3 - i32.load - local.tee $3 - br_if $loop_1 - br $block_4 - end ;; $block_6 - end ;; $loop_1 - br $block_3 - end ;; $if_6 - local.get $1 - if $if_11 - loop $loop_3 - block $block_8 - local.get $6 - local.get $3 - i32.load offset=4 - local.tee $1 - i32.ne - if $if_12 - local.get $1 - local.get $2 - i32.ge_u - if $if_13 (result i32) - local.get $2 - if $if_14 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_14 - else - local.get $1 - end ;; $if_13 - local.get $5 - i32.ne - br_if $block_4 - end ;; $if_12 - local.get $3 - i32.load offset=12 - local.get $3 - i32.load8_s offset=19 - local.tee $1 - i32.const 255 - i32.and - local.get $1 - i32.const 0 - i32.lt_s - select - i32.eqz - br_if $block_8 - local.get $3 - i32.load - local.tee $3 - br_if $loop_3 - br $block_4 - end ;; $block_8 - end ;; $loop_3 - br $block_3 - end ;; $if_11 - loop $loop_4 - block $block_9 - local.get $6 - local.get $3 - i32.load offset=4 - local.tee $1 - i32.ne - if $if_15 - local.get $1 - local.get $2 - i32.ge_u - if $if_16 (result i32) - local.get $2 - if $if_17 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $1 - end ;; $if_16 - local.get $5 - i32.ne - br_if $block_4 - end ;; $if_15 - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $8 - i32.const 0 - i32.lt_s - local.set $1 - local.get $9 - local.get $3 - i32.load offset=12 - local.get $8 - i32.const 255 - i32.and - local.tee $8 - local.get $1 - select - i32.eq - if $if_18 - block $block_10 - local.get $7 - i32.load - local.set $10 - local.get $1 - if $if_19 - local.get $10 - local.get $4 - local.get $9 - call $_memcmp - br_if $block_10 - br $block_9 - end ;; $if_19 - local.get $4 - i32.load8_u - local.get $10 - i32.const 255 - i32.and - i32.eq - if $if_20 - local.get $4 - local.set $1 - loop $loop_5 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - i32.eqz - br_if $block_9 - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - local.get $1 - i32.const 1 - i32.add - local.tee $1 - i32.load8_s - i32.eq - br_if $loop_5 - end ;; $loop_5 - end ;; $if_20 - end ;; $block_10 - end ;; $if_18 - local.get $3 - i32.load - local.tee $3 - br_if $loop_4 - br $block_4 - end ;; $block_9 - end ;; $loop_4 - br $block_3 - end ;; $block_4 - end ;; $if_5 - end ;; $if_4 - end ;; $if_0 - i32.const 24 - call $__Znwm - local.tee $4 - i32.const 8 - i32.add - local.get $0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $4 - i32.const 0 - i32.store offset=20 - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store - local.get $12 - i32.const 15564 - f32.load - local.tee $13 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15560 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $14 - f32.lt - i32.or - if $if_21 - block $block_11 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $0 - local.get $14 - local.get $13 - f32.div - f32.ceil - local.tee $13 - local.get $13 - f32.ne - if $if_22 (result i32) + i32.store offset=12 + end ;; $if_1 + local.get $2 + i32.const 24664 + i32.store offset=4 + local.get $2 i32.const 0 - else - local.get $13 - f32.const 0x1.000000p+32 - f32.ge - if $if_23 (result i32) - i32.const 0 - else - local.get $13 - f32.const -0x1.000000p-0 - f32.le - if $if_24 (result i32) - i32.const 0 - else - local.get $13 - i32.trunc_f32_u - end ;; $if_24 - end ;; $if_23 - end ;; $if_22 - local.tee $1 - local.get $0 - local.get $0 - local.get $1 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 15552 - i32.load - local.tee $0 - i32.const -1 - i32.add - local.tee $1 - local.get $6 - i32.and - local.get $0 - local.get $1 - i32.and - i32.eqz - br_if $block_11 - drop - local.get $6 - local.get $0 - i32.lt_u - if $if_25 (result i32) - local.get $6 - else - local.get $0 - if $if_26 (result i32) - local.get $6 - local.get $0 - i32.rem_u - else - i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $block_11 - local.set $5 - else - local.get $2 - local.set $0 - end ;; $if_21 - block $block_12 - block $block_13 - i32.const 15548 - i32.load - local.get $5 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - local.tee $1 - if $if_27 - local.get $4 - local.get $1 - i32.load + i32.store offset=8 + local.get $2 + i32.const 7088 i32.store + local.get $2 + local.get $7 + i32.store offset=20 + local.get $2 + local.get $7 + i32.const 16 + i32.add + i32.store offset=24 + local.get $2 + i32.const 3 + i32.store offset=16 + local.get $3 + if $if_4 + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_4 + i32.const 1 + local.get $2 local.get $1 - local.set $0 - br $block_13 - else - local.get $4 - i32.const 15556 - i32.load - i32.store - i32.const 15556 - local.get $4 - i32.store + call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE + i32.const 0 + local.get $2 + local.get $2 local.get $2 - i32.const 15556 - i32.store - local.get $4 i32.load - local.tee $1 - if $if_28 - local.get $1 + i32.load offset=20 + i32.const 63 + i32.and + call_indirect $28 (type $4) + select + local.set $3 + local.get $5 + i32.load + i32.load offset=12 + local.tee $2 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_5 + local.get $2 i32.load offset=4 - local.set $1 - i32.const 15548 + local.set $4 + local.get $2 i32.load - local.get $0 - local.get $0 - i32.const -1 - i32.add - local.tee $2 + local.set $2 + else + local.get $4 + i32.const 255 i32.and - if $if_29 (result i32) - local.get $1 - local.get $0 - i32.lt_u - if $if_30 (result i32) - local.get $1 - else - local.get $0 - if $if_31 (result i32) - local.get $1 - local.get $0 - i32.rem_u - else - i32.const 0 - end ;; $if_31 - end ;; $if_30 - else - local.get $1 - local.get $2 - i32.and - end ;; $if_29 - i32.const 2 - i32.shl - i32.add - local.set $0 - br $block_13 - end ;; $if_28 - end ;; $if_27 - br $block_12 - end ;; $block_13 - local.get $0 - local.get $4 - i32.store - end ;; $block_12 - i32.const 15560 - i32.const 15560 - i32.load - i32.const 1 - i32.add - i32.store - local.get $4 - i32.const 20 - i32.add - return - end ;; $block_3 - local.get $3 - i32.const 20 - i32.add - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f32) - local.get $0 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $0 - local.get $0 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $0 - call $__ZNSt3__212__next_primeEm - else - local.get $0 - end ;; $if_0 + local.set $4 + end ;; $if_5 + local.get $2 + local.get $4 + i32.const 1 + i32.const 12251 + call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ + drop + local.get $5 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv + local.get $5 + i32.load + local.tee $2 + br_if $loop + end ;; $loop + local.get $3 + i32.eqz + br_if $block + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + br $block + end ;; $if_0 + i32.const -1 + local.get $3 + i32.const 2 + i32.shl + local.get $3 + i32.const 1073741823 + i32.gt_u + select + call $__Znwm + local.set $7 + local.get $6 + local.get $2 + i32.store offset=4 + local.get $6 + local.get $2 + i32.load offset=12 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm + local.get $6 + i32.load offset=4 + local.set $3 + local.get $6 + i32.load offset=8 + local.set $4 + local.get $5 + local.get $6 + i32.load + local.tee $2 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $4 + i32.store offset=8 + local.get $7 + local.get $2 + if $if_6 (result i32) + i32.const 0 + local.set $3 + loop $loop_0 (result i32) + local.get $3 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.get $2 + i32.load offset=12 + i32.store + local.get $5 + call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $5 + i32.load + local.tee $2 + br_if $loop_0 + local.get $3 + end ;; $loop_0 + else + i32.const 0 + end ;; $if_6 + local.tee $9 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.get $6 + call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ + local.get $9 + if $if_7 + i32.const 0 + local.set $3 + loop $loop_1 + local.get $8 + i32.const 2 + i32.shl + local.get $7 + i32.add + local.tee $10 + i32.load + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + if $if_8 + local.get $5 + i32.load offset=60 + if $if_9 + local.get $5 + i32.load offset=48 + if $if_10 + i32.const 4608 + i64.const 32 + local.get $5 + i32.load offset=60 + i32.const 446 + call_indirect $28 (type $9) + end ;; $if_10 + end ;; $if_9 + local.get $5 + i32.const 32 + call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm + local.tee $2 + local.get $5 + i32.store offset=12 + else + i32.const 28 + call $__Znwm + local.tee $2 + i32.const 0 + i32.store offset=12 + end ;; $if_8 + local.get $2 + i32.const 24664 + i32.store offset=4 + local.get $2 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.const 7088 + i32.store + local.get $2 + local.get $4 + i32.store offset=20 + local.get $2 + local.get $4 + i32.const 16 + i32.add + i32.store offset=24 + local.get $2 + i32.const 3 + i32.store offset=16 + local.get $3 + if $if_11 + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_11 + i32.const 1 + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE + i32.const 0 + local.get $2 + local.get $2 + local.get $2 + i32.load + i32.load offset=20 + i32.const 63 + i32.and + call_indirect $28 (type $4) + select + local.set $3 + local.get $10 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $5 + i32.const 0 + i32.lt_s + if $if_12 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $2 + i32.load + local.set $2 + else + local.get $5 + i32.const 255 + i32.and + local.set $4 + end ;; $if_12 + local.get $2 + local.get $4 + i32.const 1 + i32.const 12251 + call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ + drop + local.get $8 + i32.const 1 + i32.add + local.tee $8 + local.get $9 + i32.lt_u + br_if $loop_1 + end ;; $loop_1 + local.get $3 + if $if_13 + local.get $3 + local.get $3 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_13 + end ;; $if_7 + local.get $7 + call $_free + end ;; $block end ;; $if - local.tee $1 - i32.const 15552 - i32.load - local.tee $0 - i32.gt_u - if $if_1 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $0 - i32.ge_u - if $if_2 - return - end ;; $if_2 local.get $0 + i32.load offset=4 + local.tee $2 + i32.const -2 + i32.and + i32.const 24664 + local.get $2 + i32.const 1 + i32.and + select + local.tee $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_14 + local.get $2 + i32.load + local.set $2 + end ;; $if_14 local.get $0 - i32.const -1 - i32.add + i32.load offset=4 + local.tee $0 + i32.const -2 i32.and - i32.eqz + i32.const 24664 local.get $0 - i32.const 2 - i32.gt_u + i32.const 1 i32.and - local.set $3 - i32.const 15560 - i32.load - f32.convert_i32_u - i32.const 15564 - f32.load - f32.div - f32.ceil - local.tee $4 - local.get $4 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $4 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $4 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $4 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $3 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl + select + local.tee $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_15 + local.get $1 local.get $2 - i32.const 2 - i32.lt_u - select + local.get $0 + i32.load offset=4 + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi else + local.get $1 local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $0 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm + local.get $3 + i32.const 255 + i32.and + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi + end ;; $if_15 + local.get $6 + global.set $32 ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm (type $0) + (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $2) (param $0 i32) - (local $1 i32) - (local $2 i32) + (param $1 i32) + (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -26288,677 +22817,8130 @@ (local $12 i32) (local $13 i32) (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) local.get $0 - i32.eqz - if $if - i32.const 15548 - i32.load - local.set $0 - i32.const 15548 - i32.const 0 - i32.store - local.get $0 - if $if_0 - local.get $0 - call $_free - end ;; $if_0 - i32.const 15552 - i32.const 0 - i32.store - return - end ;; $if - local.get $0 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $1 - call $__ZNSt11logic_errorC2EPKc - local.get $1 - i32.const 6956 - i32.store - local.get $1 - i32.const 5392 - i32.const 51 - call $___cxa_throw - end ;; $if_1 - local.get $0 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - i32.const 15548 - i32.load - local.set $1 - i32.const 15548 - local.get $2 - i32.store + local.set $3 local.get $1 - if $if_2 - local.get $1 - call $_free - end ;; $if_2 - i32.const 15552 - local.get $0 - i32.store - i32.const 0 - local.set $1 - loop $loop - i32.const 15548 - i32.load - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $0 - i32.ne - br_if $loop - end ;; $loop - i32.const 15556 - i32.load - local.tee $6 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $6 - i32.load offset=4 - local.set $1 - i32.const 15548 - i32.load - local.get $0 - local.get $0 - i32.const -1 - i32.add - local.tee $12 - i32.and - i32.eqz - local.tee $14 - if $if_4 (result i32) - local.get $1 - local.get $12 - i32.and - else - local.get $1 - local.get $0 - i32.ge_u - if $if_5 (result i32) - local.get $0 - if $if_6 (result i32) - local.get $1 - local.get $0 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $1 - end ;; $if_5 - end ;; $if_4 - local.tee $13 - i32.const 2 - i32.shl - i32.add - i32.const 15556 - i32.store - local.get $6 - i32.load - local.tee $4 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $4 - i32.load offset=4 - local.set $1 - local.get $13 - local.get $14 - if $if_8 (result i32) - local.get $1 - local.get $12 - i32.and - else - local.get $1 - local.get $0 - i32.ge_u - if $if_9 (result i32) - local.get $0 - if $if_10 (result i32) - local.get $1 - local.get $0 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $1 - end ;; $if_9 - end ;; $if_8 - local.tee $8 - i32.eq - if $if_11 (result i32) - local.get $4 - else - block $block (result i32) - i32.const 15548 - i32.load - local.get $8 - i32.const 2 - i32.shl - i32.add - local.tee $1 - i32.load - i32.eqz - if $if_12 - local.get $1 - local.get $6 - i32.store - local.get $8 - local.set $13 - local.get $4 - br $block - end ;; $if_12 - local.get $4 - i32.load - local.tee $1 - if $if_13 - block $block_0 - local.get $4 - i32.const 8 - i32.add - local.tee $10 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $2 - local.get $4 - i32.load offset=12 - local.get $3 - i32.const 255 - i32.and - local.tee $9 - local.get $2 - select - local.tee $11 - i32.eqz - local.set $5 - local.get $2 - if $if_14 - local.get $4 - local.set $2 - loop $loop_1 - local.get $1 - i32.const 8 + local.set $0 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + loop $loop + block $block_4 + local.get $0 + local.tee $8 + i32.const -4 i32.add - local.tee $3 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $9 - local.get $1 - i32.load offset=12 - local.get $7 - i32.const 255 - i32.and - local.get $9 - select - local.get $11 - i32.ne - if $if_15 - local.get $2 - local.set $1 - br $block_0 - end ;; $if_15 - local.get $5 - i32.eqz - if $if_16 - local.get $10 - i32.load - local.get $3 - i32.load - local.get $3 - local.get $9 - select - local.get $11 - call $_memcmp - if $if_17 - local.get $2 - local.set $1 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $1 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - local.get $1 - local.set $2 - local.get $3 - local.set $1 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $5 - if $if_18 - local.get $4 - local.set $2 - loop $loop_2 - local.get $1 - i32.load offset=12 - local.get $1 - i32.load8_s offset=19 - local.tee $3 - i32.const 255 - i32.and - local.get $3 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $2 - local.set $1 - br $block_0 - end ;; $if_19 - local.get $1 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - local.get $1 - local.set $2 - local.get $3 - local.set $1 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $1 - local.set $2 - local.get $4 - local.set $1 - loop $loop_3 (result i32) - local.get $2 - i32.const 8 - i32.add - local.tee $3 - i32.load8_s offset=11 - local.tee $7 - i32.const 0 - i32.lt_s - local.set $5 - local.get $2 - i32.load offset=12 - local.get $7 - i32.const 255 - i32.and - local.get $5 - select - local.get $11 - i32.ne - br_if $block_0 - local.get $3 - i32.load - local.get $3 - local.get $5 - select - local.tee $7 - i32.load8_u - local.get $10 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $9 - local.set $3 - local.get $10 - local.set $5 - loop $loop_4 - local.get $3 - i32.const -1 + local.set $10 + local.get $0 + i32.const -8 i32.add - local.tee $3 - if $if_20 - local.get $5 - i32.const 1 - i32.add - local.tee $5 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $2 - i32.load - local.tee $3 - if $if_22 (result i32) - local.get $2 - local.set $1 + local.set $5 + local.get $0 + local.set $15 local.get $3 - local.set $2 - br $loop_3 - else - local.get $2 - end ;; $if_22 - end ;; $loop_3 - local.set $1 - end ;; $block_0 - else - local.get $4 - local.set $1 - end ;; $if_13 - local.get $6 - local.get $1 - i32.load - i32.store - local.get $1 - i32.const 15548 - i32.load - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load - i32.load - i32.store - i32.const 15548 - i32.load - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - i32.store - local.get $6 - end ;; $block - end ;; $if_11 - local.tee $1 - i32.load - local.tee $4 - if $if_23 - local.get $1 - local.set $6 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f32) - local.get $0 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $0 - local.get $0 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $0 - call $__ZNSt3__212__next_primeEm - else - local.get $0 - end ;; $if_0 - end ;; $if - local.tee $1 - i32.const 15532 - i32.load - local.tee $0 - i32.gt_u - if $if_1 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $0 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $0 - local.get $0 - i32.const -1 - i32.add - i32.and - i32.eqz - local.get $0 - i32.const 2 - i32.gt_u - i32.and - local.set $3 - i32.const 15540 - i32.load - f32.convert_i32_u - i32.const 15544 - f32.load - f32.div - f32.ceil - local.tee $4 - local.get $4 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $4 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $4 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $4 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $3 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $0 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - i32.eqz - if $if - i32.const 15528 - i32.load - local.set $0 - i32.const 15528 - i32.const 0 - i32.store - local.get $0 - if $if_0 - local.get $0 - call $_free - end ;; $if_0 - i32.const 15532 - i32.const 0 - i32.store - return - end ;; $if - local.get $0 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $1 - call $__ZNSt11logic_errorC2EPKc - local.get $1 - i32.const 6956 - i32.store - local.get $1 - i32.const 5392 - i32.const 51 - call $___cxa_throw - end ;; $if_1 - local.get $0 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - i32.const 15528 - i32.load - local.set $1 - i32.const 15528 - local.get $2 - i32.store - local.get $1 - if $if_2 - local.get $1 - call $_free - end ;; $if_2 - i32.const 15532 - local.get $0 - i32.store - i32.const 0 - local.set $1 - loop $loop - i32.const 15528 - i32.load - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.tee $1 - local.get $0 - i32.ne - br_if $loop - end ;; $loop - i32.const 15536 - i32.load - local.tee $4 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $4 - i32.load offset=4 - local.set $1 - i32.const 15528 - i32.load - local.get $0 - local.get $0 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $5 - if $if_4 (result i32) - local.get $1 - local.get $6 - i32.and - else - local.get $1 - local.get $0 - i32.ge_u - if $if_5 (result i32) - local.get $0 - if $if_6 (result i32) - local.get $1 - local.get $0 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $1 - end ;; $if_5 - end ;; $if_4 - local.tee $2 - i32.const 2 - i32.shl - i32.add - i32.const 15536 - i32.store - local.get $4 - i32.load - local.tee $1 - i32.eqz + local.set $9 + block $block_5 (result i32) + block $block_6 + block $block_7 + block $block_8 + loop $loop_0 + block $block_9 + block $block_10 + local.get $8 + local.get $9 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $0 + br_table + $block $block $block_4 $block_3 $block_2 $block_1 + $block_10 ;; default + end ;; $block_10 + local.get $1 + i32.const 124 + i32.lt_s + br_if $block_0 + local.get $0 + i32.const 2 + i32.div_s + i32.const 2 + i32.shl + local.get $9 + i32.add + local.set $12 + local.get $1 + i32.const 3996 + i32.gt_s + if $if (result i32) + local.get $9 + local.get $0 + i32.const 4 + i32.div_s + local.tee $0 + i32.const 2 + i32.shl + local.get $9 + i32.add + local.get $12 + local.get $0 + i32.const 2 + i32.shl + local.get $12 + i32.add + local.get $10 + call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ + else + local.get $9 + local.get $12 + local.get $10 + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + end ;; $if + local.set $1 + local.get $12 + i32.load + local.tee $14 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $0 + local.get $9 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $13 + block $block_11 + block $block_12 + block $block_13 + local.get $14 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $0 + select + local.tee $4 + local.get $7 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $13 + select + local.tee $3 + local.get $4 + local.get $3 + i32.lt_u + select + local.tee $6 + i32.eqz + br_if $block_13 + local.get $7 + i32.load + local.get $7 + local.get $13 + select + local.get $14 + i32.load + local.get $14 + local.get $0 + select + local.get $6 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_13 + local.get $6 + i32.const 0 + i32.ge_s + br_if $block_12 + local.get $10 + local.set $0 + br $block_11 + end ;; $block_13 + local.get $3 + local.get $4 + i32.ge_u + br_if $block_12 + local.get $10 + local.set $0 + br $block_11 + end ;; $block_12 + local.get $5 + local.get $9 + i32.eq + br_if $block_9 + block $block_14 + local.get $0 + if $if_0 + local.get $5 + local.set $0 + loop $loop_1 + local.get $0 + i32.load + local.tee $6 + i32.load8_s offset=11 + local.tee $16 + i32.const 0 + i32.lt_s + local.set $11 + block $block_15 + block $block_16 + local.get $4 + local.get $6 + i32.load offset=4 + local.get $16 + i32.const 255 + i32.and + local.get $11 + select + local.tee $16 + local.get $4 + local.get $16 + i32.lt_u + select + local.tee $17 + i32.eqz + br_if $block_16 + local.get $6 + i32.load + local.get $6 + local.get $11 + select + local.get $14 + i32.load + local.get $17 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_16 + local.get $6 + i32.const 0 + i32.lt_s + br_if $block_14 + br $block_15 + end ;; $block_16 + local.get $16 + local.get $4 + i32.lt_u + br_if $block_14 + end ;; $block_15 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + local.get $9 + i32.ne + br_if $loop_1 + end ;; $loop_1 + else + local.get $5 + local.set $0 + loop $loop_2 + local.get $0 + i32.load + local.tee $6 + i32.load8_s offset=11 + local.tee $16 + i32.const 0 + i32.lt_s + local.set $11 + block $block_17 + block $block_18 + local.get $4 + local.get $6 + i32.load offset=4 + local.get $16 + i32.const 255 + i32.and + local.get $11 + select + local.tee $16 + local.get $4 + local.get $16 + i32.lt_u + select + local.tee $17 + i32.eqz + br_if $block_18 + local.get $6 + i32.load + local.get $6 + local.get $11 + select + local.get $14 + local.get $17 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_18 + local.get $6 + i32.const 0 + i32.lt_s + br_if $block_14 + br $block_17 + end ;; $block_18 + local.get $16 + local.get $4 + i32.lt_u + br_if $block_14 + end ;; $block_17 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + local.get $9 + i32.ne + br_if $loop_2 + end ;; $loop_2 + end ;; $if_0 + br $block_9 + end ;; $block_14 + local.get $9 + local.get $0 + i32.load + i32.store + local.get $0 + local.get $7 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + end ;; $block_11 + local.get $9 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + i32.lt_u + if $if_1 (result i32) + local.get $1 + local.set $7 + loop $loop_3 (result i32) + local.get $12 + i32.load + local.tee $14 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.set $13 + local.get $14 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $13 + select + local.set $4 + block $block_19 + local.get $13 + if $if_2 + local.get $3 + local.set $1 + loop $loop_4 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $11 + i32.const 0 + i32.lt_s + local.set $6 + block $block_20 + block $block_21 + local.get $4 + local.get $3 + i32.load offset=4 + local.get $11 + i32.const 255 + i32.and + local.get $6 + select + local.tee $11 + local.get $4 + local.get $11 + i32.lt_u + select + local.tee $16 + i32.eqz + br_if $block_21 + local.get $3 + i32.load + local.get $3 + local.get $6 + select + local.get $14 + i32.load + local.get $16 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_21 + local.get $3 + i32.const 0 + i32.ge_s + br_if $block_19 + br $block_20 + end ;; $block_21 + local.get $11 + local.get $4 + i32.ge_u + br_if $block_19 + end ;; $block_20 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $loop_4 + unreachable + end ;; $loop_4 + unreachable + else + local.get $3 + local.set $1 + loop $loop_5 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $11 + i32.const 0 + i32.lt_s + local.set $6 + block $block_22 + block $block_23 + local.get $4 + local.get $3 + i32.load offset=4 + local.get $11 + i32.const 255 + i32.and + local.get $6 + select + local.tee $11 + local.get $4 + local.get $11 + i32.lt_u + select + local.tee $16 + i32.eqz + br_if $block_23 + local.get $3 + i32.load + local.get $3 + local.get $6 + select + local.get $14 + local.get $16 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_23 + local.get $3 + i32.const 0 + i32.ge_s + br_if $block_19 + br $block_22 + end ;; $block_23 + local.get $11 + local.get $4 + i32.ge_u + br_if $block_19 + end ;; $block_22 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $loop_5 + unreachable + end ;; $loop_5 + unreachable + end ;; $if_2 + unreachable + end ;; $block_19 + block $block_24 + local.get $13 + if $if_3 + loop $loop_6 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $13 + block $block_25 + block $block_26 + local.get $4 + local.get $3 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $13 + select + local.tee $6 + local.get $4 + local.get $6 + i32.lt_u + select + local.tee $11 + i32.eqz + br_if $block_26 + local.get $3 + i32.load + local.get $3 + local.get $13 + select + local.get $14 + i32.load + local.get $11 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_26 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_24 + br $block_25 + end ;; $block_26 + local.get $6 + local.get $4 + i32.lt_u + br_if $block_24 + end ;; $block_25 + br $loop_6 + unreachable + end ;; $loop_6 + unreachable + else + loop $loop_7 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $13 + block $block_27 + block $block_28 + local.get $4 + local.get $3 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $13 + select + local.tee $6 + local.get $4 + local.get $6 + i32.lt_u + select + local.tee $11 + i32.eqz + br_if $block_28 + local.get $3 + i32.load + local.get $3 + local.get $13 + select + local.get $14 + local.get $11 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_28 + local.get $3 + i32.const 0 + i32.lt_s + br_if $block_24 + br $block_27 + end ;; $block_28 + local.get $6 + local.get $4 + i32.lt_u + br_if $block_24 + end ;; $block_27 + br $loop_7 + unreachable + end ;; $loop_7 + unreachable + end ;; $if_3 + unreachable + end ;; $block_24 + local.get $1 + local.get $0 + i32.gt_u + if $if_4 (result i32) + local.get $1 + local.set $3 + local.get $7 + else + local.get $1 + i32.load + local.set $3 + local.get $1 + local.get $0 + i32.load + i32.store + local.get $0 + local.get $3 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + local.get $12 + local.get $1 + local.get $12 + i32.eq + select + local.set $12 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop_3 + end ;; $if_4 + end ;; $loop_3 + else + local.get $1 + end ;; $if_1 + local.set $0 + local.get $3 + local.get $12 + i32.ne + if $if_5 + block $block_29 + local.get $3 + i32.load + local.tee $1 + i32.load8_s offset=11 + local.tee $13 + i32.const 0 + i32.lt_s + local.set $4 + local.get $12 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $14 + block $block_30 + block $block_31 + local.get $1 + i32.load offset=4 + local.get $13 + i32.const 255 + i32.and + local.get $4 + select + local.tee $13 + local.get $7 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $14 + select + local.tee $6 + local.get $13 + local.get $6 + i32.lt_u + select + local.tee $11 + i32.eqz + br_if $block_31 + local.get $7 + i32.load + local.get $7 + local.get $14 + select + local.get $1 + i32.load + local.get $1 + local.get $4 + select + local.get $11 + call $_memcmp + local.tee $4 + i32.eqz + br_if $block_31 + local.get $4 + i32.const 0 + i32.ge_s + br_if $block_29 + br $block_30 + end ;; $block_31 + local.get $6 + local.get $13 + i32.ge_u + br_if $block_29 + end ;; $block_30 + local.get $3 + local.get $7 + i32.store + local.get $12 + local.get $1 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + end ;; $block_29 + end ;; $if_5 + local.get $0 + i32.eqz + if $if_6 + local.get $9 + local.get $3 + call $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ + local.set $0 + local.get $3 + i32.const 4 + i32.add + local.tee $1 + local.get $15 + call $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ + br_if $block_8 + local.get $0 + if $if_7 + i32.const 2 + local.set $0 + br $block_6 + end ;; $if_7 + end ;; $if_6 + local.get $3 + local.get $9 + i32.sub + local.get $15 + local.get $3 + i32.sub + i32.ge_s + br_if $block_7 + local.get $9 + local.get $3 + local.get $2 + call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ + local.get $3 + i32.const 4 + i32.add + local.set $9 + br $loop_0 + end ;; $block_9 + end ;; $loop_0 + local.get $9 + i32.const 4 + i32.add + local.set $0 + local.get $10 + i32.load + local.tee $1 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $5 + block $block_32 + block $block_33 + block $block_34 + local.get $1 + i32.load offset=4 + local.get $8 + i32.const 255 + i32.and + local.get $5 + select + local.tee $8 + local.get $3 + local.get $8 + local.get $3 + i32.lt_u + select + local.tee $4 + i32.eqz + br_if $block_34 + local.get $7 + i32.load + local.get $7 + local.get $13 + select + local.get $1 + i32.load + local.get $1 + local.get $5 + select + local.get $4 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_34 + local.get $5 + i32.const 0 + i32.ge_s + br_if $block_33 + br $block_32 + end ;; $block_34 + local.get $3 + local.get $8 + i32.ge_u + br_if $block_33 + br $block_32 + end ;; $block_33 + local.get $0 + local.get $10 + i32.eq + br_if $block + block $block_35 + local.get $13 + if $if_8 + loop $loop_8 + local.get $0 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + block $block_36 + block $block_37 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.tee $4 + local.get $3 + local.get $4 + local.get $3 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_37 + local.get $7 + i32.load + local.get $5 + i32.load + local.get $5 + local.get $8 + select + local.get $12 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_37 + local.get $5 + i32.const 0 + i32.lt_s + br_if $block_35 + br $block_36 + end ;; $block_37 + local.get $3 + local.get $4 + i32.lt_u + br_if $block_35 + end ;; $block_36 + local.get $0 + i32.const 4 + i32.add + local.tee $0 + local.get $10 + i32.ne + br_if $loop_8 + br $block + unreachable + end ;; $loop_8 + unreachable + else + loop $loop_9 + local.get $0 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + block $block_38 + block $block_39 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.tee $4 + local.get $3 + local.get $4 + local.get $3 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_39 + local.get $7 + local.get $5 + i32.load + local.get $5 + local.get $8 + select + local.get $12 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_39 + local.get $5 + i32.const 0 + i32.lt_s + br_if $block_35 + br $block_38 + end ;; $block_39 + local.get $3 + local.get $4 + i32.lt_u + br_if $block_35 + end ;; $block_38 + local.get $0 + i32.const 4 + i32.add + local.tee $0 + local.get $10 + i32.ne + br_if $loop_9 + br $block + unreachable + end ;; $loop_9 + unreachable + end ;; $if_8 + unreachable + end ;; $block_35 + local.get $0 + i32.load + local.set $3 + local.get $0 + local.get $1 + i32.store + local.get $10 + local.get $3 + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + end ;; $block_32 + local.get $0 + local.get $10 + i32.eq + br_if $block + local.get $0 + local.set $1 + local.get $10 + local.set $0 + loop $loop_10 + local.get $9 + i32.load + local.tee $10 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $5 + local.get $10 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $5 + select + local.set $3 + block $block_40 + local.get $5 + if $if_9 + loop $loop_11 + local.get $1 + i32.load + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $7 + block $block_41 + block $block_42 + local.get $8 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $7 + select + local.tee $4 + local.get $3 + local.get $4 + local.get $3 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_42 + local.get $10 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $7 + select + local.get $12 + call $_memcmp + local.tee $8 + i32.eqz + br_if $block_42 + local.get $8 + i32.const 0 + i32.lt_s + br_if $block_40 + br $block_41 + end ;; $block_42 + local.get $3 + local.get $4 + i32.lt_u + br_if $block_40 + end ;; $block_41 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $loop_11 + unreachable + end ;; $loop_11 + unreachable + else + loop $loop_12 + local.get $1 + i32.load + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $7 + block $block_43 + block $block_44 + local.get $8 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $7 + select + local.tee $4 + local.get $3 + local.get $4 + local.get $3 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_44 + local.get $10 + local.get $8 + i32.load + local.get $8 + local.get $7 + select + local.get $12 + call $_memcmp + local.tee $8 + i32.eqz + br_if $block_44 + local.get $8 + i32.const 0 + i32.lt_s + br_if $block_40 + br $block_43 + end ;; $block_44 + local.get $3 + local.get $4 + i32.lt_u + br_if $block_40 + end ;; $block_43 + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $loop_12 + unreachable + end ;; $loop_12 + unreachable + end ;; $if_9 + unreachable + end ;; $block_40 + block $block_45 + local.get $5 + if $if_10 + loop $loop_13 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $8 + block $block_46 + block $block_47 + local.get $5 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $8 + select + local.tee $7 + local.get $3 + local.get $7 + local.get $3 + i32.lt_u + select + local.tee $4 + i32.eqz + br_if $block_47 + local.get $10 + i32.load + local.get $5 + i32.load + local.get $5 + local.get $8 + select + local.get $4 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_47 + local.get $5 + i32.const 0 + i32.ge_s + br_if $block_45 + br $block_46 + end ;; $block_47 + local.get $3 + local.get $7 + i32.ge_u + br_if $block_45 + end ;; $block_46 + br $loop_13 + unreachable + end ;; $loop_13 + unreachable + else + loop $loop_14 + local.get $0 + i32.const -4 + i32.add + local.tee $0 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $8 + block $block_48 + block $block_49 + local.get $5 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $8 + select + local.tee $7 + local.get $3 + local.get $7 + local.get $3 + i32.lt_u + select + local.tee $4 + i32.eqz + br_if $block_49 + local.get $10 + local.get $5 + i32.load + local.get $5 + local.get $8 + select + local.get $4 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_49 + local.get $5 + i32.const 0 + i32.ge_s + br_if $block_45 + br $block_48 + end ;; $block_49 + local.get $3 + local.get $7 + i32.ge_u + br_if $block_45 + end ;; $block_48 + br $loop_14 + unreachable + end ;; $loop_14 + unreachable + end ;; $if_10 + unreachable + end ;; $block_45 + local.get $1 + local.get $0 + i32.lt_u + if $if_11 + local.get $1 + i32.load + local.set $3 + local.get $1 + local.get $0 + i32.load + i32.store + local.get $0 + local.get $3 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + br $loop_10 + else + i32.const 4 + local.set $0 + br $block_6 + end ;; $if_11 + unreachable + unreachable + end ;; $loop_10 + unreachable + end ;; $block_8 + local.get $9 + local.set $1 + local.get $15 + local.get $3 + local.get $0 + select + local.set $15 + i32.const 1 + i32.const 2 + local.get $0 + select + local.set $0 + br $block_6 + end ;; $block_7 + local.get $3 + i32.const 4 + i32.add + local.get $15 + local.get $2 + call $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ + local.get $9 + local.set $1 + local.get $3 + br $block_5 + end ;; $block_6 + block $block_50 + local.get $0 + i32.const 7 + i32.and + br_table + $block_50 $block $block_50 $block $block_50 + $block ;; default + end ;; $block_50 + local.get $15 + end ;; $block_5 + local.set $0 + local.get $1 + local.set $3 + br $loop + end ;; $block_4 + end ;; $loop + local.get $9 + i32.load + local.tee $0 + i32.load8_s offset=11 + local.tee $10 + i32.const 0 + i32.lt_s + local.set $2 + local.get $15 + i32.const -4 + i32.add + local.tee $8 + i32.load + local.tee $1 + i32.load8_s offset=11 + local.tee $5 + i32.const 0 + i32.lt_s + local.set $3 + block $block_51 + block $block_52 + local.get $0 + i32.load offset=4 + local.get $10 + i32.const 255 + i32.and + local.get $2 + select + local.tee $10 + local.get $1 + i32.load offset=4 + local.get $5 + i32.const 255 + i32.and + local.get $3 + select + local.tee $5 + local.get $10 + local.get $5 + i32.lt_u + select + local.tee $15 + i32.eqz + br_if $block_52 + local.get $1 + i32.load + local.get $1 + local.get $3 + select + local.get $0 + i32.load + local.get $0 + local.get $2 + select + local.get $15 + call $_memcmp + local.tee $2 + i32.eqz + br_if $block_52 + local.get $2 + i32.const 0 + i32.ge_s + if $if_12 + return + end ;; $if_12 + br $block_51 + end ;; $block_52 + local.get $5 + local.get $10 + i32.ge_u + if $if_13 + return + end ;; $if_13 + end ;; $block_51 + local.get $9 + local.get $1 + i32.store + local.get $8 + local.get $0 + i32.store + return + end ;; $block_3 + local.get $9 + local.get $9 + i32.const 4 + i32.add + local.get $15 + i32.const -4 + i32.add + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + drop + return + end ;; $block_2 + local.get $9 + local.get $9 + i32.const 4 + i32.add + local.get $9 + i32.const 8 + i32.add + local.get $15 + i32.const -4 + i32.add + call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ + drop + return + end ;; $block_1 + local.get $9 + local.get $9 + i32.const 4 + i32.add + local.get $9 + i32.const 8 + i32.add + local.get $9 + i32.const 12 + i32.add + local.get $15 + i32.const -4 + i32.add + call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ + drop + return + end ;; $block_0 + local.get $9 + local.get $15 + call $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ + end ;; $block + ) + + (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $0 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $3 + local.get $1 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $9 + local.get $7 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $3 + select + local.tee $4 + local.get $5 + i32.load offset=4 + local.get $8 + i32.const 255 + i32.and + local.get $9 + select + local.tee $6 + i32.lt_u + local.set $8 + block $block + block $block_0 + local.get $4 + local.get $6 + local.get $8 + select + local.tee $10 + i32.eqz + br_if $block_0 + local.get $5 + i32.load + local.get $5 + local.get $9 + select + local.get $7 + i32.load + local.get $7 + local.get $3 + select + local.get $10 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_0 + br $block + end ;; $block_0 + i32.const -1 + local.get $8 + local.get $6 + local.get $4 + i32.lt_u + select + local.set $3 + end ;; $block + local.get $3 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load + local.tee $4 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $3 + local.get $6 + local.get $4 + i32.load offset=4 + local.get $8 + i32.const 255 + i32.and + local.get $3 + select + local.tee $8 + i32.lt_u + local.set $10 + block $block_1 + block $block_2 + local.get $6 + local.get $8 + local.get $10 + select + local.tee $12 + i32.eqz + br_if $block_2 + local.get $4 + i32.load + local.get $4 + local.get $3 + select + local.get $5 + i32.load + local.get $5 + local.get $9 + select + local.get $12 + call $_memcmp + local.tee $3 + i32.eqz + br_if $block_2 + br $block_1 + end ;; $block_2 + i32.const -1 + local.get $10 + local.get $8 + local.get $6 + i32.lt_u + select + local.set $3 + end ;; $block_1 + local.get $3 + i32.const 0 + i32.lt_s + local.set $6 + local.get $11 + i32.eqz + if $if + local.get $6 + i32.eqz + if $if_0 + i32.const 0 + return + end ;; $if_0 + local.get $1 + local.get $4 + i32.store + local.get $2 + local.get $5 + i32.store + local.get $0 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $5 + local.get $1 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $6 + block $block_3 + block $block_4 + local.get $2 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $5 + select + local.tee $3 + local.get $7 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $6 + select + local.tee $4 + local.get $3 + local.get $4 + i32.lt_u + select + local.tee $9 + i32.eqz + br_if $block_4 + local.get $7 + i32.load + local.get $7 + local.get $6 + select + local.get $2 + i32.load + local.get $2 + local.get $5 + select + local.get $9 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_4 + local.get $5 + i32.const 0 + i32.ge_s + if $if_1 + i32.const 1 + return + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $4 + local.get $3 + i32.ge_u + if $if_2 + i32.const 1 + return + end ;; $if_2 + end ;; $block_3 + local.get $0 + local.get $7 + i32.store + local.get $1 + local.get $2 + i32.store + i32.const 2 + return + end ;; $if + local.get $6 + if $if_3 + local.get $0 + local.get $4 + i32.store + local.get $2 + local.get $7 + i32.store + i32.const 1 + return + end ;; $if_3 + local.get $0 + local.get $5 + i32.store + local.get $1 + local.get $7 + i32.store + local.get $7 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $5 + local.get $2 + i32.load + local.tee $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $6 + block $block_5 + block $block_6 + local.get $7 + i32.load offset=4 + local.get $3 + i32.const 255 + i32.and + local.get $5 + select + local.tee $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $6 + select + local.tee $4 + local.get $3 + local.get $4 + i32.lt_u + select + local.tee $9 + i32.eqz + br_if $block_6 + local.get $0 + i32.load + local.get $0 + local.get $6 + select + local.get $7 + i32.load + local.get $7 + local.get $5 + select + local.get $9 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_6 + local.get $5 + i32.const 0 + i32.ge_s + if $if_4 + i32.const 1 + return + end ;; $if_4 + br $block_5 + end ;; $block_6 + local.get $4 + local.get $3 + i32.ge_u + if $if_5 + i32.const 1 + return + end ;; $if_5 + end ;; $block_5 + local.get $1 + local.get $0 + i32.store + local.get $2 + local.get $7 + i32.store + i32.const 2 + ) + + (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + local.set $10 + local.get $2 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $6 + local.get $3 + i32.load + local.tee $7 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $9 + block $block + block $block_0 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $6 + select + local.tee $4 + local.get $7 + i32.load offset=4 + local.get $8 + i32.const 255 + i32.and + local.get $9 + select + local.tee $8 + local.get $4 + local.get $8 + i32.lt_u + select + local.tee $11 + i32.eqz + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $9 + select + local.get $5 + i32.load + local.get $5 + local.get $6 + select + local.get $11 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_0 + local.get $6 + i32.const 0 + i32.ge_s + if $if + local.get $10 + return + end ;; $if + br $block + end ;; $block_0 + local.get $8 + local.get $4 + i32.ge_u + if $if_0 + local.get $10 + return + end ;; $if_0 + end ;; $block + local.get $2 + local.get $7 + i32.store + local.get $3 + local.get $5 + i32.store + local.get $10 + i32.const 1 + i32.add + local.set $7 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $6 + local.get $2 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $9 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $6 + select + local.tee $4 + local.get $5 + i32.load offset=4 + local.get $8 + i32.const 255 + i32.and + local.get $9 + select + local.tee $8 + local.get $4 + local.get $8 + i32.lt_u + select + local.tee $11 + i32.eqz + br_if $block_2 + local.get $5 + i32.load + local.get $5 + local.get $9 + select + local.get $3 + i32.load + local.get $3 + local.get $6 + select + local.get $11 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_2 + local.get $6 + i32.const 0 + i32.ge_s + if $if_1 + local.get $7 + return + end ;; $if_1 + br $block_1 + end ;; $block_2 + local.get $8 + local.get $4 + i32.ge_u + if $if_2 + local.get $7 + return + end ;; $if_2 + end ;; $block_1 + local.get $1 + local.get $5 + i32.store + local.get $2 + local.get $3 + i32.store + local.get $10 + i32.const 2 + i32.add + local.set $5 + local.get $0 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $9 + i32.const 0 + i32.lt_s + local.set $7 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $6 + block $block_3 + block $block_4 + local.get $2 + i32.load offset=4 + local.get $9 + i32.const 255 + i32.and + local.get $7 + select + local.tee $9 + local.get $3 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $6 + select + local.tee $4 + local.get $9 + local.get $4 + i32.lt_u + select + local.tee $8 + i32.eqz + br_if $block_4 + local.get $3 + i32.load + local.get $3 + local.get $6 + select + local.get $2 + i32.load + local.get $2 + local.get $7 + select + local.get $8 + call $_memcmp + local.tee $7 + i32.eqz + br_if $block_4 + local.get $7 + i32.const 0 + i32.ge_s + if $if_3 + local.get $5 + return + end ;; $if_3 + br $block_3 + end ;; $block_4 + local.get $4 + local.get $9 + i32.ge_u + if $if_4 + local.get $5 + return + end ;; $if_4 + end ;; $block_3 + local.get $0 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store + local.get $10 + i32.const 3 + i32.add + ) + + (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $1 + local.get $2 + local.get $3 + call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ + local.set $11 + local.get $3 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $6 + local.get $4 + i32.load + local.tee $8 + i32.load8_s offset=11 + local.tee $10 + i32.const 0 + i32.lt_s + local.set $9 + block $block + block $block_0 + local.get $5 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $6 + select + local.tee $7 + local.get $8 + i32.load offset=4 + local.get $10 + i32.const 255 + i32.and + local.get $9 + select + local.tee $10 + local.get $7 + local.get $10 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_0 + local.get $8 + i32.load + local.get $8 + local.get $9 + select + local.get $5 + i32.load + local.get $5 + local.get $6 + select + local.get $12 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_0 + local.get $6 + i32.const 0 + i32.ge_s + if $if + local.get $11 + return + end ;; $if + br $block + end ;; $block_0 + local.get $10 + local.get $7 + i32.ge_u + if $if_0 + local.get $11 + return + end ;; $if_0 + end ;; $block + local.get $3 + local.get $8 + i32.store + local.get $4 + local.get $5 + i32.store + local.get $11 + i32.const 1 + i32.add + local.set $8 + local.get $2 + i32.load + local.tee $4 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $6 + local.get $3 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $10 + i32.const 0 + i32.lt_s + local.set $9 + block $block_1 + block $block_2 + local.get $4 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $6 + select + local.tee $7 + local.get $5 + i32.load offset=4 + local.get $10 + i32.const 255 + i32.and + local.get $9 + select + local.tee $10 + local.get $7 + local.get $10 + i32.lt_u + select + local.tee $12 + i32.eqz + br_if $block_2 + local.get $5 + i32.load + local.get $5 + local.get $9 + select + local.get $4 + i32.load + local.get $4 + local.get $6 + select + local.get $12 + call $_memcmp + local.tee $6 + i32.eqz + br_if $block_2 + local.get $6 + i32.const 0 + i32.ge_s + if $if_1 + local.get $8 + return + end ;; $if_1 + br $block_1 + end ;; $block_2 + local.get $10 + local.get $7 + i32.ge_u + if $if_2 + local.get $8 + return + end ;; $if_2 + end ;; $block_1 + local.get $2 + local.get $5 + i32.store + local.get $3 + local.get $4 + i32.store + local.get $11 + i32.const 2 + i32.add + local.set $5 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $9 + i32.const 0 + i32.lt_s + local.set $8 + local.get $2 + i32.load + local.tee $4 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $6 + block $block_3 + block $block_4 + local.get $3 + i32.load offset=4 + local.get $9 + i32.const 255 + i32.and + local.get $8 + select + local.tee $9 + local.get $4 + i32.load offset=4 + local.get $7 + i32.const 255 + i32.and + local.get $6 + select + local.tee $7 + local.get $9 + local.get $7 + i32.lt_u + select + local.tee $10 + i32.eqz + br_if $block_4 + local.get $4 + i32.load + local.get $4 + local.get $6 + select + local.get $3 + i32.load + local.get $3 + local.get $8 + select + local.get $10 + call $_memcmp + local.tee $8 + i32.eqz + br_if $block_4 + local.get $8 + i32.const 0 + i32.ge_s + if $if_3 + local.get $5 + return + end ;; $if_3 + br $block_3 + end ;; $block_4 + local.get $7 + local.get $9 + i32.ge_u + if $if_4 + local.get $5 + return + end ;; $if_4 + end ;; $block_3 + local.get $1 + local.get $4 + i32.store + local.get $2 + local.get $3 + i32.store + local.get $11 + i32.const 3 + i32.add + local.set $4 + local.get $0 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $5 + local.get $1 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $9 + i32.const 0 + i32.lt_s + local.set $8 + block $block_5 + block $block_6 + local.get $2 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $5 + select + local.tee $6 + local.get $3 + i32.load offset=4 + local.get $9 + i32.const 255 + i32.and + local.get $8 + select + local.tee $9 + local.get $6 + local.get $9 + i32.lt_u + select + local.tee $7 + i32.eqz + br_if $block_6 + local.get $3 + i32.load + local.get $3 + local.get $8 + select + local.get $2 + i32.load + local.get $2 + local.get $5 + select + local.get $7 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_6 + local.get $5 + i32.const 0 + i32.ge_s + if $if_5 + local.get $4 + return + end ;; $if_5 + br $block_5 + end ;; $block_6 + local.get $9 + local.get $6 + i32.ge_u + if $if_6 + local.get $4 + return + end ;; $if_6 + end ;; $block_5 + local.get $0 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store + local.get $11 + i32.const 4 + i32.add + ) + + (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.add + local.tee $3 + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + drop + local.get $1 + local.get $0 + i32.const 12 + i32.add + local.tee $7 + i32.eq + if $if + return + end ;; $if + loop $loop + local.get $3 + i32.load + local.tee $5 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $8 + local.get $7 + i32.load + local.tee $11 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $9 + block $block + block $block_0 + block $block_1 + local.get $5 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $8 + select + local.tee $10 + local.get $11 + local.tee $2 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $9 + select + local.tee $4 + local.get $10 + local.get $4 + i32.lt_u + select + local.tee $6 + i32.eqz + br_if $block_1 + local.get $2 + i32.load + local.get $2 + local.get $9 + select + local.get $5 + i32.load + local.get $5 + local.get $8 + select + local.get $6 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_1 + local.get $5 + i32.const 0 + i32.lt_s + br_if $block_0 + br $block + end ;; $block_1 + local.get $4 + local.get $10 + i32.lt_u + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + local.set $8 + local.get $7 + local.set $2 + loop $loop_0 + block $block_2 + local.get $2 + local.get $3 + i32.load + i32.store + local.get $0 + local.get $3 + i32.eq + if $if_0 + local.get $0 + local.set $3 + br $block_2 + end ;; $if_0 + local.get $3 + i32.const -4 + i32.add + local.tee $5 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $9 + local.get $11 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $10 + local.get $2 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $9 + select + local.tee $4 + local.get $11 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $10 + select + local.tee $6 + i32.lt_u + local.set $12 + block $block_3 + block $block_4 + local.get $4 + local.get $6 + local.get $12 + select + local.tee $13 + i32.eqz + br_if $block_4 + local.get $8 + i32.load + local.get $11 + local.get $10 + select + local.get $2 + i32.load + local.get $2 + local.get $9 + select + local.get $13 + call $_memcmp + local.tee $2 + i32.eqz + br_if $block_4 + br $block_3 + end ;; $block_4 + i32.const -1 + local.get $12 + local.get $6 + local.get $4 + i32.lt_u + select + local.set $2 + end ;; $block_3 + local.get $2 + i32.const 0 + i32.lt_s + if $if_1 + local.get $3 + local.set $2 + local.get $5 + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $block_2 + end ;; $loop_0 + local.get $3 + local.get $8 + i32.store + end ;; $block + local.get $7 + i32.const 4 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $7 + local.set $3 + local.get $2 + local.set $7 + br $loop + end ;; $if_2 + end ;; $loop + ) + + (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + br_table + $block $block $block_4 $block_3 $block_2 $block_1 + $block_0 ;; default + end ;; $block_4 + local.get $0 + i32.load + local.tee $3 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $5 + local.get $1 + i32.const -4 + i32.add + local.tee $8 + i32.load + local.tee $1 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $9 + block $block_5 + block $block_6 + local.get $3 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $5 + select + local.tee $2 + local.get $1 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $9 + select + local.tee $4 + local.get $2 + local.get $4 + i32.lt_u + select + local.tee $7 + i32.eqz + br_if $block_6 + local.get $1 + i32.load + local.get $1 + local.get $9 + select + local.get $3 + i32.load + local.get $3 + local.get $5 + select + local.get $7 + call $_memcmp + local.tee $5 + i32.eqz + br_if $block_6 + local.get $5 + i32.const 0 + i32.ge_s + br_if $block + br $block_5 + end ;; $block_6 + local.get $4 + local.get $2 + i32.ge_u + br_if $block + end ;; $block_5 + local.get $0 + local.get $1 + i32.store + local.get $8 + local.get $3 + i32.store + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const -4 + i32.add + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + drop + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const -4 + i32.add + call $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ + drop + br $block + end ;; $block_1 + local.get $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.add + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const -4 + i32.add + call $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ + drop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.add + local.tee $3 + call $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ + drop + local.get $1 + local.get $0 + i32.const 12 + i32.add + local.tee $5 + i32.eq + br_if $block + loop $loop + block $block_7 + local.get $3 + i32.load + local.tee $4 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $7 + local.get $5 + i32.load + local.tee $8 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $11 + block $block_8 + block $block_9 + block $block_10 + local.get $4 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $7 + select + local.tee $12 + local.get $8 + local.tee $2 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $11 + select + local.tee $6 + local.get $12 + local.get $6 + i32.lt_u + select + local.tee $10 + i32.eqz + br_if $block_10 + local.get $2 + i32.load + local.get $2 + local.get $11 + select + local.get $4 + i32.load + local.get $4 + local.get $7 + select + local.get $10 + call $_memcmp + local.tee $4 + i32.eqz + br_if $block_10 + local.get $4 + i32.const 0 + i32.lt_s + br_if $block_9 + local.get $9 + local.set $3 + br $block_8 + end ;; $block_10 + local.get $6 + local.get $12 + i32.lt_u + br_if $block_9 + local.get $9 + local.set $3 + br $block_8 + end ;; $block_9 + local.get $2 + local.set $7 + local.get $5 + local.set $2 + loop $loop_0 + block $block_11 + local.get $2 + local.get $3 + i32.load + i32.store + local.get $0 + local.get $3 + i32.eq + if $if + local.get $0 + local.set $3 + br $block_11 + end ;; $if + local.get $3 + i32.const -4 + i32.add + local.tee $4 + i32.load + local.tee $2 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.set $11 + local.get $8 + i32.load8_s offset=11 + local.tee $10 + i32.const 0 + i32.lt_s + local.set $12 + local.get $2 + i32.load offset=4 + local.get $6 + i32.const 255 + i32.and + local.get $11 + select + local.tee $6 + local.get $8 + i32.load offset=4 + local.get $10 + i32.const 255 + i32.and + local.get $12 + select + local.tee $10 + i32.lt_u + local.set $13 + block $block_12 + block $block_13 + local.get $6 + local.get $10 + local.get $13 + select + local.tee $14 + i32.eqz + br_if $block_13 + local.get $7 + i32.load + local.get $8 + local.get $12 + select + local.get $2 + i32.load + local.get $2 + local.get $11 + select + local.get $14 + call $_memcmp + local.tee $2 + i32.eqz + br_if $block_13 + br $block_12 + end ;; $block_13 + i32.const -1 + local.get $13 + local.get $10 + local.get $6 + i32.lt_u + select + local.set $2 + end ;; $block_12 + local.get $2 + i32.const 0 + i32.lt_s + if $if_0 + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_0 + end ;; $if_0 + end ;; $block_11 + end ;; $loop_0 + local.get $3 + local.get $7 + i32.store + local.get $9 + i32.const 1 + i32.add + local.tee $3 + i32.const 8 + i32.eq + br_if $block_7 + end ;; $block_8 + local.get $1 + local.get $5 + i32.const 4 + i32.add + local.tee $4 + i32.eq + br_if $block + local.get $5 + local.set $2 + local.get $3 + local.set $9 + local.get $4 + local.set $5 + local.get $2 + local.set $3 + br $loop + end ;; $block_7 + end ;; $loop + local.get $1 + local.get $5 + i32.const 4 + i32.add + i32.eq + return + end ;; $block + i32.const 1 + ) + + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if + return + end ;; $if + local.get $2 + i32.const 1 + i32.and + if $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $2 + i32.load + i32.const 24664 + i32.eq + if $if_1 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 24664 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + end ;; $if_1 + local.get $1 + i32.load + i32.load offset=72 + local.set $3 + local.get $1 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $3 + local.get $2 + i32.load + local.tee $4 + i32.const 24664 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.load offset=12 + local.get $3 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + else + local.get $4 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ + end ;; $if_2 + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 1 + i32.or + i32.store offset=16 + local.get $1 + i32.load offset=16 + local.set $2 + end ;; $if_0 + local.get $2 + i32.const 2 + i32.and + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $0 + i32.load offset=8 + i32.eqz + if $if_4 + local.get $0 + local.get $0 + i32.load offset=12 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + i32.store offset=8 + end ;; $if_4 + local.get $1 + i32.load + i32.load offset=76 + local.set $2 + local.get $1 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $1 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ + local.get $0 + local.get $0 + i32.load offset=16 + i32.const 2 + i32.or + i32.store offset=16 + ) + + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.const 24520 + i32.load + local.get $0 + select + ) + + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase5ClearINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const -1 + i32.le_s + if $if + local.get $1 + i32.const 3 + i32.store + local.get $1 + i32.const 11815 + i32.store offset=4 + local.get $1 + i32.const 1567 + i32.store offset=8 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 0 + i32.store offset=20 + local.get $1 + i32.const 14195 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $1 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + local.get $1 + global.set $32 + return + end ;; $if + local.get $3 + i32.eqz + if $if_0 + local.get $1 + global.set $32 + return + end ;; $if_0 + local.get $0 + i32.load offset=12 + local.set $6 + loop $loop + local.get $2 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.const 4 + i32.add + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $2 + i32.load offset=4 + local.tee $2 + i32.const 1 + i32.and + if $if_1 + local.get $2 + i32.const -2 + i32.and + local.tee $2 + local.set $5 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $5 + i32.load + i32.const 0 + i32.store8 + local.get $5 + i32.const 0 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $2 + i32.const 0 + i32.store8 offset=11 + end ;; $if_2 + end ;; $if_1 + local.get $4 + local.get $3 + i32.lt_s + if $if_3 + local.get $4 + local.set $2 + br $loop + end ;; $if_3 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + global.set $32 + ) + + (func $__ZN6google8protobuf5ValueD2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 6928 + i32.store + local.get $0 + call $__ZN6google8protobuf5Value10SharedDtorEv + local.get $0 + i32.load offset=4 + local.tee $1 + i32.const 1 + i32.and + i32.eqz + if $if + local.get $0 + i32.const 0 + i32.store offset=4 + return + end ;; $if + local.get $1 + i32.const -2 + i32.and + local.tee $1 + local.tee $2 + i32.load offset=12 + local.get $1 + i32.eqz + i32.or + if $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return + end ;; $if_0 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $2 + i32.load + call $_free + end ;; $if_1 + local.get $1 + call $_free + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN6google8protobuf5ValueD0Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 6928 + i32.store + local.get $0 + call $__ZN6google8protobuf5Value10SharedDtorEv + local.get $0 + i32.load offset=4 + local.tee $1 + i32.const 1 + i32.and + i32.eqz + if $if + local.get $0 + call $_free + return + end ;; $if + local.get $1 + i32.const -2 + i32.and + local.tee $1 + local.tee $2 + i32.load offset=12 + local.get $1 + i32.eqz + i32.or + if $if_0 + local.get $0 + call $_free + return + end ;; $if_0 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_1 + local.get $2 + i32.load + call $_free + end ;; $if_1 + local.get $1 + call $_free + local.get $0 + call $_free + ) + + (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 21 + i32.store offset=4 + local.get $1 + i32.const 14277 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 14285 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 14293 + i32.load align=1 + i32.store offset=16 align=1 + local.get $1 + i32.const 14297 + i32.load8_s + i32.store8 offset=20 + local.get $1 + i32.const 0 + i32.store8 offset=21 + ) + + (func $__ZNK6google8protobuf5Value3NewEv (type $4) + (param $0 i32) + (result i32) + i32.const 0 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ + ) + + (func $__ZN6google8protobuf5Value5ClearEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + call $__ZN6google8protobuf5Value10clear_kindEv + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.and + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.const -2 + i32.and + local.tee $0 + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load + i32.const 0 + i32.store8 + local.get $1 + i32.const 0 + i32.store offset=4 + else + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=11 + end ;; $if_0 + ) + + (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $3) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 4768 + i32.const 4720 + call $___dynamic_cast + if $if + local.get $0 + local.get $1 + call $__ZN6google8protobuf5Value9MergeFromERKS1_ + else + i32.const 13788 + i32.const 13829 + i32.const 92 + i32.const 13878 + call $___assert_fail + end ;; $if + ) + + (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=20 + local.tee $2 + i32.const 1 + i32.eq + if $if + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE + local.get $0 + i32.load offset=20 + local.set $2 + end ;; $if + local.get $2 + i32.const 2 + i32.eq + if $if_0 + local.get $0 + f64.load offset=8 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite11WriteDoubleEidPNS0_2io17CodedOutputStreamE + local.get $0 + i32.load offset=20 + local.set $2 + end ;; $if_0 + local.get $2 + i32.const 3 + i32.eq + if $if_1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_2 + local.get $2 + i32.load offset=4 + local.set $3 + local.get $2 + i32.load + local.set $2 + else + local.get $3 + i32.const 255 + i32.and + local.set $3 + end ;; $if_2 + local.get $2 + local.get $3 + i32.const 1 + i32.const 12216 + call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ + drop + local.get $0 + i32.load offset=20 + i32.const 3 + i32.eq + if $if_3 (result i32) + local.get $0 + i32.load offset=8 + else + i32.const 24664 + end ;; $if_3 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE + local.get $0 + i32.load offset=20 + local.set $2 + end ;; $if_1 + local.get $2 + i32.const 4 + i32.eq + if $if_4 + local.get $0 + i32.load8_s offset=8 + i32.const 0 + i32.ne + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE + local.get $0 + i32.load offset=20 + local.set $2 + end ;; $if_4 + local.get $2 + i32.const 5 + i32.eq + if $if_5 + i32.const 5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE + local.get $0 + i32.load offset=20 + local.set $2 + end ;; $if_5 + local.get $2 + i32.const 6 + i32.eq + if $if_6 + i32.const 6 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.tee $2 + i32.const -2 + i32.and + i32.const 24664 + local.get $2 + i32.const 1 + i32.and + select + local.tee $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $2 + i32.load + local.set $2 + end ;; $if_7 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const -2 + i32.and + i32.const 24664 + local.get $0 + i32.const 1 + i32.and + select + local.tee $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_8 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi + else + local.get $1 + local.get $2 + local.get $3 + i32.const 255 + i32.and + call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi + end ;; $if_8 + ) + + (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.load offset=16 + ) + + (func $_proxy_onConfigure (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + call $__ZL14getRootContextj + local.tee $4 + i32.load + i32.load offset=24 + local.set $5 + i32.const 8 + call $__Znwm + local.tee $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store + local.get $4 + local.get $3 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + i32.load + local.set $0 + local.get $3 + i32.const 0 + i32.store + local.get $0 + i32.eqz + if $if + local.get $3 + global.set $32 + return + end ;; $if + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $3 + global.set $32 + ) + + (func $_proxy_onCreate (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 16 + i32.add + local.set $5 + local.get $6 + i32.const 4 + i32.add + local.set $9 + i32.const 16 + call $__Znwm + local.tee $4 + local.get $0 + i32.store offset=8 + local.get $4 + i32.const 0 + i32.store offset=12 + local.get $4 + i32.const 0 + i32.store + local.get $4 + local.get $0 + i32.store offset=4 + block $block + block $block_0 + i32.const 24700 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24696 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and + else + local.get $3 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 + end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free + br $block + end ;; $block_0 + local.get $11 + i32.const 24712 + f32.load + local.tee $14 + local.get $3 + f32.convert_i32_u + f32.mul + i32.const 24708 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24700 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24696 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24704 + i32.load + i32.store + i32.const 24704 + local.get $4 + i32.store + local.get $11 + i32.const 24704 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24696 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24708 + i32.const 24708 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 + local.get $1 + i32.store + local.get $5 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + i32.load + local.tee $1 + i32.load + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.tee $1 + i32.const 68 + i32.add + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_17 + local.get $3 + i32.load + local.set $4 + local.get $1 + i32.load offset=72 + local.set $3 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const -17 + i32.gt_u + if $if_18 + call $_abort + else + local.get $3 + local.set $7 + local.get $4 + local.set $12 + end ;; $if_18 + else + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const 255 + i32.and + local.set $7 + local.get $3 + local.set $12 + end ;; $if_17 + local.get $1 + local.set $3 + block $block_4 + block $block_5 + local.get $7 + i32.const 11 + i32.lt_u + if $if_19 (result i32) + local.get $5 + local.get $7 + i32.store8 offset=11 + local.get $7 + if $if_20 (result i32) + local.get $5 + local.set $1 + br $block_5 + else + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 + else + local.get $5 + local.get $7 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $1 + i32.store + local.get $5 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $5 + local.get $7 + i32.store offset=4 + br $block_5 + end ;; $if_19 + local.set $1 + br $block_4 + end ;; $block_5 + local.get $1 + local.get $12 + local.get $7 + call $_memcpy + drop + end ;; $block_4 + local.get $1 + local.get $7 + i32.add + i32.const 0 + i32.store8 + i32.const 24740 + i32.load + local.tee $1 + if $if_21 + block $block_6 (result i32) + local.get $1 + local.get $5 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ + local.tee $1 + i32.eqz + if $if_22 + local.get $9 + local.get $5 + call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ + i32.const 4 + local.get $9 + i32.load + local.get $9 + local.get $9 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $9 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $1 + select + call $_proxy_log + drop + local.get $9 + i32.load8_s offset=11 + i32.const 0 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_22 + local.get $6 + local.get $1 + i32.const 20 + i32.add + local.get $0 + local.get $3 + local.get $1 + i32.load offset=28 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $2 + i32.load offset=12 + local.set $0 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $0 + if $if_24 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $6 + i32.load + local.set $0 + local.get $6 + i32.const 0 + i32.store + local.get $0 + if $if_25 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_25 + else + local.get $6 + i32.const 0 + i32.store + end ;; $if_24 + i32.const 0 + local.set $1 + i32.const 0 + end ;; $block_6 + local.set $0 + else + i32.const 72 + call $__Znwm + local.tee $1 + i64.const 0 + i64.store offset=4 align=4 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=20 + local.get $1 + i64.const 0 + i64.store offset=24 align=4 + local.get $1 + i64.const 0 + i64.store offset=32 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=40 + local.get $1 + i64.const 0 + i64.store offset=44 align=4 + local.get $1 + i64.const 0 + i64.store offset=52 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=60 + local.get $1 + i32.const -64 + i32.sub + local.get $0 + i32.store + local.get $1 + i32.const 7344 + i32.store + local.get $1 + local.get $3 + i32.store offset=68 + local.get $2 + i32.load offset=12 + local.set $0 + local.get $2 + local.get $1 + i32.store offset=12 + block $block_7 (result i32) + local.get $0 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + i32.const 1 + local.set $1 + end ;; $if_21 + local.get $5 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_27 + local.get $5 + i32.load + call $_free + end ;; $if_27 + local.get $1 + if $if_28 + local.get $0 + local.get $0 + i32.load + i32.load offset=24 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $6 + global.set $32 + return + end ;; $if_28 + end ;; $block + local.get $2 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.tee $0 + i32.load + i32.load offset=24 + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $6 + global.set $32 + ) + + (func $_proxy_onDelete (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + call $__Z10getContextj + local.tee $2 + i32.load + i32.load offset=68 + local.set $3 + local.get $2 + local.get $3 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $1 + local.get $0 + i32.store + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ + local.get $1 + global.set $32 + ) + + (func $_proxy_onDone (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=60 + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $_proxy_onGrpcClose (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + call $__ZL14getRootContextj + local.tee $6 + i32.load + i32.load offset=60 + local.set $7 + i32.const 8 + call $__Znwm + local.tee $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + local.get $5 + local.get $0 + i32.store + local.get $6 + local.get $1 + local.get $2 + local.get $5 + local.get $7 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $5 + i32.load + local.set $0 + local.get $5 + i32.const 0 + i32.store + local.get $0 + i32.eqz + if $if + local.get $5 + global.set $32 + return + end ;; $if + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $5 + global.set $32 + ) + + (func $_proxy_onGrpcCreateInitialMetadata (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + call $__ZL14getRootContextj + local.tee $0 + i32.load + i32.load offset=44 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $_proxy_onGrpcReceive (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + call $__ZL14getRootContextj + local.tee $5 + i32.load + i32.load offset=56 + local.set $6 + i32.const 8 + call $__Znwm + local.tee $0 + local.get $2 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store + local.get $5 + local.get $1 + local.get $4 + local.get $6 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $2) + local.get $4 + i32.load + local.set $0 + local.get $4 + i32.const 0 + i32.store + local.get $0 + i32.eqz + if $if + local.get $4 + global.set $32 + return + end ;; $if + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $4 + global.set $32 + ) + + (func $_proxy_onGrpcReceiveInitialMetadata (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + call $__ZL14getRootContextj + local.tee $0 + i32.load + i32.load offset=48 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $_proxy_onGrpcReceiveTrailingMetadata (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + call $__ZL14getRootContextj + local.tee $0 + i32.load + i32.load offset=52 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $_proxy_onHttpCallResponse (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $8 + i32.const 8 + i32.add + local.set $9 + local.get $8 + i32.const 4 + i32.add + local.set $10 + local.get $0 + call $__ZL14getRootContextj + local.tee $11 + i32.load + i32.load offset=40 + local.set $12 + i32.const 8 + call $__Znwm + local.tee $0 + local.get $2 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $9 + local.get $0 + i32.store + i32.const 8 + call $__Znwm + local.tee $0 + local.get $4 + i32.store + local.get $0 + local.get $5 + i32.store offset=4 + local.get $10 + local.get $0 + i32.store + i32.const 8 + call $__Znwm + local.tee $0 + local.get $6 + i32.store + local.get $0 + local.get $7 + i32.store offset=4 + local.get $8 + local.get $0 + i32.store + local.get $11 + local.get $1 + local.get $9 + local.get $10 + local.get $8 + local.get $12 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + local.get $8 + i32.load + local.set $0 + local.get $8 + i32.const 0 + i32.store + local.get $0 + if $if + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + end ;; $if + local.get $10 + i32.load + local.set $0 + local.get $10 + i32.const 0 + i32.store + local.get $0 + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + end ;; $if_0 + local.get $9 + i32.load + local.set $0 + local.get $9 + i32.const 0 + i32.store + local.get $0 + i32.eqz + if $if_1 + local.get $8 + global.set $32 + return + end ;; $if_1 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $8 + global.set $32 + ) + + (func $_proxy_onLog (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.const -64 + i32.sub + i32.load + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $_proxy_onQueueReady (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + call $__ZL14getRootContextj + local.tee $0 + i32.load + i32.load offset=36 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $_proxy_onRequestBody (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=36 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + i32.const 0 + i32.ne + local.get $3 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $5) + ) + + (func $_proxy_onRequestHeaders (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=28 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onRequestMetadata (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=32 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onRequestTrailers (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=40 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onResponseBody (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=52 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + i32.const 0 + i32.ne + local.get $3 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $5) + ) + + (func $_proxy_onResponseHeaders (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=44 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onResponseMetadata (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=48 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onResponseTrailers (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + call $__Z10getContextj + local.tee $0 + i32.load + i32.load offset=56 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $_proxy_onStart (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 16 + i32.add + local.set $7 + local.get $6 + i32.const 8 + i32.add + local.set $10 + local.get $6 + i32.const 12 + i32.add + local.set $11 + i32.const 8 + call $__Znwm + local.tee $8 + local.get $1 + i32.store + local.get $8 + local.get $2 + i32.store offset=4 + local.get $1 + local.set $12 + block $block + block $block_0 + i32.const 24700 + i32.load + local.tee $5 + i32.eqz + br_if $block_0 + i32.const 24696 + i32.load + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $9 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $9 + i32.and + else + local.get $5 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $5 + if $if_1 (result i32) + local.get $0 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 + end ;; $if + local.tee $14 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $0 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $13 + local.get $5 + local.get $9 + i32.and + local.get $14 + i32.eq + i32.or + i32.eqz + br_if $block_0 + local.get $13 + if $if_3 + local.get $0 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_1 + end ;; $if_3 + local.get $1 + i32.load + local.tee $1 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $0 + local.get $1 + i32.load offset=4 + local.tee $9 + i32.eq + if $if_4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_1 + else + local.get $9 + local.get $5 + i32.ge_u + if $if_5 (result i32) + local.get $5 + if $if_6 (result i32) + local.get $9 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + local.get $14 + i32.ne + br_if $block_0 + end ;; $if_4 + local.get $1 + i32.load + local.tee $1 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $1 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + br $block + end ;; $block_0 + i32.const 24736 + i32.load + i32.eqz + if $if_7 + i32.const 160 + call $__Znwm + local.tee $5 + i64.const 0 + i64.store offset=4 align=4 + local.get $5 + i64.const 0 + i64.store offset=12 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=20 + local.get $5 + i64.const 0 + i64.store offset=24 align=4 + local.get $5 + i64.const 0 + i64.store offset=32 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=40 + local.get $5 + i64.const 0 + i64.store offset=44 align=4 + local.get $5 + i64.const 0 + i64.store offset=52 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=60 + local.get $5 + i32.const -64 + i32.sub + local.get $0 + i32.store + local.get $5 + i32.const 6688 + i32.store + local.get $5 + i32.const 68 + i32.add + local.tee $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.const -17 + i32.gt_u + if $if_8 + call $_abort + end ;; $if_8 + block $block_2 + block $block_3 + local.get $2 + i32.const 11 + i32.lt_u + if $if_9 + local.get $5 + local.get $2 + i32.store8 offset=79 + local.get $2 + br_if $block_3 + else + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $1 + i32.store + local.get $5 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=76 + local.get $5 + local.get $2 + i32.store offset=72 + br $block_3 + end ;; $if_9 + br $block_2 + end ;; $block_3 + local.get $1 + local.get $12 + local.get $2 + call $_memcpy + drop + end ;; $block_2 + local.get $1 + local.get $2 + i32.add + i32.const 0 + i32.store8 + local.get $5 + i64.const 0 + i64.store offset=80 align=4 + local.get $5 + i64.const 0 + i64.store offset=88 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=96 + local.get $5 + i64.const 0 + i64.store offset=100 align=4 + local.get $5 + i64.const 0 + i64.store offset=108 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=116 + local.get $5 + i64.const 0 + i64.store offset=120 align=4 + local.get $5 + i64.const 0 + i64.store offset=128 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=136 + local.get $5 + i64.const 0 + i64.store offset=140 align=4 + local.get $5 + i64.const 0 + i64.store offset=148 align=4 + local.get $5 + i32.const 1065353216 + i32.store offset=156 + local.get $6 + local.get $0 + i32.store + local.get $6 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + local.tee $1 + i32.load + local.set $0 + local.get $1 + local.get $5 + i32.store + local.get $0 + if $if_10 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_10 + local.get $5 + local.set $0 + br $block + end ;; $if_7 + local.get $7 + i64.const 0 + i64.store align=4 + local.get $7 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.const -17 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + block $block_4 + block $block_5 + local.get $2 + i32.const 11 + i32.lt_u + if $if_12 (result i32) + local.get $7 + local.get $2 + i32.store8 offset=11 + local.get $2 + if $if_13 (result i32) + local.get $7 + local.set $1 + br $block_5 + else + local.get $7 + end ;; $if_13 + else + local.get $7 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $5 + call $__Znwm + local.tee $1 + i32.store + local.get $7 + local.get $5 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $7 + local.get $2 + i32.store offset=4 + br $block_5 + end ;; $if_12 + local.set $1 + br $block_4 + end ;; $block_5 + local.get $1 + local.get $12 + local.get $2 + call $_memcpy + drop + end ;; $block_4 + local.get $1 + local.get $2 + i32.add + i32.const 0 + i32.store8 + i32.const 24736 + i32.load + local.get $7 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ + local.tee $1 + if $if_14 (result i32) + local.get $8 + i32.load offset=4 + local.set $2 + local.get $6 + local.get $8 + i32.load + i32.store + local.get $6 + local.get $2 + i32.store offset=4 + local.get $10 + local.get $1 + i32.const 20 + i32.add + local.get $0 + local.get $6 + local.get $1 + i32.load offset=28 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $10 + i32.load + local.tee $1 + i32.load + i32.load offset=8 + local.set $2 + local.get $1 + local.get $2 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $1 + local.get $7 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ + local.get $1 + i32.store + local.get $6 + local.get $0 + i32.store + local.get $6 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + local.set $2 + local.get $10 + i32.load + local.set $5 + local.get $10 + i32.const 0 + i32.store + local.get $2 + i32.load + local.set $0 + local.get $2 + local.get $5 + i32.store + local.get $0 + if $if_15 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 + i32.load + local.set $0 + local.get $10 + i32.const 0 + i32.store + local.get $0 + if $if_16 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_16 + local.get $1 + else + local.get $8 + i32.load + local.set $9 + local.get $8 + i32.load offset=4 + local.set $5 + i32.const 160 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store offset=4 align=4 + local.get $2 + i64.const 0 + i64.store offset=12 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=20 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=40 + local.get $2 + i64.const 0 + i64.store offset=44 align=4 + local.get $2 + i64.const 0 + i64.store offset=52 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=60 + local.get $2 + i32.const -64 + i32.sub + local.get $0 + i32.store + local.get $2 + i32.const 6688 + i32.store + local.get $2 + i32.const 68 + i32.add + local.tee $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const -17 + i32.gt_u + if $if_17 + call $_abort + end ;; $if_17 + block $block_6 + block $block_7 + local.get $5 + i32.const 11 + i32.lt_u + if $if_18 + local.get $2 + local.get $5 + i32.store8 offset=79 + local.get $5 + br_if $block_7 + else + local.get $1 + local.get $5 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $12 + call $__Znwm + local.tee $1 + i32.store + local.get $2 + local.get $12 + i32.const -2147483648 + i32.or + i32.store offset=76 + local.get $2 + local.get $5 + i32.store offset=72 + br $block_7 + end ;; $if_18 + br $block_6 + end ;; $block_7 + local.get $1 + local.get $9 + local.get $5 + call $_memcpy + drop + end ;; $block_6 + local.get $1 + local.get $5 + i32.add + i32.const 0 + i32.store8 + local.get $2 + i64.const 0 + i64.store offset=80 align=4 + local.get $2 + i64.const 0 + i64.store offset=88 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=96 + local.get $2 + i64.const 0 + i64.store offset=100 align=4 + local.get $2 + i64.const 0 + i64.store offset=108 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=116 + local.get $2 + i64.const 0 + i64.store offset=120 align=4 + local.get $2 + i64.const 0 + i64.store offset=128 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=136 + local.get $2 + i64.const 0 + i64.store offset=140 align=4 + local.get $2 + i64.const 0 + i64.store offset=148 align=4 + local.get $2 + i32.const 1065353216 + i32.store offset=156 + local.get $6 + local.get $0 + i32.store + local.get $6 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + local.tee $1 + i32.load + local.set $0 + local.get $1 + local.get $2 + i32.store + local.get $0 + if $if_19 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_19 + local.get $2 + end ;; $if_14 + local.set $0 + local.get $7 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_20 + local.get $7 + i32.load + call $_free + end ;; $if_20 + end ;; $block + local.get $0 + i32.load + i32.load offset=28 + local.set $2 + i32.const 8 + call $__Znwm + local.tee $1 + local.get $3 + i32.store + local.get $1 + local.get $4 + i32.store offset=4 + local.get $11 + local.get $1 + i32.store + local.get $0 + local.get $11 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $11 + i32.load + local.set $0 + local.get $11 + i32.const 0 + i32.store + local.get $0 + i32.eqz + if $if_21 + local.get $8 + i32.load + call $_free + local.get $8 + call $_free + local.get $6 + global.set $32 + return + end ;; $if_21 + local.get $0 + i32.load + call $_free + local.get $0 + call $_free + local.get $8 + i32.load + call $_free + local.get $8 + call $_free + local.get $6 + global.set $32 + ) + + (func $_proxy_onTick (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + call $__ZL14getRootContextj + local.tee $0 + i32.load + i32.load offset=32 + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $__ZL14getRootContextj (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + i32.const 24700 + i32.load + local.tee $1 + i32.eqz + if $if + i32.const 0 + return + end ;; $if + i32.const 24696 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $4 + if $if_0 (result i32) + local.get $0 + local.get $3 + i32.and + else + local.get $1 + local.get $0 + i32.gt_u + if $if_1 (result i32) + local.get $0 + else + local.get $1 + if $if_2 (result i32) + local.get $0 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + if $if_3 + i32.const 0 + return + end ;; $if_3 + local.get $2 + i32.load + local.tee $2 + i32.eqz + if $if_4 + i32.const 0 + return + end ;; $if_4 + block $block + local.get $4 + if $if_5 + loop $loop + local.get $0 + local.get $2 + i32.load offset=4 + local.tee $1 + i32.eq + local.tee $4 + local.get $1 + local.get $3 + i32.and + local.get $5 + i32.eq + i32.or + if $if_6 + local.get $4 + if $if_7 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block + end ;; $if_7 + local.get $2 + i32.load + local.tee $2 + br_if $loop + end ;; $if_6 + end ;; $loop + else + loop $loop_0 + block $block_0 + local.get $0 + local.get $2 + i32.load offset=4 + local.tee $3 + i32.eq + if $if_8 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block + else + local.get $3 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $3 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $3 + end ;; $if_9 + local.get $5 + i32.ne + br_if $block_0 + end ;; $if_8 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + end ;; $block_0 + end ;; $loop_0 + end ;; $if_5 + i32.const 0 + return + end ;; $block + local.get $2 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + i32.eqz + if $if_11 + i32.const 0 + return + end ;; $if_11 + local.get $2 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 63 + i32.and + call_indirect $28 (type $4) + ) + + (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 f32) + (local $8 f32) + local.get $0 + i32.load + local.set $4 + i32.const 24700 + i32.load + local.tee $2 + i32.eqz + local.tee $6 + if $if + i32.const 0 + local.set $0 + else + i32.const 24696 + i32.load + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $5 + i32.and + i32.eqz + local.tee $3 + if $if_0 (result i32) + local.get $4 + local.get $5 + i32.and + else + local.get $4 + local.get $2 + i32.lt_u + if $if_1 (result i32) + local.get $4 + else + local.get $2 + if $if_2 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $0 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + if $if_3 + local.get $1 + i32.load + local.tee $1 + if $if_4 + block $block + local.get $3 + if $if_5 + loop $loop + block $block_0 + local.get $4 + local.get $1 + i32.load offset=4 + local.tee $3 + i32.eq + local.get $3 + local.get $5 + i32.and + local.get $0 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_0 + local.get $1 + i32.load + local.tee $1 + br_if $loop + br $block + end ;; $block_0 + end ;; $loop + local.get $1 + i32.const 12 + i32.add + return + end ;; $if_5 + loop $loop_0 + block $block_1 + local.get $1 + i32.load offset=4 + local.tee $3 + local.get $4 + i32.ne + if $if_6 + local.get $3 + local.get $2 + i32.ge_u + if $if_7 (result i32) + local.get $2 + if $if_8 (result i32) + local.get $3 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_8 + else + local.get $3 + end ;; $if_7 + local.get $0 + i32.ne + br_if $block + end ;; $if_6 + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $1 + i32.load + local.tee $1 + br_if $loop_0 + br $block + end ;; $block_1 + end ;; $loop_0 + local.get $1 + i32.const 12 + i32.add + return + end ;; $block + end ;; $if_4 + end ;; $if_3 + end ;; $if + i32.const 16 + call $__Znwm + local.tee $3 + local.get $4 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + i32.const 0 + i32.store + local.get $6 + i32.const 24712 + f32.load + local.tee $8 + local.get $2 + f32.convert_i32_u + f32.mul + i32.const 24708 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $7 + f32.lt + i32.or + if $if_9 + block $block_2 (result i32) + local.get $2 + local.get $2 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $2 + i32.const 3 + i32.lt_u + i32.or + local.get $2 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $7 + local.get $8 + f32.div + f32.ceil + local.tee $7 + local.get $7 + f32.ne + if $if_10 (result i32) + i32.const 0 + else + local.get $7 + f32.const 0x1.000000p+32 + f32.ge + if $if_11 (result i32) + i32.const 0 + else + local.get $7 + f32.const -0x1.000000p-0 + f32.le + if $if_12 (result i32) + i32.const 0 + else + local.get $7 + i32.trunc_f32_u + end ;; $if_12 + end ;; $if_11 + end ;; $if_10 + local.tee $0 + local.get $2 + local.get $2 + local.get $0 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24700 + i32.load + local.tee $1 + i32.const -1 + i32.add + local.tee $0 + local.get $4 + i32.and + local.get $0 + local.get $1 + i32.and + i32.eqz + br_if $block_2 + drop + local.get $4 + local.get $1 + i32.lt_u + if $if_13 (result i32) + local.get $4 + else + local.get $1 + if $if_14 (result i32) + local.get $4 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + end ;; $if_13 + end ;; $block_2 + local.set $0 + else + local.get $2 + local.set $1 + end ;; $if_9 + block $block_3 + block $block_4 + i32.const 24696 + i32.load + local.get $0 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + local.tee $0 + if $if_15 + local.get $3 + local.get $0 + i32.load + i32.store + br $block_4 + else + local.get $3 + i32.const 24704 + i32.load + i32.store + i32.const 24704 + local.get $3 + i32.store + local.get $2 + i32.const 24704 + i32.store + local.get $3 + i32.load + local.tee $0 + if $if_16 + local.get $0 + i32.load offset=4 + local.set $0 + i32.const 24696 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $2 + i32.and + if $if_17 (result i32) + local.get $0 + local.get $1 + i32.ge_u + if $if_18 (result i32) + local.get $1 + if $if_19 (result i32) + local.get $0 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $0 + end ;; $if_18 + else + local.get $0 + local.get $2 + i32.and + end ;; $if_17 + i32.const 2 + i32.shl + i32.add + local.set $0 + br $block_4 + end ;; $if_16 + end ;; $if_15 + br $block_3 + end ;; $block_4 + local.get $0 + local.get $3 + i32.store + end ;; $block_3 + i32.const 24708 + i32.const 24708 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 12 + i32.add + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $5 + select + local.set $6 + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $5 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $6 + local.set $2 + local.get $5 + local.tee $1 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $1 + i32.const 1540483477 + i32.mul + i32.xor + local.set $1 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop + local.get $5 + i32.const -4 + i32.add + local.tee $3 + i32.const -4 + i32.and + local.tee $4 + i32.const 4 + i32.add + local.get $6 + i32.add + local.set $2 + local.get $3 + local.get $4 + i32.sub + else + local.get $6 + local.set $2 + local.get $5 + local.tee $1 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $1 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $1 + end ;; $block_1 + local.get $1 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $1 + end ;; $block_0 + local.get $1 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $1 + end ;; $block + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + if $if_0 + i32.const 0 + return + end ;; $if_0 + local.get $1 + local.get $1 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $1 + local.get $1 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $1 + if $if_1 (result i32) + local.get $7 + local.get $8 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $11 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.eqz + if $if_4 + i32.const 0 + return + end ;; $if_4 + local.get $0 + i32.load + local.tee $0 + i32.eqz + if $if_5 + i32.const 0 + return + end ;; $if_5 + local.get $5 + i32.eqz + local.set $9 + local.get $1 + if $if_6 + loop $loop_0 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $1 + local.get $7 + i32.eq + local.tee $2 + local.get $1 + local.get $8 + i32.and + local.get $11 + i32.eq + i32.or + i32.eqz + if $if_7 + i32.const 0 + local.set $0 + br $block_3 + end ;; $if_7 + local.get $2 + if $if_8 + block $block_4 + local.get $0 + i32.const 8 + i32.add + local.tee $2 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.set $3 + local.get $5 + local.get $0 + i32.load offset=12 + local.get $1 + i32.const 255 + i32.and + local.tee $1 + local.get $3 + select + i32.eq + if $if_9 + local.get $2 + i32.load + local.tee $4 + local.get $2 + local.get $3 + select + local.set $10 + local.get $3 + if $if_10 + local.get $9 + br_if $block_3 + local.get $10 + local.get $6 + local.get $5 + call $_memcmp + br_if $block_4 + br $block_3 + end ;; $if_10 + local.get $9 + br_if $block_3 + local.get $6 + i32.load8_u + local.get $4 + i32.const 255 + i32.and + i32.eq + if $if_11 + local.get $6 + local.set $3 + loop $loop_1 + local.get $1 + i32.const -1 + i32.add + local.tee $1 + i32.eqz + br_if $block_3 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + local.get $3 + i32.const 1 + i32.add + local.tee $3 + i32.load8_s + i32.eq + br_if $loop_1 + end ;; $loop_1 + end ;; $if_11 + end ;; $if_9 + end ;; $block_4 + end ;; $if_8 + local.get $0 + i32.load + local.tee $0 + br_if $loop_0 + i32.const 0 + local.set $0 + end ;; $block_3 + end ;; $loop_0 + local.get $0 + return + end ;; $if_6 + loop $loop_2 + block $block_5 + local.get $0 + i32.load offset=4 + local.tee $1 + local.get $7 + i32.eq + if $if_12 + block $block_6 + local.get $0 + i32.const 8 + i32.add + local.tee $2 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.set $3 + local.get $5 + local.get $0 + i32.load offset=12 + local.get $1 + i32.const 255 + i32.and + local.tee $1 + local.get $3 + select + i32.eq + if $if_13 + local.get $2 + i32.load + local.tee $8 + local.get $2 + local.get $3 + select + local.set $10 + local.get $3 + if $if_14 + local.get $9 + br_if $block_5 + local.get $10 + local.get $6 + local.get $5 + call $_memcmp + br_if $block_6 + br $block_5 + end ;; $if_14 + local.get $9 + br_if $block_5 + local.get $6 + i32.load8_u + local.get $8 + i32.const 255 + i32.and + i32.eq + if $if_15 + local.get $6 + local.set $3 + loop $loop_3 + local.get $1 + i32.const -1 + i32.add + local.tee $1 + i32.eqz + br_if $block_5 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + local.get $3 + i32.const 1 + i32.add + local.tee $3 + i32.load8_s + i32.eq + br_if $loop_3 + end ;; $loop_3 + end ;; $if_15 + end ;; $if_13 + end ;; $block_6 + else + local.get $1 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $1 + end ;; $if_16 + local.get $11 + i32.ne + if $if_18 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_18 + end ;; $if_12 + local.get $0 + i32.load + local.tee $0 + br_if $loop_2 + i32.const 0 + local.set $0 + end ;; $block_5 + end ;; $loop_2 + local.get $0 + ) + + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.load + local.get $0 + local.get $0 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $2 + select + local.tee $9 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $4 + local.set $1 + local.get $9 + local.tee $5 + local.set $3 + loop $loop + local.get $1 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $5 + i32.const 1540483477 + i32.mul + i32.xor + local.set $5 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop + local.get $9 + i32.const -4 + i32.add + local.tee $2 + i32.const -4 + i32.and + local.tee $6 + i32.const 4 + i32.add + local.get $4 + i32.add + local.set $1 + local.get $2 + local.get $6 + i32.sub + else + local.get $4 + local.set $1 + local.get $9 + local.tee $5 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $5 + local.get $1 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $5 + end ;; $block_1 + local.get $5 + local.get $1 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $5 + end ;; $block_0 + local.get $5 + local.get $1 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $5 + end ;; $block + local.get $5 + local.get $5 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $1 + local.get $1 + i32.const 15 + i32.shr_u + i32.xor + local.set $6 + block $block_3 + i32.const 24720 + i32.load + local.tee $2 + i32.eqz + local.tee $12 + if $if_0 + i32.const 0 + local.set $5 + else + i32.const 24716 + i32.load + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $10 + i32.and + i32.eqz + local.tee $7 + if $if_1 (result i32) + local.get $6 + local.get $10 + i32.and + else + local.get $6 + local.get $2 + i32.lt_u + if $if_2 (result i32) + local.get $6 + else + local.get $2 + if $if_3 (result i32) + local.get $6 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + if $if_4 + local.get $1 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $9 + i32.eqz + local.set $1 + local.get $7 + if $if_6 + local.get $1 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $1 + local.get $6 + i32.eq + local.get $1 + local.get $10 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $1 + i32.const 255 + i32.and + local.get $1 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 + loop $loop_1 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $1 + local.get $6 + i32.eq + local.get $1 + local.get $10 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $1 + local.get $9 + local.get $3 + i32.load offset=12 + local.get $8 + i32.const 255 + i32.and + local.tee $8 + local.get $1 + select + i32.eq + if $if_8 + block $block_7 + local.get $7 + i32.load + local.set $11 + local.get $1 + if $if_9 + local.get $11 + local.get $4 + local.get $9 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $4 + i32.load8_u + local.get $11 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $4 + local.set $1 + loop $loop_2 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + i32.eqz + br_if $block_6 + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $1 + if $if_11 + loop $loop_3 + block $block_8 + local.get $6 + local.get $3 + i32.load offset=4 + local.tee $1 + i32.ne + if $if_12 + local.get $1 + local.get $2 + i32.ge_u + if $if_13 (result i32) + local.get $2 + if $if_14 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $1 + end ;; $if_13 + local.get $5 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $1 + i32.const 255 + i32.and + local.get $1 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $6 + local.get $3 + i32.load offset=4 + local.tee $1 + i32.ne + if $if_15 + local.get $1 + local.get $2 + i32.ge_u + if $if_16 (result i32) + local.get $2 + if $if_17 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $1 + end ;; $if_16 + local.get $5 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $8 + i32.const 0 + i32.lt_s + local.set $1 + local.get $9 + local.get $3 + i32.load offset=12 + local.get $8 + i32.const 255 + i32.and + local.tee $8 + local.get $1 + select + i32.eq + if $if_18 + block $block_10 + local.get $7 + i32.load + local.set $10 + local.get $1 + if $if_19 + local.get $10 + local.get $4 + local.get $9 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $4 + i32.load8_u + local.get $10 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $4 + local.set $1 + loop $loop_5 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + i32.eqz + br_if $block_9 + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 + local.get $3 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 24 + call $__Znwm + local.tee $4 + i32.const 8 + i32.add + local.get $0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $4 + i32.const 0 + i32.store offset=20 + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + i32.const 0 + i32.store + local.get $12 + i32.const 24732 + f32.load + local.tee $13 + local.get $2 + f32.convert_i32_u + f32.mul + i32.const 24728 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $2 + local.get $2 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $2 + i32.const 3 + i32.lt_u + i32.or + local.get $2 + i32.const 1 + i32.shl + i32.or + local.set $0 + local.get $14 + local.get $13 + f32.div + f32.ceil + local.tee $13 + local.get $13 + f32.ne + if $if_22 (result i32) + i32.const 0 + else + local.get $13 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $13 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $13 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 + local.get $0 + local.get $0 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm + i32.const 24720 + i32.load + local.tee $0 + i32.const -1 + i32.add + local.tee $1 + local.get $6 + i32.and + local.get $0 + local.get $1 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $6 + local.get $0 + i32.lt_u + if $if_25 (result i32) + local.get $6 + else + local.get $0 + if $if_26 (result i32) + local.get $6 + local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $5 + else + local.get $2 + local.set $0 + end ;; $if_21 + block $block_12 + block $block_13 + i32.const 24716 + i32.load + local.get $5 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + local.tee $1 + if $if_27 + local.get $4 + local.get $1 + i32.load + i32.store + local.get $1 + local.set $0 + br $block_13 + else + local.get $4 + i32.const 24724 + i32.load + i32.store + i32.const 24724 + local.get $4 + i32.store + local.get $2 + i32.const 24724 + i32.store + local.get $4 + i32.load + local.tee $1 + if $if_28 + local.get $1 + i32.load offset=4 + local.set $1 + i32.const 24716 + i32.load + local.get $0 + local.get $0 + i32.const -1 + i32.add + local.tee $2 + i32.and + if $if_29 (result i32) + local.get $1 + local.get $0 + i32.lt_u + if $if_30 (result i32) + local.get $1 + else + local.get $0 + if $if_31 (result i32) + local.get $1 + local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $1 + local.get $2 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $0 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $0 + local.get $4 + i32.store + end ;; $block_12 + i32.const 24728 + i32.const 24728 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + i32.const 20 + i32.add + return + end ;; $block_3 + local.get $3 + i32.const 20 + i32.add + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + local.get $0 + i32.const 1 + i32.eq + if $if (result i32) + i32.const 2 + else + local.get $0 + local.get $0 + i32.const -1 + i32.add + i32.and + if $if_0 (result i32) + local.get $0 + call $__ZNSt3__212__next_primeEm + else + local.get $0 + end ;; $if_0 + end ;; $if + local.tee $1 + i32.const 24720 + i32.load + local.tee $0 + i32.gt_u + if $if_1 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm + return + end ;; $if_1 + local.get $1 + local.get $0 + i32.ge_u + if $if_2 + return + end ;; $if_2 + local.get $0 + local.get $0 + i32.const -1 + i32.add + i32.and + i32.eqz + local.get $0 + i32.const 2 + i32.gt_u + i32.and + local.set $3 + i32.const 24728 + i32.load + f32.convert_i32_u + i32.const 24732 + f32.load + f32.div + f32.ceil + local.tee $4 + local.get $4 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $4 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) + i32.const 0 + else + local.get $4 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $4 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 + local.set $2 + local.get $3 + if $if_6 (result i32) + local.get $2 + i32.const 1 + i32.const 32 + local.get $2 + i32.const -1 + i32.add + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select + else + local.get $2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 + local.get $0 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEm (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + local.get $0 + i32.eqz + if $if + i32.const 24716 + i32.load + local.set $0 + i32.const 24716 + i32.const 0 + i32.store + local.get $0 + if $if_0 + local.get $0 + call $_free + end ;; $if_0 + i32.const 24720 + i32.const 0 + i32.store + return + end ;; $if + local.get $0 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $1 + call $__ZNSt11logic_errorC2EPKc + local.get $1 + i32.const 10944 + i32.store + local.get $1 + i32.const 6424 + i32.const 112 + call $___cxa_throw + end ;; $if_1 + local.get $0 + i32.const 2 + i32.shl + call $__Znwm + local.set $2 + i32.const 24716 + i32.load + local.set $1 + i32.const 24716 + local.get $2 + i32.store + local.get $1 + if $if_2 + local.get $1 + call $_free + end ;; $if_2 + i32.const 24720 + local.get $0 + i32.store + i32.const 0 + local.set $1 + loop $loop + i32.const 24716 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.tee $1 + local.get $0 + i32.ne + br_if $loop + end ;; $loop + i32.const 24724 + i32.load + local.tee $6 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $6 + i32.load offset=4 + local.set $1 + i32.const 24716 + i32.load + local.get $0 + local.get $0 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $14 + if $if_4 (result i32) + local.get $1 + local.get $12 + i32.and + else + local.get $1 + local.get $0 + i32.ge_u + if $if_5 (result i32) + local.get $0 + if $if_6 (result i32) + local.get $1 + local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $1 + end ;; $if_5 + end ;; $if_4 + local.tee $13 + i32.const 2 + i32.shl + i32.add + i32.const 24724 + i32.store + local.get $6 + i32.load + local.tee $4 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $13 + local.get $14 + if $if_8 (result i32) + local.get $1 + local.get $12 + i32.and + else + local.get $1 + local.get $0 + i32.ge_u + if $if_9 (result i32) + local.get $0 + if $if_10 (result i32) + local.get $1 + local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $1 + end ;; $if_9 + end ;; $if_8 + local.tee $8 + i32.eq + if $if_11 (result i32) + local.get $4 + else + block $block (result i32) + i32.const 24716 + i32.load + local.get $8 + i32.const 2 + i32.shl + i32.add + local.tee $1 + i32.load + i32.eqz + if $if_12 + local.get $1 + local.get $6 + i32.store + local.get $8 + local.set $13 + local.get $4 + br $block + end ;; $if_12 + local.get $4 + i32.load + local.tee $1 + if $if_13 + block $block_0 + local.get $4 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $2 + local.get $4 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $9 + local.get $2 + select + local.tee $11 + i32.eqz + local.set $5 + local.get $2 + if $if_14 + local.get $4 + local.set $2 + loop $loop_1 + local.get $1 + i32.const 8 + i32.add + local.tee $3 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $9 + local.get $1 + i32.load offset=12 + local.get $7 + i32.const 255 + i32.and + local.get $9 + select + local.get $11 + i32.ne + if $if_15 + local.get $2 + local.set $1 + br $block_0 + end ;; $if_15 + local.get $5 + i32.eqz + if $if_16 + local.get $10 + i32.load + local.get $3 + i32.load + local.get $3 + local.get $9 + select + local.get $11 + call $_memcmp + if $if_17 + local.get $2 + local.set $1 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $1 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + local.get $1 + local.set $2 + local.get $3 + local.set $1 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $5 + if $if_18 + local.get $4 + local.set $2 + loop $loop_2 + local.get $1 + i32.load offset=12 + local.get $1 + i32.load8_s offset=19 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $2 + local.set $1 + br $block_0 + end ;; $if_19 + local.get $1 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + local.get $1 + local.set $2 + local.get $3 + local.set $1 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $1 + local.set $2 + local.get $4 + local.set $1 + loop $loop_3 (result i32) + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.load8_s offset=11 + local.tee $7 + i32.const 0 + i32.lt_s + local.set $5 + local.get $2 + i32.load offset=12 + local.get $7 + i32.const 255 + i32.and + local.get $5 + select + local.get $11 + i32.ne + br_if $block_0 + local.get $3 + i32.load + local.get $3 + local.get $5 + select + local.tee $7 + i32.load8_u + local.get $10 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $9 + local.set $3 + local.get $10 + local.set $5 + loop $loop_4 + local.get $3 + i32.const -1 + i32.add + local.tee $3 + if $if_20 + local.get $5 + i32.const 1 + i32.add + local.tee $5 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $2 + i32.load + local.tee $3 + if $if_22 (result i32) + local.get $2 + local.set $1 + local.get $3 + local.set $2 + br $loop_3 + else + local.get $2 + end ;; $if_22 + end ;; $loop_3 + local.set $1 + end ;; $block_0 + else + local.get $4 + local.set $1 + end ;; $if_13 + local.get $6 + local.get $1 + i32.load + i32.store + local.get $1 + i32.const 24716 + i32.load + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + i32.const 24716 + i32.load + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + i32.store + local.get $6 + end ;; $block + end ;; $if_11 + local.tee $1 + i32.load + local.tee $4 + if $if_23 + local.get $1 + local.set $6 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + local.get $0 + i32.const 1 + i32.eq + if $if (result i32) + i32.const 2 + else + local.get $0 + local.get $0 + i32.const -1 + i32.add + i32.and + if $if_0 (result i32) + local.get $0 + call $__ZNSt3__212__next_primeEm + else + local.get $0 + end ;; $if_0 + end ;; $if + local.tee $1 + i32.const 24700 + i32.load + local.tee $0 + i32.gt_u + if $if_1 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm + return + end ;; $if_1 + local.get $1 + local.get $0 + i32.ge_u + if $if_2 + return + end ;; $if_2 + local.get $0 + local.get $0 + i32.const -1 + i32.add + i32.and + i32.eqz + local.get $0 + i32.const 2 + i32.gt_u + i32.and + local.set $3 + i32.const 24708 + i32.load + f32.convert_i32_u + i32.const 24712 + f32.load + f32.div + f32.ceil + local.tee $4 + local.get $4 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $4 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) + i32.const 0 + else + local.get $4 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $4 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 + local.set $2 + local.get $3 + if $if_6 (result i32) + local.get $2 + i32.const 1 + i32.const 32 + local.get $2 + i32.const -1 + i32.add + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select + else + local.get $2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 + local.get $0 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE8__rehashEm (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + i32.eqz + if $if + i32.const 24696 + i32.load + local.set $0 + i32.const 24696 + i32.const 0 + i32.store + local.get $0 + if $if_0 + local.get $0 + call $_free + end ;; $if_0 + i32.const 24700 + i32.const 0 + i32.store + return + end ;; $if + local.get $0 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $1 + call $__ZNSt11logic_errorC2EPKc + local.get $1 + i32.const 10944 + i32.store + local.get $1 + i32.const 6424 + i32.const 112 + call $___cxa_throw + end ;; $if_1 + local.get $0 + i32.const 2 + i32.shl + call $__Znwm + local.set $2 + i32.const 24696 + i32.load + local.set $1 + i32.const 24696 + local.get $2 + i32.store + local.get $1 + if $if_2 + local.get $1 + call $_free + end ;; $if_2 + i32.const 24700 + local.get $0 + i32.store + i32.const 0 + local.set $1 + loop $loop + i32.const 24696 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.tee $1 + local.get $0 + i32.ne + br_if $loop + end ;; $loop + i32.const 24704 + i32.load + local.tee $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + i32.load offset=4 + local.set $1 + i32.const 24696 + i32.load + local.get $0 + local.get $0 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $5 + if $if_4 (result i32) + local.get $1 + local.get $6 + i32.and + else + local.get $1 + local.get $0 + i32.ge_u + if $if_5 (result i32) + local.get $0 + if $if_6 (result i32) + local.get $1 + local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $1 + end ;; $if_5 + end ;; $if_4 + local.tee $2 + i32.const 2 + i32.shl + i32.add + i32.const 24704 + i32.store + local.get $4 + i32.load + local.tee $1 + i32.eqz if $if_7 return end ;; $if_7 @@ -26980,7 +30962,7 @@ local.get $0 else block $block (result i32) - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27039,7 +31021,7 @@ i32.load i32.store local.get $1 - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27048,7 +31030,7 @@ i32.load i32.load i32.store - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27095,7 +31077,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27154,7 +31136,7 @@ i32.load i32.store local.get $2 - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27163,7 +31145,7 @@ i32.load i32.load i32.store - i32.const 15528 + i32.const 24696 i32.load local.get $3 i32.const 2 @@ -27190,7 +31172,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15532 + i32.const 24700 i32.load local.tee $1 i32.eqz @@ -27198,7 +31180,7 @@ i32.const 0 return end ;; $if - i32.const 15528 + i32.const 24696 i32.load local.get $1 local.get $1 @@ -27333,7 +31315,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz if $if_11 i32.const 0 @@ -27349,7 +31331,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -27365,14 +31347,14 @@ local.get $0 i32.load local.set $3 - i32.const 15532 + i32.const 24700 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 15528 + i32.const 24696 i32.load local.tee $4 local.get $2 @@ -27540,7 +31522,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 15536 + i32.const 24704 i32.eq br_if $block_2 local.get $3 @@ -27583,129 +31565,474 @@ local.set $1 local.get $0 local.get $7 - if $if_19 (result i32) - local.get $1 - local.get $5 - i32.and - else - local.get $1 - local.get $2 - i32.ge_u - if $if_20 (result i32) - local.get $2 - if $if_21 (result i32) - local.get $1 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $1 - end ;; $if_20 - end ;; $if_19 - local.get $6 - i32.eq - br_if $block_1 + if $if_19 (result i32) + local.get $1 + local.get $5 + i32.and + else + local.get $1 + local.get $2 + i32.ge_u + if $if_20 (result i32) + local.get $2 + if $if_21 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_21 + else + local.get $1 + end ;; $if_20 + end ;; $if_19 + local.get $6 + i32.eq + br_if $block_1 + drop + end ;; $if_18 + local.get $4 + i32.const 0 + i32.store + local.get $0 + end ;; $block_1 + local.tee $8 + i32.load + local.tee $1 + local.set $4 + local.get $3 + local.get $1 + if $if_22 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $6 + local.get $7 + if $if_23 (result i32) + local.get $1 + local.get $5 + i32.and + else + local.get $1 + local.get $2 + i32.ge_u + if $if_24 (result i32) + local.get $2 + if $if_25 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_25 + else + local.get $1 + end ;; $if_24 + end ;; $if_23 + local.tee $2 + i32.ne + if $if_26 (result i32) + i32.const 24696 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $3 + i32.store + local.get $0 + i32.load + else + local.get $4 + end ;; $if_26 + else + local.get $4 + end ;; $if_22 + i32.store + local.get $8 + i32.const 0 + i32.store + i32.const 24708 + i32.const 24708 + i32.load + i32.const -1 + i32.add + i32.store + local.get $0 + i32.eqz + if $if_27 + return + end ;; $if_27 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $2 + if $if_28 + local.get $2 + local.get $2 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_28 + local.get $0 + call $_free + ) + + (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24736 + i32.load + i32.eqz + if $if + i32.const 20 + call $__Znwm + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i64.const 0 + i64.store offset=8 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=16 + i32.const 24736 + local.get $3 + i32.store + i32.const 20 + call $__Znwm + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i64.const 0 + i64.store offset=8 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=16 + i32.const 24740 + local.get $3 + i32.store + end ;; $if + local.get $8 + local.set $3 + local.get $0 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz + if $if_0 + i32.const 24740 + i32.load + local.set $6 + local.get $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block + block $block_0 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $3 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $3 + local.set $5 + br $block_0 + else + local.get $3 + end ;; $if_3 + else + local.get $3 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $9 + call $__Znwm + local.tee $5 + i32.store + local.get $3 + local.get $9 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $3 + local.get $4 + i32.store offset=4 + br $block_0 + end ;; $if_2 + local.set $5 + br $block + end ;; $block_0 + local.get $5 + local.get $7 + local.get $4 + call $_memcpy drop - end ;; $if_18 + end ;; $block local.get $4 + local.get $5 + i32.add i32.const 0 - i32.store + i32.store8 + local.get $6 + local.get $3 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 local.get $0 - end ;; $block_1 - local.tee $8 - i32.load - local.tee $1 - local.set $4 - local.get $3 - local.get $1 - if $if_22 (result i32) - local.get $1 i32.load offset=4 - local.set $1 + local.set $6 + local.get $0 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 + if $if_4 + local.get $5 + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $5 + end ;; $if_4 + local.get $4 + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $4 + i32.load + local.set $0 + local.get $4 + local.get $5 + i32.store + local.get $4 local.get $6 + i32.store offset=4 local.get $7 - if $if_23 (result i32) - local.get $1 + i32.load offset=4 + local.tee $5 + if $if_5 + local.get $0 local.get $5 + i32.const 127 i32.and - else - local.get $1 + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_5 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $3 + i32.load + call $_free + end ;; $if_6 + end ;; $if_0 + local.get $1 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 + return + end ;; $if_7 + i32.const 24736 + i32.load + local.set $5 + local.get $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 + i32.const -17 + i32.gt_u + if $if_8 + call $_abort + end ;; $if_8 + block $block_1 + block $block_2 local.get $2 - i32.ge_u - if $if_24 (result i32) + i32.const 11 + i32.lt_u + if $if_9 (result i32) + local.get $3 local.get $2 - if $if_25 (result i32) - local.get $1 - local.get $2 - i32.rem_u + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) + local.get $3 + local.set $0 + br $block_2 else - i32.const 0 - end ;; $if_25 + local.get $3 + end ;; $if_10 else - local.get $1 - end ;; $if_24 - end ;; $if_23 - local.tee $2 - i32.ne - if $if_26 (result i32) - i32.const 15528 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $3 - i32.store - local.get $0 - i32.load - else - local.get $4 - end ;; $if_26 - else + local.get $3 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $6 + call $__Znwm + local.tee $0 + i32.store + local.get $3 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=4 + br $block_2 + end ;; $if_9 + local.set $0 + br $block_1 + end ;; $block_2 + local.get $0 local.get $4 - end ;; $if_22 - i32.store - local.get $8 + local.get $2 + call $_memcpy + drop + end ;; $block_1 + local.get $0 + local.get $2 + i32.add i32.const 0 - i32.store - i32.const 15540 - i32.const 15540 + i32.store8 + local.get $5 + local.get $3 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 + local.get $1 i32.load - i32.const -1 - i32.add - i32.store - local.get $0 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $0 + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 i32.load offset=12 - local.set $2 - local.get $0 - i32.const 0 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + end ;; $if_11 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 i32.store offset=12 local.get $2 - if $if_28 - local.get $2 - local.get $2 - i32.load - i32.load offset=4 - i32.const 63 + i32.load + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 + local.get $4 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 + local.get $0 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_28 - local.get $0 - call $_free + call_indirect $28 (type $0) + end ;; $if_12 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_13 + local.get $3 + i32.load + call $_free + end ;; $if_13 + local.get $8 + global.set $32 ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $3) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -27713,740 +32040,707 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f32) - (local $10 f32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) local.get $1 + i32.load local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 block $block - i32.const 15532 - i32.load - local.tee $2 - i32.eqz - local.tee $8 + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and + local.get $2 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop + local.get $5 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 + i32.and + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 + local.get $4 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 i32.eqz - if $if - i32.const 15528 + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 i32.load - local.get $2 - local.get $2 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $7 + local.tee $12 i32.and i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 + local.tee $9 + if $if_1 (result i32) local.get $7 + local.get $12 i32.and else - local.get $5 - local.get $2 + local.get $7 + local.get $4 i32.lt_u - if $if_1 (result i32) - local.get $5 + if $if_2 (result i32) + local.get $7 else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 + local.get $4 + if $if_3 (result i32) + local.get $7 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 local.tee $6 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - if $if_3 - local.get $3 + local.tee $2 + if $if_4 + local.get $2 i32.load local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 + loop $loop_1 + block $block_6 local.get $3 i32.load offset=4 + local.tee $2 local.get $7 + i32.eq + local.get $2 + local.get $12 i32.and - i32.ne - br_if $block_0 + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 local.get $5 local.get $3 - i32.load offset=8 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select i32.eq - br_if $block_1 + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 local.get $3 i32.load local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 local.get $3 i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) + local.tee $2 + i32.ne + if $if_15 local.get $2 - if $if_7 (result i32) + local.get $4 + i32.ge_u + if $if_16 (result i32) local.get $4 - local.get $2 - i32.rem_u + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 local.get $5 local.get $3 - i32.load offset=8 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select i32.eq - br_if $block_2 + if $if_18 + block $block_10 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 i32.load local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 15544 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15540 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 15532 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 15528 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 15536 - i32.load - i32.store - i32.const 15536 - local.get $1 - i32.store - i32.const 15528 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 15536 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 15528 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 15540 - i32.const 15540 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 - i32.add - global.set $30 - i32.const 15568 - i32.load - i32.eqz - if $if - i32.const 20 - call $__Znwm - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i64.const 0 - i64.store offset=8 align=4 - local.get $3 - i32.const 1065353216 - i32.store offset=16 - i32.const 15568 - local.get $3 - i32.store - i32.const 20 - call $__Znwm - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i64.const 0 - i64.store offset=8 align=4 - local.get $3 - i32.const 1065353216 - i32.store offset=16 - i32.const 15572 - local.get $3 - i32.store - end ;; $if - local.get $4 - i32.const 24 - i32.add - local.set $3 - local.get $0 - i32.load offset=16 - if $if_0 - i32.const 15572 - i32.load - local.set $7 - local.get $2 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $6 - local.get $3 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 i64.const 0 i64.store align=4 - local.get $3 + local.get $1 i32.const 0 i32.store offset=8 - local.get $6 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 - block $block - block $block_0 - local.get $6 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 - if $if_3 (result i32) - local.get $3 - local.set $5 - br $block_0 - else - local.get $3 - end ;; $if_3 - else - local.get $3 - local.get $6 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $9 - call $__Znwm - local.tee $5 - i32.store - local.get $3 - local.get $9 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $3 - local.get $6 - i32.store offset=4 - br $block_0 - end ;; $if_2 - local.set $5 - br $block - end ;; $block_0 - local.get $5 - local.get $8 - local.get $6 - call $_memcpy - drop - end ;; $block local.get $5 - local.get $6 - i32.add - i32.const 0 - i32.store8 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 + local.get $5 local.get $7 - local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $6 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 local.get $0 - i32.load offset=16 - local.tee $5 - if $if_4 - local.get $0 - local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - else local.get $4 - i32.const 16 + i32.const -1 i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 i32.and - call_indirect $26 (type $4) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_4 - local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 - i32.load - local.tee $0 - local.get $4 - i32.eq - if $if_6 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_8 - local.get $3 - i32.load - call $_free - end ;; $if_8 - end ;; $if_0 - local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 - return - end ;; $if_9 - i32.const 15568 - i32.load - local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 - local.get $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - if $if_10 - call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 - block $block_1 - block $block_2 - local.get $2 - i32.const 11 - i32.lt_u - if $if_11 (result i32) - local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $2 - if $if_12 (result i32) - local.get $3 - local.set $0 - br $block_2 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $3 - end ;; $if_12 - else - local.get $3 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.const 16 + local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm + local.get $0 + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $0 - i32.store - local.get $3 + local.tee $2 local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $3 + i32.and + local.get $1 local.get $2 - i32.store offset=4 - br $block_2 - end ;; $if_11 - local.set $0 - br $block_1 - end ;; $block_2 - local.get $0 - local.get $6 - local.get $2 - call $_memcpy - drop - end ;; $block_1 - local.get $0 - local.get $2 - i32.add - i32.const 0 - i32.store8 - local.get $5 - local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 - local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 else local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $4) + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $8 + i32.load + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 - local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 - i32.load - local.tee $0 - local.get $4 - i32.eq - if $if_15 + end ;; $block_12 local.get $0 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 + i32.load offset=12 + i32.const 1 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add + return + end ;; $block_3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_17 - local.get $3 - i32.load - call $_free - end ;; $if_17 - local.get $4 - global.set $30 + i32.const 20 + i32.add ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) (param $0 i32) (param $1 i32) (result i32) @@ -28929,7 +33223,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -28946,8 +33240,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -29145,220 +33442,29 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 + i32.const 20 i32.add ) - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $3) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $1) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7832 + i32.store local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 + i32.const 5248 + i32.const 36 + call $___cxa_throw ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $3) @@ -29526,11 +33632,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6956 + i32.const 10944 i32.store local.get $2 - i32.const 5392 - i32.const 51 + i32.const 6424 + i32.const 112 call $___cxa_throw end ;; $if_1 local.get $1 @@ -29923,7 +34029,7 @@ (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6440 + i32.const 7440 i32.store local.get $0 i32.load8_s offset=23 @@ -29940,7 +34046,7 @@ (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) (param $0 i32) local.get $0 - i32.const 6440 + i32.const 7440 i32.store local.get $0 i32.load8_s offset=23 @@ -29982,12 +34088,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 8 i32.add @@ -30006,7 +34112,7 @@ local.get $1 i32.const 3 i32.store - i32.const 15576 + i32.const 24744 i32.load i32.const -1 i32.ne @@ -30020,7 +34126,7 @@ local.get $2 call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 15580 + i32.const 24748 i32.load drop local.get $0 @@ -30050,7 +34156,7 @@ i32.load offset=8 local.set $4 local.get $1 - i32.const 6440 + i32.const 7440 i32.store local.get $1 local.get $3 @@ -30066,12 +34172,12 @@ i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $2 - i32.const 4784 - i32.const 39 + i32.const 4736 + i32.const 31 call $___cxa_throw else local.get $1 - global.set $30 + global.set $32 end ;; $if_1 ) @@ -30091,10 +34197,10 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 15580 + i32.const 24748 local.get $0 i32.store - i32.const 61 + i32.const 122 i32.const 4 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -30109,9 +34215,9 @@ local.get $0 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) ) (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $1) @@ -30121,21 +34227,21 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 0 i32.lt_s if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if - i32.const 6572 + i32.const 7576 i32.load local.set $5 local.get $3 @@ -30171,19 +34277,19 @@ call $_fflush drop local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) (local $0 i32) - i32.const 15580 + i32.const 24748 i32.load local.tee $0 if $if local.get $0 call $_free end ;; $if - i32.const 15580 + i32.const 24748 i32.const 0 i32.store ) @@ -30193,9 +34299,9 @@ local.get $0 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) ) (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $3) @@ -30203,29 +34309,23 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const 15488 + global.set $32 + i32.const 24656 i32.load8_s i32.eqz if $if - i32.const 15488 + i32.const 24656 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_0 (result i32) - i32.const 0 - else - i32.const 15488 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 + i32.xor + if $if_0 i32.const 40 call $__Znwm local.tee $2 @@ -30243,12 +34343,21 @@ local.get $2 i64.const 0 i64.store offset=32 align=4 - i32.const 15584 + i32.const 24752 local.get $2 i32.store - end ;; $if_1 + i32.const 24656 + i32.const 0 + i32.store + i32.const 24656 + i32.const 24656 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 end ;; $if - i32.const 15584 + i32.const 24752 i32.load local.set $2 local.get $3 @@ -30263,7 +34372,7 @@ local.get $2 i32.load offset=8 i32.lt_u - if $if_2 + if $if_1 local.get $0 local.get $3 i64.load @@ -30278,9 +34387,9 @@ local.get $2 local.get $3 call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + end ;; $if_1 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $3) @@ -30343,11 +34452,11 @@ local.tee $3 call $__ZNSt11logic_errorC2EPKc local.get $3 - i32.const 6956 + i32.const 10944 i32.store local.get $3 - i32.const 5392 - i32.const 51 + i32.const 6424 + i32.const 112 call $___cxa_throw else local.get $2 @@ -30410,6 +34519,7 @@ i32.add local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $0 ) @@ -30450,12 +34560,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 144 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 128 i32.add @@ -30464,7 +34574,7 @@ i32.store local.get $2 i32.const 128 - i32.const 11688 + i32.const 17144 local.get $3 call $_snprintf drop @@ -30476,8 +34586,9 @@ i32.add local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -30487,12 +34598,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 144 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 128 i32.add @@ -30501,7 +34612,7 @@ i32.store local.get $2 i32.const 128 - i32.const 13639 + i32.const 17147 local.get $3 call $_snprintf drop @@ -30513,8 +34624,9 @@ i32.add local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -30535,20 +34647,20 @@ (func $__GLOBAL__sub_I_status_cc (type $8) (local $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const 15588 + global.set $32 + i32.const 24756 i64.const 0 i64.store align=4 - i32.const 15596 + i32.const 24764 i64.const 0 i64.store align=4 local.get $0 - i32.const 16337 + i32.const 25510 i32.store local.get $0 i32.const 0 @@ -30560,12 +34672,12 @@ local.get $0 i64.load align=4 i64.store align=4 - i32.const 15604 + i32.const 24772 i32.const 1 local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 16337 + i32.const 25510 i32.store local.get $0 i32.const 0 @@ -30574,12 +34686,12 @@ local.get $0 i64.load align=4 i64.store align=4 - i32.const 15620 + i32.const 24788 i32.const 2 local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $2) @@ -30591,12 +34703,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -30613,7 +34725,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $5 @@ -30745,7 +34857,7 @@ i32.load offset=8 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $5) @@ -30756,12 +34868,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 if $if (result i32) local.get $0 @@ -30789,7 +34901,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11691 + i32.const 15198 i32.store offset=4 local.get $3 i32.const 116 @@ -30801,7 +34913,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11716 + i32.const 15223 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -30821,7 +34933,7 @@ i32.load offset=40 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $2 local.get $1 i32.store @@ -30838,7 +34950,7 @@ i32.add i32.store offset=8 local.get $3 - global.set $30 + global.set $32 local.get $2 ) @@ -31029,13 +35141,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -31046,7 +35158,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -31083,13 +35195,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -31100,7 +35212,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -31148,7 +35260,7 @@ loop $loop local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.ne if $if local.get $3 @@ -31173,7 +35285,7 @@ i32.load offset=40 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $1 i32.const 0 i32.store @@ -31199,7 +35311,7 @@ local.get $0 i32.store local.get $1 - i32.const 4800 + i32.const 4752 i32.store offset=20 local.get $1 local.get $1 @@ -31268,10 +35380,10 @@ end ;; $loop_0 end ;; $if_1 end ;; $block - i32.const 4808 + i32.const 4760 local.get $3 i32.store - i32.const 4800 + i32.const 4752 local.get $0 i64.load offset=16 i64.store @@ -31287,13 +35399,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $0 else @@ -31304,7 +35416,7 @@ if $if_0 local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq if $if_1 local.get $3 @@ -31372,13 +35484,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if (result i32) - i32.const 4808 + i32.const 4760 i32.load else block $block (result i32) @@ -31389,7 +35501,7 @@ local.get $3 local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block drop @@ -31449,13 +35561,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -31466,7 +35578,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -31485,14 +35597,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 57 + i32.const 118 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 57 + i32.const 118 i32.store offset=4 local.get $2 local.get $0 @@ -31506,13 +35618,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -31523,7 +35635,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -31541,14 +35653,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 57 + i32.const 118 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 57 + i32.const 118 i32.store offset=4 local.get $2 local.get $0 @@ -31567,11 +35679,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) @@ -31596,12 +35708,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $6 local.get $4 i32.store @@ -31619,7 +35731,7 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -36181,9 +40293,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_190 local.tee $4 i32.store @@ -36327,9 +40439,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_196 local.tee $4 i32.store @@ -36492,9 +40604,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_202 local.tee $4 i32.store @@ -36662,9 +40774,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_208 local.tee $4 i32.store @@ -36865,7 +40977,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -36924,9 +41036,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_214 br $block @@ -37066,7 +41178,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -37125,9 +41237,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_222 br $block @@ -37286,7 +41398,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -37344,9 +41456,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_230 i32.store local.get $9 @@ -37509,7 +41621,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -37568,9 +41680,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_238 br $block @@ -41597,7 +45709,7 @@ i32.load local.set $4 local.get $11 - i32.const 6460 + i32.const 7460 i32.store local.get $11 local.get $4 @@ -41644,9 +45756,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -41665,7 +45777,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11803 + i32.const 15310 i32.store offset=4 local.get $11 i32.const 571 @@ -41677,7 +45789,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11845 + i32.const 15352 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -41697,24 +45809,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11803 + i32.const 15310 i32.store offset=4 local.get $1 i32.const 534 @@ -41726,12 +45838,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11845 + i32.const 15352 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11875 + i32.const 15382 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -41740,50 +45852,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 15520 + global.set $32 + i32.const 24688 i32.load8_s i32.eqz if $if - i32.const 15520 + i32.const 24688 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 15520 + i32.const 24688 + i32.const 0 + i32.store + i32.const 24688 + i32.const 24688 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15664 + i32.const 24832 i32.load - i32.const 6580 + i32.const 7580 call $_pthread_equal if $if_1 - i32.const 5832 + i32.const 6816 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11803 + i32.const 15310 i32.store offset=4 local.get $0 i32.const 801 @@ -41795,53 +45915,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11887 + i32.const 15394 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 15512 + i32.const 24680 i32.load8_s i32.eqz if $if_3 - i32.const 15512 + i32.const 24680 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 15512 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 15496 + i32.xor + if $if_4 + i32.const 24664 i64.const 0 i64.store - i32.const 15504 + i32.const 24672 i32.const 0 i32.store - i32.const 62 - i32.const 15496 + i32.const 123 + i32.const 24664 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24680 + i32.const 0 + i32.store + i32.const 24680 + i32.const 24680 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15664 - i32.const 6580 + i32.const 24832 + i32.const 7580 i32.store - i32.const 5832 + i32.const 6816 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15664 + i32.const 24832 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -41900,9 +46023,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -41929,31 +46052,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 12052 + i32.const 15559 i64.load align=1 i64.store align=1 local.get $1 - i32.const 12060 + i32.const 15567 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 12068 + i32.const 15575 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 12076 + i32.const 15583 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 12084 + i32.const 15591 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 12092 + i32.const 15599 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 12100 + i32.const 15607 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -41973,7 +46096,7 @@ i32.load local.set $2 local.get $0 - i32.const 16338 + i32.const 25501 i32.load8_s i32.const 1 i32.and @@ -41983,9 +46106,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $5) @@ -41998,19 +46121,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $3 if $if local.get $0 @@ -42027,7 +46150,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -42037,7 +46160,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $6 local.set $5 local.get $4 @@ -42045,7 +46168,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6460 + i32.const 7460 i32.store local.get $3 local.get $2 @@ -42078,11 +46201,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $3 i32.load8_s offset=16 if $if_0 @@ -42090,7 +46213,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11982 + i32.const 15489 i32.store offset=4 local.get $4 i32.const 373 @@ -42102,7 +46225,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12014 + i32.const 15521 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42115,7 +46238,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -42128,12 +46251,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -42149,7 +46272,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -42185,7 +46308,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12135 + i32.const 15642 i32.store offset=4 local.get $3 i32.const 59 @@ -42197,9 +46320,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12169 + i32.const 15676 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12286 + i32.const 15793 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -42231,13 +46354,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5456 + i32.const 6496 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -42301,7 +46424,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -42314,12 +46437,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -42368,7 +46491,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -42406,7 +46529,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -42485,7 +46608,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -42571,7 +46694,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -42615,17 +46738,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -42789,12 +46912,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -42933,7 +47056,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -43003,7 +47126,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -43559,17 +47682,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -43827,12 +47950,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -43882,7 +48005,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12334 + i32.const 15841 i32.store offset=4 local.get $4 i32.const 507 @@ -43894,7 +48017,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12370 + i32.const 15877 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -43946,7 +48069,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -44028,7 +48151,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $3) @@ -44039,12 +48162,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -44094,7 +48217,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12334 + i32.const 15841 i32.store offset=4 local.get $4 i32.const 516 @@ -44106,7 +48229,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12370 + i32.const 15877 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -44232,7 +48355,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $2) @@ -44325,7 +48448,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $0 local.get $2 i32.load offset=8 @@ -44342,11 +48465,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) return end ;; $if_2 local.get $2 @@ -44415,11 +48538,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $3) @@ -44471,7 +48594,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $4 local.get $1 i32.load offset=8 @@ -44585,9 +48708,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop return end ;; $if_4 @@ -44597,11 +48720,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $6) @@ -44717,18 +48840,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -44785,13 +48908,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 12416 + i32.const 15923 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 12428 + i32.const 15935 local.get $2 select local.set $3 @@ -44803,7 +48926,7 @@ i32.const 2 i32.store local.get $1 - i32.const 12334 + i32.const 15841 i32.store offset=4 local.get $1 i32.const 626 @@ -44815,21 +48938,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12442 + i32.const 15949 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 12455 + i32.const 15962 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12474 + i32.const 15981 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12491 + i32.const 15998 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12504 + i32.const 16011 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12560 + i32.const 16067 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -44844,7 +48967,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -44955,12 +49078,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -45003,7 +49126,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -45126,7 +49249,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -45154,7 +49277,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -45525,12 +49648,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -45570,9 +49693,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $4 @@ -45599,7 +49722,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12568 + i32.const 16075 i32.store offset=4 local.get $2 i32.const 591 @@ -45611,7 +49734,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12603 + i32.const 16110 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -45704,7 +49827,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -45720,7 +49843,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -45730,31 +49853,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 12568 + i32.const 16075 i32.store offset=4 local.get $1 i32.const 190 @@ -45766,18 +49889,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12640 + i32.const 16147 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12707 + i32.const 16214 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $6) @@ -45913,11 +50036,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop i32.const 0 return @@ -45931,11 +50054,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) if $if_2 (result i32) local.get $0 local.get $0 @@ -45956,9 +50079,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -46205,12 +50328,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -46283,7 +50406,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -46296,7 +50419,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -46310,12 +50433,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -46388,7 +50511,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -46401,7 +50524,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -46416,12 +50539,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -46469,7 +50592,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -46639,7 +50762,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -46702,7 +50825,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -46710,7 +50833,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -46724,12 +50847,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -46827,7 +50950,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -46868,7 +50991,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -47027,12 +51150,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -47041,12 +51164,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -47075,9 +51198,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) if $if local.get $0 local.get $2 @@ -47105,19 +51228,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -47134,7 +51257,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -47159,11 +51282,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 local.get $0 i32.load offset=12 @@ -47188,12 +51311,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -47231,9 +51354,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -47273,7 +51396,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -47295,7 +51418,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $2) @@ -47344,11 +51467,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 i32.const 12 i32.add @@ -47398,9 +51521,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.const 1 i32.xor i32.const 1 @@ -47421,12 +51544,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -47453,7 +51576,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -47495,9 +51618,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -47537,7 +51660,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -47558,7 +51681,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -47572,12 +51695,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -47604,7 +51727,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -47644,9 +51767,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -47686,7 +51809,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -47707,7 +51830,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $3) @@ -47719,12 +51842,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -47812,9 +51935,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -47854,7 +51977,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -47879,7 +52002,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -47893,12 +52016,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -47990,9 +52113,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -48032,7 +52155,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -48054,7 +52177,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $6) @@ -48148,6 +52271,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $5) (param $0 i32) (param $1 i32) @@ -48209,12 +52338,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -48229,7 +52358,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $2 i32.const 132 @@ -48241,9 +52370,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12932 + i32.const 16439 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12976 + i32.const 16483 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48264,7 +52393,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $2 i32.const 134 @@ -48276,7 +52405,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13031 + i32.const 16538 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48296,14 +52425,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $3 i32.const 135 @@ -48315,7 +52444,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12901 + i32.const 16408 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48330,7 +52459,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -48351,12 +52480,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -48371,7 +52500,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $3 i32.const 151 @@ -48383,7 +52512,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13121 + i32.const 16628 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48457,7 +52586,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $5 i32.const 164 @@ -48469,15 +52598,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13198 + i32.const 16705 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13248 + i32.const 16755 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -48518,7 +52647,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -48528,12 +52657,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -48546,7 +52675,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $2 i32.const 182 @@ -48558,7 +52687,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12901 + i32.const 16408 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48579,7 +52708,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $2 i32.const 183 @@ -48591,7 +52720,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13121 + i32.const 16628 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48621,7 +52750,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $3 i32.const 184 @@ -48633,7 +52762,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13153 + i32.const 16660 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48669,7 +52798,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -48678,12 +52807,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -48694,7 +52823,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12852 + i32.const 16359 i32.store offset=4 local.get $1 i32.const 189 @@ -48706,7 +52835,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 13121 + i32.const 16628 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -48727,11 +52856,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -48746,12 +52875,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -48761,7 +52890,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 12436 + i32.const 15943 local.get $2 call $_vsnprintf local.tee $4 @@ -48773,7 +52902,7 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -48794,7 +52923,7 @@ i32.store local.get $3 local.get $5 - i32.const 12436 + i32.const 15943 local.get $2 call $_vsnprintf local.tee $1 @@ -48816,19 +52945,19 @@ call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -48842,7 +52971,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $5) @@ -48871,7 +53000,7 @@ i32.const 241 return end ;; $if - i32.const 6540 + i32.const 7540 i32.load local.set $13 local.get $0 @@ -48881,18 +53010,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6568 + i32.const 7568 i32.load local.set $4 - i32.const 6548 + i32.const 7548 i32.load local.set $11 - i32.const 6552 + i32.const 7552 i32.load local.set $12 - i32.const 6556 + i32.const 7556 i32.load - i32.const 6524 + i32.const 7524 i32.load i32.add local.tee $8 @@ -49105,7 +53234,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.ge_u if $if_7 @@ -49137,7 +53266,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.lt_u if $if_9 (result i32) @@ -49185,17 +53314,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -49318,7 +53447,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -49331,17 +53460,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 13310 + i32.const 16817 i32.store offset=4 local.get $0 i32.const 47 @@ -49353,13 +53482,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 13349 + i32.const 16856 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -49367,12 +53496,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -49384,7 +53513,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15732 + i32.const 24900 i32.const 0 local.get $0 i32.sub @@ -49393,10 +53522,137 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $___stdout_write (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.const 10 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 + local.get $0 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 + local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 local.get $0 ) + (func $___stdio_seek (type $12) + (param $0 i32) + (param $1 i64) + (param $2 i32) + (result i64) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.tee $4 + local.get $0 + i32.load offset=60 + i32.store + local.get $4 + local.get $1 + i64.const 32 + i64.shr_u + i64.store32 offset=4 + local.get $4 + local.get $1 + i64.store32 offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $4 + local.get $2 + i32.store offset=16 + i32.const 140 + local.get $4 + call $___syscall140 + local.tee $0 + i32.const -4096 + i32.gt_u + if $if (result i32) + i32.const 24900 + i32.const 0 + local.get $0 + i32.sub + i32.store + i32.const -1 + else + local.get $0 + end ;; $if + i32.const 0 + i32.lt_s + if $if_0 (result i64) + local.get $3 + i64.const -1 + i64.store + i64.const -1 + else + local.get $3 + i64.load + end ;; $if_0 + local.set $1 + local.get $3 + global.set $32 + local.get $1 + ) + + (func $___errno_location (type $14) + (result i32) + i32.const 24900 + ) + (func $___stdio_write (type $5) (param $0 i32) (param $1 i32) @@ -49409,12 +53665,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 32 i32.add @@ -49465,7 +53721,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15732 + i32.const 24900 i32.const 0 local.get $1 i32.sub @@ -49542,7 +53798,7 @@ i32.const -4096 i32.gt_u if $if_1 - i32.const 15732 + i32.const 24900 i32.const 0 local.get $1 i32.sub @@ -49602,135 +53858,89 @@ i32.store offset=20 end ;; $block local.get $6 - global.set $30 + global.set $32 local.get $2 ) - (func $___stdio_seek (type $12) - (param $0 i32) - (param $1 i64) - (param $2 i32) - (result i64) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - local.get $0 - i32.load offset=60 - i32.store - local.get $4 - local.get $1 - i64.const 32 - i64.shr_u - i64.store32 offset=4 - local.get $4 - local.get $1 - i64.store32 offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $4 - local.get $2 - i32.store offset=16 - i32.const 140 - local.get $4 - call $___syscall140 - local.tee $0 - i32.const -4096 - i32.gt_u - if $if (result i32) - i32.const 15732 - i32.const 0 - local.get $0 - i32.sub - i32.store - i32.const -1 - else - local.get $0 - end ;; $if - i32.const 0 - i32.lt_s - if $if_0 (result i64) - local.get $3 - i64.const -1 - i64.store - i64.const -1 - else - local.get $3 - i64.load - end ;; $if_0 - local.set $1 - local.get $3 - global.set $30 - local.get $1 - ) - - (func $___errno_location (type $14) - (result i32) - i32.const 15732 - ) - - (func $___stdout_write (type $5) + (func $_strlen (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $3 - i32.const 16 - i32.add - local.set $4 - local.get $0 - i32.const 9 - i32.store offset=36 - local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 - local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $5) @@ -49784,6 +53994,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $6) (param $0 i32) (param $1 i32) @@ -49906,6 +54243,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -49914,18 +54278,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5152 + i32.const 5104 i32.const 144 call $_memcpy drop @@ -49939,7 +54303,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15732 + i32.const 24900 i32.const 75 i32.store i32.const -1 @@ -50004,7 +54368,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -50050,12 +54414,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -50087,13 +54451,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 13533 + i32.const 17040 local.set $18 i32.const 1 else - i32.const 13536 - i32.const 13539 - i32.const 13534 + i32.const 17043 + i32.const 17046 + i32.const 17041 local.get $4 i32.const 1 i32.and @@ -50116,8 +54480,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 13560 - i32.const 13564 + i32.const 17067 + i32.const 17071 local.get $5 i32.const 32 i32.and @@ -50125,8 +54489,8 @@ i32.ne local.tee $3 select - i32.const 13552 - i32.const 13556 + i32.const 17059 + i32.const 17063 local.get $3 select local.get $1 @@ -50144,15 +54508,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -50160,7 +54524,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -50418,11 +54782,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -50430,14 +54794,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -50450,11 +54814,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -50462,7 +54826,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -51369,11 +55733,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -51381,7 +55745,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -51450,7 +55814,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -51474,9 +55838,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 13568 + i32.const 19849 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -51523,7 +55887,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -51553,7 +55917,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -51621,7 +55985,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -51633,9 +55997,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 13568 + i32.const 19849 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -51672,7 +56036,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -51696,13 +56060,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -51711,13 +56075,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -51760,12 +56124,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -51876,9 +56240,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop local.get $1 i32.const -1 @@ -51921,7 +56285,7 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -51953,12 +56317,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -52007,7 +56371,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15732 + i32.const 24900 i32.const 75 i32.store i32.const -1 @@ -52097,7 +56461,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -52310,7 +56674,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -52346,7 +56710,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -52536,7 +56900,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -52723,7 +57087,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 13516 + i32.const 17023 local.set $8 br $block_14 end ;; $block_25 @@ -52739,13 +57103,13 @@ i64.sub local.tee $25 i64.store - i32.const 13516 + i32.const 17023 local.set $8 i32.const 1 else - i32.const 13517 - i32.const 13518 - i32.const 13516 + i32.const 17024 + i32.const 17025 + i32.const 17023 local.get $7 i32.const 1 i32.and @@ -52769,7 +57133,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 13516 + i32.const 17023 local.set $8 br $block_16 end ;; $block_23 @@ -52785,7 +57149,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13516 + i32.const 17023 local.set $8 local.get $18 local.set $1 @@ -52794,7 +57158,7 @@ local.get $10 i32.load local.tee $5 - i32.const 13526 + i32.const 17033 local.get $5 select local.tee $6 @@ -52814,7 +57178,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13516 + i32.const 17023 local.set $8 local.get $1 local.get $6 @@ -52850,7 +57214,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -52865,7 +57229,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -52875,7 +57239,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13516 + i32.const 17023 local.set $8 local.get $18 local.set $1 @@ -52903,11 +57267,11 @@ local.tee $8 select local.set $12 - i32.const 13516 + i32.const 17023 local.get $6 i32.const 4 i32.shr_u - i32.const 13516 + i32.const 17023 i32.add local.get $8 select @@ -52973,7 +57337,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -53004,7 +57368,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -53067,7 +57431,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -53100,11 +57464,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -53112,17 +57476,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -53130,7 +57494,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -53162,7 +57526,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -53203,11 +57567,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $2) + (func $_out (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -53224,7 +57588,7 @@ end ;; $if ) - (func $_getint_280 (type $4) + (func $_getint (type $4) (param $0 i32) (result i32) (local $1 i32) @@ -53266,7 +57630,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $2) + (func $_pop_arg (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -53490,13 +57854,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 201 - call_indirect $26 (type $3) + i32.const 397 + call_indirect $28 (type $3) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -53532,7 +57896,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -53564,7 +57928,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -53637,19 +58001,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -53688,7 +58052,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -53705,10 +58069,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $6) @@ -53742,7 +58106,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6768 + i32.const 7768 i32.load i32.load i32.eqz @@ -53759,7 +58123,7 @@ i32.const 1 br $block else - i32.const 15732 + i32.const 24900 i32.const 84 i32.store i32.const -1 @@ -53864,7 +58228,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15732 + i32.const 24900 i32.const 84 i32.store i32.const -1 @@ -53914,9 +58278,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop br $block end ;; $if_0 @@ -53961,9 +58325,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $3 i32.lt_u br_if $block @@ -54044,76 +58408,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $5) (param $0 i32) (param $1 i32) @@ -54148,176 +58442,26 @@ local.get $2 ) - (func $_strlen (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $16) + (func $_fprintf (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 15078 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -54325,12 +58469,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -54380,9 +58524,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.const 1 i32.eq if $if_2 (result i32) @@ -54394,29 +58538,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 11568 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $4) @@ -54440,10 +58562,10 @@ end ;; $block local.set $0 else - i32.const 6576 + i32.const 7572 i32.load if $if_1 (result i32) - i32.const 6576 + i32.const 7572 i32.load call $_fflush else @@ -54451,9 +58573,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15736 + i32.const 24904 call $___lock - i32.const 15744 + i32.const 24912 i32.load local.tee $1 end ;; $block_0 @@ -54487,7 +58609,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15736 + i32.const 24904 call $___unlock end ;; $if local.get $0 @@ -54516,9 +58638,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop local.get $0 i32.load offset=20 @@ -54546,9 +58668,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -54570,6 +58692,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $4) (param $0 i32) (result i32) @@ -54595,17 +58781,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15748 + i32.const 24916 i32.load local.tee $6 i32.const 16 @@ -54637,7 +58823,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.tee $3 i32.load offset=8 @@ -54650,7 +58836,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15748 + i32.const 24916 local.get $6 i32.const 1 local.get $0 @@ -54660,7 +58846,7 @@ i32.and i32.store else - i32.const 15764 + i32.const 24932 i32.load local.get $4 i32.gt_u @@ -54700,12 +58886,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15756 + i32.const 24924 i32.load local.tee $13 i32.gt_u @@ -54784,7 +58970,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.tee $1 i32.load offset=8 @@ -54797,7 +58983,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15748 + i32.const 24916 local.get $6 i32.const 1 local.get $0 @@ -54808,7 +58994,7 @@ local.tee $8 i32.store else - i32.const 15764 + i32.const 24932 i32.load local.get $2 i32.gt_u @@ -54858,7 +59044,7 @@ i32.store local.get $13 if $if_9 - i32.const 15768 + i32.const 24936 i32.load local.set $10 local.get $13 @@ -54867,7 +59053,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.set $2 local.get $8 @@ -54877,7 +59063,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15764 + i32.const 24932 i32.load local.get $2 i32.const 8 @@ -54895,7 +59081,7 @@ local.set $4 end ;; $if_11 else - i32.const 15748 + i32.const 24916 local.get $0 local.get $8 i32.or @@ -54920,18 +59106,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15756 + i32.const 24924 local.get $6 i32.store - i32.const 15768 + i32.const 24936 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 15752 + i32.const 24920 i32.load local.tee $11 if $if_12 (result i32) @@ -54994,7 +59180,7 @@ i32.add i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add i32.load local.tee $0 @@ -55044,7 +59230,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15764 + i32.const 24932 i32.load local.tee $7 local.get $9 @@ -55168,7 +59354,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.tee $0 i32.load @@ -55181,7 +59367,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15752 + i32.const 24920 local.get $11 i32.const 1 local.get $1 @@ -55193,7 +59379,7 @@ br $block_2 end ;; $if_25 else - i32.const 15764 + i32.const 24932 i32.load local.get $18 i32.gt_u @@ -55218,7 +59404,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15764 + i32.const 24932 i32.load local.tee $0 local.get $3 @@ -55251,7 +59437,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15764 + i32.const 24932 i32.load local.get $0 i32.gt_u @@ -55307,7 +59493,7 @@ i32.store local.get $13 if $if_33 - i32.const 15768 + i32.const 24936 i32.load local.set $4 local.get $13 @@ -55316,7 +59502,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.set $3 local.get $6 @@ -55326,7 +59512,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15764 + i32.const 24932 i32.load local.get $3 i32.const 8 @@ -55344,7 +59530,7 @@ local.set $12 end ;; $if_35 else - i32.const 15748 + i32.const 24916 local.get $0 local.get $6 i32.or @@ -55369,15 +59555,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15756 + i32.const 24924 local.get $10 i32.store - i32.const 15768 + i32.const 24936 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -55403,7 +59589,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15752 + i32.const 24920 i32.load local.tee $4 if $if_37 (result i32) @@ -55483,7 +59669,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add i32.load local.tee $0 @@ -55648,7 +59834,7 @@ i32.add i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add i32.load local.set $0 @@ -55711,13 +59897,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15756 + i32.const 24924 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15764 + i32.const 24932 i32.load local.tee $12 local.get $2 @@ -55841,7 +60027,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.tee $0 i32.load @@ -55854,7 +60040,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15752 + i32.const 24920 local.get $4 i32.const 1 local.get $3 @@ -55867,7 +60053,7 @@ br $block_9 end ;; $if_60 else - i32.const 15764 + i32.const 24932 i32.load local.get $8 i32.gt_u @@ -55896,7 +60082,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15764 + i32.const 24932 i32.load local.tee $0 local.get $13 @@ -55929,7 +60115,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15764 + i32.const 24932 i32.load local.get $0 i32.gt_u @@ -56003,10 +60189,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.set $3 - i32.const 15748 + i32.const 24916 i32.load local.tee $1 i32.const 1 @@ -56015,7 +60201,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15764 + i32.const 24932 i32.load local.get $3 i32.const 8 @@ -56033,7 +60219,7 @@ local.set $11 end ;; $if_71 else - i32.const 15748 + i32.const 24916 local.get $0 local.get $1 i32.or @@ -56129,7 +60315,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.set $3 local.get $5 @@ -56149,7 +60335,7 @@ i32.and i32.eqz if $if_74 - i32.const 15752 + i32.const 24920 local.get $0 local.get $1 i32.or @@ -56230,7 +60416,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15764 + i32.const 24932 i32.load local.get $4 i32.gt_u @@ -56253,7 +60439,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15764 + i32.const 24932 i32.load local.tee $0 local.get $6 @@ -56286,7 +60472,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -56306,13 +60492,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15756 + i32.const 24924 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15768 + i32.const 24936 i32.load local.set $0 local.get $3 @@ -56322,13 +60508,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15768 + i32.const 24936 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15756 + i32.const 24924 local.get $2 i32.store local.get $1 @@ -56347,10 +60533,10 @@ i32.or i32.store offset=4 else - i32.const 15756 + i32.const 24924 i32.const 0 i32.store - i32.const 15768 + i32.const 24936 i32.const 0 i32.store local.get $0 @@ -56371,13 +60557,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15760 + i32.const 24928 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15760 + i32.const 24928 local.get $12 local.get $11 i32.sub @@ -56385,31 +60571,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 16220 + i32.const 25388 i32.load if $if_83 (result i32) - i32.const 16228 + i32.const 25396 i32.load else - i32.const 16228 + i32.const 25396 i32.const 4096 i32.store - i32.const 16224 + i32.const 25392 i32.const 4096 i32.store - i32.const 16232 + i32.const 25400 i32.const -1 i32.store - i32.const 16236 + i32.const 25404 i32.const -1 i32.store - i32.const 16240 + i32.const 25408 i32.const 0 i32.store - i32.const 16192 + i32.const 25360 i32.const 0 i32.store - i32.const 16220 + i32.const 25388 local.get $17 i32.const -16 i32.and @@ -56436,11 +60622,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 16188 + i32.const 25356 i32.load local.tee $2 if $if_85 - i32.const 16180 + i32.const 25348 i32.load local.tee $1 local.get $8 @@ -56462,7 +60648,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 16192 + i32.const 25360 i32.load i32.const 4 i32.and @@ -56473,12 +60659,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15772 + i32.const 24940 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 16196 + i32.const 25364 local.set $2 loop $loop_5 block $block_20 @@ -56541,11 +60727,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 16180 + i32.const 25348 i32.load local.tee $4 local.get $0 - i32.const 16224 + i32.const 25392 i32.load local.tee $2 i32.const -1 @@ -56576,7 +60762,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 16188 + i32.const 25356 i32.load local.tee $1 if $if_92 @@ -56634,7 +60820,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 16228 + i32.const 25396 i32.load local.tee $1 local.get $6 @@ -56671,8 +60857,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 16192 - i32.const 16192 + i32.const 25360 + i32.const 25360 i32.load i32.const 4 i32.or @@ -56727,28 +60913,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 16180 - i32.const 16180 + i32.const 25348 + i32.const 25348 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 16184 + i32.const 25352 i32.load i32.gt_u if $if_98 - i32.const 16184 + i32.const 25352 local.get $1 i32.store end ;; $if_98 - i32.const 15772 + i32.const 24940 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 16196 + i32.const 25364 local.set $2 block $block_22 block $block_23 @@ -56806,7 +60992,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15760 + i32.const 24928 i32.load local.get $3 i32.add @@ -56814,10 +61000,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15772 + i32.const 24940 local.get $2 i32.store - i32.const 15760 + i32.const 24928 local.get $1 i32.store local.get $2 @@ -56830,8 +61016,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15776 - i32.const 16236 + i32.const 24944 + i32.const 25404 i32.load i32.store br $block_21 @@ -56839,12 +61025,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15764 + i32.const 24932 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15764 + i32.const 24932 local.get $0 i32.store local.get $0 @@ -56854,7 +61040,7 @@ local.get $3 i32.add local.set $1 - i32.const 16196 + i32.const 25364 local.set $8 block $block_24 block $block_25 @@ -56935,14 +61121,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15760 - i32.const 15760 + i32.const 24928 + i32.const 24928 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15772 + i32.const 24940 local.get $5 i32.store local.get $5 @@ -56952,19 +61138,19 @@ i32.store offset=4 else block $block_26 - i32.const 15768 + i32.const 24936 i32.load local.get $3 i32.eq if $if_105 - i32.const 15756 - i32.const 15756 + i32.const 24924 + i32.const 24924 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15768 + i32.const 24936 local.get $5 i32.store local.get $5 @@ -57009,7 +61195,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.tee $0 i32.ne @@ -57033,8 +61219,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15748 - i32.const 15748 + i32.const 24916 + i32.const 24916 i32.load i32.const 1 local.get $1 @@ -57192,7 +61378,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.tee $0 i32.load @@ -57205,8 +61391,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15752 - i32.const 15752 + i32.const 24920 + i32.const 24920 i32.load i32.const 1 local.get $1 @@ -57218,7 +61404,7 @@ br $block_27 end ;; $block_32 else - i32.const 15764 + i32.const 24932 i32.load local.get $8 i32.gt_u @@ -57243,7 +61429,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15764 + i32.const 24932 i32.load local.tee $0 local.get $16 @@ -57277,7 +61463,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15764 + i32.const 24932 i32.load local.get $0 i32.gt_u @@ -57329,10 +61515,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.set $2 - i32.const 15748 + i32.const 24916 i32.load local.tee $1 i32.const 1 @@ -57342,7 +61528,7 @@ i32.and if $if_128 block $block_33 - i32.const 15764 + i32.const 24932 i32.load local.get $2 i32.const 8 @@ -57361,7 +61547,7 @@ call $_abort end ;; $block_33 else - i32.const 15748 + i32.const 24916 local.get $0 local.get $1 i32.or @@ -57457,7 +61643,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.set $2 local.get $5 @@ -57469,7 +61655,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15752 + i32.const 24920 i32.load local.tee $1 i32.const 1 @@ -57479,7 +61665,7 @@ i32.and i32.eqz if $if_132 - i32.const 15752 + i32.const 24920 local.get $0 local.get $1 i32.or @@ -57560,7 +61746,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15764 + i32.const 24932 i32.load local.get $2 i32.gt_u @@ -57583,7 +61769,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15764 + i32.const 24932 i32.load local.tee $0 local.get $9 @@ -57616,14 +61802,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $30 + global.set $32 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 16196 + i32.const 25364 local.set $2 loop $loop_10 block $block_35 @@ -57640,764 +61826,2689 @@ local.tee $7 local.get $6 i32.gt_u - br_if $block_35 - end ;; $if_138 - local.get $2 - i32.load offset=8 - local.set $2 - br $loop_10 - end ;; $block_35 - end ;; $loop_10 - i32.const 15772 - i32.const 0 + br_if $block_35 + end ;; $if_138 + local.get $2 + i32.load offset=8 + local.set $2 + br $loop_10 + end ;; $block_35 + end ;; $loop_10 + i32.const 24940 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 24928 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 24944 + i32.const 25404 + i32.load + i32.store + local.get $6 + i32.const 0 + local.get $7 + i32.const -47 + i32.add + local.tee $2 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.get $2 + i32.add + local.tee $1 + local.get $1 + local.get $6 + i32.const 16 + i32.add + i32.lt_u + select + local.tee $2 + i32.const 27 + i32.store offset=4 + local.get $2 + i32.const 25364 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + i32.const 25372 + i64.load align=4 + i64.store offset=16 align=4 + i32.const 25364 + local.get $0 + i32.store + i32.const 25368 + local.get $3 + i32.store + i32.const 25376 + i32.const 0 + i32.store + i32.const 25372 + local.get $2 + i32.const 8 + i32.add + i32.store + local.get $2 + i32.const 24 + i32.add + local.set $0 + loop $loop_11 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 7 + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $7 + i32.lt_u + if $if_139 + local.get $1 + local.set $0 + br $loop_11 + end ;; $if_139 + end ;; $loop_11 + local.get $2 + local.get $6 + i32.ne + if $if_140 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $6 + local.get $2 + local.get $6 + i32.sub + local.tee $4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $4 + i32.store + local.get $4 + i32.const 3 + i32.shr_u + local.set $0 + local.get $4 + i32.const 256 + i32.lt_u + if $if_141 + local.get $0 + i32.const 3 + i32.shl + i32.const 24956 + i32.add + local.set $2 + i32.const 24916 + i32.load + local.tee $1 + i32.const 1 + local.get $0 + i32.shl + local.tee $0 + i32.and + if $if_142 + i32.const 24932 + i32.load + local.get $2 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $0 + i32.gt_u + if $if_143 + call $_abort + else + local.get $1 + local.set $22 + local.get $0 + local.set $5 + end ;; $if_143 + else + i32.const 24916 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + i32.const 8 + i32.add + local.set $22 + local.get $2 + local.set $5 + end ;; $if_142 + local.get $22 + local.get $6 + i32.store + local.get $5 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $5 + i32.store offset=8 + local.get $6 + local.get $2 + i32.store offset=12 + br $block_21 + end ;; $if_141 + local.get $4 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_144 (result i32) + local.get $4 + i32.const 16777215 + i32.gt_u + if $if_145 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $2 + i32.shl + local.tee $0 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $3 + local.get $4 + i32.const 14 + local.get $0 + local.get $3 + i32.shl + local.tee $1 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.tee $0 + local.get $2 + local.get $3 + i32.or + i32.or + i32.sub + local.get $1 + local.get $0 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_145 + else + i32.const 0 + end ;; $if_144 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25220 + i32.add + local.set $2 + local.get $6 + local.get $3 + i32.store offset=28 + local.get $6 + i32.const 0 + i32.store offset=20 + local.get $6 + i32.const 0 + i32.store offset=16 + i32.const 24920 + i32.load + local.tee $1 + i32.const 1 + local.get $3 + i32.shl + local.tee $0 + i32.and + i32.eqz + if $if_146 + i32.const 24920 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + local.get $6 + i32.store + local.get $6 + local.get $2 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_146 + local.get $2 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_147 + local.get $0 + local.set $10 + else + block $block_36 + local.get $4 + i32.const 0 + i32.const 25 + local.get $3 + i32.const 1 + i32.shr_u + i32.sub + local.get $3 + i32.const 31 + i32.eq + select + i32.shl + local.set $2 + loop $loop_12 + local.get $0 + i32.const 16 + i32.add + local.get $2 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.tee $1 + if $if_148 + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_149 + local.get $1 + local.set $10 + br $block_36 + else + local.get $1 + local.set $0 + br $loop_12 + end ;; $if_149 + unreachable + end ;; $if_148 + end ;; $loop_12 + i32.const 24932 + i32.load + local.get $3 + i32.gt_u + if $if_150 + call $_abort + else + local.get $3 + local.get $6 + i32.store + local.get $6 + local.get $0 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_150 + end ;; $block_36 + end ;; $if_147 + i32.const 24932 + i32.load + local.tee $0 + local.get $10 + i32.le_u + local.get $0 + local.get $10 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_151 + local.get $0 + local.get $6 + i32.store offset=12 + local.get $10 + local.get $6 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=8 + local.get $6 + local.get $10 + i32.store offset=12 + local.get $6 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_151 + end ;; $if_140 + end ;; $block_21 + else + i32.const 24932 + i32.load + local.tee $1 + i32.eqz + local.get $0 + local.get $1 + i32.lt_u + i32.or + if $if_152 + i32.const 24932 local.get $0 - i32.const 8 + i32.store + end ;; $if_152 + i32.const 25364 + local.get $0 + i32.store + i32.const 25368 + local.get $3 + i32.store + i32.const 25376 + i32.const 0 + i32.store + i32.const 24952 + i32.const 25388 + i32.load + i32.store + i32.const 24948 + i32.const -1 + i32.store + i32.const 24968 + i32.const 24956 + i32.store + i32.const 24964 + i32.const 24956 + i32.store + i32.const 24976 + i32.const 24964 + i32.store + i32.const 24972 + i32.const 24964 + i32.store + i32.const 24984 + i32.const 24972 + i32.store + i32.const 24980 + i32.const 24972 + i32.store + i32.const 24992 + i32.const 24980 + i32.store + i32.const 24988 + i32.const 24980 + i32.store + i32.const 25000 + i32.const 24988 + i32.store + i32.const 24996 + i32.const 24988 + i32.store + i32.const 25008 + i32.const 24996 + i32.store + i32.const 25004 + i32.const 24996 + i32.store + i32.const 25016 + i32.const 25004 + i32.store + i32.const 25012 + i32.const 25004 + i32.store + i32.const 25024 + i32.const 25012 + i32.store + i32.const 25020 + i32.const 25012 + i32.store + i32.const 25032 + i32.const 25020 + i32.store + i32.const 25028 + i32.const 25020 + i32.store + i32.const 25040 + i32.const 25028 + i32.store + i32.const 25036 + i32.const 25028 + i32.store + i32.const 25048 + i32.const 25036 + i32.store + i32.const 25044 + i32.const 25036 + i32.store + i32.const 25056 + i32.const 25044 + i32.store + i32.const 25052 + i32.const 25044 + i32.store + i32.const 25064 + i32.const 25052 + i32.store + i32.const 25060 + i32.const 25052 + i32.store + i32.const 25072 + i32.const 25060 + i32.store + i32.const 25068 + i32.const 25060 + i32.store + i32.const 25080 + i32.const 25068 + i32.store + i32.const 25076 + i32.const 25068 + i32.store + i32.const 25088 + i32.const 25076 + i32.store + i32.const 25084 + i32.const 25076 + i32.store + i32.const 25096 + i32.const 25084 + i32.store + i32.const 25092 + i32.const 25084 + i32.store + i32.const 25104 + i32.const 25092 + i32.store + i32.const 25100 + i32.const 25092 + i32.store + i32.const 25112 + i32.const 25100 + i32.store + i32.const 25108 + i32.const 25100 + i32.store + i32.const 25120 + i32.const 25108 + i32.store + i32.const 25116 + i32.const 25108 + i32.store + i32.const 25128 + i32.const 25116 + i32.store + i32.const 25124 + i32.const 25116 + i32.store + i32.const 25136 + i32.const 25124 + i32.store + i32.const 25132 + i32.const 25124 + i32.store + i32.const 25144 + i32.const 25132 + i32.store + i32.const 25140 + i32.const 25132 + i32.store + i32.const 25152 + i32.const 25140 + i32.store + i32.const 25148 + i32.const 25140 + i32.store + i32.const 25160 + i32.const 25148 + i32.store + i32.const 25156 + i32.const 25148 + i32.store + i32.const 25168 + i32.const 25156 + i32.store + i32.const 25164 + i32.const 25156 + i32.store + i32.const 25176 + i32.const 25164 + i32.store + i32.const 25172 + i32.const 25164 + i32.store + i32.const 25184 + i32.const 25172 + i32.store + i32.const 25180 + i32.const 25172 + i32.store + i32.const 25192 + i32.const 25180 + i32.store + i32.const 25188 + i32.const 25180 + i32.store + i32.const 25200 + i32.const 25188 + i32.store + i32.const 25196 + i32.const 25188 + i32.store + i32.const 25208 + i32.const 25196 + i32.store + i32.const 25204 + i32.const 25196 + i32.store + i32.const 25216 + i32.const 25204 + i32.store + i32.const 25212 + i32.const 25204 + i32.store + i32.const 24940 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 24928 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 24944 + i32.const 25404 + i32.load + i32.store + end ;; $if_99 + i32.const 24928 + i32.load + local.tee $0 + local.get $11 + i32.gt_u + if $if_153 + i32.const 24928 + local.get $0 + local.get $11 + i32.sub + local.tee $3 + i32.store + br $block_14 + end ;; $if_153 + end ;; $block_15 + i32.const 24900 + i32.const 12 + i32.store + br $block_12 + end ;; $block_14 + i32.const 24940 + i32.const 24940 + i32.load + local.tee $0 + local.get $11 + i32.add + local.tee $1 + i32.store + local.get $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.const 3 + i32.or + i32.store offset=4 + end ;; $block_13 + local.get $17 + global.set $32 + local.get $0 + i32.const 8 + i32.add + return + end ;; $block_12 + local.get $17 + global.set $32 + i32.const 0 + ) + + (func $_free (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + local.get $0 + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.const -8 + i32.add + local.tee $5 + i32.const 24932 + i32.load + local.tee $11 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $0 + i32.const 3 + i32.and + local.tee $12 + i32.const 1 + i32.eq + if $if_1 + call $_abort + end ;; $if_1 + local.get $5 + local.get $0 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.set $7 + local.get $0 + i32.const 1 + i32.and + if $if_2 + local.get $5 + local.tee $4 + local.set $3 + local.get $2 + local.set $1 + else + block $block + local.get $5 + i32.load + local.set $10 + local.get $12 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $5 + local.get $10 + i32.sub + local.tee $0 + local.get $11 + i32.lt_u + if $if_4 + call $_abort + end ;; $if_4 + local.get $2 + local.get $10 + i32.add + local.set $5 + i32.const 24936 + i32.load + local.get $0 + i32.eq + if $if_5 + local.get $7 + i32.load offset=4 + local.tee $4 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_6 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_6 + i32.const 24924 + local.get $5 + i32.store + local.get $7 + local.get $4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $5 + i32.add + local.get $5 + i32.store + return + end ;; $if_5 + local.get $10 + i32.const 3 + i32.shr_u + local.set $2 + local.get $10 + i32.const 256 + i32.lt_u + if $if_7 + local.get $0 + i32.load offset=12 + local.set $1 + local.get $0 + i32.load offset=8 + local.tee $3 + local.get $2 + i32.const 3 + i32.shl + i32.const 24956 + i32.add + local.tee $4 + i32.ne + if $if_8 + local.get $11 + local.get $3 + i32.gt_u + if $if_9 + call $_abort + end ;; $if_9 + local.get $0 + local.get $3 + i32.load offset=12 + i32.ne + if $if_10 + call $_abort + end ;; $if_10 + end ;; $if_8 + local.get $1 + local.get $3 + i32.eq + if $if_11 + i32.const 24916 + i32.const 24916 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_11 + local.get $1 + local.get $4 + i32.eq + if $if_12 + local.get $1 + i32.const 8 + i32.add + local.set $6 + else + local.get $11 + local.get $1 + i32.gt_u + if $if_13 + call $_abort + end ;; $if_13 + local.get $1 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_14 + local.get $4 + local.set $6 + else + call $_abort + end ;; $if_14 + end ;; $if_12 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $6 + local.get $3 + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_7 + local.get $0 + i32.load offset=24 + local.set $13 + local.get $0 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.eq + if $if_15 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.const 4 + i32.add + local.tee $10 + i32.load + local.tee $2 + if $if_16 + local.get $10 + local.set $6 + else + local.get $6 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + end ;; $if_16 + loop $loop + block $block_1 + local.get $2 + i32.const 20 i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.tee $1 + local.tee $10 + i32.load + local.tee $12 + i32.eqz + if $if_17 + local.get $2 + i32.const 16 + i32.add + local.tee $10 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_17 + local.get $10 + local.set $6 + local.get $12 + local.set $2 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $6 + i32.gt_u + if $if_18 + call $_abort + else + local.get $6 + i32.const 0 + i32.store + local.get $2 + local.set $8 + end ;; $if_18 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.gt_u + if $if_19 + call $_abort + end ;; $if_19 + local.get $0 + local.get $6 + i32.load offset=12 + i32.ne + if $if_20 + call $_abort + end ;; $if_20 + local.get $2 + i32.load offset=8 + local.get $0 + i32.eq + if $if_21 + local.get $6 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $6 + i32.store offset=8 + local.get $2 + local.set $8 + else + call $_abort + end ;; $if_21 + end ;; $if_15 + local.get $13 + if $if_22 + local.get $0 + i32.load offset=28 + local.tee $2 + i32.const 2 + i32.shl + i32.const 25220 + i32.add + local.tee $6 + i32.load + local.get $0 + i32.eq + if $if_23 + local.get $6 + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_24 + i32.const 24920 + i32.const 24920 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_24 + else + i32.const 24932 + i32.load + local.get $13 + i32.gt_u + if $if_25 + call $_abort + else + local.get $13 + i32.const 16 + i32.add + local.tee $2 + local.get $13 + i32.const 20 + i32.add + local.get $2 + i32.load + local.get $0 + i32.eq + select + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_26 local.get $0 - i32.add local.tee $4 - i32.store - i32.const 15760 - local.get $3 - i32.const -40 - i32.add - local.tee $2 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_26 + end ;; $if_25 + end ;; $if_23 + i32.const 24932 + i32.load + local.tee $6 + local.get $8 + i32.gt_u + if $if_27 + call $_abort + end ;; $if_27 + local.get $8 + local.get $13 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $2 + if $if_28 + local.get $6 + local.get $2 + i32.gt_u + if $if_29 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=16 + local.get $2 + local.get $8 + i32.store offset=24 + end ;; $if_29 + end ;; $if_28 + local.get $0 + i32.load offset=20 + local.tee $2 + if $if_30 + i32.const 24932 + i32.load + local.get $2 + i32.gt_u + if $if_31 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=20 + local.get $2 + local.get $8 + i32.store offset=24 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_31 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_30 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_22 + end ;; $block + end ;; $if_2 + local.get $4 + local.get $7 + i32.ge_u + if $if_32 + call $_abort + end ;; $if_32 + local.get $7 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.and + i32.eqz + if $if_33 + call $_abort + end ;; $if_33 + local.get $0 + i32.const 2 + i32.and + if $if_34 + local.get $7 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $3 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $4 + i32.add + local.get $1 + i32.store + else + i32.const 24940 + i32.load + local.get $7 + i32.eq + if $if_35 + i32.const 24928 + i32.const 24928 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 24940 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $3 + i32.const 24936 + i32.load + i32.ne + if $if_36 + return + end ;; $if_36 + i32.const 24936 + i32.const 0 + i32.store + i32.const 24924 + i32.const 0 + i32.store + return + end ;; $if_35 + i32.const 24936 + i32.load + local.get $7 + i32.eq + if $if_37 + i32.const 24924 + i32.const 24924 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 24936 + local.get $4 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $4 + i32.add + local.get $0 + i32.store + return + end ;; $if_37 + local.get $0 + i32.const -8 + i32.and + local.get $1 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $6 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_38 + local.get $7 + i32.load offset=12 + local.set $1 + local.get $7 + i32.load offset=8 + local.tee $2 + local.get $6 + i32.const 3 + i32.shl + i32.const 24956 + i32.add + local.tee $0 + i32.ne + if $if_39 + i32.const 24932 + i32.load + local.get $2 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $7 + local.get $2 + i32.load offset=12 + i32.ne + if $if_41 + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $1 + local.get $2 + i32.eq + if $if_42 + i32.const 24916 + i32.const 24916 + i32.load + i32.const 1 + local.get $6 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_42 + local.get $0 + local.get $1 + i32.eq + if $if_43 + local.get $1 + i32.const 8 + i32.add + local.set $16 + else + i32.const 24932 + i32.load + local.get $1 + i32.gt_u + if $if_44 + call $_abort + end ;; $if_44 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $7 + i32.eq + if $if_45 + local.get $0 + local.set $16 + else + call $_abort + end ;; $if_45 + end ;; $if_43 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $16 + local.get $2 + i32.store + else + local.get $7 + i32.load offset=24 + local.set $8 + local.get $7 + i32.load offset=12 + local.tee $0 + local.get $7 + i32.eq + if $if_46 + block $block_3 + local.get $7 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.tee $0 + if $if_47 + local.get $2 + local.set $1 + else local.get $1 - i32.sub - local.tee $1 - i32.store - local.get $4 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_47 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $2 + i32.load + local.tee $6 + i32.eqz + if $if_48 + local.get $0 + i32.const 16 + i32.add + local.tee $2 + i32.load + local.tee $6 + i32.eqz + br_if $block_4 + end ;; $if_48 + local.get $2 + local.set $1 + local.get $6 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + i32.const 24932 + i32.load + local.get $1 + i32.gt_u + if $if_49 + call $_abort + else local.get $1 - i32.const 1 - i32.or - i32.store offset=4 + i32.const 0 + i32.store local.get $0 - local.get $2 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 15776 - i32.const 16236 + local.set $9 + end ;; $if_49 + end ;; $block_3 + else + i32.const 24932 + i32.load + local.get $7 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_50 + call $_abort + end ;; $if_50 + local.get $7 + local.get $1 + i32.load offset=12 + i32.ne + if $if_51 + call $_abort + end ;; $if_51 + local.get $0 + i32.load offset=8 + local.get $7 + i32.eq + if $if_52 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_52 + end ;; $if_46 + local.get $8 + if $if_53 + local.get $7 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 25220 + i32.add + local.tee $1 + i32.load + local.get $7 + i32.eq + if $if_54 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_55 + i32.const 24920 + i32.const 24920 i32.load - i32.store - local.get $6 - i32.const 0 - local.get $7 - i32.const -47 - i32.add - local.tee $2 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor i32.and - select - local.get $2 - i32.add - local.tee $1 - local.get $1 - local.get $6 + i32.store + br $block_2 + end ;; $if_55 + else + i32.const 24932 + i32.load + local.get $8 + i32.gt_u + if $if_56 + call $_abort + else + local.get $8 i32.const 16 i32.add - i32.lt_u - select - local.tee $2 - i32.const 27 - i32.store offset=4 - local.get $2 - i32.const 16196 - i64.load align=4 - i64.store offset=8 align=4 - local.get $2 - i32.const 16204 - i64.load align=4 - i64.store offset=16 align=4 - i32.const 16196 - local.get $0 - i32.store - i32.const 16200 - local.get $3 - i32.store - i32.const 16208 - i32.const 0 - i32.store - i32.const 16204 - local.get $2 - i32.const 8 + local.tee $0 + local.get $8 + i32.const 20 i32.add + local.get $0 + i32.load + local.get $7 + i32.eq + select + local.get $9 i32.store - local.get $2 - i32.const 24 - i32.add - local.set $0 - loop $loop_11 - local.get $0 - i32.const 4 - i32.add - local.tee $1 - i32.const 7 - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $7 - i32.lt_u - if $if_139 - local.get $1 - local.set $0 - br $loop_11 - end ;; $if_139 - end ;; $loop_11 - local.get $2 - local.get $6 - i32.ne - if $if_140 - local.get $2 - local.get $2 - i32.load offset=4 - i32.const -2 - i32.and - i32.store offset=4 - local.get $6 - local.get $2 - local.get $6 - i32.sub - local.tee $4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_56 + end ;; $if_54 + i32.const 24932 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_57 + call $_abort + end ;; $if_57 + local.get $9 + local.get $8 + i32.store offset=24 + local.get $7 + i32.load offset=16 + local.tee $0 + if $if_58 + local.get $1 + local.get $0 + i32.gt_u + if $if_59 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_59 + end ;; $if_58 + local.get $7 + i32.load offset=20 + local.tee $0 + if $if_60 + i32.const 24932 + i32.load + local.get $0 + i32.gt_u + if $if_61 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_61 + end ;; $if_60 + end ;; $if_53 + end ;; $if_38 + end ;; $block_2 + local.get $3 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $4 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24936 + i32.load + local.get $3 + i32.eq + if $if_62 (result i32) + i32.const 24924 + local.get $5 + i32.store + return + else + local.get $5 + end ;; $if_62 + local.set $1 + end ;; $if_34 + local.get $1 + i32.const 3 + i32.shr_u + local.set $4 + local.get $1 + i32.const 256 + i32.lt_u + if $if_63 + local.get $4 + i32.const 3 + i32.shl + i32.const 24956 + i32.add + local.set $0 + i32.const 24916 + i32.load + local.tee $1 + i32.const 1 + local.get $4 + i32.shl + local.tee $4 + i32.and + if $if_64 + i32.const 24932 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.tee $1 + i32.gt_u + if $if_65 + call $_abort + else + local.get $4 + local.set $17 + local.get $1 + local.set $15 + end ;; $if_65 + else + i32.const 24916 + local.get $1 + local.get $4 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $17 + local.get $0 + local.set $15 + end ;; $if_64 + local.get $17 + local.get $3 + i32.store + local.get $15 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $15 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=12 + return + end ;; $if_63 + local.get $1 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_66 (result i32) + local.get $1 + i32.const 16777215 + i32.gt_u + if $if_67 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $5 + i32.shl + local.tee $4 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $4 + local.get $0 + i32.shl + local.tee $2 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $4 + local.get $1 + i32.const 14 + local.get $0 + local.get $5 + i32.or + local.get $4 + i32.or + i32.sub + local.get $2 + local.get $4 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_67 + else + i32.const 0 + end ;; $if_66 + local.tee $4 + i32.const 2 + i32.shl + i32.const 25220 + i32.add + local.set $0 + local.get $3 + local.get $4 + i32.store offset=28 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 0 + i32.store offset=16 + i32.const 24920 + i32.load + local.tee $5 + i32.const 1 + local.get $4 + i32.shl + local.tee $2 + i32.and + if $if_68 + block $block_5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_69 + local.get $0 + local.set $14 + else + block $block_6 + local.get $1 + i32.const 0 + i32.const 25 + local.get $4 + i32.const 1 + i32.shr_u + i32.sub + local.get $4 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $5 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + local.tee $4 + if $if_70 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $4 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_71 local.get $4 - i32.store + local.set $14 + br $block_6 + else local.get $4 - i32.const 3 - i32.shr_u local.set $0 - local.get $4 - i32.const 256 - i32.lt_u - if $if_141 - local.get $0 - i32.const 3 - i32.shl - i32.const 15788 - i32.add - local.set $2 - i32.const 15748 - i32.load - local.tee $1 - i32.const 1 - local.get $0 - i32.shl - local.tee $0 - i32.and - if $if_142 - i32.const 15764 - i32.load - local.get $2 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.tee $0 - i32.gt_u - if $if_143 - call $_abort - else - local.get $1 - local.set $22 - local.get $0 - local.set $5 - end ;; $if_143 - else - i32.const 15748 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - i32.const 8 - i32.add - local.set $22 - local.get $2 - local.set $5 - end ;; $if_142 - local.get $22 - local.get $6 - i32.store - local.get $5 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $5 - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=12 - br $block_21 - end ;; $if_141 - local.get $4 - i32.const 8 - i32.shr_u - local.tee $0 - if $if_144 (result i32) - local.get $4 - i32.const 16777215 - i32.gt_u - if $if_145 (result i32) - i32.const 31 - else - local.get $0 - local.get $0 - i32.const 1048320 - i32.add - i32.const 16 - i32.shr_u - i32.const 8 - i32.and - local.tee $2 - i32.shl - local.tee $0 - i32.const 520192 - i32.add - i32.const 16 - i32.shr_u - i32.const 4 - i32.and - local.set $3 - local.get $4 - i32.const 14 - local.get $0 - local.get $3 - i32.shl - local.tee $1 - i32.const 245760 - i32.add - i32.const 16 - i32.shr_u - i32.const 2 - i32.and - local.tee $0 - local.get $2 - local.get $3 - i32.or - i32.or - i32.sub - local.get $1 - local.get $0 - i32.shl - i32.const 15 - i32.shr_u - i32.add - local.tee $0 - i32.const 7 - i32.add - i32.shr_u - i32.const 1 - i32.and - local.get $0 - i32.const 1 - i32.shl - i32.or - end ;; $if_145 - else - i32.const 0 - end ;; $if_144 - local.tee $3 - i32.const 2 - i32.shl - i32.const 16052 - i32.add - local.set $2 - local.get $6 + br $loop_1 + end ;; $if_71 + unreachable + end ;; $if_70 + end ;; $loop_1 + i32.const 24932 + i32.load + local.get $2 + i32.gt_u + if $if_72 + call $_abort + else + local.get $2 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + br $block_5 + end ;; $if_72 + end ;; $block_6 + end ;; $if_69 + i32.const 24932 + i32.load + local.tee $0 + local.get $14 + i32.le_u + local.get $0 + local.get $14 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_73 + local.get $0 + local.get $3 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + local.get $14 + i32.store offset=12 + local.get $3 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_73 + end ;; $block_5 + else + i32.const 24920 + local.get $2 + local.get $5 + i32.or + i32.store + local.get $0 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + end ;; $if_68 + i32.const 24948 + i32.const 24948 + i32.load + i32.const -1 + i32.add + local.tee $0 + i32.store + local.get $0 + if $if_74 + return + end ;; $if_74 + i32.const 25372 + local.set $0 + loop $loop_2 + local.get $0 + i32.load + local.tee $4 + i32.const 8 + i32.add + local.set $0 + local.get $4 + br_if $loop_2 + end ;; $loop_2 + i32.const 24948 + i32.const -1 + i32.store + ) + + (func $_realloc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24900 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 + ) + + (func $_try_realloc_chunk (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.tee $4 + local.get $0 + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24932 + i32.load + local.tee $10 + local.get $0 + i32.le_u + i32.and + i32.and + i32.eqz + if $if + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25396 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $3 + call $_dispose_chunk + local.get $0 + return + end ;; $if_4 + i32.const 24940 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24928 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 + i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24940 + local.get $2 + i32.store + i32.const 24928 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24936 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24924 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24924 + local.get $3 + i32.store + i32.const 24936 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24956 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24916 + i32.const 24916 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 + block $block_1 + local.get $4 + i32.const 16 + i32.add + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 local.get $3 - i32.store offset=28 - local.get $6 - i32.const 0 - i32.store offset=20 - local.get $6 - i32.const 0 - i32.store offset=16 - i32.const 15752 + i32.const 20 + i32.add + local.tee $6 i32.load - local.tee $1 - i32.const 1 - local.get $3 - i32.shl - local.tee $0 - i32.and + local.tee $8 i32.eqz - if $if_146 - i32.const 15752 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - local.get $6 - i32.store - local.get $6 - local.get $2 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_146 - local.get $2 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_147 - local.get $0 - local.set $10 - else - block $block_36 - local.get $4 - i32.const 0 - i32.const 25 - local.get $3 - i32.const 1 - i32.shr_u - i32.sub - local.get $3 - i32.const 31 - i32.eq - select - i32.shl - local.set $2 - loop $loop_12 - local.get $0 - i32.const 16 - i32.add - local.get $2 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $3 - i32.load - local.tee $1 - if $if_148 - local.get $2 - i32.const 1 - i32.shl - local.set $2 - local.get $1 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_149 - local.get $1 - local.set $10 - br $block_36 - else - local.get $1 - local.set $0 - br $loop_12 - end ;; $if_149 - unreachable - end ;; $if_148 - end ;; $loop_12 - i32.const 15764 - i32.load - local.get $3 - i32.gt_u - if $if_150 - call $_abort - else - local.get $3 - local.get $6 - i32.store - local.get $6 - local.get $0 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_150 - end ;; $block_36 - end ;; $if_147 - i32.const 15764 - i32.load - local.tee $0 - local.get $10 - i32.le_u - local.get $0 - local.get $10 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_151 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $10 - local.get $6 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $6 - local.get $10 - i32.store offset=12 - local.get $6 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_151 - end ;; $if_140 - end ;; $block_21 - else - i32.const 15764 - i32.load - local.tee $1 - i32.eqz - local.get $0 - local.get $1 - i32.lt_u - i32.or - if $if_152 - i32.const 15764 - local.get $0 + if $if_19 + local.get $3 + i32.const 16 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 i32.store - end ;; $if_152 - i32.const 16196 - local.get $0 - i32.store - i32.const 16200 + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 local.get $3 - i32.store - i32.const 16208 - i32.const 0 - i32.store - i32.const 15784 - i32.const 16220 - i32.load - i32.store - i32.const 15780 - i32.const -1 - i32.store - i32.const 15800 - i32.const 15788 - i32.store - i32.const 15796 - i32.const 15788 - i32.store - i32.const 15808 - i32.const 15796 - i32.store - i32.const 15804 - i32.const 15796 - i32.store - i32.const 15816 - i32.const 15804 - i32.store - i32.const 15812 - i32.const 15804 - i32.store - i32.const 15824 - i32.const 15812 - i32.store - i32.const 15820 - i32.const 15812 - i32.store - i32.const 15832 - i32.const 15820 - i32.store - i32.const 15828 - i32.const 15820 - i32.store - i32.const 15840 - i32.const 15828 - i32.store - i32.const 15836 - i32.const 15828 - i32.store - i32.const 15848 - i32.const 15836 - i32.store - i32.const 15844 - i32.const 15836 - i32.store - i32.const 15856 - i32.const 15844 - i32.store - i32.const 15852 - i32.const 15844 - i32.store - i32.const 15864 - i32.const 15852 - i32.store - i32.const 15860 - i32.const 15852 - i32.store - i32.const 15872 - i32.const 15860 - i32.store - i32.const 15868 - i32.const 15860 - i32.store - i32.const 15880 - i32.const 15868 - i32.store - i32.const 15876 - i32.const 15868 - i32.store - i32.const 15888 - i32.const 15876 - i32.store - i32.const 15884 - i32.const 15876 - i32.store - i32.const 15896 - i32.const 15884 - i32.store - i32.const 15892 - i32.const 15884 - i32.store - i32.const 15904 - i32.const 15892 - i32.store - i32.const 15900 - i32.const 15892 - i32.store - i32.const 15912 - i32.const 15900 - i32.store - i32.const 15908 - i32.const 15900 - i32.store - i32.const 15920 - i32.const 15908 - i32.store - i32.const 15916 - i32.const 15908 - i32.store - i32.const 15928 - i32.const 15916 - i32.store - i32.const 15924 - i32.const 15916 - i32.store - i32.const 15936 - i32.const 15924 - i32.store - i32.const 15932 - i32.const 15924 - i32.store - i32.const 15944 - i32.const 15932 - i32.store - i32.const 15940 - i32.const 15932 - i32.store - i32.const 15952 - i32.const 15940 - i32.store - i32.const 15948 - i32.const 15940 - i32.store - i32.const 15960 - i32.const 15948 - i32.store - i32.const 15956 - i32.const 15948 - i32.store - i32.const 15968 - i32.const 15956 - i32.store - i32.const 15964 - i32.const 15956 - i32.store - i32.const 15976 - i32.const 15964 - i32.store - i32.const 15972 - i32.const 15964 - i32.store - i32.const 15984 - i32.const 15972 - i32.store - i32.const 15980 - i32.const 15972 - i32.store - i32.const 15992 - i32.const 15980 - i32.store - i32.const 15988 - i32.const 15980 - i32.store - i32.const 16000 - i32.const 15988 - i32.store - i32.const 15996 - i32.const 15988 - i32.store - i32.const 16008 - i32.const 15996 - i32.store - i32.const 16004 - i32.const 15996 - i32.store - i32.const 16016 - i32.const 16004 - i32.store - i32.const 16012 - i32.const 16004 - i32.store - i32.const 16024 - i32.const 16012 - i32.store - i32.const 16020 - i32.const 16012 - i32.store - i32.const 16032 - i32.const 16020 - i32.store - i32.const 16028 - i32.const 16020 - i32.store - i32.const 16040 - i32.const 16028 - i32.store - i32.const 16036 - i32.const 16028 - i32.store - i32.const 16048 - i32.const 16036 - i32.store - i32.const 16044 - i32.const 16036 - i32.store - i32.const 15772 - i32.const 0 - local.get $0 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.tee $1 - local.get $0 - i32.add - local.tee $4 - i32.store - i32.const 15760 + i32.store offset=12 local.get $3 - i32.const -40 - i32.add - local.tee $2 - local.get $1 - i32.sub - local.tee $1 - i32.store - local.get $4 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 local.get $2 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 15776 - i32.const 16236 - i32.load + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25220 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 i32.store - end ;; $if_99 - i32.const 15760 + local.get $5 + i32.eqz + if $if_26 + i32.const 24920 + i32.const 24920 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24932 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24932 i32.load - local.tee $0 - local.get $11 + local.tee $2 + local.get $5 i32.gt_u - if $if_153 - i32.const 15760 - local.get $0 - local.get $11 - i32.sub - local.tee $3 - i32.store - br $block_14 - end ;; $if_153 - end ;; $block_15 - i32.const 15732 - i32.const 12 - i32.store - br $block_12 - end ;; $block_14 - i32.const 15772 - i32.const 15772 - i32.load - local.tee $0 + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24932 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 local.get $11 i32.add local.tee $1 - i32.store local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 local.get $3 + i32.load offset=4 i32.const 1 i32.or i32.store offset=4 - local.get $0 - local.get $11 - i32.const 3 - i32.or - i32.store offset=4 - end ;; $block_13 - local.get $17 - global.set $30 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 local.get $0 - i32.const 8 - i32.add return - end ;; $block_12 - local.get $17 - global.set $30 + end ;; $block i32.const 0 ) - (func $_free (type $0) + (func $_dispose_chunk (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -58412,670 +64523,624 @@ (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) - (local $17 i32) - local.get $0 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.const -8 - i32.add - local.tee $5 - i32.const 15764 - i32.load - local.tee $11 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $0 - i32.const -4 - i32.add - i32.load - local.tee $0 - i32.const 3 - i32.and - local.tee $12 - i32.const 1 - i32.eq - if $if_1 - call $_abort - end ;; $if_1 - local.get $5 local.get $0 - i32.const -8 - i32.and - local.tee $2 + local.get $1 i32.add - local.set $7 + local.set $6 local.get $0 + i32.load offset=4 + local.tee $8 i32.const 1 i32.and - if $if_2 - local.get $5 - local.tee $4 - local.set $3 - local.get $2 - local.set $1 + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 else block $block - local.get $5 + local.get $0 i32.load - local.set $10 - local.get $12 + local.set $4 + local.get $8 + i32.const 3 + i32.and i32.eqz - if $if_3 + if $if_0 return - end ;; $if_3 - local.get $5 - local.get $10 + end ;; $if_0 + local.get $0 + local.get $4 i32.sub local.tee $0 - local.get $11 + i32.const 24932 + i32.load + local.tee $11 i32.lt_u - if $if_4 + if $if_1 call $_abort - end ;; $if_4 - local.get $2 - local.get $10 + end ;; $if_1 + local.get $1 + local.get $4 i32.add - local.set $5 - i32.const 15768 + local.set $1 + i32.const 24936 i32.load local.get $0 i32.eq - if $if_5 - local.get $7 + if $if_2 + local.get $6 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 3 i32.and i32.const 3 i32.ne - if $if_6 + if $if_3 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_6 - i32.const 15756 - local.get $5 + end ;; $if_3 + i32.const 24924 + local.get $1 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $5 i32.const -2 i32.and i32.store offset=4 local.get $0 - local.get $5 + local.get $1 i32.const 1 i32.or i32.store offset=4 - local.get $0 - local.get $5 - i32.add - local.get $5 + local.get $6 + local.get $1 i32.store return - end ;; $if_5 - local.get $10 + end ;; $if_2 + local.get $4 i32.const 3 i32.shr_u - local.set $2 - local.get $10 + local.set $8 + local.get $4 i32.const 256 i32.lt_u - if $if_7 + if $if_4 local.get $0 i32.load offset=12 - local.set $1 + local.set $2 local.get $0 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $4 + local.get $8 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add - local.tee $4 + local.tee $5 i32.ne - if $if_8 + if $if_5 local.get $11 - local.get $3 + local.get $4 i32.gt_u - if $if_9 + if $if_6 call $_abort - end ;; $if_9 + end ;; $if_6 local.get $0 - local.get $3 + local.get $4 i32.load offset=12 i32.ne - if $if_10 + if $if_7 call $_abort - end ;; $if_10 - end ;; $if_8 - local.get $1 - local.get $3 + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 i32.eq - if $if_11 - i32.const 15748 - i32.const 15748 + if $if_8 + i32.const 24916 + i32.const 24916 i32.load i32.const 1 - local.get $2 + local.get $8 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_11 - local.get $1 - local.get $4 + end ;; $if_8 + local.get $2 + local.get $5 i32.eq - if $if_12 - local.get $1 + if $if_9 + local.get $2 i32.const 8 i32.add - local.set $6 + local.set $3 else local.get $11 - local.get $1 + local.get $2 i32.gt_u - if $if_13 + if $if_10 call $_abort - end ;; $if_13 - local.get $1 + end ;; $if_10 + local.get $2 i32.const 8 i32.add - local.tee $4 + local.tee $5 i32.load local.get $0 i32.eq - if $if_14 - local.get $4 - local.set $6 + if $if_11 + local.get $5 + local.set $3 else call $_abort - end ;; $if_14 - end ;; $if_12 - local.get $3 - local.get $1 + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 i32.store offset=12 - local.get $6 local.get $3 + local.get $4 i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_7 + end ;; $if_4 local.get $0 i32.load offset=24 - local.set $13 + local.set $10 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $0 i32.eq - if $if_15 + if $if_12 block $block_0 local.get $0 i32.const 16 i32.add - local.tee $6 + local.tee $4 i32.const 4 i32.add - local.tee $10 + local.tee $8 i32.load - local.tee $2 - if $if_16 - local.get $10 - local.set $6 + local.tee $3 + if $if_13 + local.get $8 + local.set $4 else - local.get $6 + local.get $4 i32.load - local.tee $2 + local.tee $3 i32.eqz br_if $block_0 - end ;; $if_16 + end ;; $if_13 loop $loop block $block_1 - local.get $2 + local.get $3 i32.const 20 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz - if $if_17 - local.get $2 + if $if_14 + local.get $3 i32.const 16 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz br_if $block_1 - end ;; $if_17 - local.get $10 - local.set $6 + end ;; $if_14 + local.get $8 + local.set $4 local.get $12 - local.set $2 + local.set $3 br $loop end ;; $block_1 end ;; $loop local.get $11 - local.get $6 + local.get $4 i32.gt_u - if $if_18 + if $if_15 call $_abort else - local.get $6 + local.get $4 i32.const 0 i32.store - local.get $2 - local.set $8 - end ;; $if_18 + local.get $3 + local.set $7 + end ;; $if_15 end ;; $block_0 else local.get $11 local.get $0 i32.load offset=8 - local.tee $6 + local.tee $4 i32.gt_u - if $if_19 + if $if_16 call $_abort - end ;; $if_19 + end ;; $if_16 local.get $0 - local.get $6 + local.get $4 i32.load offset=12 i32.ne - if $if_20 + if $if_17 call $_abort - end ;; $if_20 - local.get $2 + end ;; $if_17 + local.get $3 i32.load offset=8 local.get $0 i32.eq - if $if_21 - local.get $6 - local.get $2 + if $if_18 + local.get $4 + local.get $3 i32.store offset=12 - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.store offset=8 - local.get $2 - local.set $8 + local.get $3 + local.set $7 else call $_abort - end ;; $if_21 - end ;; $if_15 - local.get $13 - if $if_22 + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 local.get $0 i32.load offset=28 - local.tee $2 + local.tee $3 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add - local.tee $6 + local.tee $4 i32.load local.get $0 i32.eq - if $if_23 - local.get $6 - local.get $8 + if $if_20 + local.get $4 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_24 - i32.const 15752 - i32.const 15752 + if $if_21 + i32.const 24920 + i32.const 24920 i32.load i32.const 1 - local.get $2 + local.get $3 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_24 + end ;; $if_21 else - i32.const 15764 + i32.const 24932 i32.load - local.get $13 + local.get $10 i32.gt_u - if $if_25 + if $if_22 call $_abort else - local.get $13 + local.get $10 i32.const 16 i32.add - local.tee $2 - local.get $13 + local.tee $3 + local.get $10 i32.const 20 i32.add - local.get $2 + local.get $3 i32.load local.get $0 i32.eq select - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_26 + if $if_23 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_26 - end ;; $if_25 - end ;; $if_23 - i32.const 15764 + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24932 i32.load - local.tee $6 - local.get $8 + local.tee $4 + local.get $7 i32.gt_u - if $if_27 + if $if_24 call $_abort - end ;; $if_27 - local.get $8 - local.get $13 + end ;; $if_24 + local.get $7 + local.get $10 i32.store offset=24 local.get $0 i32.load offset=16 - local.tee $2 - if $if_28 - local.get $6 - local.get $2 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 i32.gt_u - if $if_29 + if $if_26 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=16 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 - end ;; $if_29 - end ;; $if_28 + end ;; $if_26 + end ;; $if_25 local.get $0 i32.load offset=20 - local.tee $2 - if $if_30 - i32.const 15764 + local.tee $3 + if $if_27 + i32.const 24932 i32.load - local.get $2 + local.get $3 i32.gt_u - if $if_31 + if $if_28 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=20 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_31 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_30 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_22 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 end ;; $block - end ;; $if_2 - local.get $4 - local.get $7 - i32.ge_u - if $if_32 + end ;; $if + local.get $6 + i32.const 24932 + i32.load + local.tee $8 + i32.lt_u + if $if_29 call $_abort - end ;; $if_32 - local.get $7 + end ;; $if_29 + local.get $6 i32.load offset=4 local.tee $0 - i32.const 1 - i32.and - i32.eqz - if $if_33 - call $_abort - end ;; $if_33 - local.get $0 i32.const 2 i32.and - if $if_34 - local.get $7 + if $if_30 + local.get $6 local.get $0 i32.const -2 i32.and i32.store offset=4 - local.get $3 - local.get $1 + local.get $2 + local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $1 - local.get $4 + local.get $2 + local.get $5 i32.add - local.get $1 + local.get $5 i32.store else - i32.const 15772 + i32.const 24940 i32.load - local.get $7 + local.get $6 i32.eq - if $if_35 - i32.const 15760 - i32.const 15760 + if $if_31 + i32.const 24928 + i32.const 24928 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 15772 - local.get $3 + i32.const 24940 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 - local.get $3 - i32.const 15768 + local.get $2 + i32.const 24936 i32.load i32.ne - if $if_36 + if $if_32 return - end ;; $if_36 - i32.const 15768 + end ;; $if_32 + i32.const 24936 i32.const 0 i32.store - i32.const 15756 + i32.const 24924 i32.const 0 i32.store return - end ;; $if_35 - i32.const 15768 + end ;; $if_31 + i32.const 24936 i32.load - local.get $7 + local.get $6 i32.eq - if $if_37 - i32.const 15756 - i32.const 15756 + if $if_33 + i32.const 24924 + i32.const 24924 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 15768 - local.get $4 + i32.const 24936 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $2 i32.add local.get $0 i32.store return - end ;; $if_37 + end ;; $if_33 local.get $0 i32.const -8 i32.and - local.get $1 + local.get $5 i32.add local.set $5 local.get $0 i32.const 3 i32.shr_u - local.set $6 + local.set $4 block $block_2 local.get $0 i32.const 256 i32.lt_u - if $if_38 - local.get $7 + if $if_34 + local.get $6 i32.load offset=12 local.set $1 - local.get $7 - i32.load offset=8 - local.tee $2 local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.tee $0 i32.ne - if $if_39 - i32.const 15764 - i32.load - local.get $2 + if $if_35 + local.get $8 + local.get $3 i32.gt_u - if $if_40 + if $if_36 call $_abort - end ;; $if_40 - local.get $7 - local.get $2 + end ;; $if_36 + local.get $6 + local.get $3 i32.load offset=12 i32.ne - if $if_41 + if $if_37 call $_abort - end ;; $if_41 - end ;; $if_39 + end ;; $if_37 + end ;; $if_35 local.get $1 - local.get $2 + local.get $3 i32.eq - if $if_42 - i32.const 15748 - i32.const 15748 + if $if_38 + i32.const 24916 + i32.const 24916 i32.load i32.const 1 - local.get $6 + local.get $4 i32.shl i32.const -1 i32.xor i32.and i32.store br $block_2 - end ;; $if_42 + end ;; $if_38 local.get $0 local.get $1 i32.eq - if $if_43 + if $if_39 local.get $1 i32.const 8 i32.add - local.set $16 + local.set $14 else - i32.const 15764 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_44 + if $if_40 call $_abort - end ;; $if_44 + end ;; $if_40 local.get $1 i32.const 8 i32.add local.tee $0 i32.load - local.get $7 + local.get $6 i32.eq - if $if_45 + if $if_41 local.get $0 - local.set $16 + local.set $14 else call $_abort - end ;; $if_45 - end ;; $if_43 - local.get $2 + end ;; $if_41 + end ;; $if_39 + local.get $3 local.get $1 i32.store offset=12 - local.get $16 - local.get $2 + local.get $14 + local.get $3 i32.store else - local.get $7 + local.get $6 i32.load offset=24 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=12 local.tee $0 - local.get $7 + local.get $6 i32.eq - if $if_46 + if $if_42 block $block_3 - local.get $7 + local.get $6 i32.const 16 i32.add local.tee $1 i32.const 4 i32.add - local.tee $2 + local.tee $3 i32.load local.tee $0 - if $if_47 - local.get $2 + if $if_43 + local.get $3 local.set $1 else local.get $1 @@ -59083,38 +65148,37 @@ local.tee $0 i32.eqz br_if $block_3 - end ;; $if_47 + end ;; $if_43 loop $loop_0 block $block_4 local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz - if $if_48 + if $if_44 local.get $0 i32.const 16 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz br_if $block_4 - end ;; $if_48 - local.get $2 + end ;; $if_44 + local.get $3 local.set $1 - local.get $6 + local.get $4 local.set $0 br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15764 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_49 + if $if_45 call $_abort else local.get $1 @@ -59122,30 +65186,29 @@ i32.store local.get $0 local.set $9 - end ;; $if_49 + end ;; $if_45 end ;; $block_3 else - i32.const 15764 - i32.load - local.get $7 + local.get $8 + local.get $6 i32.load offset=8 local.tee $1 i32.gt_u - if $if_50 + if $if_46 call $_abort - end ;; $if_50 - local.get $7 + end ;; $if_46 + local.get $6 local.get $1 i32.load offset=12 i32.ne - if $if_51 + if $if_47 call $_abort - end ;; $if_51 + end ;; $if_47 local.get $0 i32.load offset=8 - local.get $7 + local.get $6 i32.eq - if $if_52 + if $if_48 local.get $1 local.get $0 i32.store offset=12 @@ -59156,30 +65219,30 @@ local.set $9 else call $_abort - end ;; $if_52 - end ;; $if_46 - local.get $8 - if $if_53 - local.get $7 + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 i32.load offset=28 local.tee $0 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.tee $1 i32.load - local.get $7 + local.get $6 i32.eq - if $if_54 + if $if_50 local.get $1 local.get $9 i32.store local.get $9 i32.eqz - if $if_55 - i32.const 15752 - i32.const 15752 + if $if_51 + i32.const 24920 + i32.const 24920 i32.load i32.const 1 local.get $0 @@ -59189,25 +65252,25 @@ i32.and i32.store br $block_2 - end ;; $if_55 + end ;; $if_51 else - i32.const 15764 + i32.const 24932 i32.load - local.get $8 + local.get $7 i32.gt_u - if $if_56 + if $if_52 call $_abort else - local.get $8 + local.get $7 i32.const 16 i32.add local.tee $0 - local.get $8 + local.get $7 i32.const 20 i32.add local.get $0 i32.load - local.get $7 + local.get $6 i32.eq select local.get $9 @@ -59215,27 +65278,27 @@ local.get $9 i32.eqz br_if $block_2 - end ;; $if_56 - end ;; $if_54 - i32.const 15764 + end ;; $if_52 + end ;; $if_50 + i32.const 24932 i32.load local.tee $1 local.get $9 i32.gt_u - if $if_57 + if $if_53 call $_abort - end ;; $if_57 + end ;; $if_53 local.get $9 - local.get $8 - i32.store offset=24 local.get $7 + i32.store offset=24 + local.get $6 i32.load offset=16 local.tee $0 - if $if_58 + if $if_54 local.get $1 local.get $0 i32.gt_u - if $if_59 + if $if_55 call $_abort else local.get $9 @@ -59244,17 +65307,17 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_59 - end ;; $if_58 - local.get $7 + end ;; $if_55 + end ;; $if_54 + local.get $6 i32.load offset=20 local.tee $0 - if $if_60 - i32.const 15764 + if $if_56 + i32.const 24932 i32.load local.get $0 i32.gt_u - if $if_61 + if $if_57 call $_abort else local.get $9 @@ -59263,111 +65326,108 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_61 - end ;; $if_60 - end ;; $if_53 - end ;; $if_38 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 end ;; $block_2 - local.get $3 + local.get $2 local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $4 + local.get $2 local.get $5 i32.add local.get $5 i32.store - i32.const 15768 + i32.const 24936 i32.load - local.get $3 + local.get $2 i32.eq - if $if_62 (result i32) - i32.const 15756 + if $if_58 + i32.const 24924 local.get $5 i32.store return - else - local.get $5 - end ;; $if_62 - local.set $1 - end ;; $if_34 - local.get $1 + end ;; $if_58 + end ;; $if_30 + local.get $5 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 256 i32.lt_u - if $if_63 - local.get $4 + if $if_59 + local.get $1 i32.const 3 i32.shl - i32.const 15788 + i32.const 24956 i32.add local.set $0 - i32.const 15748 + i32.const 24916 i32.load - local.tee $1 + local.tee $5 i32.const 1 - local.get $4 + local.get $1 i32.shl - local.tee $4 + local.tee $1 i32.and - if $if_64 - i32.const 15764 + if $if_60 + i32.const 24932 i32.load local.get $0 i32.const 8 i32.add - local.tee $4 - i32.load local.tee $1 + i32.load + local.tee $5 i32.gt_u - if $if_65 + if $if_61 call $_abort else - local.get $4 - local.set $17 local.get $1 local.set $15 - end ;; $if_65 + local.get $5 + local.set $13 + end ;; $if_61 else - i32.const 15748 + i32.const 24916 local.get $1 - local.get $4 + local.get $5 i32.or i32.store local.get $0 i32.const 8 i32.add - local.set $17 - local.get $0 local.set $15 - end ;; $if_64 - local.get $17 - local.get $3 - i32.store + local.get $0 + local.set $13 + end ;; $if_60 local.get $15 - local.get $3 + local.get $2 + i32.store + local.get $13 + local.get $2 i32.store offset=12 - local.get $3 - local.get $15 + local.get $2 + local.get $13 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 i32.store offset=12 return - end ;; $if_63 - local.get $1 + end ;; $if_59 + local.get $5 i32.const 8 i32.shr_u local.tee $0 - if $if_66 (result i32) - local.get $1 + if $if_62 (result i32) + local.get $5 i32.const 16777215 i32.gt_u - if $if_67 (result i32) + if $if_63 (result i32) i32.const 31 else local.get $0 @@ -59378,9 +65438,9 @@ i32.shr_u i32.const 8 i32.and - local.tee $5 + local.tee $3 i32.shl - local.tee $4 + local.tee $1 i32.const 520192 i32.add i32.const 16 @@ -59388,27 +65448,27 @@ i32.const 4 i32.and local.set $0 - local.get $4 + local.get $1 local.get $0 i32.shl - local.tee $2 + local.tee $4 i32.const 245760 i32.add i32.const 16 i32.shr_u i32.const 2 i32.and - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 14 local.get $0 - local.get $5 + local.get $3 i32.or - local.get $4 + local.get $1 i32.or i32.sub - local.get $2 local.get $4 + local.get $1 i32.shl i32.const 15 i32.shr_u @@ -59423,203 +65483,164 @@ i32.const 1 i32.shl i32.or - end ;; $if_67 + end ;; $if_63 else i32.const 0 - end ;; $if_66 - local.tee $4 + end ;; $if_62 + local.tee $1 i32.const 2 i32.shl - i32.const 16052 + i32.const 25220 i32.add local.set $0 - local.get $3 - local.get $4 + local.get $2 + local.get $1 i32.store offset=28 - local.get $3 + local.get $2 i32.const 0 i32.store offset=20 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - i32.const 15752 - i32.load - local.tee $5 - i32.const 1 - local.get $4 - i32.shl - local.tee $2 - i32.and - if $if_68 - block $block_5 + block $block_5 + i32.const 24920 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24920 + local.get $3 + local.get $4 + i32.or + i32.store local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_69 - local.get $0 - local.set $14 - else - block $block_6 - local.get $1 - i32.const 0 - i32.const 25 - local.get $4 - i32.const 1 - i32.shr_u - i32.sub - local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 i32.const 31 - i32.eq - select + i32.shr_u + i32.const 2 i32.shl - local.set $5 - loop $loop_1 - local.get $0 - i32.const 16 - i32.add - local.get $5 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - local.tee $4 - if $if_70 - local.get $5 - i32.const 1 - i32.shl - local.set $5 - local.get $4 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_71 - local.get $4 - local.set $14 - br $block_6 - else - local.get $4 - local.set $0 - br $loop_1 - end ;; $if_71 - unreachable - end ;; $if_70 - end ;; $loop_1 - i32.const 15764 + i32.add + local.tee $4 i32.load - local.get $2 - i32.gt_u - if $if_72 - call $_abort - else - local.get $2 - local.get $3 - i32.store - local.get $3 - local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 - i32.store offset=12 - local.get $3 + local.tee $1 + if $if_66 local.get $3 - i32.store offset=8 - br $block_5 - end ;; $if_72 - end ;; $block_6 - end ;; $if_69 - i32.const 15764 - i32.load - local.tee $0 - local.get $14 - i32.le_u - local.get $0 - local.get $14 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_73 - local.get $0 - local.get $3 - i32.store offset=12 - local.get $14 - local.get $3 - i32.store offset=8 - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - local.get $14 - i32.store offset=12 - local.get $3 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_73 - end ;; $block_5 - else - i32.const 15752 - local.get $2 - local.get $5 - i32.or - i32.store + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24932 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24932 + i32.load + local.tee $1 local.get $0 - local.get $3 - i32.store - local.get $3 + i32.le_u + local.get $1 local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 i32.store offset=12 - local.get $3 - local.get $3 + local.get $0 + local.get $2 i32.store offset=8 - end ;; $if_68 - i32.const 15780 - i32.const 15780 - i32.load - i32.const -1 - i32.add - local.tee $0 - i32.store - local.get $0 - if $if_74 - return - end ;; $if_74 - i32.const 16204 - local.set $0 - loop $loop_2 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 local.get $0 - i32.load - local.tee $4 - i32.const 8 - i32.add - local.set $0 - local.get $4 - br_if $loop_2 - end ;; $loop_2 - i32.const 15780 - i32.const -1 - i32.store + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 ) (func $__ZSt18uncaught_exceptionv (type $14) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -59627,7 +65648,7 @@ (func $__ZNKSt3__217bad_function_call4whatEv (type $4) (param $0 i32) (result i32) - i32.const 13570 + i32.const 17075 ) (func $__ZNSt3__212__next_primeEm (type $4) @@ -59643,12 +65664,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.tee $8 i32.const 4 @@ -60615,834 +66636,25762 @@ local.set $1 local.get $2 br $block_5 - end ;; $if_78 + end ;; $if_78 + local.get $4 + i32.const 112 + i32.add + local.tee $2 + local.tee $1 + if $if_79 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_79 + local.tee $1 + local.get $2 + i32.lt_u + if $if_80 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_80 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_81 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_81 + local.get $4 + i32.const 120 + i32.add + local.tee $2 + local.tee $1 + if $if_82 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_82 + local.tee $1 + local.get $2 + i32.lt_u + if $if_83 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_83 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_84 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_84 + local.get $4 + i32.const 126 + i32.add + local.tee $2 + local.tee $1 + if $if_85 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_85 + local.tee $1 + local.get $2 + i32.lt_u + if $if_86 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_86 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_87 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_87 + local.get $4 + i32.const 130 + i32.add + local.tee $2 + local.tee $1 + if $if_88 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_88 + local.tee $1 + local.get $2 + i32.lt_u + if $if_89 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_89 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_90 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_90 + local.get $4 + i32.const 136 + i32.add + local.tee $2 + local.tee $1 + if $if_91 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_91 + local.tee $1 + local.get $2 + i32.lt_u + if $if_92 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_92 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_93 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_93 + local.get $4 + i32.const 138 + i32.add + local.tee $2 + local.tee $1 + if $if_94 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_94 + local.tee $1 + local.get $2 + i32.lt_u + if $if_95 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_95 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_96 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_96 + local.get $4 + i32.const 142 + i32.add + local.tee $2 + local.tee $1 + if $if_97 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_97 + local.tee $1 + local.get $2 + i32.lt_u + if $if_98 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_98 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_99 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_99 + local.get $4 + i32.const 148 + i32.add + local.tee $2 + local.tee $1 + if $if_100 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_100 + local.tee $1 + local.get $2 + i32.lt_u + if $if_101 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_101 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_102 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_102 + local.get $4 + i32.const 150 + i32.add + local.tee $2 + local.tee $1 + if $if_103 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_103 + local.tee $1 + local.get $2 + i32.lt_u + if $if_104 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_104 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_105 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_105 + local.get $4 + i32.const 156 + i32.add + local.tee $2 + local.tee $1 + if $if_106 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_106 + local.tee $1 + local.get $2 + i32.lt_u + if $if_107 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_107 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_108 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_108 + local.get $4 + i32.const 162 + i32.add + local.tee $2 + local.tee $1 + if $if_109 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_109 + local.tee $1 + local.get $2 + i32.lt_u + if $if_110 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_110 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_111 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_111 + local.get $4 + i32.const 166 + i32.add + local.tee $2 + local.tee $1 + if $if_112 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_112 + local.tee $1 + local.get $2 + i32.lt_u + if $if_113 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_113 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_114 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_114 local.get $4 - i32.const 112 + i32.const 168 i32.add local.tee $2 local.tee $1 - if $if_79 (result i32) + if $if_115 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_79 + end ;; $if_115 local.tee $1 local.get $2 i32.lt_u - if $if_80 + if $if_116 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_80 + end ;; $if_116 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_81 + if $if_117 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_81 + end ;; $if_117 local.get $4 - i32.const 120 + i32.const 172 i32.add local.tee $2 local.tee $1 - if $if_82 (result i32) + if $if_118 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_82 + end ;; $if_118 local.tee $1 local.get $2 i32.lt_u - if $if_83 + if $if_119 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_83 + end ;; $if_119 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_84 + if $if_120 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_84 + end ;; $if_120 local.get $4 - i32.const 126 + i32.const 178 i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_123 local.get $4 - i32.const 130 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_126 local.get $4 - i32.const 136 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_129 local.get $4 - i32.const 138 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_132 local.get $4 - i32.const 142 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_135 local.get $4 - i32.const 148 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_138 local.get $4 - i32.const 150 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_104 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_104 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_105 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_105 + end ;; $if_141 local.get $4 - i32.const 156 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_106 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_106 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_107 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24744 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25440 + i32.const 25412 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24744 + i32.load + i32.eqz + if $if_0 + i32.const 24744 + i32.const 1 + i32.store + local.get $0 + i32.const 281 + call_indirect $28 (type $0) + i32.const 24744 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 15130 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 15130 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10924 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + i32.load offset=8 + drop + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $5 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $5 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_2 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + i32.const 0 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_3 + local.get $5 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $5 + local.set $4 + local.get $3 + if $if_5 + local.get $1 + local.get $2 + i32.add + local.get $1 + local.get $4 + local.get $1 + i32.le_u + local.get $3 + local.get $5 + i32.add + local.get $1 + i32.gt_u + i32.and + select + local.set $1 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $3 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $4 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $6 + i32.const 0 + i32.store8 + local.get $1 + local.get $5 + i32.add + local.get $6 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14299 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14299 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEi (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + local.get $2 + global.set $32 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 17144 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__29to_stringEj (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 17147 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__29to_stringEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEmEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEmEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 17150 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25488 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17290 + i32.store + i32.const 17240 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5264 + local.get $0 + local.get $5 + i32.const 5264 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $5) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + local.get $4 + i32.const 17290 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 17154 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17290 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 17199 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17278 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7576 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5288 + i32.const 5272 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17469 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17472 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17477 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17491 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25488 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 17429 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22824 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17525 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17530 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17535 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17540 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17552 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17566 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17572 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17587 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17591 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17604 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17609 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17623 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_107 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_108 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_108 - local.get $4 - i32.const 162 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_109 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_109 - local.tee $1 - local.get $2 - i32.lt_u - if $if_110 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_110 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_111 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_111 - local.get $4 - i32.const 166 + i32.store + local.get $0 + i32.const 17633 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17642 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17660 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17666 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17678 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17689 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17693 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17703 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17714 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17724 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17734 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_112 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_112 - local.tee $1 - local.get $2 - i32.lt_u - if $if_113 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_113 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17743 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17752 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17757 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17772 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22525 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22528 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22537 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22540 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22543 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22546 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22549 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22340 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22304 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 22179 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 21235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 21238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 21245 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 21248 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 21254 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 21257 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17752 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $4 + i32.const 17787 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17952 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17970 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17982 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 18008 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17912 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17920 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18078 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18146 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 18163 + i32.const 18161 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8152 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 18230 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 18228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 18216 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8240 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18343 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8284 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18872 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_114 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_114 - local.get $4 - i32.const 168 - i32.add - local.tee $2 - local.tee $1 - if $if_115 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 18163 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_115 - local.tee $1 - local.get $2 - i32.lt_u - if $if_116 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 18161 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_116 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_117 - i32.const 9 - local.set $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_117 - local.get $4 - i32.const 172 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 + local.get $1 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_118 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_118 - local.tee $1 + i32.store + local.get $8 + i32.const 18161 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_119 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18878 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18880 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18880 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 178 - i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 + i32.store local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 - i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 i32.add - local.tee $2 local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 + br $block_37 + end ;; $block_38 local.get $4 - i32.const 190 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + i32.store + local.get $13 + i32.const 18228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 - local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_139 - local.tee $1 - local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 - local.get $1 + i32.const 0 + i32.store8 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $5 local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18894 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18897 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18899 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18902 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18904 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18907 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18910 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18913 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18916 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18919 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18923 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 18228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18926 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18929 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18929 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18932 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18935 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18942 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18949 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18951 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18954 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18949 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18957 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18960 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18962 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18968 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18972 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18972 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18981 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18981 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18990 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18453 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18457 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17535 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17540 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17552 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17566 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25510 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18463 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18465 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18468 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18471 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17633 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17469 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8328 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8372 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18527 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8416 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18588 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8460 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18647 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8504 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18707 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18712 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8548 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8592 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 21118 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 21121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20971 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 18163 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20974 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 18161 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20977 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20980 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18878 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20983 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20986 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20989 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18897 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20992 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18899 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18902 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20998 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18904 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 21001 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18907 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 21004 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18910 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 21007 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 21010 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18913 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 21013 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18916 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 21016 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18919 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 21019 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 21022 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 21025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18923 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 21028 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 18228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 21031 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18926 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 21034 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18932 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 21037 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 21040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 21043 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18942 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 21046 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18949 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 21049 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18951 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 21052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18960 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 21055 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18962 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 21058 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 21061 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18968 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19898 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18872 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19902 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18872 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19486 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19492 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8636 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18996 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8680 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8724 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19147 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8768 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8812 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 19209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17689 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18343 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19335 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8900 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $5 + i32.const 19347 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $6 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19394 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19411 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19417 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19475 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8988 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19495 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19507 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19511 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19714 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9076 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19611 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9120 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19611 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19725 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9164 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19791 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19849 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9252 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19964 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19967 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9296 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19970 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19981 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19991 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20002 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20012 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20023 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20033 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20043 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20061 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20071 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20081 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20092 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20113 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20124 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20135 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20145 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20156 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20167 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20178 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20190 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20200 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20210 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20061 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20221 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20232 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20243 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20258 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20200 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20269 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20279 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20292 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20303 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20313 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20324 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20336 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20346 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20357 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20336 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20368 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20379 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20389 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20399 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20410 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20421 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20433 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9340 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9384 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20525 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9472 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20688 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9516 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20701 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20708 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9560 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9604 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20860 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9648 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9692 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20918 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9736 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 21064 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21069 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9780 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 21118 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9824 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9868 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21325 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21643 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21583 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21325 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21387 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9912 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21328 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21448 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21451 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21454 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9956 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10000 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21457 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21465 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10044 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21529 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10088 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10132 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10176 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17952 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21739 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21810 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21860 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21910 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21696 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21710 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21724 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10220 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10264 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 local.get $5 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.store - end ;; $block + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10308 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 end ;; $if - local.get $8 - global.set $30 + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 22132 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + global.set $32 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) @@ -61450,570 +92399,1119 @@ (local $3 i32) (local $4 i32) (local $5 i32) - local.get $2 + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10352 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) local.get $0 - i32.add - local.tee $5 i32.load - local.get $4 - i32.lt_u - local.set $3 + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - i32.const 4 - i32.add local.get $0 + i32.load + i32.store + local.get $5 + local.get $4 + i32.store offset=4 local.get $3 - select - local.set $0 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10396 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22314 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10440 + i32.store local.get $0 - ) - - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memcpy - drop - end ;; $if + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $6) (param $0 i32) - loop $loop - i32.const 15576 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 16272 - i32.const 16244 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 15576 - i32.load - i32.eqz - if $if_0 - i32.const 15576 - i32.const 1 - i32.store - local.get $0 - i32.const 172 - call_indirect $26 (type $0) - i32.const 15576 - i32.const -1 - i32.store - end ;; $if_0 + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE ) - (func $__Znwm (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $6) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 1 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 16328 - i32.const 16328 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 11620 - call $_strlen + (local $3 i32) + local.get $0 + i32.load offset=12 local.tee $2 - i32.const 13 - i32.add - call $__Znwm - local.tee $1 - local.get $2 - i32.store - local.get $1 + i32.load + i32.load offset=16 + local.set $3 local.get $2 - i32.store offset=4 local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add - local.tee $1 - i32.const 11620 - local.get $2 - i32.const 1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 i32.add - call $_memcpy - drop + call_indirect $28 (type $3) local.get $0 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $3) (param $0 i32) + (param $1 i32) + (local $2 i32) local.get $0 - i32.const 6936 - i32.store + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 - i32.const 4 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc + call_indirect $28 (type $3) ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if - local.get $0 - local.get $1 - i32.load + local.get $4 + i32.const 22350 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - local.get $1 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22357 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 i64.load align=4 i64.store align=4 - local.get $0 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 - i32.store offset=8 - end ;; $if + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 + local.get $2 + i32.const 22367 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add + i64.load align=4 + i64.store + local.get $4 local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE local.get $3 - global.set $30 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev (type $0) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $2) (param $0 i32) + (param $1 i32) + (param $2 i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - i32.load - call $_free - end ;; $if + i32.const 7976 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10484 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.load offset=8 local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if - local.tee $5 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $5 - local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 - local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 local.get $4 - global.set $30 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10528 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load local.set $2 local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 local.get $3 - local.get $5 - i32.sub - local.tee $3 local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 - local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7976 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or + i32.const 15 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10572 + i32.store + local.get $0 + local.get $1 i32.store offset=8 local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 local.get $3 - local.get $6 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.load offset=8 local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.load + i32.load offset=16 + local.set $4 local.get $0 - local.get $2 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 + call_indirect $28 (type $3) + local.get $2 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -62022,2197 +93520,2350 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 + i32.const 12 + i32.add local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 local.get $1 - i32.const 16 - i32.add - i32.const -16 + local.get $4 + i32.const 127 i32.and - i32.const -1 + i32.const 288 i32.add - local.get $2 - select - local.tee $7 - local.get $3 - i32.ne + call_indirect $28 (type $3) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22350 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if + local.get $4 + i32.const 2 + i32.and + if $if_0 + local.get $7 + i32.const 22357 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block + local.get $8 + i32.const 22367 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22552 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10616 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22608 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 8 + i32.add local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $2 - global.set $30 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 16 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10660 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10704 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $3 - i32.sub local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $4 - i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10748 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $5) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 + global.set $32 local.get $3 - i32.sub - local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22953 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 local.get $0 - i32.load - else local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 - local.get $4 - local.get $1 - i32.le_u - local.get $3 - local.get $5 + i32.load + i32.const 1 i32.add - local.get $1 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 i32.and - select + i32.const 118 + i32.eq local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.set $1 + i32.store + local.get $2 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 - i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $6) - (param $0 i32) - (param $1 i32) - (result i32) + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 - local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 local.get $0 - i32.const 10789 - local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $3 i32.const 0 i32.store8 local.get $0 - local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 - local.get $3 - global.set $30 - ) - - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i64.const 0 - i64.store align=4 + i32.const 0 + i32.store8 offset=1 local.get $0 i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.store offset=4 local.get $0 - i32.const 10789 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=8 local.get $0 local.get $1 - i32.load - local.get $1 + i32.load offset=336 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__29to_stringEj (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.const 332 i32.add - global.set $30 + local.tee $3 + local.tee $2 + i32.load offset=4 local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 local.get $0 - local.get $2 + i32.const 288 + i32.add + local.set $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev - local.get $2 - global.set $30 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $0 + local.get $4 + i32.ge_u + br_if $block_0 + local.get $3 + i32.load + local.get $0 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block ) - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $4) (param $0 i32) + (result i32) (local $1 i32) local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.add + i32.load8_s + else i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop - local.get $0 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 + end ;; $if_0 + local.tee $0 + i32.const 255 i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 16 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + local.get $0 + i32.const 368 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.set $4 - loop $loop - block $block - local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $2 - i32.store - local.get $1 - local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13639 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop local.get $1 + local.get $2 local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 i64.load align=4 i64.store align=4 local.get $0 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 + local.get $2 + local.get $8 + local.get $3 + local.get $4 local.get $5 - global.set $30 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__29to_stringEm (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 18 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10792 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEmEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 + i32.store offset=12 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $4 + i32.store offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + local.get $0 + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEmEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13642 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13782 - i32.store - i32.const 13732 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5312 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5312 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $5) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $0 - local.get $1 - i32.const 13782 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13646 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13782 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13691 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) end ;; $if - i32.const 13770 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 16320 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 16320 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13921 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22350 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 16324 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22357 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22367 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22552 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10836 i32.store - i32.const 6572 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 22891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5336 - i32.const 5320 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22987 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23012 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 + i32.const 23032 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23054 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10880 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 23113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 23138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23201 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 16324 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13970 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23247 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23261 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 16324 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 14020 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23270 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6936 + i32.const 10924 i32.store local.get $0 i32.const 4 @@ -64244,9 +95895,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -64261,7 +95910,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -64275,10 +95925,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -64288,20 +95941,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -64318,72 +95971,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -64397,10 +96120,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -64422,7 +96146,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -64562,145 +96288,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -64712,10 +96443,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -64780,20 +96512,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -64813,11 +96549,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -64869,9 +96605,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -64921,9 +96657,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $5) @@ -64933,12 +96669,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -64953,9 +96689,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $0 if $if local.get $2 @@ -64964,7 +96700,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -64976,8 +96712,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5336 - i32.const 5424 + i32.const 5288 + i32.const 6456 call $___dynamic_cast i32.const 0 i32.ne @@ -65439,7 +97175,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -65477,7 +97213,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -65491,10 +97227,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -65514,7 +97250,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $5) @@ -65525,11 +97261,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $dynCall_iiii (type $16) @@ -65544,9 +97280,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $dynCall_vi (type $3) @@ -65554,11 +97290,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $2) @@ -65568,11 +97304,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_viii (type $1) @@ -65586,9 +97322,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_viiii (type $7) @@ -65602,11 +97338,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $dynCall_viiiii (type $13) @@ -65624,12 +97360,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65646,9 +97382,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $4) @@ -65782,9 +97518,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -65814,9 +97550,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -65841,9 +97577,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\b0\89\c1\02\90\89\01\a0\89\01" + ;; "\00\02\00\04\00\80\02\bf\03\80\08\80\d1\c1\02\e0\d0\01\f0\d0\01" ) \ No newline at end of file diff --git a/include/envoy/config/BUILD b/include/envoy/config/BUILD index 2b2504620c994..001d3cbe46af5 100644 --- a/include/envoy/config/BUILD +++ b/include/envoy/config/BUILD @@ -66,6 +66,14 @@ envoy_cc_library( ], ) +envoy_cc_library( + name = "watch_map_interface", + hdrs = ["watch_map.h"], + deps = [ + ":subscription_interface", + ], +) + envoy_cc_library( name = "xds_grpc_context_interface", hdrs = ["xds_grpc_context.h"], diff --git a/include/envoy/config/grpc_mux.h b/include/envoy/config/grpc_mux.h index 4888e4e7e7161..1d9920e2d5e3e 100644 --- a/include/envoy/config/grpc_mux.h +++ b/include/envoy/config/grpc_mux.h @@ -25,6 +25,7 @@ struct ControlPlaneStats { ALL_CONTROL_PLANE_STATS(GENERATE_COUNTER_STRUCT, GENERATE_GAUGE_STRUCT) }; +// TODO(fredlas) redundant to SubscriptionCallbacks; remove this one. class GrpcMuxCallbacks { public: virtual ~GrpcMuxCallbacks() = default; diff --git a/include/envoy/http/codec.h b/include/envoy/http/codec.h index eb5951d3b9b63..cc009607415bd 100644 --- a/include/envoy/http/codec.h +++ b/include/envoy/http/codec.h @@ -15,6 +15,13 @@ namespace Http { // Legacy default value of 60K is safely under both codec default limits. static const uint32_t DEFAULT_MAX_REQUEST_HEADERS_KB = 60; +// Default maximum number of headers. +static const uint32_t DEFAULT_MAX_HEADERS_COUNT = 100; + +const char MaxRequestHeadersCountOverrideKey[] = + "envoy.reloadable_features.max_request_headers_count"; +const char MaxResponseHeadersCountOverrideKey[] = + "envoy.reloadable_features.max_response_headers_count"; class Stream; diff --git a/include/envoy/http/header_map.h b/include/envoy/http/header_map.h index 050b3d0b2342a..141b4cb9b1d41 100644 --- a/include/envoy/http/header_map.h +++ b/include/envoy/http/header_map.h @@ -456,9 +456,41 @@ class HeaderMap { virtual void setReferenceKey(const LowerCaseString& key, const std::string& value) PURE; /** + * HeaderMap contains an internal byte size count, updated as entries are added, removed, or + * modified through the HeaderMap interface. However, HeaderEntries can be accessed and modified + * by reference so that the HeaderMap can no longer accurately update the internal byte size + * count. + * + * Calling byteSize before a HeaderEntry is accessed will return the internal byte size count. The + * value is cleared when a HeaderEntry is accessed, and the value is updated and set again when + * refreshByteSize is called. + * + * To guarantee an accurate byte size count, call refreshByteSize. + * + * @return uint64_t the approximate size of the header map in bytes if valid. + */ + virtual absl::optional byteSize() const PURE; + + /** + * This returns the sum of the byte sizes of the keys and values in the HeaderMap. This also + * updates and sets the byte size count. + * + * To guarantee an accurate byte size count, use this. If it is known HeaderEntries have not been + * manipulated since a call to refreshByteSize, it is safe to use byteSize. + * + * @return uint64_t the approximate size of the header map in bytes. + */ + virtual uint64_t refreshByteSize() PURE; + + /** + * This returns the sum of the byte sizes of the keys and values in the HeaderMap. + * + * This iterates over the HeaderMap to calculate size and should only be called directly when the + * user wants an explicit recalculation of the byte size. + * * @return uint64_t the approximate size of the header map in bytes. */ - virtual uint64_t byteSize() const PURE; + virtual uint64_t byteSizeInternal() const PURE; /** * Get a header by key. diff --git a/include/envoy/protobuf/message_validator.h b/include/envoy/protobuf/message_validator.h index 1459aee4b8bed..8c2ac4bc8c4ed 100644 --- a/include/envoy/protobuf/message_validator.h +++ b/include/envoy/protobuf/message_validator.h @@ -25,5 +25,20 @@ class ValidationVisitor { virtual void onUnknownField(absl::string_view description) PURE; }; +class ValidationContext { +public: + virtual ~ValidationContext() = default; + + /** + * @return ValidationVisitor& the validation visitor for static configuration. + */ + virtual ValidationVisitor& staticValidationVisitor() PURE; + + /** + * @return ValidationVisitor& the validation visitor for dynamic configuration. + */ + virtual ValidationVisitor& dynamicValidationVisitor() PURE; +}; + } // namespace ProtobufMessage } // namespace Envoy diff --git a/include/envoy/server/filter_config.h b/include/envoy/server/filter_config.h index 38ea9070721c0..8cd1b40583530 100644 --- a/include/envoy/server/filter_config.h +++ b/include/envoy/server/filter_config.h @@ -328,6 +328,11 @@ class NamedNetworkFilterConfigFactory : public ProtocolOptionsFactory { * produced by the factory. */ virtual std::string name() PURE; + + /** + * @return bool true if this filter must be the last filter in a filter chain, false otherwise. + */ + virtual bool isTerminalFilter() { return false; } }; /** @@ -428,6 +433,11 @@ class NamedHttpFilterConfigFactory : public ProtocolOptionsFactory { * produced by the factory. */ virtual std::string name() PURE; + + /** + * @return bool true if this filter must be the last filter in a filter chain, false otherwise. + */ + virtual bool isTerminalFilter() { return false; } }; } // namespace Configuration diff --git a/include/envoy/server/instance.h b/include/envoy/server/instance.h index dbb964eb3df05..d87e72f844824 100644 --- a/include/envoy/server/instance.h +++ b/include/envoy/server/instance.h @@ -220,10 +220,10 @@ class Instance { virtual std::chrono::milliseconds statsFlushInterval() const PURE; /** - * @return ProtobufMessage::ValidationVisitor& validation visitor for configuration + * @return ProtobufMessage::ValidationContext& validation context for configuration * messages. */ - virtual ProtobufMessage::ValidationVisitor& messageValidationVisitor() PURE; + virtual ProtobufMessage::ValidationContext& messageValidationContext() PURE; }; } // namespace Server diff --git a/include/envoy/server/options.h b/include/envoy/server/options.h index 8904925f28e9b..8ecc14f0c5556 100644 --- a/include/envoy/server/options.h +++ b/include/envoy/server/options.h @@ -86,9 +86,14 @@ class Options { virtual const envoy::config::bootstrap::v2::Bootstrap& configProto() const PURE; /** - * @return bool allow unknown fields in the configuration? + * @return bool allow unknown fields in the static configuration? */ - virtual bool allowUnknownFields() const PURE; + virtual bool allowUnknownStaticFields() const PURE; + + /** + * @return bool allow unknown fields in the dynamic configuration? + */ + virtual bool rejectUnknownDynamicFields() const PURE; /** * @return const std::string& the admin address output file. diff --git a/include/envoy/thread_local/thread_local.h b/include/envoy/thread_local/thread_local.h index 6f082a4607f50..41c77d730d191 100644 --- a/include/envoy/thread_local/thread_local.h +++ b/include/envoy/thread_local/thread_local.h @@ -74,6 +74,17 @@ class Slot { */ using InitializeCb = std::function; virtual void set(InitializeCb cb) PURE; + + /** + * UpdateCb takes the current stored data, and returns an updated/new version data. + * TLS will run the callback and replace the stored data with the returned value *in each thread*. + * + * NOTE: The update callback is not supposed to capture the Slot, or its owner. As the owner may + * be destructed in main thread before the update_cb gets called in a worker thread. + **/ + using UpdateCb = std::function; + virtual void runOnAllThreads(const UpdateCb& update_cb) PURE; + virtual void runOnAllThreads(const UpdateCb& update_cb, Event::PostCb complete_cb) PURE; }; using SlotPtr = std::unique_ptr; diff --git a/include/envoy/upstream/upstream.h b/include/envoy/upstream/upstream.h index b627bc9be3583..c4224b9565480 100644 --- a/include/envoy/upstream/upstream.h +++ b/include/envoy/upstream/upstream.h @@ -764,6 +764,12 @@ class ClusterInfo { */ virtual uint64_t maxRequestsPerConnection() const PURE; + /** + * @return uint32_t the maximum number of response headers. The default value is 100. Results in a + * reset if the number of headers exceeds this value. + */ + virtual uint32_t maxResponseHeadersCount() const PURE; + /** * @return the human readable name of the cluster. */ diff --git a/source/common/common/utility.cc b/source/common/common/utility.cc index ed64837958140..7f1fe2b214d90 100644 --- a/source/common/common/utility.cc +++ b/source/common/common/utility.cc @@ -323,6 +323,16 @@ std::vector StringUtil::splitToken(absl::string_view source, return absl::StrSplit(source, absl::ByAnyChar(delimiters), absl::SkipEmpty()); } +std::string StringUtil::removeTokens(absl::string_view source, absl::string_view delimiters, + const CaseUnorderedSet& tokens_to_remove, + absl::string_view joiner) { + auto values = Envoy::StringUtil::splitToken(source, delimiters); + std::for_each(values.begin(), values.end(), [](auto& v) { v = StringUtil::trim(v); }); + auto end = std::remove_if(values.begin(), values.end(), + [&](absl::string_view t) { return tokens_to_remove.count(t) != 0; }); + return absl::StrJoin(values.begin(), end, joiner); +} + uint32_t StringUtil::itoa(char* out, size_t buffer_size, uint64_t i) { // The maximum size required for an unsigned 64-bit integer is 21 chars (including null). if (buffer_size < 21) { diff --git a/source/common/common/utility.h b/source/common/common/utility.h index 6ff000af46dc0..ecda31716d6a8 100644 --- a/source/common/common/utility.h +++ b/source/common/common/utility.h @@ -145,6 +145,35 @@ class DateUtil { */ class StringUtil { public: + /** + * Callable struct that returns the result of string comparison ignoring case. + * @param lhs supplies the first string view. + * @param rhs supplies the second string view. + * @return true if strings are semantically the same and false otherwise. + */ + struct CaseInsensitiveCompare { + // Enable heterogeneous lookup (https://abseil.io/tips/144) + using is_transparent = void; + bool operator()(absl::string_view lhs, absl::string_view rhs) const; + }; + + /** + * Callable struct that returns the hash representation of a case-insensitive string_view input. + * @param key supplies the string view. + * @return uint64_t hash representation of the supplied string view. + */ + struct CaseInsensitiveHash { + // Enable heterogeneous lookup (https://abseil.io/tips/144) + using is_transparent = void; + uint64_t operator()(absl::string_view key) const; + }; + + /** + * Definition of unordered set of case-insensitive std::string. + */ + using CaseUnorderedSet = + absl::flat_hash_set; + static const char WhitespaceChars[]; /** @@ -282,6 +311,20 @@ class StringUtil { absl::string_view delimiters, bool keep_empty_string = false); + /** + * Remove tokens from a delimiter-separated string view. The tokens are trimmed before + * they are compared ignoring case with the elements of 'tokens_to_remove'. The output is + * built from the trimmed tokens preserving case. + * @param source supplies the delimiter-separated string view. + * @param multi-delimiters supplies chars used to split the delimiter-separated string view. + * @param tokens_to_remove supplies a set of tokens which should not appear in the result. + * @param joiner contains a string used between tokens in the result. + * @return string of the remaining joined tokens. + */ + static std::string removeTokens(absl::string_view source, absl::string_view delimiters, + const CaseUnorderedSet& tokens_to_remove, + absl::string_view joiner); + /** * Size-bounded string copying and concatenation */ @@ -333,35 +376,6 @@ class StringUtil { */ static std::string toLower(absl::string_view s); - /** - * Callable struct that returns the result of string comparison ignoring case. - * @param lhs supplies the first string view. - * @param rhs supplies the second string view. - * @return true if strings are semantically the same and false otherwise. - */ - struct CaseInsensitiveCompare { - // Enable heterogeneous lookup (https://abseil.io/tips/144) - using is_transparent = void; - bool operator()(absl::string_view lhs, absl::string_view rhs) const; - }; - - /** - * Callable struct that returns the hash representation of a case-insensitive string_view input. - * @param key supplies the string view. - * @return uint64_t hash representation of the supplied string view. - */ - struct CaseInsensitiveHash { - // Enable heterogeneous lookup (https://abseil.io/tips/144) - using is_transparent = void; - uint64_t operator()(absl::string_view key) const; - }; - - /** - * Definition of unordered set of case-insensitive std::string. - */ - using CaseUnorderedSet = - absl::flat_hash_set; - /** * Removes all the character indices from str contained in the interval-set. * @param str the string containing the characters to be removed. diff --git a/source/common/config/BUILD b/source/common/config/BUILD index 378512d4df5f2..f3bcaacfdbb74 100644 --- a/source/common/config/BUILD +++ b/source/common/config/BUILD @@ -32,18 +32,20 @@ envoy_cc_library( ) envoy_cc_library( - name = "filesystem_subscription_lib", - srcs = ["filesystem_subscription_impl.cc"], - hdrs = ["filesystem_subscription_impl.h"], + name = "config_provider_lib", + srcs = ["config_provider_impl.cc"], + hdrs = ["config_provider_impl.h"], deps = [ - "//include/envoy/config:subscription_interface", - "//include/envoy/event:dispatcher_interface", - "//include/envoy/filesystem:filesystem_interface", - "//source/common/common:minimal_logger_lib", - "//source/common/config:utility_lib", + ":utility_lib", + "//include/envoy/config:config_provider_interface", + "//include/envoy/config:config_provider_manager_interface", + "//include/envoy/init:manager_interface", + "//include/envoy/server:admin_interface", + "//include/envoy/server:config_tracker_interface", + "//include/envoy/singleton:instance_interface", + "//include/envoy/thread_local:thread_local_interface", + "//source/common/init:target_lib", "//source/common/protobuf", - "//source/common/protobuf:message_validator_lib", - "//source/common/protobuf:utility_lib", ], ) @@ -100,6 +102,22 @@ envoy_cc_library( ], ) +envoy_cc_library( + name = "filesystem_subscription_lib", + srcs = ["filesystem_subscription_impl.cc"], + hdrs = ["filesystem_subscription_impl.h"], + deps = [ + "//include/envoy/config:subscription_interface", + "//include/envoy/event:dispatcher_interface", + "//include/envoy/filesystem:filesystem_interface", + "//source/common/common:minimal_logger_lib", + "//source/common/config:utility_lib", + "//source/common/protobuf", + "//source/common/protobuf:message_validator_lib", + "//source/common/protobuf:utility_lib", + ], +) + envoy_cc_library( name = "grpc_stream_lib", hdrs = ["grpc_stream.h"], @@ -265,12 +283,6 @@ envoy_cc_library( ], ) -envoy_cc_library( - name = "resources_lib", - hdrs = ["resources.h"], - deps = ["//source/common/singleton:const_singleton"], -) - envoy_cc_library( name = "rds_json_lib", srcs = ["rds_json.cc"], @@ -288,6 +300,25 @@ envoy_cc_library( ], ) +envoy_cc_library( + name = "resources_lib", + hdrs = ["resources.h"], + deps = ["//source/common/singleton:const_singleton"], +) + +envoy_cc_library( + name = "remote_data_fetcher_lib", + srcs = ["remote_data_fetcher.cc"], + hdrs = ["remote_data_fetcher.h"], + deps = [ + "//include/envoy/upstream:cluster_manager_interface", + "//source/common/common:hex_lib", + "//source/common/crypto:utility_lib", + "//source/common/http:utility_lib", + "@envoy_api//envoy/api/v2/core:http_uri_cc", + ], +) + envoy_cc_library( name = "runtime_utility_lib", srcs = ["runtime_utility.cc"], @@ -361,42 +392,23 @@ envoy_cc_library( ) envoy_cc_library( - name = "well_known_names", - srcs = ["well_known_names.cc"], - hdrs = ["well_known_names.h"], + name = "watch_map_lib", + srcs = ["watch_map.cc"], + hdrs = ["watch_map.h"], deps = [ + "//include/envoy/config:subscription_interface", "//source/common/common:assert_lib", - "//source/common/singleton:const_singleton", - ], -) - -envoy_cc_library( - name = "config_provider_lib", - srcs = ["config_provider_impl.cc"], - hdrs = ["config_provider_impl.h"], - deps = [ - ":utility_lib", - "//include/envoy/config:config_provider_interface", - "//include/envoy/config:config_provider_manager_interface", - "//include/envoy/init:manager_interface", - "//include/envoy/server:admin_interface", - "//include/envoy/server:config_tracker_interface", - "//include/envoy/singleton:instance_interface", - "//include/envoy/thread_local:thread_local_interface", - "//source/common/init:target_lib", + "//source/common/common:minimal_logger_lib", "//source/common/protobuf", ], ) envoy_cc_library( - name = "remote_data_fetcher_lib", - srcs = ["remote_data_fetcher.cc"], - hdrs = ["remote_data_fetcher.h"], + name = "well_known_names", + srcs = ["well_known_names.cc"], + hdrs = ["well_known_names.h"], deps = [ - "//include/envoy/upstream:cluster_manager_interface", - "//source/common/common:hex_lib", - "//source/common/crypto:utility_lib", - "//source/common/http:utility_lib", - "@envoy_api//envoy/api/v2/core:http_uri_cc", + "//source/common/common:assert_lib", + "//source/common/singleton:const_singleton", ], ) diff --git a/source/common/config/delta_subscription_impl.h b/source/common/config/delta_subscription_impl.h index 8dbf3eccafd51..dbee51c688c32 100644 --- a/source/common/config/delta_subscription_impl.h +++ b/source/common/config/delta_subscription_impl.h @@ -20,6 +20,7 @@ namespace Config { * Manages the logic of a (non-aggregated) delta xDS subscription. * TODO(fredlas) add aggregation support. The plan is for that to happen in XdsGrpcContext, * which this class will then "have a" rather than "be a". + * TODO(kyessenov) implement skip_subsequent_node for delta xDS subscription. */ class DeltaSubscriptionImpl : public Subscription, public GrpcStreamCallbacks, diff --git a/source/common/config/filesystem_subscription_impl.cc b/source/common/config/filesystem_subscription_impl.cc index f14e395330750..1bef8eafe8f6b 100644 --- a/source/common/config/filesystem_subscription_impl.cc +++ b/source/common/config/filesystem_subscription_impl.cc @@ -53,10 +53,9 @@ void FilesystemSubscriptionImpl::refresh() { } else { ENVOY_LOG(warn, "Filesystem config update failure: {}", e.what()); stats_.update_failure_.inc(); - // ConnectionFailure is not a meaningful error code for file system but it has been chosen so - // that the behaviour is uniform across all subscription types. - callbacks_.onConfigUpdateFailed(Envoy::Config::ConfigUpdateFailureReason::ConnectionFailure, - &e); + // This could happen due to filesystem issues or a bad configuration (e.g. proto validation). + // Since the latter is more likely, for now we will treat it as rejection. + callbacks_.onConfigUpdateFailed(Envoy::Config::ConfigUpdateFailureReason::UpdateRejected, &e); } } } diff --git a/source/common/config/grpc_mux_impl.cc b/source/common/config/grpc_mux_impl.cc index 55ffd4ea1ad6e..c1eda78b6dd67 100644 --- a/source/common/config/grpc_mux_impl.cc +++ b/source/common/config/grpc_mux_impl.cc @@ -12,11 +12,11 @@ GrpcMuxImpl::GrpcMuxImpl(const LocalInfo::LocalInfo& local_info, Grpc::RawAsyncClientPtr async_client, Event::Dispatcher& dispatcher, const Protobuf::MethodDescriptor& service_method, Runtime::RandomGenerator& random, Stats::Scope& scope, - const RateLimitSettings& rate_limit_settings) + const RateLimitSettings& rate_limit_settings, bool skip_subsequent_node) : grpc_stream_(this, std::move(async_client), service_method, random, dispatcher, scope, rate_limit_settings), - - local_info_(local_info) { + local_info_(local_info), skip_subsequent_node_(skip_subsequent_node), + first_stream_request_(true) { Config::Utility::checkLocalInfo("ads", local_info); } @@ -57,8 +57,12 @@ void GrpcMuxImpl::sendDiscoveryRequest(const std::string& type_url) { } } + if (skip_subsequent_node_ && !first_stream_request_) { + request.clear_node(); + } ENVOY_LOG(trace, "Sending DiscoveryRequest for {}: {}", type_url, request.DebugString()); grpc_stream_.sendMessage(request); + first_stream_request_ = false; // clear error_detail after the request is sent if it exists. if (api_state_[type_url].request_.has_error_detail()) { @@ -206,6 +210,7 @@ void GrpcMuxImpl::onDiscoveryResponse( void GrpcMuxImpl::onWriteable() { drainRequests(); } void GrpcMuxImpl::onStreamEstablished() { + first_stream_request_ = true; for (const auto& type_url : subscriptions_) { queueDiscoveryRequest(type_url); } diff --git a/source/common/config/grpc_mux_impl.h b/source/common/config/grpc_mux_impl.h index 33ef94150822b..d1aa494590537 100644 --- a/source/common/config/grpc_mux_impl.h +++ b/source/common/config/grpc_mux_impl.h @@ -28,7 +28,7 @@ class GrpcMuxImpl : public GrpcMux, GrpcMuxImpl(const LocalInfo::LocalInfo& local_info, Grpc::RawAsyncClientPtr async_client, Event::Dispatcher& dispatcher, const Protobuf::MethodDescriptor& service_method, Runtime::RandomGenerator& random, Stats::Scope& scope, - const RateLimitSettings& rate_limit_settings); + const RateLimitSettings& rate_limit_settings, bool skip_subsequent_node); ~GrpcMuxImpl() override; void start() override; @@ -104,6 +104,8 @@ class GrpcMuxImpl : public GrpcMux, GrpcStream grpc_stream_; const LocalInfo::LocalInfo& local_info_; + const bool skip_subsequent_node_; + bool first_stream_request_; std::unordered_map api_state_; // Envoy's dependency ordering. std::list subscriptions_; diff --git a/source/common/config/grpc_subscription_impl.h b/source/common/config/grpc_subscription_impl.h index 3b9f32dd7bf31..94e9208431024 100644 --- a/source/common/config/grpc_subscription_impl.h +++ b/source/common/config/grpc_subscription_impl.h @@ -19,9 +19,10 @@ class GrpcSubscriptionImpl : public Config::Subscription { const Protobuf::MethodDescriptor& service_method, absl::string_view type_url, SubscriptionCallbacks& callbacks, SubscriptionStats stats, Stats::Scope& scope, const RateLimitSettings& rate_limit_settings, - std::chrono::milliseconds init_fetch_timeout) - : callbacks_(callbacks), grpc_mux_(local_info, std::move(async_client), dispatcher, - service_method, random, scope, rate_limit_settings), + std::chrono::milliseconds init_fetch_timeout, bool skip_subsequent_node) + : callbacks_(callbacks), + grpc_mux_(local_info, std::move(async_client), dispatcher, service_method, random, scope, + rate_limit_settings, skip_subsequent_node), grpc_mux_subscription_(grpc_mux_, callbacks_, stats, type_url, dispatcher, init_fetch_timeout) {} diff --git a/source/common/config/subscription_factory_impl.cc b/source/common/config/subscription_factory_impl.cc index 16647dbc3154e..b85c8bbb1d1ce 100644 --- a/source/common/config/subscription_factory_impl.cc +++ b/source/common/config/subscription_factory_impl.cc @@ -56,7 +56,8 @@ SubscriptionPtr SubscriptionFactoryImpl::subscriptionFromConfigSource( ->create(), dispatcher_, random_, sotwGrpcMethod(type_url), type_url, callbacks, stats, scope, Utility::parseRateLimitSettings(api_config_source), - Utility::configSourceInitialFetchTimeout(config)); + Utility::configSourceInitialFetchTimeout(config), + api_config_source.set_node_on_first_message_only()); break; case envoy::api::v2::core::ApiConfigSource::DELTA_GRPC: { Utility::checkApiConfigSourceSubscriptionBackingCluster(cm_.clusters(), api_config_source); diff --git a/source/common/config/utility.h b/source/common/config/utility.h index 140f7f41e896c..935699ecbdbaa 100644 --- a/source/common/config/utility.h +++ b/source/common/config/utility.h @@ -291,6 +291,26 @@ class Utility { * Return whether v1-style JSON filter config loading is allowed via 'deprecated_v1: true'. */ static bool allowDeprecatedV1Config(Runtime::Loader& runtime, const Json::Object& config); + + /** + * Verify any any filter designed to be terminal is configured to be terminal, and vice versa. + * @param name the name of the filter. + * @param name the type of filter. + * @param is_terminal_filter true if the filter is designed to be terminal. + * @param last_filter_in_current_config true if the filter is last in the configuration. + * @throws EnvoyException if there is a mismatch between design and configuration. + */ + static void validateTerminalFilters(const std::string& name, const char* filter_type, + bool is_terminal_filter, bool last_filter_in_current_config) { + if (is_terminal_filter && !last_filter_in_current_config) { + throw EnvoyException( + fmt::format("Error: {} must be the terminal {} filter.", name, filter_type)); + } else if (!is_terminal_filter && last_filter_in_current_config) { + throw EnvoyException( + fmt::format("Error: non-terminal filter {} is the last filter in a {} filter chain.", + name, filter_type)); + } + } }; } // namespace Config diff --git a/source/common/config/watch_map.cc b/source/common/config/watch_map.cc new file mode 100644 index 0000000000000..f351dd962a2fb --- /dev/null +++ b/source/common/config/watch_map.cc @@ -0,0 +1,170 @@ +#include "common/config/watch_map.h" + +namespace Envoy { +namespace Config { + +Watch* WatchMap::addWatch(SubscriptionCallbacks& callbacks) { + auto watch = std::make_unique(callbacks); + Watch* watch_ptr = watch.get(); + wildcard_watches_.insert(watch_ptr); + watches_.insert(std::move(watch)); + return watch_ptr; +} + +void WatchMap::removeWatch(Watch* watch) { + wildcard_watches_.erase(watch); // may or may not be in there, but we want it gone. + watches_.erase(watch); +} + +AddedRemoved WatchMap::updateWatchInterest(Watch* watch, + const std::set& update_to_these_names) { + if (update_to_these_names.empty()) { + wildcard_watches_.insert(watch); + } else { + wildcard_watches_.erase(watch); + } + + std::vector newly_added_to_watch; + std::set_difference(update_to_these_names.begin(), update_to_these_names.end(), + watch->resource_names_.begin(), watch->resource_names_.end(), + std::inserter(newly_added_to_watch, newly_added_to_watch.begin())); + + std::vector newly_removed_from_watch; + std::set_difference(watch->resource_names_.begin(), watch->resource_names_.end(), + update_to_these_names.begin(), update_to_these_names.end(), + std::inserter(newly_removed_from_watch, newly_removed_from_watch.begin())); + + watch->resource_names_ = update_to_these_names; + + return AddedRemoved(findAdditions(newly_added_to_watch, watch), + findRemovals(newly_removed_from_watch, watch)); +} + +absl::flat_hash_set WatchMap::watchesInterestedIn(const std::string& resource_name) { + absl::flat_hash_set ret = wildcard_watches_; + const auto watches_interested = watch_interest_.find(resource_name); + if (watches_interested != watch_interest_.end()) { + for (const auto& watch : watches_interested->second) { + ret.insert(watch); + } + } + return ret; +} + +void WatchMap::onConfigUpdate(const Protobuf::RepeatedPtrField& resources, + const std::string& version_info) { + if (watches_.empty()) { + ENVOY_LOG(warn, "WatchMap::onConfigUpdate: there are no watches!"); + return; + } + SubscriptionCallbacks& name_getter = (*watches_.begin())->callbacks_; + + // Build a map from watches, to the set of updated resources that each watch cares about. Each + // entry in the map is then a nice little bundle that can be fed directly into the individual + // onConfigUpdate()s. + absl::flat_hash_map> per_watch_updates; + for (const auto& r : resources) { + const absl::flat_hash_set& interested_in_r = + watchesInterestedIn(name_getter.resourceName(r)); + for (const auto& interested_watch : interested_in_r) { + per_watch_updates[interested_watch].Add()->CopyFrom(r); + } + } + + // We just bundled up the updates into nice per-watch packages. Now, deliver them. + for (auto& watch : watches_) { + const auto this_watch_updates = per_watch_updates.find(watch); + if (this_watch_updates == per_watch_updates.end()) { + // This update included no resources this watch cares about - so we do an empty + // onConfigUpdate(), to notify the watch that its resources - if they existed before this - + // were dropped. + watch->callbacks_.onConfigUpdate({}, version_info); + } else { + watch->callbacks_.onConfigUpdate(this_watch_updates->second, version_info); + } + } +} + +void WatchMap::onConfigUpdate( + const Protobuf::RepeatedPtrField& added_resources, + const Protobuf::RepeatedPtrField& removed_resources, + const std::string& system_version_info) { + // Build a pair of maps: from watches, to the set of resources {added,removed} that each watch + // cares about. Each entry in the map-pair is then a nice little bundle that can be fed directly + // into the individual onConfigUpdate()s. + absl::flat_hash_map> per_watch_added; + for (const auto& r : added_resources) { + const absl::flat_hash_set& interested_in_r = watchesInterestedIn(r.name()); + for (const auto& interested_watch : interested_in_r) { + per_watch_added[interested_watch].Add()->CopyFrom(r); + } + } + absl::flat_hash_map> per_watch_removed; + for (const auto& r : removed_resources) { + const absl::flat_hash_set& interested_in_r = watchesInterestedIn(r); + for (const auto& interested_watch : interested_in_r) { + *per_watch_removed[interested_watch].Add() = r; + } + } + + // We just bundled up the updates into nice per-watch packages. Now, deliver them. + for (const auto& added : per_watch_added) { + const Watch* cur_watch = added.first; + const auto removed = per_watch_removed.find(cur_watch); + if (removed == per_watch_removed.end()) { + // additions only, no removals + cur_watch->callbacks_.onConfigUpdate(added.second, {}, system_version_info); + } else { + // both additions and removals + cur_watch->callbacks_.onConfigUpdate(added.second, removed->second, system_version_info); + // Drop the removals now, so the final removals-only pass won't use them. + per_watch_removed.erase(removed); + } + } + // Any removals-only updates will not have been picked up in the per_watch_added loop. + for (auto& removed : per_watch_removed) { + removed.first->callbacks_.onConfigUpdate({}, removed.second, system_version_info); + } +} + +void WatchMap::onConfigUpdateFailed(ConfigUpdateFailureReason reason, const EnvoyException* e) { + for (auto& watch : watches_) { + watch->callbacks_.onConfigUpdateFailed(reason, e); + } +} + +std::set WatchMap::findAdditions(const std::vector& newly_added_to_watch, + Watch* watch) { + std::set newly_added_to_subscription; + for (const auto& name : newly_added_to_watch) { + auto entry = watch_interest_.find(name); + if (entry == watch_interest_.end()) { + newly_added_to_subscription.insert(name); + watch_interest_[name] = {watch}; + } else { + entry->second.insert(watch); + } + } + return newly_added_to_subscription; +} + +std::set +WatchMap::findRemovals(const std::vector& newly_removed_from_watch, Watch* watch) { + std::set newly_removed_from_subscription; + for (const auto& name : newly_removed_from_watch) { + auto entry = watch_interest_.find(name); + RELEASE_ASSERT( + entry != watch_interest_.end(), + fmt::format("WatchMap: tried to remove a watch from untracked resource {}", name)); + + entry->second.erase(watch); + if (entry->second.empty()) { + watch_interest_.erase(entry); + newly_removed_from_subscription.insert(name); + } + } + return newly_removed_from_subscription; +} + +} // namespace Config +} // namespace Envoy diff --git a/source/common/config/watch_map.h b/source/common/config/watch_map.h new file mode 100644 index 0000000000000..5e75e5e88dd76 --- /dev/null +++ b/source/common/config/watch_map.h @@ -0,0 +1,115 @@ +#pragma once + +#include +#include +#include + +#include "envoy/config/subscription.h" + +#include "common/common/assert.h" +#include "common/common/logger.h" + +#include "absl/container/flat_hash_map.h" +#include "absl/container/flat_hash_set.h" + +namespace Envoy { +namespace Config { + +struct AddedRemoved { + AddedRemoved(std::set&& added, std::set&& removed) + : added_(std::move(added)), removed_(std::move(removed)) {} + std::set added_; + std::set removed_; +}; + +struct Watch { + Watch(SubscriptionCallbacks& callbacks) : callbacks_(callbacks) {} + SubscriptionCallbacks& callbacks_; + std::set resource_names_; // must be sorted set, for set_difference. +}; + +// NOTE: Users are responsible for eventually calling removeWatch() on the Watch* returned +// by addWatch(). We don't expect there to be new users of this class beyond +// NewGrpcMuxImpl and DeltaSubscriptionImpl (TODO(fredlas) to be renamed). +// +// Manages "watches" of xDS resources. Several xDS callers might ask for a subscription to the same +// resource name "X". The xDS machinery must return to each their very own subscription to X. +// The xDS machinery's "watch" concept accomplishes that, while avoiding parallel redundant xDS +// requests for X. Each of those subscriptions is viewed as a "watch" on X, while behind the scenes +// there is just a single real subscription to that resource name. +// +// This class maintains the watches<-->subscription mapping: it +// 1) delivers updates to all interested watches, and +// 2) tracks which resource names should be {added to,removed from} the subscription when the +// {first,last} watch on a resource name is {added,removed}. +// +// #1 is accomplished by WatchMap's implementation of the SubscriptionCallbacks interface. +// This interface allows the xDS client to just throw each xDS update message it receives directly +// into WatchMap::onConfigUpdate, rather than having to track the various watches' callbacks. +// +// The information for #2 is returned by updateWatchInterest(); the caller should use it to +// update the subscription accordingly. +// +// A WatchMap is assumed to be dedicated to a single type_url type of resource (EDS, CDS, etc). +class WatchMap : public SubscriptionCallbacks, public Logger::Loggable { +public: + WatchMap() = default; + + // Adds 'callbacks' to the WatchMap, with every possible resource being watched. + // (Use updateWatchInterest() to narrow it down to some specific names). + // Returns the newly added watch, to be used with updateWatchInterest and removeWatch. + Watch* addWatch(SubscriptionCallbacks& callbacks); + + // Updates the set of resource names that the given watch should watch. + // Returns any resource name additions/removals that are unique across all watches. That is: + // 1) if 'resources' contains X and no other watch cares about X, X will be in added_. + // 2) if 'resources' does not contain Y, and this watch was the only one that cared about Y, + // Y will be in removed_. + AddedRemoved updateWatchInterest(Watch* watch, + const std::set& update_to_these_names); + + // Expects that the watch to be removed has already had all of its resource names removed via + // updateWatchInterest(). + void removeWatch(Watch* watch); + + // SubscriptionCallbacks + void onConfigUpdate(const Protobuf::RepeatedPtrField& resources, + const std::string& version_info) override; + void onConfigUpdate(const Protobuf::RepeatedPtrField& added_resources, + const Protobuf::RepeatedPtrField& removed_resources, + const std::string& system_version_info) override; + + void onConfigUpdateFailed(ConfigUpdateFailureReason reason, const EnvoyException* e) override; + + std::string resourceName(const ProtobufWkt::Any&) override { NOT_IMPLEMENTED_GCOVR_EXCL_LINE; } + + WatchMap(const WatchMap&) = delete; + WatchMap& operator=(const WatchMap&) = delete; + +private: + // Given a list of names that are new to an individual watch, returns those names that are in fact + // new to the entire subscription. + std::set findAdditions(const std::vector& newly_added_to_watch, + Watch* watch); + + // Given a list of names that an individual watch no longer cares about, returns those names that + // in fact the entire subscription no longer cares about. + std::set findRemovals(const std::vector& newly_removed_from_watch, + Watch* watch); + + // Returns the union of watch_interest_[resource_name] and wildcard_watches_. + absl::flat_hash_set watchesInterestedIn(const std::string& resource_name); + + absl::flat_hash_set> watches_; + + // Watches whose interest set is currently empty, which is interpreted as "everything". + absl::flat_hash_set wildcard_watches_; + + // Maps a resource name to the set of watches interested in that resource. Has two purposes: + // 1) Acts as a reference count; no watches care anymore ==> the resource can be removed. + // 2) Enables efficient lookup of all interested watches when a resource has been updated. + absl::flat_hash_map> watch_interest_; +}; + +} // namespace Config +} // namespace Envoy diff --git a/source/common/http/codec_client.cc b/source/common/http/codec_client.cc index 7d9ad41f3af0b..ec1d3cbcbded6 100644 --- a/source/common/http/codec_client.cc +++ b/source/common/http/codec_client.cc @@ -140,14 +140,15 @@ CodecClientProd::CodecClientProd(Type type, Network::ClientConnectionPtr&& conne : CodecClient(type, std::move(connection), host, dispatcher) { switch (type) { case Type::HTTP1: { - codec_ = std::make_unique(*connection_, - host->cluster().statsScope(), *this); + codec_ = std::make_unique( + *connection_, host->cluster().statsScope(), *this, + host->cluster().maxResponseHeadersCount()); break; } case Type::HTTP2: { codec_ = std::make_unique( *connection_, *this, host->cluster().statsScope(), host->cluster().http2Settings(), - Http::DEFAULT_MAX_REQUEST_HEADERS_KB); + Http::DEFAULT_MAX_REQUEST_HEADERS_KB, host->cluster().maxResponseHeadersCount()); break; } } diff --git a/source/common/http/conn_manager_config.h b/source/common/http/conn_manager_config.h index 52ec547ea9d5b..371277173e6b0 100644 --- a/source/common/http/conn_manager_config.h +++ b/source/common/http/conn_manager_config.h @@ -228,6 +228,11 @@ class ConnectionManagerConfig { */ virtual uint32_t maxRequestHeadersKb() const PURE; + /** + * @return maximum number of request headers the codecs will accept. + */ + virtual uint32_t maxRequestHeadersCount() const PURE; + /** * @return per-stream idle timeout for incoming connection manager connections. Zero indicates a * disabled idle timeout. diff --git a/source/common/http/conn_manager_impl.cc b/source/common/http/conn_manager_impl.cc index 8ee08cf2b9882..ff03ecd820d38 100644 --- a/source/common/http/conn_manager_impl.cc +++ b/source/common/http/conn_manager_impl.cc @@ -488,6 +488,18 @@ ConnectionManagerImpl::ActiveStream::~ActiveStream() { } connection_manager_.stats_.named_.downstream_rq_active_.dec(); + // Refresh byte sizes of the HeaderMaps before logging. + // TODO(asraa): Remove this when entries in HeaderMap can no longer be modified by reference and + // HeaderMap holds an accurate internal byte size count. + if (request_headers_ != nullptr) { + request_headers_->refreshByteSize(); + } + if (response_headers_ != nullptr) { + response_headers_->refreshByteSize(); + } + if (response_trailers_ != nullptr) { + response_trailers_->refreshByteSize(); + } for (const AccessLog::InstanceSharedPtr& access_log : connection_manager_.config_.accessLogs()) { access_log->log(request_headers_.get(), response_headers_.get(), response_trailers_.get(), stream_info_); @@ -691,14 +703,6 @@ void ConnectionManagerImpl::ActiveStream::decodeHeaders(HeaderMapPtr&& headers, } } - ASSERT(connection_manager_.config_.maxRequestHeadersKb() > 0); - if (request_headers_->byteSize() > (connection_manager_.config_.maxRequestHeadersKb() * 1024)) { - sendLocalReply(Grpc::Common::hasGrpcContentType(*request_headers_), - Code::RequestHeaderFieldsTooLarge, "", nullptr, is_head_request_, absl::nullopt, - StreamInfo::ResponseCodeDetails::get().RequestHeadersTooLarge); - return; - } - // Currently we only support relative paths at the application layer. We expect the codec to have // broken the path into pieces if applicable. NOTE: Currently the HTTP/1.1 codec only does this // when the allow_absolute_url flag is enabled on the HCM. diff --git a/source/common/http/conn_manager_utility.cc b/source/common/http/conn_manager_utility.cc index 5f9d541693b69..c2b4337068ec9 100644 --- a/source/common/http/conn_manager_utility.cc +++ b/source/common/http/conn_manager_utility.cc @@ -41,13 +41,16 @@ std::string ConnectionManagerUtility::determineNextProtocol(Network::Connection& ServerConnectionPtr ConnectionManagerUtility::autoCreateCodec( Network::Connection& connection, const Buffer::Instance& data, ServerConnectionCallbacks& callbacks, Stats::Scope& scope, const Http1Settings& http1_settings, - const Http2Settings& http2_settings, const uint32_t max_request_headers_kb) { + const Http2Settings& http2_settings, const uint32_t max_request_headers_kb, + const uint32_t max_request_headers_count) { if (determineNextProtocol(connection, data) == Http2::ALPN_STRING) { return std::make_unique(connection, callbacks, scope, - http2_settings, max_request_headers_kb); + http2_settings, max_request_headers_kb, + max_request_headers_count); } else { return std::make_unique(connection, scope, callbacks, - http1_settings, max_request_headers_kb); + http1_settings, max_request_headers_kb, + max_request_headers_count); } } diff --git a/source/common/http/conn_manager_utility.h b/source/common/http/conn_manager_utility.h index 802d0ef07addb..ee67111c8de8f 100644 --- a/source/common/http/conn_manager_utility.h +++ b/source/common/http/conn_manager_utility.h @@ -37,7 +37,7 @@ class ConnectionManagerUtility { autoCreateCodec(Network::Connection& connection, const Buffer::Instance& data, ServerConnectionCallbacks& callbacks, Stats::Scope& scope, const Http1Settings& http1_settings, const Http2Settings& http2_settings, - const uint32_t max_request_headers_kb); + uint32_t max_request_headers_kb, uint32_t max_request_headers_count); /** * Mutates request headers in various ways. This functionality is broken out because of its diff --git a/source/common/http/header_map_impl.cc b/source/common/http/header_map_impl.cc index ff018b77f9c6e..f652e6f6b5e5a 100644 --- a/source/common/http/header_map_impl.cc +++ b/source/common/http/header_map_impl.cc @@ -296,14 +296,17 @@ struct HeaderMapImpl::StaticLookupTable : public TrieLookupTable { } }; -void HeaderMapImpl::appendToHeader(HeaderString& header, absl::string_view data) { +uint64_t HeaderMapImpl::appendToHeader(HeaderString& header, absl::string_view data) { if (data.empty()) { - return; + return 0; } + uint64_t byte_size = 0; if (!header.empty()) { header.append(",", 1); + byte_size += 1; } header.append(data.data(), data.size()); + return data.size() + byte_size; } HeaderMapImpl::HeaderMapImpl() { memset(&inline_headers_, 0, sizeof(inline_headers_)); } @@ -320,6 +323,20 @@ HeaderMapImpl::HeaderMapImpl( } } +void HeaderMapImpl::addSize(uint64_t size) { + // Adds size to cached_byte_size_ if it exists. + if (cached_byte_size_.has_value()) { + cached_byte_size_.value() += size; + } +} + +void HeaderMapImpl::subtractSize(uint64_t size) { + if (cached_byte_size_.has_value()) { + ASSERT(cached_byte_size_ >= size); + cached_byte_size_.value() -= size; + } +} + void HeaderMapImpl::copyFrom(const HeaderMap& header_map) { header_map.iterate( [](const HeaderEntry& header, void* context) -> HeaderMap::Iterate { @@ -360,10 +377,13 @@ void HeaderMapImpl::insertByKey(HeaderString&& key, HeaderString&& value) { if (*ref_lookup_response.entry_ == nullptr) { maybeCreateInline(ref_lookup_response.entry_, *ref_lookup_response.key_, std::move(value)); } else { - appendToHeader((*ref_lookup_response.entry_)->value(), value.getStringView()); + const uint64_t added_size = + appendToHeader((*ref_lookup_response.entry_)->value(), value.getStringView()); + addSize(added_size); value.clear(); } } else { + addSize(key.size() + value.size()); std::list::iterator i = headers_.insert(std::move(key), std::move(value)); i->entry_ = i; } @@ -374,7 +394,8 @@ void HeaderMapImpl::addViaMove(HeaderString&& key, HeaderString&& value) { // the existing value. auto* entry = getExistingInline(key.getStringView()); if (entry != nullptr) { - appendToHeader(entry->value(), value.getStringView()); + const uint64_t added_size = appendToHeader(entry->value(), value.getStringView()); + addSize(added_size); key.clear(); value.clear(); } else { @@ -409,7 +430,8 @@ void HeaderMapImpl::addCopy(const LowerCaseString& key, uint64_t value) { if (entry != nullptr) { char buf[32]; StringUtil::itoa(buf, sizeof(buf), value); - appendToHeader(entry->value(), buf); + const uint64_t added_size = appendToHeader(entry->value(), buf); + addSize(added_size); return; } HeaderString new_key; @@ -424,7 +446,8 @@ void HeaderMapImpl::addCopy(const LowerCaseString& key, uint64_t value) { void HeaderMapImpl::addCopy(const LowerCaseString& key, const std::string& value) { auto* entry = getExistingInline(key.get()); if (entry != nullptr) { - appendToHeader(entry->value(), value); + const uint64_t added_size = appendToHeader(entry->value(), value); + addSize(added_size); return; } HeaderString new_key; @@ -452,13 +475,24 @@ void HeaderMapImpl::setReferenceKey(const LowerCaseString& key, const std::strin ASSERT(new_value.empty()); // NOLINT(bugprone-use-after-move) } -uint64_t HeaderMapImpl::byteSize() const { +absl::optional HeaderMapImpl::byteSize() const { return cached_byte_size_; } + +uint64_t HeaderMapImpl::refreshByteSize() { + if (!cached_byte_size_.has_value()) { + // In this case, the cached byte size is not valid, and the byte size is computed via an + // iteration over the HeaderMap. The cached byte size is updated. + cached_byte_size_ = byteSizeInternal(); + } + return cached_byte_size_.value(); +} + +uint64_t HeaderMapImpl::byteSizeInternal() const { + // Computes the total byte size by summing the byte size of the keys and values. uint64_t byte_size = 0; for (const HeaderEntryImpl& header : headers_) { byte_size += header.key().size(); byte_size += header.value().size(); } - return byte_size; } @@ -475,6 +509,7 @@ const HeaderEntry* HeaderMapImpl::get(const LowerCaseString& key) const { HeaderEntry* HeaderMapImpl::get(const LowerCaseString& key) { for (HeaderEntryImpl& header : headers_) { if (header.key() == key.get().c_str()) { + cached_byte_size_.reset(); return &header; } } @@ -529,6 +564,7 @@ void HeaderMapImpl::remove(const LowerCaseString& key) { } else { for (auto i = headers_.begin(); i != headers_.end();) { if (i->key() == key.get().c_str()) { + subtractSize(i->key().size() + i->value().size()); i = headers_.erase(i); } else { ++i; @@ -538,7 +574,7 @@ void HeaderMapImpl::remove(const LowerCaseString& key) { } void HeaderMapImpl::removePrefix(const LowerCaseString& prefix) { - headers_.remove_if([&](const HeaderEntryImpl& entry) { + headers_.remove_if([&prefix, this](const HeaderEntryImpl& entry) { bool to_remove = absl::StartsWith(entry.key().getStringView(), prefix.get()); if (to_remove) { // If this header should be removed, make sure any references in the @@ -547,8 +583,13 @@ void HeaderMapImpl::removePrefix(const LowerCaseString& prefix) { if (cb) { StaticLookupResponse ref_lookup_response = cb(*this); if (ref_lookup_response.entry_) { + const uint32_t key_value_size = (*ref_lookup_response.entry_)->key().size() + + (*ref_lookup_response.entry_)->value().size(); + subtractSize(key_value_size); *ref_lookup_response.entry_ = nullptr; } + } else { + subtractSize(entry.key().size() + entry.value().size()); } } return to_remove; @@ -571,6 +612,7 @@ void HeaderMapImpl::dumpState(std::ostream& os, int indent_level) const { HeaderMapImpl::HeaderEntryImpl& HeaderMapImpl::maybeCreateInline(HeaderEntryImpl** entry, const LowerCaseString& key) { + cached_byte_size_.reset(); if (*entry) { return **entry; } @@ -589,6 +631,7 @@ HeaderMapImpl::HeaderEntryImpl& HeaderMapImpl::maybeCreateInline(HeaderEntryImpl return **entry; } + addSize(key.get().size() + value.size()); std::list::iterator i = headers_.insert(key, std::move(value)); i->entry_ = i; *entry = &(*i); @@ -610,6 +653,8 @@ void HeaderMapImpl::removeInline(HeaderEntryImpl** ptr_to_entry) { } HeaderEntryImpl* entry = *ptr_to_entry; + const uint64_t size_to_subtract = entry->entry_->key().size() + entry->entry_->value().size(); + subtractSize(size_to_subtract); *ptr_to_entry = nullptr; headers_.erase(entry->entry_); } diff --git a/source/common/http/header_map_impl.h b/source/common/http/header_map_impl.h index f7d3a66937f8b..82624331f5a9c 100644 --- a/source/common/http/header_map_impl.h +++ b/source/common/http/header_map_impl.h @@ -16,12 +16,21 @@ namespace Http { /** * These are definitions of all of the inline header access functions described inside header_map.h + * + * When a non-const reference or pointer to a HeaderEntry is returned, the internal byte size count + * will be cleared, since HeaderMap will no longer be able to accurately update the size of that + * HeaderEntry. + * TODO(asraa): Remove functions with a non-const HeaderEntry return value. */ #define DEFINE_INLINE_HEADER_FUNCS(name) \ public: \ const HeaderEntry* name() const override { return inline_headers_.name##_; } \ - HeaderEntry* name() override { return inline_headers_.name##_; } \ + HeaderEntry* name() override { \ + cached_byte_size_.reset(); \ + return inline_headers_.name##_; \ + } \ HeaderEntry& insert##name() override { \ + cached_byte_size_.reset(); \ return maybeCreateInline(&inline_headers_.name##_, Headers::get().name); \ } \ void remove##name() override { removeInline(&inline_headers_.name##_); } @@ -43,7 +52,7 @@ class HeaderMapImpl : public HeaderMap, NonCopyable { * @param header the header to append to. * @param data to append to the header. */ - static void appendToHeader(HeaderString& header, absl::string_view data); + static uint64_t appendToHeader(HeaderString& header, absl::string_view data); HeaderMapImpl(); explicit HeaderMapImpl( @@ -71,7 +80,9 @@ class HeaderMapImpl : public HeaderMap, NonCopyable { void addCopy(const LowerCaseString& key, const std::string& value) override; void setReference(const LowerCaseString& key, const std::string& value) override; void setReferenceKey(const LowerCaseString& key, const std::string& value) override; - uint64_t byteSize() const override; + absl::optional byteSize() const override; + uint64_t refreshByteSize() override; + uint64_t byteSizeInternal() const override; const HeaderEntry* get(const LowerCaseString& key) const override; HeaderEntry* get(const LowerCaseString& key) override; void iterate(ConstIterateCb cb, void* context) const override; @@ -195,10 +206,16 @@ class HeaderMapImpl : public HeaderMap, NonCopyable { HeaderEntryImpl* getExistingInline(absl::string_view key); void removeInline(HeaderEntryImpl** entry); + void addSize(uint64_t size); + void subtractSize(uint64_t size); AllInlineHeaders inline_headers_; HeaderList headers_; + // When present, this holds the internal byte size of the HeaderMap. The value is removed once an + // inline header entry is accessed and updated when refreshByteSize() is called. + absl::optional cached_byte_size_ = 0; + ALL_INLINE_HEADERS(DEFINE_INLINE_HEADER_FUNCS) }; diff --git a/source/common/http/headers.h b/source/common/http/headers.h index b711fb4b142af..b06631ee2043b 100644 --- a/source/common/http/headers.h +++ b/source/common/http/headers.h @@ -125,6 +125,7 @@ class HeaderValues { const LowerCaseString GrpcAcceptEncoding{"grpc-accept-encoding"}; const LowerCaseString Host{":authority"}; const LowerCaseString HostLegacy{"host"}; + const LowerCaseString Http2Settings{"http2-settings"}; const LowerCaseString KeepAlive{"keep-alive"}; const LowerCaseString LastModified{"last-modified"}; const LowerCaseString Location{"location"}; @@ -153,11 +154,13 @@ class HeaderValues { struct { const std::string Close{"close"}; + const std::string Http2Settings{"http2-settings"}; const std::string KeepAlive{"keep-alive"}; const std::string Upgrade{"upgrade"}; } ConnectionValues; struct { + const std::string H2c{"h2c"}; const std::string WebSocket{"websocket"}; } UpgradeValues; diff --git a/source/common/http/http1/codec_impl.cc b/source/common/http/http1/codec_impl.cc index ba631706f310e..e9e6ecbf1bb15 100644 --- a/source/common/http/http1/codec_impl.cc +++ b/source/common/http/http1/codec_impl.cc @@ -21,6 +21,15 @@ namespace Envoy { namespace Http { namespace Http1 { +namespace { + +const StringUtil::CaseUnorderedSet& caseUnorderdSetContainingUpgradeAndHttp2Settings() { + CONSTRUCT_ON_FIRST_USE(StringUtil::CaseUnorderedSet, + Http::Headers::get().ConnectionValues.Upgrade, + Http::Headers::get().ConnectionValues.Http2Settings); +} + +} // namespace const std::string StreamEncoderImpl::CRLF = "\r\n"; const std::string StreamEncoderImpl::LAST_CHUNK = "0\r\n\r\n"; @@ -326,11 +335,12 @@ const ToLowerTable& ConnectionImpl::toLowerTable() { } ConnectionImpl::ConnectionImpl(Network::Connection& connection, Stats::Scope& stats, - http_parser_type type, uint32_t max_request_headers_kb) + http_parser_type type, uint32_t max_request_headers_kb, + const uint32_t max_headers_count) : connection_(connection), stats_{ALL_HTTP1_CODEC_STATS(POOL_COUNTER_PREFIX(stats, "http1."))}, output_buffer_([&]() -> void { this->onBelowLowWatermark(); }, [&]() -> void { this->onAboveHighWatermark(); }), - max_request_headers_kb_(max_request_headers_kb), + max_request_headers_kb_(max_request_headers_kb), max_headers_count_(max_headers_count), strict_header_validation_( Runtime::runtimeFeatureEnabled("envoy.reloadable_features.strict_header_validation")) { output_buffer_.setWatermarks(connection.bufferLimit()); @@ -346,6 +356,12 @@ void ConnectionImpl::completeLastHeader() { current_header_map_->addViaMove(std::move(current_header_field_), std::move(current_header_value_)); } + // Check if the number of headers exceeds the limit. + if (current_header_map_->size() > max_headers_count_) { + error_code_ = Http::Code::RequestHeaderFieldsTooLarge; + sendProtocolError(); + throw CodecProtocolException("headers size exceeds limit"); + } header_parsing_state_ = HeaderParsingState::Field; ASSERT(current_header_field_.empty()); @@ -451,8 +467,10 @@ void ConnectionImpl::onHeaderValue(const char* data, size_t length) { header_parsing_state_ = HeaderParsingState::Value; current_header_value_.append(data, length); - const uint32_t total = - current_header_field_.size() + current_header_value_.size() + current_header_map_->byteSize(); + // Verify that the cached value in byte size exists. + ASSERT(current_header_map_->byteSize().has_value()); + const uint32_t total = current_header_field_.size() + current_header_value_.size() + + current_header_map_->byteSize().value(); if (total > (max_request_headers_kb_ * 1024)) { error_code_ = Http::Code::RequestHeaderFieldsTooLarge; sendProtocolError(); @@ -463,14 +481,38 @@ void ConnectionImpl::onHeaderValue(const char* data, size_t length) { int ConnectionImpl::onHeadersCompleteBase() { ENVOY_CONN_LOG(trace, "headers complete", connection_); completeLastHeader(); + // Validate that the completed HeaderMap's cached byte size exists and is correct. + // This assert iterates over the HeaderMap. + ASSERT(current_header_map_->byteSize().has_value() && + current_header_map_->byteSize() == current_header_map_->byteSizeInternal()); if (!(parser_.http_major == 1 && parser_.http_minor == 1)) { // This is not necessarily true, but it's good enough since higher layers only care if this is // HTTP/1.1 or not. protocol_ = Protocol::Http10; } if (Utility::isUpgrade(*current_header_map_)) { - ENVOY_CONN_LOG(trace, "codec entering upgrade mode.", connection_); - handling_upgrade_ = true; + // Ignore h2c upgrade requests until we support them. + // See https://github.com/envoyproxy/envoy/issues/7161 for details. + if (current_header_map_->Upgrade() && + absl::EqualsIgnoreCase(current_header_map_->Upgrade()->value().getStringView(), + Http::Headers::get().UpgradeValues.H2c)) { + ENVOY_CONN_LOG(trace, "removing unsupported h2c upgrade headers.", connection_); + current_header_map_->removeUpgrade(); + if (current_header_map_->Connection()) { + const auto& tokens_to_remove = caseUnorderdSetContainingUpgradeAndHttp2Settings(); + std::string new_value = StringUtil::removeTokens( + current_header_map_->Connection()->value().getStringView(), ",", tokens_to_remove, ","); + if (new_value.empty()) { + current_header_map_->removeConnection(); + } else { + current_header_map_->Connection()->value(new_value); + } + } + current_header_map_->remove(Headers::get().Http2Settings); + } else { + ENVOY_CONN_LOG(trace, "codec entering upgrade mode.", connection_); + handling_upgrade_ = true; + } } int rc = onHeadersComplete(std::move(current_header_map_)); @@ -514,8 +556,10 @@ void ConnectionImpl::onResetStreamBase(StreamResetReason reason) { ServerConnectionImpl::ServerConnectionImpl(Network::Connection& connection, Stats::Scope& stats, ServerConnectionCallbacks& callbacks, - Http1Settings settings, uint32_t max_request_headers_kb) - : ConnectionImpl(connection, stats, HTTP_REQUEST, max_request_headers_kb), + Http1Settings settings, uint32_t max_request_headers_kb, + const uint32_t max_request_headers_count) + : ConnectionImpl(connection, stats, HTTP_REQUEST, max_request_headers_kb, + max_request_headers_count), callbacks_(callbacks), codec_settings_(settings) {} void ServerConnectionImpl::onEncodeComplete() { @@ -688,8 +732,10 @@ void ServerConnectionImpl::onBelowLowWatermark() { } ClientConnectionImpl::ClientConnectionImpl(Network::Connection& connection, Stats::Scope& stats, - ConnectionCallbacks&) - : ConnectionImpl(connection, stats, HTTP_RESPONSE, MAX_RESPONSE_HEADERS_KB) {} + ConnectionCallbacks&, + const uint32_t max_response_headers_count) + : ConnectionImpl(connection, stats, HTTP_RESPONSE, MAX_RESPONSE_HEADERS_KB, + max_response_headers_count) {} bool ClientConnectionImpl::cannotHaveBody() { if ((!pending_responses_.empty() && pending_responses_.front().head_request_) || diff --git a/source/common/http/http1/codec_impl.h b/source/common/http/http1/codec_impl.h index be9def7240766..dc37a06be271f 100644 --- a/source/common/http/http1/codec_impl.h +++ b/source/common/http/http1/codec_impl.h @@ -191,7 +191,7 @@ class ConnectionImpl : public virtual Connection, protected Logger::Loggablehd.type) { case NGHTTP2_HEADERS: { + // Verify that the final HeaderMap's byte size is under the limit before decoding headers. + // This assert iterates over the HeaderMap. + ASSERT(stream->headers_->byteSize().has_value() && + stream->headers_->byteSize().value() == stream->headers_->byteSizeInternal()); stream->remote_end_stream_ = frame->hd.flags & NGHTTP2_FLAG_END_STREAM; if (!stream->cookies_.empty()) { HeaderString key(Headers::get().Cookie); @@ -620,6 +624,12 @@ int ConnectionImpl::onFrameSend(const nghttp2_frame* frame) { case NGHTTP2_HEADERS: case NGHTTP2_DATA: { StreamImpl* stream = getStream(frame->hd.stream_id); + if (stream->headers_) { + // Verify that the final HeaderMap's byte size is under the limit before sending frames. + // This assert iterates over the HeaderMap. + ASSERT(stream->headers_->byteSize().has_value() && + stream->headers_->byteSize().value() == stream->headers_->byteSizeInternal()); + } stream->local_end_stream_sent_ = frame->hd.flags & NGHTTP2_FLAG_END_STREAM; break; } @@ -808,9 +818,11 @@ int ConnectionImpl::saveHeader(const nghttp2_frame* frame, HeaderString&& name, stats_.headers_cb_no_stream_.inc(); return 0; } - stream->saveHeader(std::move(name), std::move(value)); - if (stream->headers_->byteSize() > max_request_headers_kb_ * 1024) { + // Verify that the cached value in byte size exists. + ASSERT(stream->headers_->byteSize().has_value()); + if (stream->headers_->byteSize().value() > max_headers_kb_ * 1024 || + stream->headers_->size() > max_headers_count_) { // This will cause the library to reset/close the stream. stats_.header_overflow_.inc(); return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE; @@ -1070,8 +1082,10 @@ ConnectionImpl::ClientHttp2Options::ClientHttp2Options(const Http2Settings& http ClientConnectionImpl::ClientConnectionImpl(Network::Connection& connection, Http::ConnectionCallbacks& callbacks, Stats::Scope& stats, const Http2Settings& http2_settings, - const uint32_t max_request_headers_kb) - : ConnectionImpl(connection, stats, http2_settings, max_request_headers_kb), + const uint32_t max_response_headers_kb, + const uint32_t max_response_headers_count) + : ConnectionImpl(connection, stats, http2_settings, max_response_headers_kb, + max_response_headers_count), callbacks_(callbacks) { ClientHttp2Options client_http2_options(http2_settings); nghttp2_session_client_new2(&session_, http2_callbacks_.callbacks(), base(), @@ -1119,8 +1133,10 @@ int ClientConnectionImpl::onHeader(const nghttp2_frame* frame, HeaderString&& na ServerConnectionImpl::ServerConnectionImpl(Network::Connection& connection, Http::ServerConnectionCallbacks& callbacks, Stats::Scope& scope, const Http2Settings& http2_settings, - const uint32_t max_request_headers_kb) - : ConnectionImpl(connection, scope, http2_settings, max_request_headers_kb), + const uint32_t max_request_headers_kb, + const uint32_t max_request_headers_count) + : ConnectionImpl(connection, scope, http2_settings, max_request_headers_kb, + max_request_headers_count), callbacks_(callbacks) { Http2Options http2_options(http2_settings); nghttp2_session_server_new2(&session_, http2_callbacks_.callbacks(), base(), diff --git a/source/common/http/http2/codec_impl.h b/source/common/http/http2/codec_impl.h index b9ba8ec318095..3c58ca0dd292e 100644 --- a/source/common/http/http2/codec_impl.h +++ b/source/common/http/http2/codec_impl.h @@ -79,7 +79,8 @@ class Utility { class ConnectionImpl : public virtual Connection, protected Logger::Loggable { public: ConnectionImpl(Network::Connection& connection, Stats::Scope& stats, - const Http2Settings& http2_settings, const uint32_t max_request_headers_kb); + const Http2Settings& http2_settings, const uint32_t max_request_headers_kb, + const uint32_t max_headers_count); ~ConnectionImpl() override; @@ -288,7 +289,8 @@ class ConnectionImpl : public virtual Connection, protected Logger::Loggable(std::move(info)); + info.value_ = {value_.begin(), value_.end()}; + return absl::make_optional(std::move(info)); } bool SocketOptionImpl::isSupported() const { return optname_.has_value(); } Api::SysCallIntResult SocketOptionImpl::setSocketOption(Socket& socket, const Network::SocketOptionName& optname, - const absl::string_view value) { + const void* value, size_t size) { if (!optname.has_value()) { return {-1, ENOTSUP}; } auto& os_syscalls = Api::OsSysCallsSingleton::get(); - return os_syscalls.setsockopt(socket.ioHandle().fd(), optname.level(), optname.option(), - value.data(), value.size()); + return os_syscalls.setsockopt(socket.ioHandle().fd(), optname.level(), optname.option(), value, + size); } } // namespace Network diff --git a/source/common/network/socket_option_impl.h b/source/common/network/socket_option_impl.h index 59931506323ca..1a13a67010cba 100644 --- a/source/common/network/socket_option_impl.h +++ b/source/common/network/socket_option_impl.h @@ -7,6 +7,7 @@ #include "envoy/api/os_sys_calls.h" #include "envoy/network/listen_socket.h" +#include "common/common/assert.h" #include "common/common/logger.h" namespace Envoy { @@ -103,7 +104,9 @@ class SocketOptionImpl : public Socket::Option, Logger::Loggable(value_.data()) % alignof(void*) == 0); + } // Socket::Option bool setOption(Socket& socket, @@ -123,17 +126,20 @@ class SocketOptionImpl : public Socket::Option, Logger::Loggable but not std::string because std::string might inline + // the buffer so its data() is not aligned in to alignof(void*). + const std::vector value_; }; } // namespace Network diff --git a/source/common/network/utility.cc b/source/common/network/utility.cc index aeef34dd5c0bb..638547cd9d14a 100644 --- a/source/common/network/utility.cc +++ b/source/common/network/utility.cc @@ -244,45 +244,21 @@ Address::InstanceConstSharedPtr Utility::getLocalAddress(const Address::IpVersio } bool Utility::isLocalConnection(const Network::ConnectionSocket& socket) { + // These are local: + // - Pipes + // - Sockets to a loopback address + // - Sockets where the local and remote address (ignoring port) are the same const auto& remote_address = socket.remoteAddress(); - // Before calling getifaddrs, verify the obvious checks. - // Note that there are corner cases, where remote and local address will be the same - // while the client is not actually local. Example could be an iptables intercepted - // connection. However, this is a rare exception and such assumption results in big - // performance optimization. if (remote_address->type() == Envoy::Network::Address::Type::Pipe || - remote_address == socket.localAddress() || isLoopbackAddress(*remote_address)) { + isLoopbackAddress(*remote_address)) { return true; } - - struct ifaddrs* ifaddr; - const int rc = getifaddrs(&ifaddr); - Cleanup ifaddr_cleanup([ifaddr] { - if (ifaddr) { - freeifaddrs(ifaddr); - } - }); - RELEASE_ASSERT(rc == 0, ""); - - const auto af_look_up = - (remote_address->ip()->version() == Address::IpVersion::v4) ? AF_INET : AF_INET6; - - for (struct ifaddrs* ifa = ifaddr; ifa != nullptr; ifa = ifa->ifa_next) { - if (ifa->ifa_addr == nullptr) { - continue; - } - - if (ifa->ifa_addr->sa_family == af_look_up) { - const auto* addr = reinterpret_cast(ifa->ifa_addr); - const auto local_address = Address::addressFromSockAddr( - *addr, (af_look_up == AF_INET) ? sizeof(sockaddr_in) : sizeof(sockaddr_in6)); - - if (remote_address == local_address) { - return true; - } - } + const auto local_ip = socket.localAddress()->ip(); + const auto remote_ip = remote_address->ip(); + if (remote_ip != nullptr && local_ip != nullptr && + remote_ip->addressAsString() == local_ip->addressAsString()) { + return true; } - return false; } diff --git a/source/common/protobuf/BUILD b/source/common/protobuf/BUILD index e6fa19e96d0a3..4feeec55c982b 100644 --- a/source/common/protobuf/BUILD +++ b/source/common/protobuf/BUILD @@ -31,6 +31,8 @@ envoy_cc_library( external_deps = ["protobuf"], deps = [ "//include/envoy/protobuf:message_validator_interface", + "//include/envoy/stats:stats_interface", + "//source/common/common:hash_lib", "//source/common/common:logger_lib", "//source/common/common:macros", ], diff --git a/source/common/protobuf/message_validator_impl.cc b/source/common/protobuf/message_validator_impl.cc index ba89b89bdb7b0..4e921a0f0215f 100644 --- a/source/common/protobuf/message_validator_impl.cc +++ b/source/common/protobuf/message_validator_impl.cc @@ -2,6 +2,8 @@ #include "envoy/common/exception.h" +#include "common/common/assert.h" +#include "common/common/hash.h" #include "common/common/logger.h" #include "common/common/macros.h" @@ -10,6 +12,28 @@ namespace Envoy { namespace ProtobufMessage { +void WarningValidationVisitorImpl::setCounter(Stats::Counter& counter) { + ASSERT(counter_ == nullptr); + counter_ = &counter; + counter.add(prestats_count_); +} + +void WarningValidationVisitorImpl::onUnknownField(absl::string_view description) { + const uint64_t hash = HashUtil::xxHash64(description); + auto it = descriptions_.insert(hash); + // If we've seen this before, skip. + if (!it.second) { + return; + } + // It's a new field, log and bump stat. + ENVOY_LOG(warn, "Unknown field: {}", description); + if (counter_ == nullptr) { + ++prestats_count_; + } else { + counter_->inc(); + } +} + void StrictValidationVisitorImpl::onUnknownField(absl::string_view description) { throw EnvoyException(absl::StrCat("Protobuf message (", description, ") has unknown fields")); } diff --git a/source/common/protobuf/message_validator_impl.h b/source/common/protobuf/message_validator_impl.h index cf42cb4e26a8c..2d5b3d41af0fe 100644 --- a/source/common/protobuf/message_validator_impl.h +++ b/source/common/protobuf/message_validator_impl.h @@ -1,6 +1,9 @@ #pragma once #include "envoy/protobuf/message_validator.h" +#include "envoy/stats/stats.h" + +#include "absl/container/flat_hash_set.h" namespace Envoy { namespace ProtobufMessage { @@ -13,6 +16,24 @@ class NullValidationVisitorImpl : public ValidationVisitor { ValidationVisitor& getNullValidationVisitor(); +class WarningValidationVisitorImpl : public ValidationVisitor, + public Logger::Loggable { +public: + void setCounter(Stats::Counter& counter); + + // Envoy::ProtobufMessage::ValidationVisitor + void onUnknownField(absl::string_view description) override; + +private: + // Track hashes of descriptions we've seen, to avoid log spam. A hash is used here to avoid + // wasting memory with unused strings. + absl::flat_hash_set descriptions_; + // This can be late initialized via setCounter(), enabling the server bootstrap loading which + // occurs prior to the initialization of the stats subsystem. + Stats::Counter* counter_{}; + uint64_t prestats_count_{}; +}; + class StrictValidationVisitorImpl : public ValidationVisitor { public: // Envoy::ProtobufMessage::ValidationVisitor @@ -21,5 +42,43 @@ class StrictValidationVisitorImpl : public ValidationVisitor { ValidationVisitor& getStrictValidationVisitor(); +class ValidationContextImpl : public ValidationContext { +public: + ValidationContextImpl(ValidationVisitor& static_validation_visitor, + ValidationVisitor& dynamic_validation_visitor) + : static_validation_visitor_(static_validation_visitor), + dynamic_validation_visitor_(dynamic_validation_visitor) {} + + // Envoy::ProtobufMessage::ValidationContext + ValidationVisitor& staticValidationVisitor() override { return static_validation_visitor_; } + ValidationVisitor& dynamicValidationVisitor() override { return dynamic_validation_visitor_; } + +private: + ValidationVisitor& static_validation_visitor_; + ValidationVisitor& dynamic_validation_visitor_; +}; + +class ProdValidationContextImpl : public ValidationContextImpl { +public: + ProdValidationContextImpl(bool allow_unknown_static_fields, bool allow_unknown_dynamic_fields) + : ValidationContextImpl(allow_unknown_static_fields ? static_warning_validation_visitor_ + : getStrictValidationVisitor(), + allow_unknown_dynamic_fields + ? dynamic_warning_validation_visitor_ + : ProtobufMessage::getStrictValidationVisitor()) {} + + ProtobufMessage::WarningValidationVisitorImpl& static_warning_validation_visitor() { + return static_warning_validation_visitor_; + } + + ProtobufMessage::WarningValidationVisitorImpl& dynamic_warning_validation_visitor() { + return dynamic_warning_validation_visitor_; + } + +private: + ProtobufMessage::WarningValidationVisitorImpl static_warning_validation_visitor_; + ProtobufMessage::WarningValidationVisitorImpl dynamic_warning_validation_visitor_; +}; + } // namespace ProtobufMessage } // namespace Envoy diff --git a/source/common/protobuf/utility.cc b/source/common/protobuf/utility.cc index 50a95b4199743..30f9b3cec5e37 100644 --- a/source/common/protobuf/utility.cc +++ b/source/common/protobuf/utility.cc @@ -88,6 +88,20 @@ ProtoValidationException::ProtoValidationException(const std::string& validation ENVOY_LOG_MISC(debug, "Proto validation error; throwing {}", what()); } +size_t MessageUtil::hash(const Protobuf::Message& message) { + std::string text_format; + + { + Protobuf::TextFormat::Printer printer; + printer.SetExpandAny(true); + printer.SetUseFieldNumber(true); + printer.SetSingleLineMode(true); + printer.PrintToString(message, &text_format); + } + + return HashUtil::xxHash64(text_format); +} + void MessageUtil::loadFromJson(const std::string& json, Protobuf::Message& message, ProtobufMessage::ValidationVisitor& validation_visitor) { Protobuf::util::JsonParseOptions options; diff --git a/source/common/protobuf/utility.h b/source/common/protobuf/utility.h index a05587338e266..745fb93d76d79 100644 --- a/source/common/protobuf/utility.h +++ b/source/common/protobuf/utility.h @@ -191,20 +191,14 @@ class MessageUtil { using FileExtensions = ConstSingleton; - static std::size_t hash(const Protobuf::Message& message) { - // Use Protobuf::io::CodedOutputStream to force deterministic serialization, so that the same - // message doesn't hash to different values. - std::string text; - { - // For memory safety, the StringOutputStream needs to be destroyed before - // we read the string. - Protobuf::io::StringOutputStream string_stream(&text); - Protobuf::io::CodedOutputStream coded_stream(&string_stream); - coded_stream.SetSerializationDeterministic(true); - message.SerializeToCodedStream(&coded_stream); - } - return HashUtil::xxHash64(text); - } + /** + * A hash function uses Protobuf::TextFormat to force deterministic serialization recursively + * including known types in google.protobuf.Any. See + * https://github.com/protocolbuffers/protobuf/issues/5731 for the context. + * Using this function is discouraged, see discussion in + * https://github.com/envoyproxy/envoy/issues/8301. + */ + static std::size_t hash(const Protobuf::Message& message); static void checkUnknownFields(const Protobuf::Message& message, ProtobufMessage::ValidationVisitor& validation_visitor) { diff --git a/source/common/router/rds_impl.cc b/source/common/router/rds_impl.cc index e316460e0f09f..2efa53e5de9df 100644 --- a/source/common/router/rds_impl.cc +++ b/source/common/router/rds_impl.cc @@ -194,8 +194,12 @@ Router::ConfigConstSharedPtr RdsRouteConfigProviderImpl::config() { void RdsRouteConfigProviderImpl::onConfigUpdate() { ConfigConstSharedPtr new_config( new ConfigImpl(config_update_info_->routeConfiguration(), factory_context_, false)); - tls_->runOnAllThreads( - [this, new_config]() -> void { tls_->getTyped().config_ = new_config; }); + tls_->runOnAllThreads([new_config](ThreadLocal::ThreadLocalObjectSharedPtr previous) + -> ThreadLocal::ThreadLocalObjectSharedPtr { + auto prev_config = std::dynamic_pointer_cast(previous); + prev_config->config_ = new_config; + return previous; + }); } RouteConfigProviderManagerImpl::RouteConfigProviderManagerImpl(Server::Admin& admin) { diff --git a/source/common/router/retry_state_impl.cc b/source/common/router/retry_state_impl.cc index e7674bd9ba93d..72b6e1b8a5631 100644 --- a/source/common/router/retry_state_impl.cc +++ b/source/common/router/retry_state_impl.cc @@ -225,7 +225,7 @@ RetryStatus RetryStateImpl::shouldHedgeRetryPerTryTimeout(DoRetryCallback callba // retries are associated with a stream reset which is analogous to a gateway // error. When hedging on per try timeout is enabled, however, there is no // stream reset. - return shouldRetry([]() -> bool { return true; }, callback); + return shouldRetry(true, callback); } bool RetryStateImpl::wouldRetryFromHeaders(const Http::HeaderMap& response_headers) { diff --git a/source/common/router/router.cc b/source/common/router/router.cc index 5ad636479afc1..4b1df58ba4ef2 100644 --- a/source/common/router/router.cc +++ b/source/common/router/router.cc @@ -1334,6 +1334,15 @@ Filter::UpstreamRequest::~UpstreamRequest() { stream_info_.setUpstreamTiming(upstream_timing_); stream_info_.onRequestComplete(); + // Prior to logging, refresh the byte size of the HeaderMaps. + // TODO(asraa): Remove this when entries in HeaderMap can no longer be modified by reference and + // HeaderMap holds an accurate internal byte size count. + if (upstream_headers_ != nullptr) { + upstream_headers_->refreshByteSize(); + } + if (upstream_trailers_ != nullptr) { + upstream_trailers_->refreshByteSize(); + } for (const auto& upstream_log : parent_.config_.upstream_logs_) { upstream_log->log(parent_.downstream_headers_, upstream_headers_.get(), upstream_trailers_.get(), stream_info_); diff --git a/source/common/runtime/runtime_impl.cc b/source/common/runtime/runtime_impl.cc index 2b67fdeafb789..3e86fcba3329e 100644 --- a/source/common/runtime/runtime_impl.cc +++ b/source/common/runtime/runtime_impl.cc @@ -474,6 +474,9 @@ LoaderImpl::LoaderImpl(Event::Dispatcher& dispatcher, ThreadLocal::SlotAllocator throw EnvoyException(absl::StrCat("Duplicate layer name: ", layer.name())); } switch (layer.layer_specifier_case()) { + case envoy::config::bootstrap::v2::RuntimeLayer::kStaticLayer: + // Nothing needs to be done here. + break; case envoy::config::bootstrap::v2::RuntimeLayer::kAdminLayer: if (admin_layer_ != nullptr) { throw EnvoyException( @@ -494,8 +497,7 @@ LoaderImpl::LoaderImpl(Event::Dispatcher& dispatcher, ThreadLocal::SlotAllocator init_manager.add(subscriptions_.back()->init_target_); break; default: - ENVOY_LOG(warn, "Skipping unsupported runtime layer: {}", layer.DebugString()); - break; + NOT_REACHED_GCOVR_EXCL_LINE; } } diff --git a/source/common/thread_local/thread_local_impl.cc b/source/common/thread_local/thread_local_impl.cc index 4e8c32fed776b..8bfb093befae7 100644 --- a/source/common/thread_local/thread_local_impl.cc +++ b/source/common/thread_local/thread_local_impl.cc @@ -1,5 +1,6 @@ #include "common/thread_local/thread_local_impl.h" +#include #include #include #include @@ -24,28 +25,82 @@ SlotPtr InstanceImpl::allocateSlot() { ASSERT(std::this_thread::get_id() == main_thread_id_); ASSERT(!shutdown_); - for (uint64_t i = 0; i < slots_.size(); i++) { - if (slots_[i] == nullptr) { - std::unique_ptr slot(new SlotImpl(*this, i)); - slots_[i] = slot.get(); - return slot; - } + if (free_slot_indexes_.empty()) { + std::unique_ptr slot(new SlotImpl(*this, slots_.size())); + auto wrapper = std::make_unique(*this, std::move(slot)); + slots_.push_back(wrapper->slot_.get()); + return wrapper; } - - std::unique_ptr slot(new SlotImpl(*this, slots_.size())); - slots_.push_back(slot.get()); - return slot; + const uint32_t idx = free_slot_indexes_.front(); + free_slot_indexes_.pop_front(); + ASSERT(idx < slots_.size()); + std::unique_ptr slot(new SlotImpl(*this, idx)); + slots_[idx] = slot.get(); + return std::make_unique(*this, std::move(slot)); } bool InstanceImpl::SlotImpl::currentThreadRegistered() { return thread_local_data_.data_.size() > index_; } +void InstanceImpl::SlotImpl::runOnAllThreads(const UpdateCb& cb) { + parent_.runOnAllThreads([this, cb]() { setThreadLocal(index_, cb(get())); }); +} + +void InstanceImpl::SlotImpl::runOnAllThreads(const UpdateCb& cb, Event::PostCb complete_cb) { + parent_.runOnAllThreads([this, cb]() { setThreadLocal(index_, cb(get())); }, complete_cb); +} + ThreadLocalObjectSharedPtr InstanceImpl::SlotImpl::get() { ASSERT(currentThreadRegistered()); return thread_local_data_.data_[index_]; } +InstanceImpl::Bookkeeper::Bookkeeper(InstanceImpl& parent, std::unique_ptr&& slot) + : parent_(parent), slot_(std::move(slot)), + ref_count_(/*not used.*/ nullptr, + [slot = slot_.get(), &parent = this->parent_](uint32_t* /* not used */) { + // On destruction, post a cleanup callback on main thread, this could happen on + // any thread. + parent.scheduleCleanup(slot); + }) {} + +ThreadLocalObjectSharedPtr InstanceImpl::Bookkeeper::get() { return slot_->get(); } + +void InstanceImpl::Bookkeeper::runOnAllThreads(const UpdateCb& cb, Event::PostCb complete_cb) { + slot_->runOnAllThreads( + [cb, ref_count = this->ref_count_](ThreadLocalObjectSharedPtr previous) { + return cb(std::move(previous)); + }, + complete_cb); +} + +void InstanceImpl::Bookkeeper::runOnAllThreads(const UpdateCb& cb) { + slot_->runOnAllThreads([cb, ref_count = this->ref_count_](ThreadLocalObjectSharedPtr previous) { + return cb(std::move(previous)); + }); +} + +bool InstanceImpl::Bookkeeper::currentThreadRegistered() { + return slot_->currentThreadRegistered(); +} + +void InstanceImpl::Bookkeeper::runOnAllThreads(Event::PostCb cb) { + // Use ref_count_ to bookkeep how many on-the-fly callback are out there. + slot_->runOnAllThreads([cb, ref_count = this->ref_count_]() { cb(); }); +} + +void InstanceImpl::Bookkeeper::runOnAllThreads(Event::PostCb cb, Event::PostCb main_callback) { + // Use ref_count_ to bookkeep how many on-the-fly callback are out there. + slot_->runOnAllThreads([cb, main_callback, ref_count = this->ref_count_]() { cb(); }, + main_callback); +} + +void InstanceImpl::Bookkeeper::set(InitializeCb cb) { + slot_->set([cb, ref_count = this->ref_count_](Event::Dispatcher& dispatcher) + -> ThreadLocalObjectSharedPtr { return cb(dispatcher); }); +} + void InstanceImpl::registerThread(Event::Dispatcher& dispatcher, bool main_thread) { ASSERT(std::this_thread::get_id() == main_thread_id_); ASSERT(!shutdown_); @@ -60,6 +115,38 @@ void InstanceImpl::registerThread(Event::Dispatcher& dispatcher, bool main_threa } } +// Puts the slot into a deferred delete container, the slot will be destructed when its out-going +// callback reference count goes to 0. +void InstanceImpl::recycle(std::unique_ptr&& slot) { + ASSERT(std::this_thread::get_id() == main_thread_id_); + ASSERT(slot != nullptr); + auto* slot_addr = slot.get(); + deferred_deletes_.insert({slot_addr, std::move(slot)}); +} + +// Called by the Bookkeeper ref_count destructor, the SlotImpl in the deferred deletes map can be +// destructed now. +void InstanceImpl::scheduleCleanup(SlotImpl* slot) { + if (shutdown_) { + // If server is shutting down, do nothing here. + // The destruction of Bookkeeper has already transferred the SlotImpl to the deferred_deletes_ + // queue. No matter if this method is called from a Worker thread, the SlotImpl will be + // destructed on main thread when InstanceImpl destructs. + return; + } + if (std::this_thread::get_id() == main_thread_id_) { + // If called from main thread, save a callback. + ASSERT(deferred_deletes_.contains(slot)); + deferred_deletes_.erase(slot); + return; + } + main_thread_dispatcher_->post([slot, this]() { + ASSERT(deferred_deletes_.contains(slot)); + // The slot is guaranteed to be put into the deferred_deletes_ map by Bookkeeper destructor. + deferred_deletes_.erase(slot); + }); +} + void InstanceImpl::removeSlot(SlotImpl& slot) { ASSERT(std::this_thread::get_id() == main_thread_id_); @@ -73,6 +160,10 @@ void InstanceImpl::removeSlot(SlotImpl& slot) { const uint64_t index = slot.index_; slots_[index] = nullptr; + ASSERT(std::find(free_slot_indexes_.begin(), free_slot_indexes_.end(), index) == + free_slot_indexes_.end(), + fmt::format("slot index {} already in free slot set!", index)); + free_slot_indexes_.push_back(index); runOnAllThreads([index]() -> void { // This runs on each thread and clears the slot, making it available for a new allocations. // This is safe even if a new allocation comes in, because everything happens with post() and diff --git a/source/common/thread_local/thread_local_impl.h b/source/common/thread_local/thread_local_impl.h index 3e8e39c8fa892..b451c4eb236a1 100644 --- a/source/common/thread_local/thread_local_impl.h +++ b/source/common/thread_local/thread_local_impl.h @@ -8,6 +8,9 @@ #include "envoy/thread_local/thread_local.h" #include "common/common/logger.h" +#include "common/common/non_copyable.h" + +#include "absl/container/flat_hash_map.h" namespace Envoy { namespace ThreadLocal { @@ -15,7 +18,7 @@ namespace ThreadLocal { /** * Implementation of ThreadLocal that relies on static thread_local objects. */ -class InstanceImpl : Logger::Loggable, public Instance { +class InstanceImpl : Logger::Loggable, public NonCopyable, public Instance { public: InstanceImpl() : main_thread_id_(std::this_thread::get_id()) {} ~InstanceImpl() override; @@ -35,6 +38,8 @@ class InstanceImpl : Logger::Loggable, public Instance { // ThreadLocal::Slot ThreadLocalObjectSharedPtr get() override; bool currentThreadRegistered() override; + void runOnAllThreads(const UpdateCb& cb) override; + void runOnAllThreads(const UpdateCb& cb, Event::PostCb complete_cb) override; void runOnAllThreads(Event::PostCb cb) override { parent_.runOnAllThreads(cb); } void runOnAllThreads(Event::PostCb cb, Event::PostCb main_callback) override { parent_.runOnAllThreads(cb, main_callback); @@ -45,22 +50,58 @@ class InstanceImpl : Logger::Loggable, public Instance { const uint64_t index_; }; + // A Wrapper of SlotImpl which on destruction returns the SlotImpl to the deferred delete queue + // (detaches it). + struct Bookkeeper : public Slot { + Bookkeeper(InstanceImpl& parent, std::unique_ptr&& slot); + ~Bookkeeper() override { parent_.recycle(std::move(slot_)); } + + // ThreadLocal::Slot + ThreadLocalObjectSharedPtr get() override; + void runOnAllThreads(const UpdateCb& cb) override; + void runOnAllThreads(const UpdateCb& cb, Event::PostCb complete_cb) override; + bool currentThreadRegistered() override; + void runOnAllThreads(Event::PostCb cb) override; + void runOnAllThreads(Event::PostCb cb, Event::PostCb main_callback) override; + void set(InitializeCb cb) override; + + InstanceImpl& parent_; + std::unique_ptr slot_; + std::shared_ptr ref_count_; + }; + struct ThreadLocalData { Event::Dispatcher* dispatcher_{}; std::vector data_; }; + void recycle(std::unique_ptr&& slot); + // Cleanup the deferred deletes queue. + void scheduleCleanup(SlotImpl* slot); + void removeSlot(SlotImpl& slot); void runOnAllThreads(Event::PostCb cb); void runOnAllThreads(Event::PostCb cb, Event::PostCb main_callback); static void setThreadLocal(uint32_t index, ThreadLocalObjectSharedPtr object); static thread_local ThreadLocalData thread_local_data_; + + // A indexed container for Slots that has to be deferred to delete due to out-going callbacks + // pointing to the Slot. To let the ref_count_ deleter find the SlotImpl by address, the container + // is defined as a map of SlotImpl address to the unique_ptr. + absl::flat_hash_map> deferred_deletes_; + std::vector slots_; + // A list of index of freed slots. + std::list free_slot_indexes_; + std::list> registered_threads_; std::thread::id main_thread_id_; Event::Dispatcher* main_thread_dispatcher_{}; std::atomic shutdown_{}; + + // Test only. + friend class ThreadLocalInstanceImplTest; }; } // namespace ThreadLocal diff --git a/source/common/upstream/BUILD b/source/common/upstream/BUILD index e11007731ec60..a78d205c6e555 100644 --- a/source/common/upstream/BUILD +++ b/source/common/upstream/BUILD @@ -387,6 +387,7 @@ envoy_cc_library( "//source/common/network:utility_lib", "//source/common/protobuf", "//source/common/protobuf:utility_lib", + "//source/common/runtime:runtime_lib", "//source/extensions/transport_sockets:well_known_names", "//source/server:transport_socket_config_lib", "@envoy_api//envoy/api/v2/core:base_cc", diff --git a/source/common/upstream/cluster_manager_impl.cc b/source/common/upstream/cluster_manager_impl.cc index e2673034a6750..4eec6804f9f00 100644 --- a/source/common/upstream/cluster_manager_impl.cc +++ b/source/common/upstream/cluster_manager_impl.cc @@ -183,7 +183,7 @@ ClusterManagerImpl::ClusterManagerImpl( Stats::Store& stats, ThreadLocal::Instance& tls, Runtime::Loader& runtime, Runtime::RandomGenerator& random, const LocalInfo::LocalInfo& local_info, AccessLog::AccessLogManager& log_manager, Event::Dispatcher& main_thread_dispatcher, - Server::Admin& admin, ProtobufMessage::ValidationVisitor& validation_visitor, Api::Api& api, + Server::Admin& admin, ProtobufMessage::ValidationContext& validation_context, Api::Api& api, Http::Context& http_context) : factory_(factory), runtime_(runtime), stats_(stats), tls_(tls.allocateSlot()), random_(random), bind_config_(bootstrap.cluster_manager().upstream_bind_config()), @@ -192,8 +192,9 @@ ClusterManagerImpl::ClusterManagerImpl( config_tracker_entry_( admin.getConfigTracker().add("clusters", [this] { return dumpClusterConfigs(); })), time_source_(main_thread_dispatcher.timeSource()), dispatcher_(main_thread_dispatcher), - http_context_(http_context), subscription_factory_(local_info, main_thread_dispatcher, *this, - random, validation_visitor, api) { + http_context_(http_context), + subscription_factory_(local_info, main_thread_dispatcher, *this, random, + validation_context.dynamicValidationVisitor(), api) { async_client_manager_ = std::make_unique(*this, tls, time_source_, api); const auto& cm_config = bootstrap.cluster_manager(); @@ -228,7 +229,8 @@ ClusterManagerImpl::ClusterManagerImpl( *Protobuf::DescriptorPool::generated_pool()->FindMethodByName( "envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources"), random_, stats_, - Envoy::Config::Utility::parseRateLimitSettings(bootstrap.dynamic_resources().ads_config())); + Envoy::Config::Utility::parseRateLimitSettings(bootstrap.dynamic_resources().ads_config()), + bootstrap.dynamic_resources().ads_config().set_node_on_first_message_only()); } else { ads_mux_ = std::make_unique(); } @@ -462,9 +464,22 @@ bool ClusterManagerImpl::addOrUpdateCluster(const envoy::api::v2::Cluster& clust if (existing_active_cluster != active_clusters_.end() || existing_warming_cluster != warming_clusters_.end()) { - // The following init manager remove call is a NOP in the case we are already initialized. It's - // just kept here to avoid additional logic. - init_helper_.removeCluster(*existing_active_cluster->second->cluster_); + if (existing_active_cluster != active_clusters_.end()) { + // The following init manager remove call is a NOP in the case we are already initialized. + // It's just kept here to avoid additional logic. + init_helper_.removeCluster(*existing_active_cluster->second->cluster_); + } else { + // Validate that warming clusters are not added to the init_helper_. + // NOTE: This loop is compiled out in optimized builds. + for (const std::list& cluster_list : + {std::cref(init_helper_.primary_init_clusters_), + std::cref(init_helper_.secondary_init_clusters_)}) { + ASSERT(!std::any_of(cluster_list.begin(), cluster_list.end(), + [&existing_warming_cluster](Cluster* cluster) { + return existing_warming_cluster->second->cluster_.get() == cluster; + })); + } + } cm_stats_.cluster_modified_.inc(); } else { cm_stats_.cluster_added_.inc(); @@ -1230,7 +1245,7 @@ ClusterManagerPtr ProdClusterManagerFactory::clusterManagerFromProto( const envoy::config::bootstrap::v2::Bootstrap& bootstrap) { return ClusterManagerPtr{new ClusterManagerImpl( bootstrap, *this, stats_, tls_, runtime_, random_, local_info_, log_manager_, - main_thread_dispatcher_, admin_, validation_visitor_, api_, http_context_)}; + main_thread_dispatcher_, admin_, validation_context_, api_, http_context_)}; } Http::ConnectionPool::InstancePtr ProdClusterManagerFactory::allocateConnPool( @@ -1260,13 +1275,16 @@ std::pair ProdClusterManagerFactor return ClusterFactoryImplBase::create( cluster, cm, stats_, tls_, dns_resolver_, ssl_context_manager_, runtime_, random_, main_thread_dispatcher_, log_manager_, local_info_, admin_, singleton_manager_, - outlier_event_logger, added_via_api, validation_visitor_, api_); + outlier_event_logger, added_via_api, + added_via_api ? validation_context_.dynamicValidationVisitor() + : validation_context_.staticValidationVisitor(), + api_); } CdsApiPtr ProdClusterManagerFactory::createCds(const envoy::api::v2::core::ConfigSource& cds_config, ClusterManager& cm) { // TODO(htuch): Differentiate static vs. dynamic validation visitors. - return CdsApiImpl::create(cds_config, cm, stats_, validation_visitor_); + return CdsApiImpl::create(cds_config, cm, stats_, validation_context_.dynamicValidationVisitor()); } } // namespace Upstream diff --git a/source/common/upstream/cluster_manager_impl.h b/source/common/upstream/cluster_manager_impl.h index 055cb9fd2ccec..ecf5b4e39a4de 100644 --- a/source/common/upstream/cluster_manager_impl.h +++ b/source/common/upstream/cluster_manager_impl.h @@ -43,10 +43,10 @@ class ProdClusterManagerFactory : public ClusterManagerFactory { Event::Dispatcher& main_thread_dispatcher, const LocalInfo::LocalInfo& local_info, Secret::SecretManager& secret_manager, - ProtobufMessage::ValidationVisitor& validation_visitor, Api::Api& api, + ProtobufMessage::ValidationContext& validation_context, Api::Api& api, Http::Context& http_context, AccessLog::AccessLogManager& log_manager, Singleton::Manager& singleton_manager) - : main_thread_dispatcher_(main_thread_dispatcher), validation_visitor_(validation_visitor), + : main_thread_dispatcher_(main_thread_dispatcher), validation_context_(validation_context), api_(api), http_context_(http_context), admin_(admin), runtime_(runtime), stats_(stats), tls_(tls), random_(random), dns_resolver_(dns_resolver), ssl_context_manager_(ssl_context_manager), local_info_(local_info), @@ -74,7 +74,7 @@ class ProdClusterManagerFactory : public ClusterManagerFactory { protected: Event::Dispatcher& main_thread_dispatcher_; - ProtobufMessage::ValidationVisitor& validation_visitor_; + ProtobufMessage::ValidationContext& validation_context_; Api::Api& api_; Http::Context& http_context_; Server::Admin& admin_; @@ -90,6 +90,9 @@ class ProdClusterManagerFactory : public ClusterManagerFactory { Singleton::Manager& singleton_manager_; }; +// For friend declaration in ClusterManagerInitHelper. +class ClusterManagerImpl; + /** * This is a helper class used during cluster management initialization. Dealing with primary * clusters, secondary clusters, and CDS, is quite complicated, so this makes it easier to test. @@ -128,6 +131,10 @@ class ClusterManagerInitHelper : Logger::Loggable { State state() const { return state_; } private: + // To enable invariant assertions on the cluster lists. + friend ClusterManagerImpl; + + void initializeSecondaryClusters(); void maybeFinishInitialize(); void onClusterInit(Cluster& cluster); @@ -173,7 +180,7 @@ class ClusterManagerImpl : public ClusterManager, Logger::Loggable distributeLoad(PriorityLoad& per_priority_load, return {first_available_priority, total_load}; } +// Returns true if the weights of all the hosts in the HostVector are equal. +bool hostWeightsAreEqual(const HostVector& hosts) { + if (hosts.size() <= 1) { + return true; + } + const uint32_t weight = hosts[0]->weight(); + for (size_t i = 1; i < hosts.size(); ++i) { + if (hosts[i]->weight() != weight) { + return false; + } + } + return true; +} + } // namespace std::pair @@ -629,6 +643,16 @@ void EdfLoadBalancerBase::refresh(uint32_t priority) { auto& scheduler = scheduler_[source] = Scheduler{}; refreshHostSource(source); + // Check if the original host weights are equal and skip EDF creation if they are. When all + // original weights are equal we can rely on unweighted host pick to do optimal round robin and + // least-loaded host selection with lower memory and CPU overhead. + if (hostWeightsAreEqual(hosts)) { + // Skip edf creation. + return; + } + + scheduler.edf_ = std::make_unique>(); + // Populate scheduler with host list. // TODO(mattklein123): We must build the EDF schedule even if all of the hosts are currently // weighted 1. This is because currently we don't refresh host sets if only weights change. @@ -639,7 +663,7 @@ void EdfLoadBalancerBase::refresh(uint32_t priority) { // notification, this will only be stale until this host is next picked, // at which point it is reinserted into the EdfScheduler with its new // weight in chooseHost(). - scheduler.edf_.add(hostWeight(*host), host); + scheduler.edf_->add(hostWeight(*host), host); } // Cycle through hosts to achieve the intended offset behavior. @@ -647,8 +671,8 @@ void EdfLoadBalancerBase::refresh(uint32_t priority) { // refreshes for the weighted case. if (!hosts.empty()) { for (uint32_t i = 0; i < seed_ % hosts.size(); ++i) { - auto host = scheduler.edf_.pick(); - scheduler.edf_.add(hostWeight(*host), host); + auto host = scheduler.edf_->pick(); + scheduler.edf_->add(hostWeight(*host), host); } } }; @@ -684,15 +708,12 @@ HostConstSharedPtr EdfLoadBalancerBase::chooseHostOnce(LoadBalancerContext* cont // As has been commented in both EdfLoadBalancerBase::refresh and // BaseDynamicClusterImpl::updateDynamicHostList, we must do a runtime pivot here to determine - // whether to use EDF or do unweighted (fast) selection. - // TODO(mattklein123): As commented elsewhere, this is wasteful, and we should just refresh the - // host set if any weights change. Additionally, it has the property that if all weights are - // the same but not 1 (like 42), we will use the EDF schedule not the unweighted pick. This is - // not optimal. If this is fixed, remove the note in the arch overview docs for the LR LB. - if (stats_.max_host_weight_.value() != 1) { - auto host = scheduler.edf_.pick(); + // whether to use EDF or do unweighted (fast) selection. EDF is non-null iff the original weights + // of 2 or more hosts differ. + if (scheduler.edf_ != nullptr) { + auto host = scheduler.edf_->pick(); if (host != nullptr) { - scheduler.edf_.add(hostWeight(*host), host); + scheduler.edf_->add(hostWeight(*host), host); } return host; } else { diff --git a/source/common/upstream/load_balancer_impl.h b/source/common/upstream/load_balancer_impl.h index 518ea5071121e..98fd0c75d7d1e 100644 --- a/source/common/upstream/load_balancer_impl.h +++ b/source/common/upstream/load_balancer_impl.h @@ -346,8 +346,10 @@ class EdfLoadBalancerBase : public ZoneAwareLoadBalancerBase { protected: struct Scheduler { - // EdfScheduler for weighted LB. - EdfScheduler edf_; + // EdfScheduler for weighted LB. The edf_ is only created when the original + // host weights of 2 or more hosts differ. When not present, the + // implementation of chooseHostOnce falls back to unweightedHostPick. + std::unique_ptr> edf_; }; void initialize(); @@ -408,12 +410,12 @@ class RoundRobinLoadBalancer : public EdfLoadBalancerBase { /** * Weighted Least Request load balancer. * - * In a normal setup when all hosts have the same weight of 1 it randomly picks up N healthy hosts + * In a normal setup when all hosts have the same weight it randomly picks up N healthy hosts * (where N is specified in the LB configuration) and compares number of active requests. Technique * is based on http://www.eecs.harvard.edu/~michaelm/postscripts/mythesis.pdf and is known as P2C * (power of two choices). * - * When any hosts have a weight that is not 1, an RR EDF schedule is used. Host weight is scaled + * When hosts have different weights, an RR EDF schedule is used. Host weight is scaled * by the number of active requests at pick/insert time. Thus, hosts will never fully drain as * they would in normal P2C, though they will get picked less and less often. In the future, we * can consider two alternate algorithms: @@ -442,11 +444,9 @@ class LeastRequestLoadBalancer : public EdfLoadBalancerBase { void refreshHostSource(const HostsSource&) override {} double hostWeight(const Host& host) override { // Here we scale host weight by the number of active requests at the time we do the pick. We - // always add 1 to avoid division by 0. Note that if all weights are 1, the EDF schedule is - // unlikely to yield the same result as P2C given the lack of randomness as well as the fact - // that hosts are always picked, regardless of their current request load at the time of pick. - // It might be possible to do better by picking two hosts off of the schedule, and selecting - // the one with fewer active requests at the time of selection. + // always add 1 to avoid division by 0. It might be possible to do better by picking two hosts + // off of the schedule, and selecting the one with fewer active requests at the time of + // selection. // TODO(mattklein123): @htuch brings up the point that how we are scaling weight here might not // be the only/best way of doing this. Essentially, it makes weight and active requests equally // important. Are they equally important in practice? There is no right answer here and we might diff --git a/source/common/upstream/upstream_impl.cc b/source/common/upstream/upstream_impl.cc index f44e01f5a5def..3bbfe5b3c111f 100644 --- a/source/common/upstream/upstream_impl.cc +++ b/source/common/upstream/upstream_impl.cc @@ -30,6 +30,7 @@ #include "common/network/socket_option_factory.h" #include "common/protobuf/protobuf.h" #include "common/protobuf/utility.h" +#include "common/runtime/runtime_impl.h" #include "common/upstream/eds.h" #include "common/upstream/health_checker_impl.h" #include "common/upstream/logical_dns_cluster.h" @@ -593,6 +594,10 @@ ClusterInfoImpl::ClusterInfoImpl( : runtime_(runtime), name_(config.name()), type_(config.type()), max_requests_per_connection_( PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, max_requests_per_connection, 0)), + max_response_headers_count_(PROTOBUF_GET_WRAPPED_OR_DEFAULT( + config.common_http_protocol_options(), max_headers_count, + runtime_.snapshot().getInteger(Http::MaxResponseHeadersCountOverrideKey, + Http::DEFAULT_MAX_HEADERS_COUNT))), connect_timeout_( std::chrono::milliseconds(PROTOBUF_GET_MS_REQUIRED(config, connect_timeout))), per_connection_buffer_limit_bytes_( @@ -674,6 +679,7 @@ ClusterInfoImpl::ClusterInfoImpl( idle_timeout_ = std::chrono::milliseconds( DurationUtil::durationToMilliseconds(config.common_http_protocol_options().idle_timeout())); } + if (config.has_eds_cluster_config()) { if (config.type() != envoy::api::v2::Cluster::EDS) { throw EnvoyException("eds_cluster_config set in a non-EDS cluster"); diff --git a/source/common/upstream/upstream_impl.h b/source/common/upstream/upstream_impl.h index 110b08bc955e7..8f24369e7bbdc 100644 --- a/source/common/upstream/upstream_impl.h +++ b/source/common/upstream/upstream_impl.h @@ -554,6 +554,7 @@ class ClusterInfoImpl : public ClusterInfo, protected Logger::Loggable idle_timeout_; const uint32_t per_connection_buffer_limit_bytes_; @@ -715,6 +717,8 @@ class ClusterImplBase : public Cluster, protected Logger::Loggable initialization_complete_callback_; diff --git a/source/docs/xDS_code_diagram.png b/source/docs/xDS_code_diagram.png new file mode 100644 index 0000000000000..ef4df79cc1e30 Binary files /dev/null and b/source/docs/xDS_code_diagram.png differ diff --git a/source/extensions/access_loggers/http_grpc/BUILD b/source/extensions/access_loggers/grpc/BUILD similarity index 67% rename from source/extensions/access_loggers/http_grpc/BUILD rename to source/extensions/access_loggers/grpc/BUILD index 941d950ff9c4a..e0e705952699b 100644 --- a/source/extensions/access_loggers/http_grpc/BUILD +++ b/source/extensions/access_loggers/grpc/BUILD @@ -24,7 +24,6 @@ envoy_cc_library( "//include/envoy/upstream:upstream_interface", "//source/common/grpc:async_client_lib", "//source/common/grpc:typed_async_client_lib", - "//source/common/network:utility_lib", "//source/extensions/access_loggers/common:access_log_base", "@envoy_api//envoy/config/accesslog/v2:als_cc", "@envoy_api//envoy/config/filter/accesslog/v2:accesslog_cc", @@ -32,6 +31,29 @@ envoy_cc_library( ], ) +envoy_cc_library( + name = "grpc_access_log_utils", + srcs = ["grpc_access_log_utils.cc"], + hdrs = ["grpc_access_log_utils.h"], + deps = [ + "//include/envoy/upstream:upstream_interface", + "//source/common/network:utility_lib", + "//source/common/stream_info:stream_info_lib", + "//source/common/stream_info:utility_lib", + "@envoy_api//envoy/data/accesslog/v2:accesslog_cc", + ], +) + +envoy_cc_library( + name = "http_grpc_access_log_lib", + srcs = ["http_grpc_access_log_impl.cc"], + hdrs = ["http_grpc_access_log_impl.h"], + deps = [ + ":grpc_access_log_lib", + ":grpc_access_log_utils", + ], +) + envoy_cc_library( name = "grpc_access_log_proto_descriptors_lib", srcs = ["grpc_access_log_proto_descriptors.cc"], @@ -44,16 +66,16 @@ envoy_cc_library( ) envoy_cc_library( - name = "config", - srcs = ["config.cc"], - hdrs = ["config.h"], + name = "http_config", + srcs = ["http_config.cc"], + hdrs = ["http_config.h"], deps = [ "//include/envoy/registry", "//include/envoy/server:access_log_config_interface", "//source/common/common:assert_lib", "//source/common/protobuf", "//source/extensions/access_loggers:well_known_names", - "//source/extensions/access_loggers/http_grpc:grpc_access_log_lib", - "//source/extensions/access_loggers/http_grpc:grpc_access_log_proto_descriptors_lib", + "//source/extensions/access_loggers/grpc:grpc_access_log_proto_descriptors_lib", + "//source/extensions/access_loggers/grpc:http_grpc_access_log_lib", ], ) diff --git a/source/extensions/access_loggers/grpc/grpc_access_log_impl.cc b/source/extensions/access_loggers/grpc/grpc_access_log_impl.cc new file mode 100644 index 0000000000000..38020326b7da6 --- /dev/null +++ b/source/extensions/access_loggers/grpc/grpc_access_log_impl.cc @@ -0,0 +1,114 @@ +#include "extensions/access_loggers/grpc/grpc_access_log_impl.h" + +#include "envoy/upstream/upstream.h" + +#include "common/common/assert.h" +#include "common/network/utility.h" +#include "common/stream_info/utility.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace GrpcCommon { + +void GrpcAccessLoggerImpl::LocalStream::onRemoteClose(Grpc::Status::GrpcStatus, + const std::string&) { + ASSERT(parent_.stream_ != absl::nullopt); + if (parent_.stream_->stream_ != nullptr) { + // Only reset if we have a stream. Otherwise we had an inline failure and we will clear the + // stream data in send(). + parent_.stream_.reset(); + } +} + +GrpcAccessLoggerImpl::GrpcAccessLoggerImpl(Grpc::RawAsyncClientPtr&& client, std::string log_name, + std::chrono::milliseconds buffer_flush_interval_msec, + uint64_t buffer_size_bytes, + Event::Dispatcher& dispatcher, + const LocalInfo::LocalInfo& local_info) + : client_(std::move(client)), log_name_(log_name), + buffer_flush_interval_msec_(buffer_flush_interval_msec), + flush_timer_(dispatcher.createTimer([this]() { + flush(); + flush_timer_->enableTimer(buffer_flush_interval_msec_); + })), + buffer_size_bytes_(buffer_size_bytes), local_info_(local_info) { + flush_timer_->enableTimer(buffer_flush_interval_msec_); +} + +void GrpcAccessLoggerImpl::log(envoy::data::accesslog::v2::HTTPAccessLogEntry&& entry) { + approximate_message_size_bytes_ += entry.ByteSizeLong(); + message_.mutable_http_logs()->add_log_entry()->Swap(&entry); + if (approximate_message_size_bytes_ >= buffer_size_bytes_) { + flush(); + } +} + +void GrpcAccessLoggerImpl::flush() { + if (!message_.has_http_logs()) { + // Nothing to flush. + return; + } + + if (stream_ == absl::nullopt) { + stream_.emplace(*this); + } + + if (stream_->stream_ == nullptr) { + stream_->stream_ = + client_->start(*Protobuf::DescriptorPool::generated_pool()->FindMethodByName( + "envoy.service.accesslog.v2.AccessLogService.StreamAccessLogs"), + *stream_); + + auto* identifier = message_.mutable_identifier(); + *identifier->mutable_node() = local_info_.node(); + identifier->set_log_name(log_name_); + } + + if (stream_->stream_ != nullptr) { + stream_->stream_->sendMessage(message_, false); + } else { + // Clear out the stream data due to stream creation failure. + stream_.reset(); + } + + // Clear the message regardless of the success. + approximate_message_size_bytes_ = 0; + message_.Clear(); +} + +GrpcAccessLoggerCacheImpl::GrpcAccessLoggerCacheImpl(Grpc::AsyncClientManager& async_client_manager, + Stats::Scope& scope, + ThreadLocal::SlotAllocator& tls, + const LocalInfo::LocalInfo& local_info) + : async_client_manager_(async_client_manager), scope_(scope), tls_slot_(tls.allocateSlot()), + local_info_(local_info) { + tls_slot_->set( + [](Event::Dispatcher& dispatcher) { return std::make_shared(dispatcher); }); +} + +GrpcAccessLoggerSharedPtr GrpcAccessLoggerCacheImpl::getOrCreateLogger( + const envoy::config::accesslog::v2::CommonGrpcAccessLogConfig& config) { + // TODO(euroelessar): Consider cleaning up loggers. + auto& cache = tls_slot_->getTyped(); + // TODO(lizan): Include logger type in the hash + const std::size_t cache_key = MessageUtil::hash(config); + const auto it = cache.access_loggers_.find(cache_key); + if (it != cache.access_loggers_.end()) { + return it->second; + } + const Grpc::AsyncClientFactoryPtr factory = + async_client_manager_.factoryForGrpcService(config.grpc_service(), scope_, false); + const GrpcAccessLoggerSharedPtr logger = std::make_shared( + factory->create(), config.log_name(), + std::chrono::milliseconds(PROTOBUF_GET_MS_OR_DEFAULT(config, buffer_flush_interval, 1000)), + PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, buffer_size_bytes, 16384), cache.dispatcher_, + local_info_); + cache.access_loggers_.emplace(cache_key, logger); + return logger; +} + +} // namespace GrpcCommon +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/access_loggers/http_grpc/grpc_access_log_impl.h b/source/extensions/access_loggers/grpc/grpc_access_log_impl.h similarity index 75% rename from source/extensions/access_loggers/http_grpc/grpc_access_log_impl.h rename to source/extensions/access_loggers/grpc/grpc_access_log_impl.h index 5fb8e152108c6..71745adc54d18 100644 --- a/source/extensions/access_loggers/http_grpc/grpc_access_log_impl.h +++ b/source/extensions/access_loggers/grpc/grpc_access_log_impl.h @@ -19,7 +19,7 @@ namespace Envoy { namespace Extensions { namespace AccessLoggers { -namespace HttpGrpc { +namespace GrpcCommon { // TODO(mattklein123): Stats @@ -127,44 +127,7 @@ class GrpcAccessLoggerCacheImpl : public Singleton::Instance, public GrpcAccessL const LocalInfo::LocalInfo& local_info_; }; -/** - * Access log Instance that streams HTTP logs over gRPC. - */ -class HttpGrpcAccessLog : public Common::ImplBase { -public: - HttpGrpcAccessLog(AccessLog::FilterPtr&& filter, - envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config, - ThreadLocal::SlotAllocator& tls, - GrpcAccessLoggerCacheSharedPtr access_logger_cache); - - static void responseFlagsToAccessLogResponseFlags( - envoy::data::accesslog::v2::AccessLogCommon& common_access_log, - const StreamInfo::StreamInfo& stream_info); - -private: - /** - * Per-thread cached logger. - */ - struct ThreadLocalLogger : public ThreadLocal::ThreadLocalObject { - ThreadLocalLogger(GrpcAccessLoggerSharedPtr logger); - - const GrpcAccessLoggerSharedPtr logger_; - }; - - // Common::ImplBase - void emitLog(const Http::HeaderMap& request_headers, const Http::HeaderMap& response_headers, - const Http::HeaderMap& response_trailers, - const StreamInfo::StreamInfo& stream_info) override; - - const envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config_; - const ThreadLocal::SlotPtr tls_slot_; - const GrpcAccessLoggerCacheSharedPtr access_logger_cache_; - std::vector request_headers_to_log_; - std::vector response_headers_to_log_; - std::vector response_trailers_to_log_; -}; - -} // namespace HttpGrpc +} // namespace GrpcCommon } // namespace AccessLoggers } // namespace Extensions -} // namespace Envoy +} // namespace Envoy \ No newline at end of file diff --git a/source/extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.cc b/source/extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.cc similarity index 87% rename from source/extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.cc rename to source/extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.cc index 4abb54f024cb7..3b038045ee89c 100644 --- a/source/extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.cc +++ b/source/extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.cc @@ -1,4 +1,4 @@ -#include "extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.h" +#include "extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.h" #include "envoy/service/accesslog/v2/als.pb.h" diff --git a/source/extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.h b/source/extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.h similarity index 100% rename from source/extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.h rename to source/extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.h diff --git a/source/extensions/access_loggers/grpc/grpc_access_log_utils.cc b/source/extensions/access_loggers/grpc/grpc_access_log_utils.cc new file mode 100644 index 0000000000000..6bab3fd1e2741 --- /dev/null +++ b/source/extensions/access_loggers/grpc/grpc_access_log_utils.cc @@ -0,0 +1,232 @@ +#include "extensions/access_loggers/grpc/grpc_access_log_utils.h" + +#include "envoy/upstream/upstream.h" + +#include "common/network/utility.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace GrpcCommon { + +namespace { + +using namespace envoy::data::accesslog::v2; + +// Helper function to convert from a BoringSSL textual representation of the +// TLS version to the corresponding enum value used in gRPC access logs. +TLSProperties_TLSVersion tlsVersionStringToEnum(const std::string& tls_version) { + if (tls_version == "TLSv1") { + return TLSProperties_TLSVersion_TLSv1; + } else if (tls_version == "TLSv1.1") { + return TLSProperties_TLSVersion_TLSv1_1; + } else if (tls_version == "TLSv1.2") { + return TLSProperties_TLSVersion_TLSv1_2; + } else if (tls_version == "TLSv1.3") { + return TLSProperties_TLSVersion_TLSv1_3; + } + + return TLSProperties_TLSVersion_VERSION_UNSPECIFIED; +} + +} // namespace + +void Utility::responseFlagsToAccessLogResponseFlags( + envoy::data::accesslog::v2::AccessLogCommon& common_access_log, + const StreamInfo::StreamInfo& stream_info) { + + static_assert(StreamInfo::ResponseFlag::LastFlag == 0x20000, + "A flag has been added. Fix this code."); + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::FailedLocalHealthCheck)) { + common_access_log.mutable_response_flags()->set_failed_local_healthcheck(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::NoHealthyUpstream)) { + common_access_log.mutable_response_flags()->set_no_healthy_upstream(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRequestTimeout)) { + common_access_log.mutable_response_flags()->set_upstream_request_timeout(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::LocalReset)) { + common_access_log.mutable_response_flags()->set_local_reset(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRemoteReset)) { + common_access_log.mutable_response_flags()->set_upstream_remote_reset(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamConnectionFailure)) { + common_access_log.mutable_response_flags()->set_upstream_connection_failure(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamConnectionTermination)) { + common_access_log.mutable_response_flags()->set_upstream_connection_termination(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamOverflow)) { + common_access_log.mutable_response_flags()->set_upstream_overflow(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::NoRouteFound)) { + common_access_log.mutable_response_flags()->set_no_route_found(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::DelayInjected)) { + common_access_log.mutable_response_flags()->set_delay_injected(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::FaultInjected)) { + common_access_log.mutable_response_flags()->set_fault_injected(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::RateLimited)) { + common_access_log.mutable_response_flags()->set_rate_limited(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UnauthorizedExternalService)) { + common_access_log.mutable_response_flags()->mutable_unauthorized_details()->set_reason( + envoy::data::accesslog::v2::ResponseFlags_Unauthorized_Reason:: + ResponseFlags_Unauthorized_Reason_EXTERNAL_SERVICE); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::RateLimitServiceError)) { + common_access_log.mutable_response_flags()->set_rate_limit_service_error(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::DownstreamConnectionTermination)) { + common_access_log.mutable_response_flags()->set_downstream_connection_termination(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRetryLimitExceeded)) { + common_access_log.mutable_response_flags()->set_upstream_retry_limit_exceeded(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::StreamIdleTimeout)) { + common_access_log.mutable_response_flags()->set_stream_idle_timeout(true); + } + + if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::InvalidEnvoyRequestHeaders)) { + common_access_log.mutable_response_flags()->set_invalid_envoy_request_headers(true); + } +} + +void Utility::extractCommonAccessLogProperties( + envoy::data::accesslog::v2::AccessLogCommon& common_access_log, + const StreamInfo::StreamInfo& stream_info) { + if (stream_info.downstreamRemoteAddress() != nullptr) { + Network::Utility::addressToProtobufAddress( + *stream_info.downstreamRemoteAddress(), + *common_access_log.mutable_downstream_remote_address()); + } + if (stream_info.downstreamLocalAddress() != nullptr) { + Network::Utility::addressToProtobufAddress( + *stream_info.downstreamLocalAddress(), + *common_access_log.mutable_downstream_local_address()); + } + if (stream_info.downstreamSslConnection() != nullptr) { + auto* tls_properties = common_access_log.mutable_tls_properties(); + const auto* downstream_ssl_connection = stream_info.downstreamSslConnection(); + + tls_properties->set_tls_sni_hostname(stream_info.requestedServerName()); + + auto* local_properties = tls_properties->mutable_local_certificate_properties(); + for (const auto& uri_san : downstream_ssl_connection->uriSanLocalCertificate()) { + auto* local_san = local_properties->add_subject_alt_name(); + local_san->set_uri(uri_san); + } + local_properties->set_subject(downstream_ssl_connection->subjectLocalCertificate()); + + auto* peer_properties = tls_properties->mutable_peer_certificate_properties(); + for (const auto& uri_san : downstream_ssl_connection->uriSanPeerCertificate()) { + auto* peer_san = peer_properties->add_subject_alt_name(); + peer_san->set_uri(uri_san); + } + + peer_properties->set_subject(downstream_ssl_connection->subjectPeerCertificate()); + tls_properties->set_tls_session_id(downstream_ssl_connection->sessionId()); + tls_properties->set_tls_version( + tlsVersionStringToEnum(downstream_ssl_connection->tlsVersion())); + + auto* local_tls_cipher_suite = tls_properties->mutable_tls_cipher_suite(); + local_tls_cipher_suite->set_value(downstream_ssl_connection->ciphersuiteId()); + } + common_access_log.mutable_start_time()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToTimestamp( + std::chrono::duration_cast( + stream_info.startTime().time_since_epoch()) + .count())); + + absl::optional dur = stream_info.lastDownstreamRxByteReceived(); + if (dur) { + common_access_log.mutable_time_to_last_rx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.firstUpstreamTxByteSent(); + if (dur) { + common_access_log.mutable_time_to_first_upstream_tx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.lastUpstreamTxByteSent(); + if (dur) { + common_access_log.mutable_time_to_last_upstream_tx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.firstUpstreamRxByteReceived(); + if (dur) { + common_access_log.mutable_time_to_first_upstream_rx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.lastUpstreamRxByteReceived(); + if (dur) { + common_access_log.mutable_time_to_last_upstream_rx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.firstDownstreamTxByteSent(); + if (dur) { + common_access_log.mutable_time_to_first_downstream_tx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + dur = stream_info.lastDownstreamTxByteSent(); + if (dur) { + common_access_log.mutable_time_to_last_downstream_tx_byte()->MergeFrom( + Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); + } + + if (stream_info.upstreamHost() != nullptr) { + Network::Utility::addressToProtobufAddress( + *stream_info.upstreamHost()->address(), + *common_access_log.mutable_upstream_remote_address()); + common_access_log.set_upstream_cluster(stream_info.upstreamHost()->cluster().name()); + } + + if (!stream_info.getRouteName().empty()) { + common_access_log.set_route_name(stream_info.getRouteName()); + } + + if (stream_info.upstreamLocalAddress() != nullptr) { + Network::Utility::addressToProtobufAddress(*stream_info.upstreamLocalAddress(), + *common_access_log.mutable_upstream_local_address()); + } + responseFlagsToAccessLogResponseFlags(common_access_log, stream_info); + if (!stream_info.upstreamTransportFailureReason().empty()) { + common_access_log.set_upstream_transport_failure_reason( + stream_info.upstreamTransportFailureReason()); + } + if (stream_info.dynamicMetadata().filter_metadata_size() > 0) { + common_access_log.mutable_metadata()->MergeFrom(stream_info.dynamicMetadata()); + } +} + +} // namespace GrpcCommon +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy \ No newline at end of file diff --git a/source/extensions/access_loggers/grpc/grpc_access_log_utils.h b/source/extensions/access_loggers/grpc/grpc_access_log_utils.h new file mode 100644 index 0000000000000..1ba23cd6d169a --- /dev/null +++ b/source/extensions/access_loggers/grpc/grpc_access_log_utils.h @@ -0,0 +1,25 @@ +#pragma once + +#include "envoy/data/accesslog/v2/accesslog.pb.h" +#include "envoy/stream_info/stream_info.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace GrpcCommon { + +class Utility { +public: + static void + extractCommonAccessLogProperties(envoy::data::accesslog::v2::AccessLogCommon& common_access_log, + const StreamInfo::StreamInfo& stream_info); + + static void responseFlagsToAccessLogResponseFlags( + envoy::data::accesslog::v2::AccessLogCommon& common_access_log, + const StreamInfo::StreamInfo& stream_info); +}; + +} // namespace GrpcCommon +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy \ No newline at end of file diff --git a/source/extensions/access_loggers/http_grpc/config.cc b/source/extensions/access_loggers/grpc/http_config.cc similarity index 82% rename from source/extensions/access_loggers/http_grpc/config.cc rename to source/extensions/access_loggers/grpc/http_config.cc index a58327004da5a..2e3f19e879271 100644 --- a/source/extensions/access_loggers/http_grpc/config.cc +++ b/source/extensions/access_loggers/grpc/http_config.cc @@ -1,4 +1,4 @@ -#include "extensions/access_loggers/http_grpc/config.h" +#include "extensions/access_loggers/grpc/http_config.h" #include "envoy/config/accesslog/v2/als.pb.validate.h" #include "envoy/config/filter/accesslog/v2/accesslog.pb.validate.h" @@ -10,8 +10,8 @@ #include "common/grpc/async_client_impl.h" #include "common/protobuf/protobuf.h" -#include "extensions/access_loggers/http_grpc/grpc_access_log_impl.h" -#include "extensions/access_loggers/http_grpc/grpc_access_log_proto_descriptors.h" +#include "extensions/access_loggers/grpc/grpc_access_log_proto_descriptors.h" +#include "extensions/access_loggers/grpc/http_grpc_access_log_impl.h" #include "extensions/access_loggers/well_known_names.h" namespace Envoy { @@ -30,10 +30,10 @@ HttpGrpcAccessLogFactory::createAccessLogInstance(const Protobuf::Message& confi const auto& proto_config = MessageUtil::downcastAndValidate< const envoy::config::accesslog::v2::HttpGrpcAccessLogConfig&>(config); - std::shared_ptr grpc_access_logger_cache = - context.singletonManager().getTyped( + std::shared_ptr grpc_access_logger_cache = + context.singletonManager().getTyped( SINGLETON_MANAGER_REGISTERED_NAME(grpc_access_logger_cache), [&context] { - return std::make_shared( + return std::make_shared( context.clusterManager().grpcAsyncClientManager(), context.scope(), context.threadLocal(), context.localInfo()); }); diff --git a/source/extensions/access_loggers/http_grpc/config.h b/source/extensions/access_loggers/grpc/http_config.h similarity index 89% rename from source/extensions/access_loggers/http_grpc/config.h rename to source/extensions/access_loggers/grpc/http_config.h index df13bcdb96d1e..9e046ac39218f 100644 --- a/source/extensions/access_loggers/http_grpc/config.h +++ b/source/extensions/access_loggers/grpc/http_config.h @@ -23,7 +23,7 @@ class HttpGrpcAccessLogFactory : public Server::Configuration::AccessLogInstance std::string name() const override; }; -// TODO(mattklein123): Add TCP access log and refactor into base/concrete gRPC access logs. +// TODO(mattklein123): Add TCP access log. } // namespace HttpGrpc } // namespace AccessLoggers diff --git a/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.cc b/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.cc new file mode 100644 index 0000000000000..e31eeeb33722c --- /dev/null +++ b/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.cc @@ -0,0 +1,156 @@ +#include "extensions/access_loggers/grpc/http_grpc_access_log_impl.h" + +#include "common/common/assert.h" +#include "common/network/utility.h" +#include "common/stream_info/utility.h" + +#include "extensions/access_loggers/grpc/grpc_access_log_utils.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace HttpGrpc { + +HttpGrpcAccessLog::ThreadLocalLogger::ThreadLocalLogger( + GrpcCommon::GrpcAccessLoggerSharedPtr logger) + : logger_(std::move(logger)) {} + +HttpGrpcAccessLog::HttpGrpcAccessLog(AccessLog::FilterPtr&& filter, + envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config, + ThreadLocal::SlotAllocator& tls, + GrpcCommon::GrpcAccessLoggerCacheSharedPtr access_logger_cache) + : Common::ImplBase(std::move(filter)), config_(std::move(config)), + tls_slot_(tls.allocateSlot()), access_logger_cache_(std::move(access_logger_cache)) { + for (const auto& header : config_.additional_request_headers_to_log()) { + request_headers_to_log_.emplace_back(header); + } + + for (const auto& header : config_.additional_response_headers_to_log()) { + response_headers_to_log_.emplace_back(header); + } + + for (const auto& header : config_.additional_response_trailers_to_log()) { + response_trailers_to_log_.emplace_back(header); + } + + tls_slot_->set([this](Event::Dispatcher&) { + return std::make_shared( + access_logger_cache_->getOrCreateLogger(config_.common_config())); + }); +} + +void HttpGrpcAccessLog::emitLog(const Http::HeaderMap& request_headers, + const Http::HeaderMap& response_headers, + const Http::HeaderMap& response_trailers, + const StreamInfo::StreamInfo& stream_info) { + // Common log properties. + // TODO(mattklein123): Populate sample_rate field. + envoy::data::accesslog::v2::HTTPAccessLogEntry log_entry; + GrpcCommon::Utility::extractCommonAccessLogProperties(*log_entry.mutable_common_properties(), + stream_info); + + if (stream_info.protocol()) { + switch (stream_info.protocol().value()) { + case Http::Protocol::Http10: + log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP10); + break; + case Http::Protocol::Http11: + log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP11); + break; + case Http::Protocol::Http2: + log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP2); + break; + } + } + + // HTTP request properties. + // TODO(mattklein123): Populate port field. + auto* request_properties = log_entry.mutable_request(); + if (request_headers.Scheme() != nullptr) { + request_properties->set_scheme(std::string(request_headers.Scheme()->value().getStringView())); + } + if (request_headers.Host() != nullptr) { + request_properties->set_authority(std::string(request_headers.Host()->value().getStringView())); + } + if (request_headers.Path() != nullptr) { + request_properties->set_path(std::string(request_headers.Path()->value().getStringView())); + } + if (request_headers.UserAgent() != nullptr) { + request_properties->set_user_agent( + std::string(request_headers.UserAgent()->value().getStringView())); + } + if (request_headers.Referer() != nullptr) { + request_properties->set_referer( + std::string(request_headers.Referer()->value().getStringView())); + } + if (request_headers.ForwardedFor() != nullptr) { + request_properties->set_forwarded_for( + std::string(request_headers.ForwardedFor()->value().getStringView())); + } + if (request_headers.RequestId() != nullptr) { + request_properties->set_request_id( + std::string(request_headers.RequestId()->value().getStringView())); + } + if (request_headers.EnvoyOriginalPath() != nullptr) { + request_properties->set_original_path( + std::string(request_headers.EnvoyOriginalPath()->value().getStringView())); + } + request_properties->set_request_headers_bytes(request_headers.byteSize().value()); + request_properties->set_request_body_bytes(stream_info.bytesReceived()); + if (request_headers.Method() != nullptr) { + envoy::api::v2::core::RequestMethod method = + envoy::api::v2::core::RequestMethod::METHOD_UNSPECIFIED; + envoy::api::v2::core::RequestMethod_Parse( + std::string(request_headers.Method()->value().getStringView()), &method); + request_properties->set_request_method(method); + } + if (!request_headers_to_log_.empty()) { + auto* logged_headers = request_properties->mutable_request_headers(); + + for (const auto& header : request_headers_to_log_) { + const Http::HeaderEntry* entry = request_headers.get(header); + if (entry != nullptr) { + logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); + } + } + } + + // HTTP response properties. + auto* response_properties = log_entry.mutable_response(); + if (stream_info.responseCode()) { + response_properties->mutable_response_code()->set_value(stream_info.responseCode().value()); + } + if (stream_info.responseCodeDetails()) { + response_properties->set_response_code_details(stream_info.responseCodeDetails().value()); + } + response_properties->set_response_headers_bytes(response_headers.byteSize().value()); + response_properties->set_response_body_bytes(stream_info.bytesSent()); + if (!response_headers_to_log_.empty()) { + auto* logged_headers = response_properties->mutable_response_headers(); + + for (const auto& header : response_headers_to_log_) { + const Http::HeaderEntry* entry = response_headers.get(header); + if (entry != nullptr) { + logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); + } + } + } + + if (!response_trailers_to_log_.empty()) { + auto* logged_headers = response_properties->mutable_response_trailers(); + + for (const auto& header : response_trailers_to_log_) { + const Http::HeaderEntry* entry = response_trailers.get(header); + if (entry != nullptr) { + logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); + } + } + } + + tls_slot_->getTyped().logger_->log(std::move(log_entry)); +} + +} // namespace HttpGrpc +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.h b/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.h new file mode 100644 index 0000000000000..6fa2b505eac3a --- /dev/null +++ b/source/extensions/access_loggers/grpc/http_grpc_access_log_impl.h @@ -0,0 +1,63 @@ +#pragma once + +#include +#include + +#include "envoy/config/accesslog/v2/als.pb.h" +#include "envoy/config/filter/accesslog/v2/accesslog.pb.h" +#include "envoy/grpc/async_client.h" +#include "envoy/grpc/async_client_manager.h" +#include "envoy/local_info/local_info.h" +#include "envoy/service/accesslog/v2/als.pb.h" +#include "envoy/singleton/instance.h" +#include "envoy/thread_local/thread_local.h" + +#include "common/grpc/typed_async_client.h" + +#include "extensions/access_loggers/common/access_log_base.h" +#include "extensions/access_loggers/grpc/grpc_access_log_impl.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace HttpGrpc { + +// TODO(mattklein123): Stats + +/** + * Access log Instance that streams HTTP logs over gRPC. + */ +class HttpGrpcAccessLog : public Common::ImplBase { +public: + HttpGrpcAccessLog(AccessLog::FilterPtr&& filter, + envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config, + ThreadLocal::SlotAllocator& tls, + GrpcCommon::GrpcAccessLoggerCacheSharedPtr access_logger_cache); + +private: + /** + * Per-thread cached logger. + */ + struct ThreadLocalLogger : public ThreadLocal::ThreadLocalObject { + ThreadLocalLogger(GrpcCommon::GrpcAccessLoggerSharedPtr logger); + + const GrpcCommon::GrpcAccessLoggerSharedPtr logger_; + }; + + // Common::ImplBase + void emitLog(const Http::HeaderMap& request_headers, const Http::HeaderMap& response_headers, + const Http::HeaderMap& response_trailers, + const StreamInfo::StreamInfo& stream_info) override; + + const envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config_; + const ThreadLocal::SlotPtr tls_slot_; + const GrpcCommon::GrpcAccessLoggerCacheSharedPtr access_logger_cache_; + std::vector request_headers_to_log_; + std::vector response_headers_to_log_; + std::vector response_trailers_to_log_; +}; + +} // namespace HttpGrpc +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/access_loggers/http_grpc/grpc_access_log_impl.cc b/source/extensions/access_loggers/http_grpc/grpc_access_log_impl.cc deleted file mode 100644 index 17a443881c5cd..0000000000000 --- a/source/extensions/access_loggers/http_grpc/grpc_access_log_impl.cc +++ /dev/null @@ -1,462 +0,0 @@ -#include "extensions/access_loggers/http_grpc/grpc_access_log_impl.h" - -#include "envoy/upstream/upstream.h" - -#include "common/common/assert.h" -#include "common/network/utility.h" -#include "common/stream_info/utility.h" - -namespace Envoy { -namespace Extensions { -namespace AccessLoggers { -namespace HttpGrpc { - -namespace { - -using namespace envoy::data::accesslog::v2; - -// Helper function to convert from a BoringSSL textual representation of the -// TLS version to the corresponding enum value used in gRPC access logs. -TLSProperties_TLSVersion tlsVersionStringToEnum(const std::string& tls_version) { - if (tls_version == "TLSv1") { - return TLSProperties_TLSVersion_TLSv1; - } else if (tls_version == "TLSv1.1") { - return TLSProperties_TLSVersion_TLSv1_1; - } else if (tls_version == "TLSv1.2") { - return TLSProperties_TLSVersion_TLSv1_2; - } else if (tls_version == "TLSv1.3") { - return TLSProperties_TLSVersion_TLSv1_3; - } - - return TLSProperties_TLSVersion_VERSION_UNSPECIFIED; -} -}; // namespace - -void GrpcAccessLoggerImpl::LocalStream::onRemoteClose(Grpc::Status::GrpcStatus, - const std::string&) { - ASSERT(parent_.stream_ != absl::nullopt); - if (parent_.stream_->stream_ != nullptr) { - // Only reset if we have a stream. Otherwise we had an inline failure and we will clear the - // stream data in send(). - parent_.stream_.reset(); - } -} - -GrpcAccessLoggerImpl::GrpcAccessLoggerImpl(Grpc::RawAsyncClientPtr&& client, std::string log_name, - std::chrono::milliseconds buffer_flush_interval_msec, - uint64_t buffer_size_bytes, - Event::Dispatcher& dispatcher, - const LocalInfo::LocalInfo& local_info) - : client_(std::move(client)), log_name_(log_name), - buffer_flush_interval_msec_(buffer_flush_interval_msec), - flush_timer_(dispatcher.createTimer([this]() { - flush(); - flush_timer_->enableTimer(buffer_flush_interval_msec_); - })), - buffer_size_bytes_(buffer_size_bytes), local_info_(local_info) { - flush_timer_->enableTimer(buffer_flush_interval_msec_); -} - -void GrpcAccessLoggerImpl::log(envoy::data::accesslog::v2::HTTPAccessLogEntry&& entry) { - approximate_message_size_bytes_ += entry.ByteSizeLong(); - message_.mutable_http_logs()->add_log_entry()->Swap(&entry); - if (approximate_message_size_bytes_ >= buffer_size_bytes_) { - flush(); - } -} - -void GrpcAccessLoggerImpl::flush() { - if (!message_.has_http_logs()) { - // Nothing to flush. - return; - } - - if (stream_ == absl::nullopt) { - stream_.emplace(*this); - } - - if (stream_->stream_ == nullptr) { - stream_->stream_ = - client_->start(*Protobuf::DescriptorPool::generated_pool()->FindMethodByName( - "envoy.service.accesslog.v2.AccessLogService.StreamAccessLogs"), - *stream_); - - auto* identifier = message_.mutable_identifier(); - *identifier->mutable_node() = local_info_.node(); - identifier->set_log_name(log_name_); - } - - if (stream_->stream_ != nullptr) { - stream_->stream_->sendMessage(message_, false); - } else { - // Clear out the stream data due to stream creation failure. - stream_.reset(); - } - - // Clear the message regardless of the success. - approximate_message_size_bytes_ = 0; - message_.Clear(); -} - -GrpcAccessLoggerCacheImpl::GrpcAccessLoggerCacheImpl(Grpc::AsyncClientManager& async_client_manager, - Stats::Scope& scope, - ThreadLocal::SlotAllocator& tls, - const LocalInfo::LocalInfo& local_info) - : async_client_manager_(async_client_manager), scope_(scope), tls_slot_(tls.allocateSlot()), - local_info_(local_info) { - tls_slot_->set( - [](Event::Dispatcher& dispatcher) { return std::make_shared(dispatcher); }); -} - -GrpcAccessLoggerSharedPtr GrpcAccessLoggerCacheImpl::getOrCreateLogger( - const envoy::config::accesslog::v2::CommonGrpcAccessLogConfig& config) { - // TODO(euroelessar): Consider cleaning up loggers. - auto& cache = tls_slot_->getTyped(); - const std::size_t cache_key = MessageUtil::hash(config); - const auto it = cache.access_loggers_.find(cache_key); - if (it != cache.access_loggers_.end()) { - return it->second; - } - const Grpc::AsyncClientFactoryPtr factory = - async_client_manager_.factoryForGrpcService(config.grpc_service(), scope_, false); - const GrpcAccessLoggerSharedPtr logger = std::make_shared( - factory->create(), config.log_name(), - std::chrono::milliseconds(PROTOBUF_GET_MS_OR_DEFAULT(config, buffer_flush_interval, 1000)), - PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, buffer_size_bytes, 16384), cache.dispatcher_, - local_info_); - cache.access_loggers_.emplace(cache_key, logger); - return logger; -} - -HttpGrpcAccessLog::ThreadLocalLogger::ThreadLocalLogger(GrpcAccessLoggerSharedPtr logger) - : logger_(std::move(logger)) {} - -HttpGrpcAccessLog::HttpGrpcAccessLog(AccessLog::FilterPtr&& filter, - envoy::config::accesslog::v2::HttpGrpcAccessLogConfig config, - ThreadLocal::SlotAllocator& tls, - GrpcAccessLoggerCacheSharedPtr access_logger_cache) - : Common::ImplBase(std::move(filter)), config_(std::move(config)), - tls_slot_(tls.allocateSlot()), access_logger_cache_(std::move(access_logger_cache)) { - for (const auto& header : config_.additional_request_headers_to_log()) { - request_headers_to_log_.emplace_back(header); - } - - for (const auto& header : config_.additional_response_headers_to_log()) { - response_headers_to_log_.emplace_back(header); - } - - for (const auto& header : config_.additional_response_trailers_to_log()) { - response_trailers_to_log_.emplace_back(header); - } - - tls_slot_->set([this](Event::Dispatcher&) { - return std::make_shared( - access_logger_cache_->getOrCreateLogger(config_.common_config())); - }); -} - -void HttpGrpcAccessLog::responseFlagsToAccessLogResponseFlags( - envoy::data::accesslog::v2::AccessLogCommon& common_access_log, - const StreamInfo::StreamInfo& stream_info) { - - static_assert(StreamInfo::ResponseFlag::LastFlag == 0x20000, - "A flag has been added. Fix this code."); - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::FailedLocalHealthCheck)) { - common_access_log.mutable_response_flags()->set_failed_local_healthcheck(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::NoHealthyUpstream)) { - common_access_log.mutable_response_flags()->set_no_healthy_upstream(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRequestTimeout)) { - common_access_log.mutable_response_flags()->set_upstream_request_timeout(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::LocalReset)) { - common_access_log.mutable_response_flags()->set_local_reset(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRemoteReset)) { - common_access_log.mutable_response_flags()->set_upstream_remote_reset(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamConnectionFailure)) { - common_access_log.mutable_response_flags()->set_upstream_connection_failure(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamConnectionTermination)) { - common_access_log.mutable_response_flags()->set_upstream_connection_termination(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamOverflow)) { - common_access_log.mutable_response_flags()->set_upstream_overflow(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::NoRouteFound)) { - common_access_log.mutable_response_flags()->set_no_route_found(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::DelayInjected)) { - common_access_log.mutable_response_flags()->set_delay_injected(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::FaultInjected)) { - common_access_log.mutable_response_flags()->set_fault_injected(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::RateLimited)) { - common_access_log.mutable_response_flags()->set_rate_limited(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UnauthorizedExternalService)) { - common_access_log.mutable_response_flags()->mutable_unauthorized_details()->set_reason( - envoy::data::accesslog::v2::ResponseFlags_Unauthorized_Reason:: - ResponseFlags_Unauthorized_Reason_EXTERNAL_SERVICE); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::RateLimitServiceError)) { - common_access_log.mutable_response_flags()->set_rate_limit_service_error(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::DownstreamConnectionTermination)) { - common_access_log.mutable_response_flags()->set_downstream_connection_termination(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::UpstreamRetryLimitExceeded)) { - common_access_log.mutable_response_flags()->set_upstream_retry_limit_exceeded(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::StreamIdleTimeout)) { - common_access_log.mutable_response_flags()->set_stream_idle_timeout(true); - } - - if (stream_info.hasResponseFlag(StreamInfo::ResponseFlag::InvalidEnvoyRequestHeaders)) { - common_access_log.mutable_response_flags()->set_invalid_envoy_request_headers(true); - } -} - -void HttpGrpcAccessLog::emitLog(const Http::HeaderMap& request_headers, - const Http::HeaderMap& response_headers, - const Http::HeaderMap& response_trailers, - const StreamInfo::StreamInfo& stream_info) { - // Common log properties. - // TODO(mattklein123): Populate sample_rate field. - envoy::data::accesslog::v2::HTTPAccessLogEntry log_entry; - auto* common_properties = log_entry.mutable_common_properties(); - - if (stream_info.downstreamRemoteAddress() != nullptr) { - Network::Utility::addressToProtobufAddress( - *stream_info.downstreamRemoteAddress(), - *common_properties->mutable_downstream_remote_address()); - } - if (stream_info.downstreamLocalAddress() != nullptr) { - Network::Utility::addressToProtobufAddress( - *stream_info.downstreamLocalAddress(), - *common_properties->mutable_downstream_local_address()); - } - if (stream_info.downstreamSslConnection() != nullptr) { - auto* tls_properties = common_properties->mutable_tls_properties(); - const auto* downstream_ssl_connection = stream_info.downstreamSslConnection(); - - tls_properties->set_tls_sni_hostname(stream_info.requestedServerName()); - - auto* local_properties = tls_properties->mutable_local_certificate_properties(); - for (const auto& uri_san : downstream_ssl_connection->uriSanLocalCertificate()) { - auto* local_san = local_properties->add_subject_alt_name(); - local_san->set_uri(uri_san); - } - local_properties->set_subject(downstream_ssl_connection->subjectLocalCertificate()); - - auto* peer_properties = tls_properties->mutable_peer_certificate_properties(); - for (const auto& uri_san : downstream_ssl_connection->uriSanPeerCertificate()) { - auto* peer_san = peer_properties->add_subject_alt_name(); - peer_san->set_uri(uri_san); - } - - peer_properties->set_subject(downstream_ssl_connection->subjectPeerCertificate()); - tls_properties->set_tls_session_id(downstream_ssl_connection->sessionId()); - tls_properties->set_tls_version( - tlsVersionStringToEnum(downstream_ssl_connection->tlsVersion())); - - auto* local_tls_cipher_suite = tls_properties->mutable_tls_cipher_suite(); - local_tls_cipher_suite->set_value(downstream_ssl_connection->ciphersuiteId()); - } - common_properties->mutable_start_time()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToTimestamp( - std::chrono::duration_cast( - stream_info.startTime().time_since_epoch()) - .count())); - - absl::optional dur = stream_info.lastDownstreamRxByteReceived(); - if (dur) { - common_properties->mutable_time_to_last_rx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.firstUpstreamTxByteSent(); - if (dur) { - common_properties->mutable_time_to_first_upstream_tx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.lastUpstreamTxByteSent(); - if (dur) { - common_properties->mutable_time_to_last_upstream_tx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.firstUpstreamRxByteReceived(); - if (dur) { - common_properties->mutable_time_to_first_upstream_rx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.lastUpstreamRxByteReceived(); - if (dur) { - common_properties->mutable_time_to_last_upstream_rx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.firstDownstreamTxByteSent(); - if (dur) { - common_properties->mutable_time_to_first_downstream_tx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - dur = stream_info.lastDownstreamTxByteSent(); - if (dur) { - common_properties->mutable_time_to_last_downstream_tx_byte()->MergeFrom( - Protobuf::util::TimeUtil::NanosecondsToDuration(dur.value().count())); - } - - if (stream_info.upstreamHost() != nullptr) { - Network::Utility::addressToProtobufAddress( - *stream_info.upstreamHost()->address(), - *common_properties->mutable_upstream_remote_address()); - common_properties->set_upstream_cluster(stream_info.upstreamHost()->cluster().name()); - } - - if (!stream_info.getRouteName().empty()) { - common_properties->set_route_name(stream_info.getRouteName()); - } - - if (stream_info.upstreamLocalAddress() != nullptr) { - Network::Utility::addressToProtobufAddress( - *stream_info.upstreamLocalAddress(), *common_properties->mutable_upstream_local_address()); - } - responseFlagsToAccessLogResponseFlags(*common_properties, stream_info); - if (!stream_info.upstreamTransportFailureReason().empty()) { - common_properties->set_upstream_transport_failure_reason( - stream_info.upstreamTransportFailureReason()); - } - if (stream_info.dynamicMetadata().filter_metadata_size() > 0) { - common_properties->mutable_metadata()->MergeFrom(stream_info.dynamicMetadata()); - } - - if (stream_info.protocol()) { - switch (stream_info.protocol().value()) { - case Http::Protocol::Http10: - log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP10); - break; - case Http::Protocol::Http11: - log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP11); - break; - case Http::Protocol::Http2: - log_entry.set_protocol_version(envoy::data::accesslog::v2::HTTPAccessLogEntry::HTTP2); - break; - } - } - - // HTTP request properties. - // TODO(mattklein123): Populate port field. - auto* request_properties = log_entry.mutable_request(); - if (request_headers.Scheme() != nullptr) { - request_properties->set_scheme(std::string(request_headers.Scheme()->value().getStringView())); - } - if (request_headers.Host() != nullptr) { - request_properties->set_authority(std::string(request_headers.Host()->value().getStringView())); - } - if (request_headers.Path() != nullptr) { - request_properties->set_path(std::string(request_headers.Path()->value().getStringView())); - } - if (request_headers.UserAgent() != nullptr) { - request_properties->set_user_agent( - std::string(request_headers.UserAgent()->value().getStringView())); - } - if (request_headers.Referer() != nullptr) { - request_properties->set_referer( - std::string(request_headers.Referer()->value().getStringView())); - } - if (request_headers.ForwardedFor() != nullptr) { - request_properties->set_forwarded_for( - std::string(request_headers.ForwardedFor()->value().getStringView())); - } - if (request_headers.RequestId() != nullptr) { - request_properties->set_request_id( - std::string(request_headers.RequestId()->value().getStringView())); - } - if (request_headers.EnvoyOriginalPath() != nullptr) { - request_properties->set_original_path( - std::string(request_headers.EnvoyOriginalPath()->value().getStringView())); - } - request_properties->set_request_headers_bytes(request_headers.byteSize()); - request_properties->set_request_body_bytes(stream_info.bytesReceived()); - if (request_headers.Method() != nullptr) { - envoy::api::v2::core::RequestMethod method = - envoy::api::v2::core::RequestMethod::METHOD_UNSPECIFIED; - envoy::api::v2::core::RequestMethod_Parse( - std::string(request_headers.Method()->value().getStringView()), &method); - request_properties->set_request_method(method); - } - if (!request_headers_to_log_.empty()) { - auto* logged_headers = request_properties->mutable_request_headers(); - - for (const auto& header : request_headers_to_log_) { - const Http::HeaderEntry* entry = request_headers.get(header); - if (entry != nullptr) { - logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); - } - } - } - - // HTTP response properties. - auto* response_properties = log_entry.mutable_response(); - if (stream_info.responseCode()) { - response_properties->mutable_response_code()->set_value(stream_info.responseCode().value()); - } - if (stream_info.responseCodeDetails()) { - response_properties->set_response_code_details(stream_info.responseCodeDetails().value()); - } - response_properties->set_response_headers_bytes(response_headers.byteSize()); - response_properties->set_response_body_bytes(stream_info.bytesSent()); - if (!response_headers_to_log_.empty()) { - auto* logged_headers = response_properties->mutable_response_headers(); - - for (const auto& header : response_headers_to_log_) { - const Http::HeaderEntry* entry = response_headers.get(header); - if (entry != nullptr) { - logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); - } - } - } - - if (!response_trailers_to_log_.empty()) { - auto* logged_headers = response_properties->mutable_response_trailers(); - - for (const auto& header : response_trailers_to_log_) { - const Http::HeaderEntry* entry = response_trailers.get(header); - if (entry != nullptr) { - logged_headers->insert({header.get(), std::string(entry->value().getStringView())}); - } - } - } - - tls_slot_->getTyped().logger_->log(std::move(log_entry)); -} - -} // namespace HttpGrpc -} // namespace AccessLoggers -} // namespace Extensions -} // namespace Envoy diff --git a/source/extensions/access_loggers/wasm/config.cc b/source/extensions/access_loggers/wasm/config.cc index e77d006a7296e..bb8ae9ddf86e4 100644 --- a/source/extensions/access_loggers/wasm/config.cc +++ b/source/extensions/access_loggers/wasm/config.cc @@ -35,8 +35,9 @@ WasmAccessLogFactory::createAccessLogInstance(const Protobuf::Message& proto_con // individual threads. auto base_wasm = Common::Wasm::createWasm( vm_id, config.vm_config(), root_id, context.clusterManager(), context.dispatcher(), - context.api(), context.scope(), context.localInfo(), &context.listenerMetadata(), - nullptr /* owned_scope */); + context.api(), context.scope(), + Common::Wasm::pluginDirectionFromTrafficDirection(context.direction()), context.localInfo(), + &context.listenerMetadata(), nullptr /* owned_scope */); // NB: the Slot set() call doesn't complete inline, so all arguments must outlive this call. tls_slot->set([base_wasm, root_id, configuration](Event::Dispatcher& dispatcher) { auto result = diff --git a/source/extensions/clusters/redis/BUILD b/source/extensions/clusters/redis/BUILD index d6238dc9fd3d1..7608fa092f9ad 100644 --- a/source/extensions/clusters/redis/BUILD +++ b/source/extensions/clusters/redis/BUILD @@ -29,6 +29,9 @@ envoy_cc_library( "//source/common/upstream:upstream_includes", "//source/common/upstream:upstream_lib", "//source/extensions/clusters:well_known_names", + "//source/extensions/filters/network/common/redis:client_interface", + "//source/extensions/filters/network/common/redis:codec_interface", + "//source/extensions/filters/network/common/redis:supported_commands_lib", ], ) diff --git a/source/extensions/clusters/redis/redis_cluster.cc b/source/extensions/clusters/redis/redis_cluster.cc index bf51608059444..9e70ceaf7cf37 100644 --- a/source/extensions/clusters/redis/redis_cluster.cc +++ b/source/extensions/clusters/redis/redis_cluster.cc @@ -76,11 +76,14 @@ void RedisCluster::updateAllHosts(const Upstream::HostVector& hosts_added, hosts_added, hosts_removed, absl::nullopt); } -void RedisCluster::onClusterSlotUpdate(const std::vector& slots) { +void RedisCluster::onClusterSlotUpdate(ClusterSlotsPtr&& slots) { Upstream::HostVector new_hosts; - for (const ClusterSlot& slot : slots) { + for (const ClusterSlot& slot : *slots) { new_hosts.emplace_back(new RedisHost(info(), "", slot.master(), *this, true)); + for (auto const& replica : slot.replicas()) { + new_hosts.emplace_back(new RedisHost(info(), "", replica, *this, false)); + } } std::unordered_map updated_hosts; @@ -89,7 +92,7 @@ void RedisCluster::onClusterSlotUpdate(const std::vector& slots) { const bool host_updated = updateDynamicHostList(new_hosts, hosts_, hosts_added, hosts_removed, updated_hosts, all_hosts_); const bool slot_updated = - lb_factory_ ? lb_factory_->onClusterSlotUpdate(slots, updated_hosts) : false; + lb_factory_ ? lb_factory_->onClusterSlotUpdate(std::move(slots), updated_hosts) : false; // If slot is updated, call updateAllHosts regardless of if there's new hosts to force // update of the thread local load balancers. @@ -111,6 +114,13 @@ void RedisCluster::onClusterSlotUpdate(const std::vector& slots) { onPreInitComplete(); } +void RedisCluster::reloadHealthyHostsHelper(const Upstream::HostSharedPtr& host) { + if (lb_factory_) { + lb_factory_->onHostHealthUpdate(); + } + ClusterImplBase::reloadHealthyHostsHelper(host); +} + // DnsDiscoveryResolveTarget RedisCluster::DnsDiscoveryResolveTarget::DnsDiscoveryResolveTarget(RedisCluster& parent, const std::string& dns_address, @@ -259,13 +269,18 @@ void RedisCluster::RedisDiscoverySession::onResponse( NetworkFilters::Common::Redis::RespValuePtr&& value) { current_request_ = nullptr; + const uint32_t SlotRangeStart = 0; + const uint32_t SlotRangeEnd = 1; + const uint32_t SlotMaster = 2; + const uint32_t SlotSlaveStart = 3; + // Do nothing if the cluster is empty. if (value->type() != NetworkFilters::Common::Redis::RespType::Array || value->asArray().empty()) { onUnexpectedResponse(value); return; } - std::vector slots_; + auto slots = std::make_unique>(); // Loop through the cluster slot response and error checks for each field. for (const NetworkFilters::Common::Redis::RespValue& part : value->asArray()) { @@ -275,27 +290,36 @@ void RedisCluster::RedisDiscoverySession::onResponse( } const std::vector& slot_range = part.asArray(); if (slot_range.size() < 3 || - slot_range[0].type() != + slot_range[SlotRangeStart].type() != NetworkFilters::Common::Redis::RespType::Integer || // Start slot range is an integer. - slot_range[1].type() != + slot_range[SlotRangeEnd].type() != NetworkFilters::Common::Redis::RespType::Integer) { // End slot range is an integer. onUnexpectedResponse(value); return; } // Field 2: Master address for slot range - // TODO(hyang): For now we're only adding the master node for each slot. When we're ready to - // send requests to replica nodes, we need to add subsequent address in the response as - // replica nodes. - auto master_address = ProcessCluster(slot_range[2]); + auto master_address = ProcessCluster(slot_range[SlotMaster]); if (!master_address) { onUnexpectedResponse(value); return; } - slots_.emplace_back(slot_range[0].asInteger(), slot_range[1].asInteger(), master_address); + + slots->emplace_back(slot_range[SlotRangeStart].asInteger(), + slot_range[SlotRangeEnd].asInteger(), master_address); + + for (auto replica = std::next(slot_range.begin(), SlotSlaveStart); replica != slot_range.end(); + ++replica) { + auto replica_address = ProcessCluster(*replica); + if (!replica_address) { + onUnexpectedResponse(value); + return; + } + slots->back().addReplica(std::move(replica_address)); + } } - parent_.onClusterSlotUpdate(slots_); + parent_.onClusterSlotUpdate(std::move(slots)); resolve_timer_->enableTimer(parent_.cluster_refresh_rate_); } @@ -340,7 +364,7 @@ RedisClusterFactory::createClusterWithConfig( std::move(stats_scope), context.addedViaApi(), nullptr), nullptr); } - auto lb_factory = std::make_shared(); + auto lb_factory = std::make_shared(context.random()); return std::make_pair(std::make_shared( cluster, proto_config, NetworkFilters::Common::Redis::Client::ClientFactoryImpl::instance_, diff --git a/source/extensions/clusters/redis/redis_cluster.h b/source/extensions/clusters/redis/redis_cluster.h index d7b776353671e..9117fa7daccc3 100644 --- a/source/extensions/clusters/redis/redis_cluster.h +++ b/source/extensions/clusters/redis/redis_cluster.h @@ -122,7 +122,9 @@ class RedisCluster : public Upstream::BaseDynamicClusterImpl { void updateAllHosts(const Upstream::HostVector& hosts_added, const Upstream::HostVector& hosts_removed, uint32_t priority); - void onClusterSlotUpdate(const std::vector&); + void onClusterSlotUpdate(ClusterSlotsPtr&&); + + void reloadHealthyHostsHelper(const Upstream::HostSharedPtr& host) override; const envoy::api::v2::endpoint::LocalityLbEndpoints& localityLbEndpoint() const { // Always use the first endpoint. @@ -212,6 +214,11 @@ class RedisCluster : public Upstream::BaseDynamicClusterImpl { uint32_t maxBufferSizeBeforeFlush() const override { return 0; } std::chrono::milliseconds bufferFlushTimeoutInMs() const override { return buffer_timeout_; } uint32_t maxUpstreamUnknownConnections() const override { return 0; } + // This is effectively not in used for making the "Cluster Slots" calls. + // since we call cluster slots on both the master and slaves, ANY is more appropriate here. + Extensions::NetworkFilters::Common::Redis::Client::ReadPolicy readPolicy() const override { + return Extensions::NetworkFilters::Common::Redis::Client::ReadPolicy::Any; + } // Extensions::NetworkFilters::Common::Redis::Client::PoolCallbacks void onResponse(NetworkFilters::Common::Redis::RespValuePtr&& value) override; diff --git a/source/extensions/clusters/redis/redis_cluster_lb.cc b/source/extensions/clusters/redis/redis_cluster_lb.cc index 9c08e4951a115..fefd17fff2fc0 100644 --- a/source/extensions/clusters/redis/redis_cluster_lb.cc +++ b/source/extensions/clusters/redis/redis_cluster_lb.cc @@ -5,44 +5,116 @@ namespace Extensions { namespace Clusters { namespace Redis { +bool ClusterSlot::operator==(const Envoy::Extensions::Clusters::Redis::ClusterSlot& rhs) const { + return start_ == rhs.start_ && end_ == rhs.end_ && master_ == rhs.master_ && + replicas_ == rhs.replicas_; +} + // RedisClusterLoadBalancerFactory -bool RedisClusterLoadBalancerFactory::onClusterSlotUpdate( - const std::vector& slots, - Envoy::Upstream::HostMap all_hosts) { +bool RedisClusterLoadBalancerFactory::onClusterSlotUpdate(ClusterSlotsPtr&& slots, + Envoy::Upstream::HostMap all_hosts) { + // The slots is sorted, allowing for a quick comparison to make sure we need to update the slot + // array sort based on start and end to enable efficient comparison + std::sort( + slots->begin(), slots->end(), [](const ClusterSlot& lhs, const ClusterSlot& rhs) -> bool { + return lhs.start() < rhs.start() || (!(lhs.start() < rhs.start()) && lhs.end() < rhs.end()); + }); - SlotArraySharedPtr current; - { - absl::ReaderMutexLock lock(&mutex_); - current = slot_array_; + if (current_cluster_slot_ && *current_cluster_slot_ == *slots) { + return false; } - bool should_update = !current; auto updated_slots = std::make_shared(); - for (const ClusterSlot& slot : slots) { - auto host = all_hosts.find(slot.master()->asString()); - ASSERT(host != all_hosts.end(), "we expect all address to be found in the updated_hosts"); - for (auto i = slot.start(); i <= slot.end(); ++i) { - updated_slots->at(i) = host->second; - if (current && current->at(i)->address()->asString() != host->second->address()->asString()) { - should_update = true; + auto shard_vector = std::make_shared>(); + absl::flat_hash_map shards; + + for (const ClusterSlot& slot : *slots) { + // look in the updated map + const std::string master_address = slot.master()->asString(); + + auto result = shards.try_emplace(master_address, shard_vector->size()); + if (result.second) { + auto master_host = all_hosts.find(master_address); + ASSERT(master_host != all_hosts.end(), + "we expect all address to be found in the updated_hosts"); + + Upstream::HostVectorSharedPtr master_and_replicas = std::make_shared(); + Upstream::HostVectorSharedPtr replicas = std::make_shared(); + master_and_replicas->push_back(master_host->second); + + for (auto const& replica : slot.replicas()) { + auto replica_host = all_hosts.find(replica->asString()); + ASSERT(replica_host != all_hosts.end(), + "we expect all address to be found in the updated_hosts"); + replicas->push_back(replica_host->second); + master_and_replicas->push_back(replica_host->second); } + + shard_vector->emplace_back( + std::make_shared(master_host->second, replicas, master_and_replicas)); + } + + for (auto i = slot.start(); i <= slot.end(); ++i) { + updated_slots->at(i) = result.first->second; } } - if (should_update) { + { absl::WriterMutexLock lock(&mutex_); - slot_array_ = updated_slots; + current_cluster_slot_ = std::move(slots); + slot_array_ = std::move(updated_slots); + shard_vector_ = std::move(shard_vector); + } + return true; +} + +void RedisClusterLoadBalancerFactory::onHostHealthUpdate() { + ShardVectorSharedPtr current_shard_vector; + { + absl::ReaderMutexLock lock(&mutex_); + current_shard_vector = shard_vector_; + } + + auto shard_vector = std::make_shared>(); + + for (auto const& shard : *current_shard_vector) { + shard_vector->emplace_back(std::make_shared( + shard->master(), shard->replicas().hostsPtr(), shard->allHosts().hostsPtr())); + } + + { + absl::WriterMutexLock lock(&mutex_); + shard_vector_ = std::move(shard_vector); } - return should_update; } Upstream::LoadBalancerPtr RedisClusterLoadBalancerFactory::create() { absl::ReaderMutexLock lock(&mutex_); - return std::make_unique(slot_array_); + return std::make_unique(slot_array_, shard_vector_, random_); } -Upstream::HostConstSharedPtr -RedisClusterLoadBalancer::chooseHost(Envoy::Upstream::LoadBalancerContext* context) { +namespace { +Upstream::HostConstSharedPtr chooseRandomHost(const Upstream::HostSetImpl& host_set, + Runtime::RandomGenerator& random) { + auto hosts = host_set.healthyHosts(); + if (hosts.empty()) { + hosts = host_set.degradedHosts(); + } + + if (hosts.empty()) { + hosts = host_set.hosts(); + } + + if (!hosts.empty()) { + return hosts[random.random() % hosts.size()]; + } else { + return nullptr; + } +} +} // namespace + +Upstream::HostConstSharedPtr RedisClusterLoadBalancerFactory::RedisClusterLoadBalancer::chooseHost( + Envoy::Upstream::LoadBalancerContext* context) { if (!slot_array_) { return nullptr; } @@ -55,17 +127,60 @@ RedisClusterLoadBalancer::chooseHost(Envoy::Upstream::LoadBalancerContext* conte return nullptr; } - return slot_array_->at(hash.value() % Envoy::Extensions::Clusters::Redis::MaxSlot); + auto shard = shard_vector_->at( + slot_array_->at(hash.value() % Envoy::Extensions::Clusters::Redis::MaxSlot)); + + auto redis_context = dynamic_cast(context); + if (redis_context && redis_context->isReadCommand()) { + switch (redis_context->readPolicy()) { + case NetworkFilters::Common::Redis::Client::ReadPolicy::Master: + return shard->master(); + case NetworkFilters::Common::Redis::Client::ReadPolicy::PreferMaster: + if (shard->master()->health() == Upstream::Host::Health::Healthy) { + return shard->master(); + } else { + return chooseRandomHost(shard->allHosts(), random_); + } + case NetworkFilters::Common::Redis::Client::ReadPolicy::Replica: + return chooseRandomHost(shard->replicas(), random_); + case NetworkFilters::Common::Redis::Client::ReadPolicy::PreferReplica: + if (!shard->replicas().healthyHosts().empty()) { + return chooseRandomHost(shard->replicas(), random_); + } else { + return chooseRandomHost(shard->allHosts(), random_); + } + case NetworkFilters::Common::Redis::Client::ReadPolicy::Any: + return chooseRandomHost(shard->allHosts(), random_); + } + } + return shard->master(); +} + +namespace { +bool isReadRequest(const NetworkFilters::Common::Redis::RespValue& request) { + if (request.type() != NetworkFilters::Common::Redis::RespType::Array) { + return false; + } + auto first = request.asArray()[0]; + if (first.type() != NetworkFilters::Common::Redis::RespType::SimpleString && + first.type() != NetworkFilters::Common::Redis::RespType::BulkString) { + return false; + } + return NetworkFilters::Common::Redis::SupportedCommands::isReadCommand(first.asString()); } +} // namespace -RedisLoadBalancerContext::RedisLoadBalancerContext(const std::string& key, bool enabled_hashtagging, - bool use_crc16) +RedisLoadBalancerContextImpl::RedisLoadBalancerContextImpl( + const std::string& key, bool enabled_hashtagging, bool use_crc16, + const NetworkFilters::Common::Redis::RespValue& request, + NetworkFilters::Common::Redis::Client::ReadPolicy read_policy) : hash_key_(use_crc16 ? Crc16::crc16(hashtag(key, enabled_hashtagging)) - : MurmurHash::murmurHash2_64(hashtag(key, enabled_hashtagging))) {} + : MurmurHash::murmurHash2_64(hashtag(key, enabled_hashtagging))), + is_read_(isReadRequest(request)), read_policy_(read_policy) {} // Inspired by the redis-cluster hashtagging algorithm // https://redis.io/topics/cluster-spec#keys-hash-tags -absl::string_view RedisLoadBalancerContext::hashtag(absl::string_view v, bool enabled) { +absl::string_view RedisLoadBalancerContextImpl::hashtag(absl::string_view v, bool enabled) { if (!enabled) { return v; } diff --git a/source/extensions/clusters/redis/redis_cluster_lb.h b/source/extensions/clusters/redis/redis_cluster_lb.h index c34112352bfac..3ad30cf760745 100644 --- a/source/extensions/clusters/redis/redis_cluster_lb.h +++ b/source/extensions/clusters/redis/redis_cluster_lb.h @@ -14,7 +14,12 @@ #include "source/extensions/clusters/redis/crc16.h" #include "extensions/clusters/well_known_names.h" +#include "extensions/filters/network/common/redis/client.h" +#include "extensions/filters/network/common/redis/codec.h" +#include "extensions/filters/network/common/redis/supported_commands.h" +#include "absl/container/flat_hash_map.h" +#include "absl/container/flat_hash_set.h" #include "absl/synchronization/mutex.h" namespace Envoy { @@ -24,10 +29,6 @@ namespace Redis { static const uint64_t MaxSlot = 16384; -using SlotArray = std::array; - -using SlotArraySharedPtr = std::shared_ptr; - class ClusterSlot { public: ClusterSlot(int64_t start, int64_t end, Network::Address::InstanceConstSharedPtr master) @@ -35,48 +36,57 @@ class ClusterSlot { int64_t start() const { return start_; } int64_t end() const { return end_; } - Network::Address::InstanceConstSharedPtr master() const { return master_; }; + Network::Address::InstanceConstSharedPtr master() const { return master_; } + const absl::flat_hash_set& replicas() const { + return replicas_; + } + void addReplica(Network::Address::InstanceConstSharedPtr replica_address) { + replicas_.insert(std::move(replica_address)); + } + + bool operator==(const ClusterSlot& rhs) const; private: - const int64_t start_; - const int64_t end_; + int64_t start_; + int64_t end_; Network::Address::InstanceConstSharedPtr master_; + absl::flat_hash_set replicas_; +}; + +using ClusterSlotsPtr = std::unique_ptr>; +using ClusterSlotsSharedPtr = std::shared_ptr>; + +class RedisLoadBalancerContext { +public: + virtual ~RedisLoadBalancerContext() = default; + + virtual bool isReadCommand() const PURE; + virtual NetworkFilters::Common::Redis::Client::ReadPolicy readPolicy() const PURE; }; -class RedisLoadBalancerContext : public Upstream::LoadBalancerContextBase { +class RedisLoadBalancerContextImpl : public RedisLoadBalancerContext, + public Upstream::LoadBalancerContextBase { public: - RedisLoadBalancerContext(const std::string& key, bool enabled_hashtagging, bool use_crc16); + RedisLoadBalancerContextImpl(const std::string& key, bool enabled_hashtagging, bool use_crc16, + const NetworkFilters::Common::Redis::RespValue& request, + NetworkFilters::Common::Redis::Client::ReadPolicy read_policy = + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); // Upstream::LoadBalancerContextBase absl::optional computeHashKey() override { return hash_key_; } + bool isReadCommand() const override { return is_read_; } + + NetworkFilters::Common::Redis::Client::ReadPolicy readPolicy() const override { + return read_policy_; + } + private: absl::string_view hashtag(absl::string_view v, bool enabled); const absl::optional hash_key_; -}; - -/* - * This class implements load balancing according to `Redis Cluster - * `_. This load balancer is thread local and created through - * the RedisClusterLoadBalancerFactory by the cluster manager. - * - * The topology is stored in cluster_slots_map_. According to the - * `Redis Cluster Spec & slots, - Upstream::HostMap all_hosts) PURE; + virtual bool onClusterSlotUpdate(ClusterSlotsPtr&& slots, Upstream::HostMap all_hosts) PURE; + + /** + * Callback when a host's health status is updated + */ + virtual void onHostHealthUpdate() PURE; }; using ClusterSlotUpdateCallBackSharedPtr = std::shared_ptr; @@ -102,16 +116,77 @@ using ClusterSlotUpdateCallBackSharedPtr = std::shared_ptr& slots, - Upstream::HostMap all_hosts) override; + bool onClusterSlotUpdate(ClusterSlotsPtr&& slots, Upstream::HostMap all_hosts) override; + + void onHostHealthUpdate() override; // Upstream::LoadBalancerFactory Upstream::LoadBalancerPtr create() override; private: + class RedisShard { + public: + RedisShard(Upstream::HostConstSharedPtr master, Upstream::HostVectorConstSharedPtr replicas, + Upstream::HostVectorConstSharedPtr all_hosts) + : master_(std::move(master)) { + replicas_.updateHosts(Upstream::HostSetImpl::partitionHosts( + std::move(replicas), Upstream::HostsPerLocalityImpl::empty()), + nullptr, {}, {}); + all_hosts_.updateHosts(Upstream::HostSetImpl::partitionHosts( + std::move(all_hosts), Upstream::HostsPerLocalityImpl::empty()), + nullptr, {}, {}); + } + const Upstream::HostConstSharedPtr master() const { return master_; } + const Upstream::HostSetImpl& replicas() const { return replicas_; } + const Upstream::HostSetImpl& allHosts() const { return all_hosts_; } + + private: + const Upstream::HostConstSharedPtr master_; + Upstream::HostSetImpl replicas_{0, absl::nullopt}; + Upstream::HostSetImpl all_hosts_{0, absl::nullopt}; + }; + + using RedisShardSharedPtr = std::shared_ptr; + using ShardVectorSharedPtr = std::shared_ptr>; + using SlotArray = std::array; + using SlotArraySharedPtr = std::shared_ptr; + + /* + * This class implements load balancing according to `Redis Cluster + * `_. This load balancer is thread local and created + * through the RedisClusterLoadBalancerFactory by the cluster manager. + * + * The topology is stored in slot_array_ and shard_vector_. According to the + * `Redis Cluster Spec Word { return Word(reinterpret_cast(&errno)); }; + } else { + throw WasmVmException(fmt::format("Missing getFunction for: {}", functionName)); + } +} + void NullPlugin::getFunction(absl::string_view functionName, WasmCall1Void* f) { if (functionName == "_free") { *f = [](Common::Wasm::Context*, Word ptr) { return ::free(reinterpret_cast(ptr.u64)); }; diff --git a/source/extensions/common/wasm/null/null_plugin.h b/source/extensions/common/wasm/null/null_plugin.h index 05605d0b26ff2..f7581aa1e8e67 100644 --- a/source/extensions/common/wasm/null/null_plugin.h +++ b/source/extensions/common/wasm/null/null_plugin.h @@ -19,7 +19,7 @@ using FilterDataStatus = Http::FilterDataStatus; using GrpcStatus = Envoy::Grpc::Status::GrpcStatus; using MetricType = Envoy::Extensions::Common::Wasm::Context::MetricType; using StringView = absl::string_view; -using EnumType = int32_t; +template using Optional = absl::optional; } // namespace Plugin } // namespace Null } // namespace Wasm @@ -35,7 +35,7 @@ namespace Common { namespace Wasm { namespace Null { namespace Plugin { -#include "api/wasm/cpp/proxy_wasm_impl.h" +#include "api/wasm/cpp/proxy_wasm_api.h" } // namespace Plugin /** @@ -59,15 +59,9 @@ class NullPlugin : public NullVmPlugin { void start() override {} - void getFunction(absl::string_view functionName, WasmCall0Void* f) override; - void getFunction(absl::string_view functionName, WasmCall1Void* f) override; - void getFunction(absl::string_view functionName, WasmCall2Void* f) override; - void getFunction(absl::string_view functionName, WasmCall3Void* f) override; - void getFunction(absl::string_view functionName, WasmCall4Void* f) override; - void getFunction(absl::string_view functionName, WasmCall5Void* f) override; - void getFunction(absl::string_view functionName, WasmCall8Void* f) override; - void getFunction(absl::string_view functionName, WasmCall1Word* f) override; - void getFunction(absl::string_view functionName, WasmCall3Word* f) override; +#define _DECLARE_OVERRIDE(_t) void getFunction(absl::string_view functionName, _t* f) override; + FOR_ALL_WASM_VM_EXPORTS(_DECLARE_OVERRIDE) +#undef _DECLARE_OVERRIDE void onStart(uint64_t root_context_id, uint64_t root_id_ptr, uint64_t root_id_size, uint64_t vm_configuration_ptr, uint64_t vm_configuration_size); diff --git a/source/extensions/common/wasm/null/null_vm.cc b/source/extensions/common/wasm/null/null_vm.cc index f6cff05a3818e..3ad1abaa591f7 100644 --- a/source/extensions/common/wasm/null/null_vm.cc +++ b/source/extensions/common/wasm/null/null_vm.cc @@ -8,7 +8,6 @@ #include "common/common/assert.h" -#include "extensions/common/wasm/null/null.h" #include "extensions/common/wasm/null/null_vm_plugin.h" #include "extensions/common/wasm/well_known_names.h" @@ -25,6 +24,7 @@ bool NullVm::load(const std::string& name, bool /* allow_precompiled */) { if (!factory) { return false; } + plugin_name_ = name; plugin_ = factory->create(); return true; } @@ -43,8 +43,11 @@ void NullVm::start(Common::Wasm::Context* context) { uint64_t NullVm::getMemorySize() { return std::numeric_limits::max(); } -absl::string_view NullVm::getMemory(uint64_t pointer, uint64_t size) { - return {reinterpret_cast(pointer), static_cast(size)}; +absl::optional NullVm::getMemory(uint64_t pointer, uint64_t size) { + if (pointer == 0 && size != 0) { + return absl::nullopt; + } + return absl::string_view(reinterpret_cast(pointer), static_cast(size)); } bool NullVm::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { @@ -53,14 +56,20 @@ bool NullVm::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { } bool NullVm::setMemory(uint64_t pointer, uint64_t size, const void* data) { + if ((pointer == 0 || data == nullptr) && size != 0) { + return false; + } auto p = reinterpret_cast(pointer); memcpy(p, data, size); return true; } -bool NullVm::setWord(uint64_t pointer, uint64_t data) { +bool NullVm::setWord(uint64_t pointer, Word data) { + if (pointer == 0) { + return false; + } auto p = reinterpret_cast(pointer); - memcpy(p, &data, sizeof(data)); + memcpy(p, &data.u64, sizeof(data.u64)); return true; } diff --git a/source/extensions/common/wasm/null/null_vm.h b/source/extensions/common/wasm/null/null_vm.h index 78097e2e16a8f..1f02082674bb5 100644 --- a/source/extensions/common/wasm/null/null_vm.h +++ b/source/extensions/common/wasm/null/null_vm.h @@ -8,7 +8,6 @@ #include "common/common/assert.h" -#include "extensions/common/wasm/null/null.h" #include "extensions/common/wasm/null/null_vm_plugin.h" #include "extensions/common/wasm/well_known_names.h" @@ -32,10 +31,10 @@ struct NullVm : public WasmVm { void setMemoryLayout(uint64_t, uint64_t, uint64_t) override {} void start(Common::Wasm::Context* context) override; uint64_t getMemorySize() override; - absl::string_view getMemory(uint64_t pointer, uint64_t size) override; + absl::optional getMemory(uint64_t pointer, uint64_t size) override; bool getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) override; bool setMemory(uint64_t pointer, uint64_t size, const void* data) override; - bool setWord(uint64_t pointer, uint64_t data) override; + bool setWord(uint64_t pointer, Word data) override; void makeModule(absl::string_view name) override; absl::string_view getUserSection(absl::string_view name) override; @@ -43,43 +42,14 @@ struct NullVm : public WasmVm { void getFunction(absl::string_view functionName, _T* f) override { \ plugin_->getFunction(functionName, f); \ } - _FORWARD_GET_FUNCTION(WasmCall0Void); - _FORWARD_GET_FUNCTION(WasmCall1Void); - _FORWARD_GET_FUNCTION(WasmCall2Void); - _FORWARD_GET_FUNCTION(WasmCall3Void); - _FORWARD_GET_FUNCTION(WasmCall4Void); - _FORWARD_GET_FUNCTION(WasmCall5Void); - _FORWARD_GET_FUNCTION(WasmCall8Void); - _FORWARD_GET_FUNCTION(WasmCall1Word); - _FORWARD_GET_FUNCTION(WasmCall3Word); + FOR_ALL_WASM_VM_EXPORTS(_FORWARD_GET_FUNCTION) #undef _FORWARD_GET_FUNCTION // These are noops for NullVm. #define _REGISTER_CALLBACK(_type) \ void registerCallback(absl::string_view, absl::string_view, _type, \ typename ConvertFunctionTypeWordToUint32<_type>::type) override{}; - _REGISTER_CALLBACK(WasmCallback0Void); - _REGISTER_CALLBACK(WasmCallback1Void); - _REGISTER_CALLBACK(WasmCallback2Void); - _REGISTER_CALLBACK(WasmCallback3Void); - _REGISTER_CALLBACK(WasmCallback4Void); - _REGISTER_CALLBACK(WasmCallback5Void); - _REGISTER_CALLBACK(WasmCallback8Void); - _REGISTER_CALLBACK(WasmCallback0Word); - _REGISTER_CALLBACK(WasmCallback1Word); - _REGISTER_CALLBACK(WasmCallback2Word); - _REGISTER_CALLBACK(WasmCallback3Word); - _REGISTER_CALLBACK(WasmCallback4Word); - _REGISTER_CALLBACK(WasmCallback5Word); - _REGISTER_CALLBACK(WasmCallback6Word); - _REGISTER_CALLBACK(WasmCallback7Word); - _REGISTER_CALLBACK(WasmCallback8Word); - _REGISTER_CALLBACK(WasmCallback9Word); - _REGISTER_CALLBACK(WasmCallback_ZWl); - _REGISTER_CALLBACK(WasmCallback_ZWm); - _REGISTER_CALLBACK(WasmCallback_m); - _REGISTER_CALLBACK(WasmCallback_jW); - _REGISTER_CALLBACK(WasmCallback_mW); + FOR_ALL_WASM_VM_IMPORTS(_REGISTER_CALLBACK) #undef _REGISTER_CALLBACK // NullVm does not advertize code as emscripten so this will not get called. diff --git a/source/extensions/common/wasm/null/null_vm_plugin.h b/source/extensions/common/wasm/null/null_vm_plugin.h index c43936323c04f..3b79368a33c1f 100644 --- a/source/extensions/common/wasm/null/null_vm_plugin.h +++ b/source/extensions/common/wasm/null/null_vm_plugin.h @@ -13,15 +13,9 @@ class NullVmPlugin { NullVmPlugin() {} virtual ~NullVmPlugin() {} - virtual void getFunction(absl::string_view functionName, WasmCall0Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall1Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall2Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall3Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall4Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall5Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall8Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall1Word* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall3Word* f) PURE; +#define _DECLARE_PURE(_t) virtual void getFunction(absl::string_view functionName, _t* f) PURE; + FOR_ALL_WASM_VM_EXPORTS(_DECLARE_PURE) +#undef _DECLARE_PURE virtual void start() PURE; }; diff --git a/source/extensions/common/wasm/null/sample_plugin/plugin.cc b/source/extensions/common/wasm/null/sample_plugin/plugin.cc index c5d629c15e142..391a7ecca872e 100644 --- a/source/extensions/common/wasm/null/sample_plugin/plugin.cc +++ b/source/extensions/common/wasm/null/sample_plugin/plugin.cc @@ -6,6 +6,7 @@ #else #include "extensions/common/wasm/null/null_plugin.h" +#include "absl/base/casts.h" namespace Envoy { namespace Extensions { @@ -45,7 +46,24 @@ FilterDataStatus PluginContext::onRequestBody(size_t body_buffer_length, bool /* void PluginContext::onLog() { auto path = getRequestHeader(":path"); - logWarn("onLog " + std::to_string(id()) + " " + std::string(path->view())); + if (path->view() == "/test_context") { + logWarn("request.path: " + getSelectorExpression({"request", "path"}).value()->toString()); + logWarn("node.metadata: " + + getSelectorExpression({"node", "metadata", "istio.io/metadata"}).value()->toString()); + logWarn("metadata: " + getSelectorExpression({"metadata", "filter_metadata", "envoy.wasm", + "wasm_request_get_key"}) + .value() + ->toString()); + auto responseCode = getSelectorExpression({"response", "code"}).value(); + if (responseCode->size() == sizeof(int64_t)) { + char buf[sizeof(int64_t)]; + responseCode->view().copy(buf, sizeof(int64_t), 0); + int64_t code = absl::bit_cast(buf); + logWarn("response.code: " + absl::StrCat(code)); + } + } else { + logWarn("onLog " + std::to_string(id()) + " " + std::string(path->view())); + } } void PluginContext::onDone() { logWarn("onDone " + std::to_string(id())); } diff --git a/source/extensions/common/wasm/null/wasm_api_impl.h b/source/extensions/common/wasm/null/wasm_api_impl.h index ee6a4cb61fcd7..eb805281ac12f 100644 --- a/source/extensions/common/wasm/null/wasm_api_impl.h +++ b/source/extensions/common/wasm/null/wasm_api_impl.h @@ -19,134 +19,163 @@ namespace Plugin { #define WS(_x) Word(static_cast(_x)) #define WR(_x) Word(reinterpret_cast(_x)) +inline WasmResult wordToWasmResult(Word w) { return static_cast(w.u64); } + // Logging -inline void proxy_log(LogLevel level, const char* logMessage, size_t messageSize) { - logHandler(current_context_, WS(level), WR(logMessage), WS(messageSize)); +inline WasmResult proxy_log(LogLevel level, const char* logMessage, size_t messageSize) { + return wordToWasmResult(logHandler(current_context_, WS(level), WR(logMessage), WS(messageSize))); } // Timer -inline void proxy_setTickPeriodMilliseconds(uint64_t millisecond) { - setTickPeriodMillisecondsHandler(current_context_, Word(millisecond)); +inline WasmResult proxy_setTickPeriodMilliseconds(uint64_t millisecond) { + return wordToWasmResult(setTickPeriodMillisecondsHandler(current_context_, Word(millisecond))); } -inline uint64_t proxy_getCurrentTimeNanoseconds() { - return getCurrentTimeNanosecondsHandler(current_context_); +inline WasmResult proxy_getCurrentTimeNanoseconds(uint64_t* result) { + return wordToWasmResult(getCurrentTimeNanosecondsHandler(current_context_, WR(result))); } // Metadata -inline uint64_t proxy_getMetadata(MetadataType type, const char* key_ptr, size_t key_size, - const char** value_ptr_ptr, size_t* value_size_ptr) { - return getMetadataHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), - WR(value_ptr_ptr), WR(value_size_ptr)); +inline WasmResult proxy_getMetadata(MetadataType type, const char* key_ptr, size_t key_size, + const char** value_ptr_ptr, size_t* value_size_ptr) { + return wordToWasmResult(getMetadataHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), + WR(value_ptr_ptr), WR(value_size_ptr))); +} +inline WasmResult proxy_setMetadata(MetadataType type, const char* key_ptr, size_t key_size, + const char* value_ptr, size_t value_size) { + return wordToWasmResult(setMetadataHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), + WR(value_ptr), WS(value_size))); } -inline uint64_t proxy_setMetadata(MetadataType type, const char* key_ptr, size_t key_size, - const char* value_ptr, size_t value_size) { - return setMetadataHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), WR(value_ptr), - WS(value_size)); +inline WasmResult proxy_getMetadataPairs(MetadataType type, const char** value_ptr, + size_t* value_size) { + return wordToWasmResult( + getMetadataPairsHandler(current_context_, WS(type), WR(value_ptr), WR(value_size))); } -inline uint64_t proxy_getMetadataPairs(MetadataType type, const char** value_ptr, - size_t* value_size) { - return getMetadataPairsHandler(current_context_, WS(type), WR(value_ptr), WR(value_size)); +inline WasmResult proxy_getMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, + const char** value_ptr_ptr, size_t* value_size_ptr) { + return wordToWasmResult(getMetadataStructHandler(current_context_, WS(type), WR(name_ptr), + WS(name_size), WR(value_ptr_ptr), + WR(value_size_ptr))); } -inline uint64_t proxy_getMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, - const char** value_ptr_ptr, size_t* value_size_ptr) { - return getMetadataStructHandler(current_context_, WS(type), WR(name_ptr), WS(name_size), - WR(value_ptr_ptr), WR(value_size_ptr)); +inline WasmResult proxy_setMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, + const char* value_ptr, size_t value_size) { + return wordToWasmResult(setMetadataStructHandler(current_context_, WS(type), WR(name_ptr), + WS(name_size), WR(value_ptr), WS(value_size))); } -inline uint64_t proxy_setMetadataStruct(MetadataType type, const char* name_ptr, size_t name_size, - const char* value_ptr, size_t value_size) { - return setMetadataStructHandler(current_context_, WS(type), WR(name_ptr), WS(name_size), - WR(value_ptr), WS(value_size)); + +// Generic selector +inline WasmResult proxy_getSelectorExpression(const char* path_ptr, size_t path_size, + const char** value_ptr_ptr, size_t* value_size_ptr) { + return wordToWasmResult(getSelectorExpressionHandler( + current_context_, WR(path_ptr), WS(path_size), WR(value_ptr_ptr), WR(value_size_ptr))); } // Continue -inline void proxy_continueRequest() { continueRequestHandler(current_context_); } -inline void proxy_continueResponse() { continueResponseHandler(current_context_); } -inline void proxy_sendLocalResponse(uint32_t response_code, const char* response_code_details_ptr, - size_t response_code_details_size, const char* body_ptr, - size_t body_size, - const char* additional_response_header_pairs_ptr, - size_t additional_response_header_pairs_size, - uint32_t grpc_status) { - sendLocalResponseHandler(current_context_, WS(response_code), WR(response_code_details_ptr), - WS(response_code_details_size), WR(body_ptr), WS(body_size), - WR(additional_response_header_pairs_ptr), - WS(additional_response_header_pairs_size), WS(grpc_status)); -} -inline void proxy_clearRouteCache() { clearRouteCacheHandler(current_context_); } +inline WasmResult proxy_continueRequest() { + return wordToWasmResult(continueRequestHandler(current_context_)); +} +inline WasmResult proxy_continueResponse() { + return wordToWasmResult(continueResponseHandler(current_context_)); +} +inline WasmResult +proxy_sendLocalResponse(uint32_t response_code, const char* response_code_details_ptr, + size_t response_code_details_size, const char* body_ptr, size_t body_size, + const char* additional_response_header_pairs_ptr, + size_t additional_response_header_pairs_size, uint32_t grpc_status) { + return wordToWasmResult( + sendLocalResponseHandler(current_context_, WS(response_code), WR(response_code_details_ptr), + WS(response_code_details_size), WR(body_ptr), WS(body_size), + WR(additional_response_header_pairs_ptr), + WS(additional_response_header_pairs_size), WS(grpc_status))); +} +inline WasmResult proxy_clearRouteCache() { + return wordToWasmResult(clearRouteCacheHandler(current_context_)); +} // SharedData -inline void proxy_getSharedData(const char* key_ptr, size_t key_size, const char** value_ptr, - size_t* value_size, uint32_t* cas) { - getSharedDataHandler(current_context_, WR(key_ptr), WS(key_size), WR(value_ptr), WR(value_size), - WR(cas)); +inline WasmResult proxy_getSharedData(const char* key_ptr, size_t key_size, const char** value_ptr, + size_t* value_size, uint32_t* cas) { + return wordToWasmResult(getSharedDataHandler(current_context_, WR(key_ptr), WS(key_size), + WR(value_ptr), WR(value_size), WR(cas))); } // If cas != 0 and cas != the current cas for 'key' return false, otherwise set the value and // return true. -inline bool proxy_setSharedData(const char* key_ptr, size_t key_size, const char* value_ptr, - size_t value_size, uint64_t cas) { - return setSharedDataHandler(current_context_, WR(key_ptr), WS(key_size), WR(value_ptr), - WS(value_size), WS(cas)); +inline WasmResult proxy_setSharedData(const char* key_ptr, size_t key_size, const char* value_ptr, + size_t value_size, uint64_t cas) { + return wordToWasmResult(setSharedDataHandler(current_context_, WR(key_ptr), WS(key_size), + WR(value_ptr), WS(value_size), WS(cas))); } // SharedQueue // Note: Registering the same queue_name will overwrite the old registration while preseving any // pending data. Consequently it should typically be followed by a call to proxy_dequeueSharedQueue. // Returns unique token for the queue. -inline uint32_t proxy_registerSharedQueue(const char* queue_name_ptr, size_t queue_name_size) { - return registerSharedQueueHandler(current_context_, WR(queue_name_ptr), WS(queue_name_size)); +inline WasmResult proxy_registerSharedQueue(const char* queue_name_ptr, size_t queue_name_size, + uint32_t* token) { + return wordToWasmResult(registerSharedQueueHandler(current_context_, WR(queue_name_ptr), + WS(queue_name_size), WR(token))); } // Returns unique token for the queue. -inline uint32_t proxy_resolveSharedQueue(const char* vm_id_ptr, size_t vm_id_size, - const char* queue_name_ptr, size_t queue_name_size) { - return resolveSharedQueueHandler(current_context_, WR(vm_id_ptr), WS(vm_id_size), - WR(queue_name_ptr), WS(queue_name_size)); +inline WasmResult proxy_resolveSharedQueue(const char* vm_id_ptr, size_t vm_id_size, + const char* queue_name_ptr, size_t queue_name_size, + uint32_t* token) { + return wordToWasmResult(resolveSharedQueueHandler(current_context_, WR(vm_id_ptr), WS(vm_id_size), + WR(queue_name_ptr), WS(queue_name_size), + WR(token))); } // Returns true on end-of-stream (no more data available). -inline bool proxy_dequeueSharedQueue(uint32_t token, const char** data_ptr, size_t* data_size) { - return dequeueSharedQueueHandler(current_context_, WS(token), WR(data_ptr), WR(data_size)); +inline WasmResult proxy_dequeueSharedQueue(uint32_t token, const char** data_ptr, + size_t* data_size) { + return wordToWasmResult( + dequeueSharedQueueHandler(current_context_, WS(token), WR(data_ptr), WR(data_size))); } // Returns false if the queue was not found and the data was not enqueued. -inline bool proxy_enqueueSharedQueue(uint32_t token, const char* data_ptr, size_t data_size) { - return enqueueSharedQueueHandler(current_context_, WS(token), WR(data_ptr), WS(data_size)); +inline WasmResult proxy_enqueueSharedQueue(uint32_t token, const char* data_ptr, size_t data_size) { + return wordToWasmResult( + enqueueSharedQueueHandler(current_context_, WS(token), WR(data_ptr), WS(data_size))); } // Headers/Trailers/Metadata Maps -inline void proxy_addHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, - const char* value_ptr, size_t value_size) { - addHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), WR(value_ptr), - WS(value_size)); +inline WasmResult proxy_addHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, + const char* value_ptr, size_t value_size) { + return wordToWasmResult(addHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), + WS(key_size), WR(value_ptr), WS(value_size))); } -inline void proxy_getHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, - const char** value_ptr, size_t* value_size) { - getHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), WR(value_ptr), - WR(value_size)); +inline WasmResult proxy_getHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, + const char** value_ptr, size_t* value_size) { + return wordToWasmResult(getHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), + WS(key_size), WR(value_ptr), WR(value_size))); } -inline void proxy_getHeaderMapPairs(HeaderMapType type, const char** ptr, size_t* size) { - getHeaderMapPairsHandler(current_context_, WS(type), WR(ptr), WR(size)); +inline WasmResult proxy_getHeaderMapPairs(HeaderMapType type, const char** ptr, size_t* size) { + return wordToWasmResult(getHeaderMapPairsHandler(current_context_, WS(type), WR(ptr), WR(size))); } -inline void proxy_setHeaderMapPairs(HeaderMapType type, const char* ptr, size_t size) { - setHeaderMapPairsHandler(current_context_, WS(type), WR(ptr), WS(size)); +inline WasmResult proxy_setHeaderMapPairs(HeaderMapType type, const char* ptr, size_t size) { + return wordToWasmResult(setHeaderMapPairsHandler(current_context_, WS(type), WR(ptr), WS(size))); } -inline void proxy_replaceHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size, - const char* value_ptr, size_t value_size) { - replaceHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), WS(key_size), WR(value_ptr), - WS(value_size)); +inline WasmResult proxy_replaceHeaderMapValue(HeaderMapType type, const char* key_ptr, + size_t key_size, const char* value_ptr, + size_t value_size) { + return wordToWasmResult(replaceHeaderMapValueHandler( + current_context_, WS(type), WR(key_ptr), WS(key_size), WR(value_ptr), WS(value_size))); } -inline void proxy_removeHeaderMapValue(HeaderMapType type, const char* key_ptr, size_t key_size) { - removeHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), WS(key_size)); +inline WasmResult proxy_removeHeaderMapValue(HeaderMapType type, const char* key_ptr, + size_t key_size) { + return wordToWasmResult( + removeHeaderMapValueHandler(current_context_, WS(type), WR(key_ptr), WS(key_size))); } -inline uint32_t proxy_getHeaderMapSize(HeaderMapType type) { - return getHeaderMapSizeHandler(current_context_, WS(type)); +inline WasmResult proxy_getHeaderMapSize(HeaderMapType type, size_t* size) { + return wordToWasmResult(getHeaderMapSizeHandler(current_context_, WS(type), WR(size))); } // Body -inline void proxy_getRequestBodyBufferBytes(uint64_t start, uint64_t length, const char** ptr, - size_t* size) { - getRequestBodyBufferBytesHandler(current_context_, Word(start), Word(length), WR(ptr), WR(size)); +inline WasmResult proxy_getRequestBodyBufferBytes(uint64_t start, uint64_t length, const char** ptr, + size_t* size) { + return wordToWasmResult(getRequestBodyBufferBytesHandler(current_context_, Word(start), + Word(length), WR(ptr), WR(size))); } -inline void proxy_getResponseBodyBufferBytes(uint64_t start, uint64_t length, const char** ptr, - size_t* size) { - getResponseBodyBufferBytesHandler(current_context_, WS(start), WS(length), WR(ptr), WR(size)); +inline WasmResult proxy_getResponseBodyBufferBytes(uint64_t start, uint64_t length, + const char** ptr, size_t* size) { + return wordToWasmResult(getResponseBodyBufferBytesHandler(current_context_, WS(start), WS(length), + WR(ptr), WR(size))); } // HTTP @@ -177,30 +206,36 @@ inline uint64_t proxy_grpcStream(const char* service_ptr, size_t service_size, WR(service_name_ptr), WS(service_name_size), WR(method_name_ptr), WS(method_name_size)); } -inline void proxy_grpcCancel(uint64_t token) { grpcCancelHandler(current_context_, WS(token)); } -inline void proxy_grpcClose(uint64_t token) { grpcCloseHandler(current_context_, WS(token)); } -inline void proxy_grpcSend(uint64_t token, const char* message_ptr, size_t message_size, - uint64_t end_stream) { - grpcSendHandler(current_context_, WS(token), WR(message_ptr), WS(message_size), WS(end_stream)); +inline WasmResult proxy_grpcCancel(uint64_t token) { + return wordToWasmResult(grpcCancelHandler(current_context_, WS(token))); +} +inline WasmResult proxy_grpcClose(uint64_t token) { + return wordToWasmResult(grpcCloseHandler(current_context_, WS(token))); +} +inline WasmResult proxy_grpcSend(uint64_t token, const char* message_ptr, size_t message_size, + uint64_t end_stream) { + return wordToWasmResult(grpcSendHandler(current_context_, WS(token), WR(message_ptr), + WS(message_size), WS(end_stream))); } // Metrics // Returns a metric_id which can be used to report a metric. On error returns 0. -inline uint32_t proxy_defineMetric(MetricType type, const char* name_ptr, size_t name_size) { - return defineMetricHandler(current_context_, WS(type), WR(name_ptr), WS(name_size)); +inline WasmResult proxy_defineMetric(MetricType type, const char* name_ptr, size_t name_size, + uint32_t* metric_id) { + return wordToWasmResult( + defineMetricHandler(current_context_, WS(type), WR(name_ptr), WS(name_size), WR(metric_id))); } -inline void proxy_incrementMetric(uint32_t metric_id, int64_t offset) { - incrementMetricHandler(current_context_, WS(metric_id), WS(offset)); +inline WasmResult proxy_incrementMetric(uint32_t metric_id, int64_t offset) { + return wordToWasmResult(incrementMetricHandler(current_context_, WS(metric_id), WS(offset))); } -inline void proxy_recordMetric(uint32_t metric_id, uint64_t value) { - recordMetricHandler(current_context_, WS(metric_id), WS(value)); +inline WasmResult proxy_recordMetric(uint32_t metric_id, uint64_t value) { + return wordToWasmResult(recordMetricHandler(current_context_, WS(metric_id), WS(value))); } -inline uint64_t proxy_getMetric(uint32_t metric_id) { - return getMetricHandler(current_context_, WS(metric_id)); +inline WasmResult proxy_getMetric(uint32_t metric_id, uint64_t* value) { + return wordToWasmResult(getMetricHandler(current_context_, WS(metric_id), WR(value))); } - -inline uint64_t proxy_setEffectiveContext(uint64_t context_id) { - return setEffectiveContextHandler(current_context_, WS(context_id)); +inline WasmResult proxy_setEffectiveContext(uint64_t context_id) { + return wordToWasmResult(setEffectiveContextHandler(current_context_, WS(context_id))); } #undef WS diff --git a/source/extensions/common/wasm/v8/v8.cc b/source/extensions/common/wasm/v8/v8.cc index 991cd0dc540f9..66a0dba49e0d8 100644 --- a/source/extensions/common/wasm/v8/v8.cc +++ b/source/extensions/common/wasm/v8/v8.cc @@ -27,7 +27,7 @@ struct FuncData { FuncData(std::string name) : name(name) {} std::string name; - wasm::own callback; + wasm::own callback; void* raw_func; }; @@ -56,10 +56,10 @@ class V8 : public WasmVm { void start(Context* context) override; uint64_t getMemorySize() override; - absl::string_view getMemory(uint64_t pointer, uint64_t size) override; + absl::optional getMemory(uint64_t pointer, uint64_t size) override; bool getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) override; bool setMemory(uint64_t pointer, uint64_t size, const void* data) override; - bool setWord(uint64_t pointer, uint64_t word) override; + bool setWord(uint64_t pointer, Word word) override; #define _REGISTER_HOST_GLOBAL(_type) \ std::unique_ptr> makeGlobal(absl::string_view moduleName, absl::string_view name, \ @@ -75,43 +75,14 @@ class V8 : public WasmVm { typename ConvertFunctionTypeWordToUint32<_type>::type f) override { \ registerHostFunctionImpl(moduleName, functionName, f); \ }; - _REGISTER_HOST_FUNCTION(WasmCallback0Void); - _REGISTER_HOST_FUNCTION(WasmCallback1Void); - _REGISTER_HOST_FUNCTION(WasmCallback2Void); - _REGISTER_HOST_FUNCTION(WasmCallback3Void); - _REGISTER_HOST_FUNCTION(WasmCallback4Void); - _REGISTER_HOST_FUNCTION(WasmCallback5Void); - _REGISTER_HOST_FUNCTION(WasmCallback8Void); - _REGISTER_HOST_FUNCTION(WasmCallback0Word); - _REGISTER_HOST_FUNCTION(WasmCallback1Word); - _REGISTER_HOST_FUNCTION(WasmCallback2Word); - _REGISTER_HOST_FUNCTION(WasmCallback3Word); - _REGISTER_HOST_FUNCTION(WasmCallback4Word); - _REGISTER_HOST_FUNCTION(WasmCallback5Word); - _REGISTER_HOST_FUNCTION(WasmCallback6Word); - _REGISTER_HOST_FUNCTION(WasmCallback7Word); - _REGISTER_HOST_FUNCTION(WasmCallback8Word); - _REGISTER_HOST_FUNCTION(WasmCallback9Word); - _REGISTER_HOST_FUNCTION(WasmCallback_ZWl); - _REGISTER_HOST_FUNCTION(WasmCallback_ZWm); - _REGISTER_HOST_FUNCTION(WasmCallback_m); - _REGISTER_HOST_FUNCTION(WasmCallback_jW); - _REGISTER_HOST_FUNCTION(WasmCallback_mW); + FOR_ALL_WASM_VM_IMPORTS(_REGISTER_HOST_FUNCTION) #undef _REGISTER_HOST_FUNCTION #define _GET_MODULE_FUNCTION(_type) \ void getFunction(absl::string_view functionName, _type* f) override { \ getModuleFunctionImpl(functionName, f); \ }; - _GET_MODULE_FUNCTION(WasmCall0Void); - _GET_MODULE_FUNCTION(WasmCall1Void); - _GET_MODULE_FUNCTION(WasmCall2Void); - _GET_MODULE_FUNCTION(WasmCall3Void); - _GET_MODULE_FUNCTION(WasmCall4Void); - _GET_MODULE_FUNCTION(WasmCall5Void); - _GET_MODULE_FUNCTION(WasmCall8Void); - _GET_MODULE_FUNCTION(WasmCall1Word); - _GET_MODULE_FUNCTION(WasmCall3Word); + FOR_ALL_WASM_VM_EXPORTS(_GET_MODULE_FUNCTION) #undef _GET_MODULE_FUNCTION private: @@ -141,15 +112,15 @@ class V8 : public WasmVm { std::function* function); wasm::vec source_ = wasm::vec::invalid(); - wasm::own store_; - wasm::own module_; - wasm::own instance_; - wasm::own memory_; - wasm::own table_; + wasm::own store_; + wasm::own module_; + wasm::own instance_; + wasm::own memory_; + wasm::own table_; - absl::flat_hash_map> host_globals_; + absl::flat_hash_map> host_globals_; absl::flat_hash_map host_functions_; - absl::flat_hash_map> module_functions_; + absl::flat_hash_map> module_functions_; uint32_t memory_stack_base_; uint32_t memory_heap_base_; @@ -179,7 +150,7 @@ static const char* printValKind(wasm::ValKind kind) { } } -static std::string printValTypes(const wasm::vec& types) { +static std::string printValTypes(const wasm::ownvec& types) { if (types.size() == 0) { return "void"; } @@ -195,8 +166,8 @@ static std::string printValTypes(const wasm::vec& types) { return s; } -static bool equalValTypes(const wasm::vec& left, - const wasm::vec& right) { +static bool equalValTypes(const wasm::ownvec& left, + const wasm::ownvec& right) { if (left.size() != right.size()) { return false; } @@ -251,7 +222,7 @@ template struct V8ProxyForGlobal : Global { template constexpr auto convertArgsTupleToValTypesImpl(absl::index_sequence) { - return wasm::vec::make( + return wasm::ownvec::make( wasm::ValType::make(convertArgToValKind::type>())...); } @@ -425,7 +396,7 @@ void V8::link(absl::string_view debug_name, bool needs_emscripten) { for (size_t i = 0; i < export_types.size(); i++) { absl::string_view name(export_types[i]->name().get(), export_types[i]->name().size()); auto export_type = export_types[i]->type(); - auto export_item = exports[i]; + auto export_item = exports[i].get(); ASSERT(export_type->kind() == export_item->kind()); switch (export_type->kind()) { @@ -523,18 +494,22 @@ uint64_t V8::getMemorySize() { return memory_->data_size(); } -absl::string_view V8::getMemory(uint64_t pointer, uint64_t size) { +absl::optional V8::getMemory(uint64_t pointer, uint64_t size) { ENVOY_LOG(trace, "[wasm] getMemory({}, {})", pointer, size); ASSERT(memory_ != nullptr); - RELEASE_ASSERT(pointer + size <= memory_->data_size(), ""); + if (pointer + size > memory_->data_size()) { + return absl::nullopt; + } return absl::string_view(memory_->data() + pointer, size); } bool V8::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { ENVOY_LOG(trace, "[wasm] getMemoryOffset({})", host_pointer); ASSERT(memory_ != nullptr); - RELEASE_ASSERT(static_cast(host_pointer) >= memory_->data(), ""); - RELEASE_ASSERT(static_cast(host_pointer) <= memory_->data() + memory_->data_size(), ""); + if (static_cast(host_pointer) >= memory_->data() || + static_cast(host_pointer) <= memory_->data() + memory_->data_size()) { + return false; + } *vm_pointer = static_cast(host_pointer) - memory_->data(); return true; } @@ -542,17 +517,21 @@ bool V8::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { bool V8::setMemory(uint64_t pointer, uint64_t size, const void* data) { ENVOY_LOG(trace, "[wasm] setMemory({}, {})", pointer, size); ASSERT(memory_ != nullptr); - RELEASE_ASSERT(pointer + size <= memory_->data_size(), ""); + if (pointer + size > memory_->data_size()) { + return false; + } ::memcpy(memory_->data() + pointer, data, size); return true; } -bool V8::setWord(uint64_t pointer, uint64_t word) { - ENVOY_LOG(trace, "[wasm] setWord({}, {})", pointer, word); - ASSERT(memory_ != nullptr); - RELEASE_ASSERT(pointer + sizeof(uint32_t) <= memory_->data_size(), ""); - uint32_t word32 = static_cast(word); - ::memcpy(memory_->data() + pointer, &word32, sizeof(uint32_t)); +bool V8::setWord(uint64_t pointer, Word word) { + ENVOY_LOG(trace, "[wasm] setWord({}, {})", pointer, word.u64); + auto size = sizeof(uint32_t); + if (pointer + size > memory_->data_size()) { + return false; + } + uint32_t word32 = word.u32(); + ::memcpy(memory_->data() + pointer, &word32, size); return true; } @@ -577,7 +556,7 @@ void V8::registerHostFunctionImpl(absl::string_view moduleName, absl::string_vie convertArgsTupleToValTypes>()); auto func = wasm::Func::make( store_.get(), type.get(), - [](void* data, const wasm::Val params[], wasm::Val[]) -> wasm::own { + [](void* data, const wasm::Val params[], wasm::Val[]) -> wasm::own { auto func_data = reinterpret_cast(data); ENVOY_LOG(trace, "[wasm] callHostFunction(\"{}\")", func_data->name); auto args_tuple = convertValTypesToArgsTuple>(params); @@ -601,7 +580,7 @@ void V8::registerHostFunctionImpl(absl::string_view moduleName, absl::string_vie convertArgsTupleToValTypes>()); auto func = wasm::Func::make( store_.get(), type.get(), - [](void* data, const wasm::Val params[], wasm::Val results[]) -> wasm::own { + [](void* data, const wasm::Val params[], wasm::Val results[]) -> wasm::own { auto func_data = reinterpret_cast(data); ENVOY_LOG(trace, "[wasm] callHostFunction(\"{}\")", func_data->name); auto args_tuple = convertValTypesToArgsTuple>(params); diff --git a/source/extensions/common/wasm/wasm.cc b/source/extensions/common/wasm/wasm.cc index 585b848660d53..737d6b32f05c7 100644 --- a/source/extensions/common/wasm/wasm.cc +++ b/source/extensions/common/wasm/wasm.cc @@ -25,19 +25,16 @@ #include "common/http/utility.h" #include "common/tracing/http_tracer_impl.h" -#include "extensions/common/wasm/null/null.h" - -#ifdef ENVOY_WASM_V8 -#include "extensions/common/wasm/v8/v8.h" -#endif -#ifdef ENVOY_WASM_WAVM -#include "extensions/common/wasm/wavm/wavm.h" -#endif #include "extensions/common/wasm/well_known_names.h" +#include "extensions/filters/common/expr/context.h" +#include "absl/base/casts.h" #include "absl/container/flat_hash_map.h" #include "absl/container/node_hash_map.h" #include "absl/synchronization/mutex.h" +#include "eval/eval/field_access.h" +#include "eval/eval/field_backed_list_impl.h" +#include "eval/eval/field_backed_map_impl.h" namespace Envoy { namespace Extensions { @@ -45,18 +42,16 @@ namespace Common { namespace Wasm { // Any currently executing Wasm call context. -thread_local Context* current_context_ = nullptr; #define WASM_CONTEXT(_c) \ (ContextOrEffectiveContext(static_cast((void)_c, current_context_))) // The id of the context which should be used for calls out of the VM in place of current_context_ // above. -thread_local uint32_t effective_context_id_ = 0; // 0 indicates no effective context id. namespace { +inline Word wasmResultToWord(WasmResult r) { return Word(static_cast(r)); } + inline uint32_t convertWordToUint32(Word w) { return static_cast(w.u64); } -inline uint32_t convertWordToUint32(uint32_t v) { return v; } -inline uint64_t convertWordToUint32(uint64_t v) { return v; } // Convert a function of the form Word(Word...) to one of the form uint32_t(uint32_t...). template struct ConvertFunctionWordToUint32 { @@ -77,20 +72,23 @@ struct ConvertFunctionWordToUint32 { class SharedData { public: - std::pair get(absl::string_view vm_id, const absl::string_view key) { + WasmResult get(absl::string_view vm_id, const absl::string_view key, + std::pair* result) { absl::ReaderMutexLock l(&mutex); auto map = data.find(vm_id); if (map == data.end()) { - return {"", 0}; + return WasmResult::NotFound; } auto it = map->second.find(key); if (it != map->second.end()) { - return it->second; + *result = it->second; + return WasmResult::Ok; } - return {"", 0}; + return WasmResult::NotFound; } - bool set(absl::string_view vm_id, absl::string_view key, absl::string_view value, uint32_t cas) { + WasmResult set(absl::string_view vm_id, absl::string_view key, absl::string_view value, + uint32_t cas) { absl::WriterMutexLock l(&mutex); absl::flat_hash_map>* map; auto map_it = data.find(vm_id); @@ -102,13 +100,13 @@ class SharedData { auto it = map->find(key); if (it != map->end()) { if (cas && cas != it->second.second) { - return false; + return WasmResult::CasMismatch; } it->second = std::make_pair(std::string(value), nextCas()); } else { map->emplace(key, std::make_pair(std::string(value), nextCas())); } - return true; + return WasmResult::Ok; } uint32_t registerQueue(absl::string_view vm_id, absl::string_view queue_name, uint32_t context_id, @@ -139,23 +137,25 @@ class SharedData { return 0; // N.B. zero indicates that the queue was not found. } - // Returns: data, eos. - std::pair dequeue(uint32_t token) { + WasmResult dequeue(uint32_t token, std::string* data) { absl::ReaderMutexLock l(&mutex); auto it = queues.find(token); - if (it == queues.end() || it->second.queue.empty()) { - return {"", true}; + if (it == queues.end()) { + return WasmResult::NotFound; } - auto data = it->second.queue.front(); + if (it->second.queue.empty()) { + return WasmResult::Empty; + } + *data = it->second.queue.front(); it->second.queue.pop_front(); - return {std::move(data), it->second.queue.empty()}; + return WasmResult::Ok; } - bool enqueue(uint32_t token, absl::string_view value) { + WasmResult enqueue(uint32_t token, absl::string_view value) { absl::WriterMutexLock l(&mutex); auto it = queues.find(token); if (it == queues.end()) { - return false; + return WasmResult::NotFound; } it->second.queue.push_back(std::string(value)); auto vm_id = it->second.vm_id; @@ -166,7 +166,7 @@ class SharedData { wasm->queueReady(context_id, token); } }); - return true; + return WasmResult::Ok; } uint32_t nextCas() { @@ -278,17 +278,21 @@ Pairs toPairs(absl::string_view buffer) { } template -void getPairs(Context* context, const Pairs& result, uint64_t ptr_ptr, uint64_t size_ptr) { +bool getPairs(Context* context, const Pairs& result, uint64_t ptr_ptr, uint64_t size_ptr) { if (result.empty()) { - context->wasm()->copyToPointerSize("", ptr_ptr, size_ptr); - return; + return context->wasm()->copyToPointerSize("", ptr_ptr, size_ptr); } uint64_t size = pairsSize(result); uint64_t ptr; char* buffer = static_cast(context->wasm()->allocMemory(size, &ptr)); marshalPairs(result, buffer); - context->wasmVm()->setWord(ptr_ptr, ptr); - context->wasmVm()->setWord(size_ptr, size); + if (!context->wasmVm()->setWord(ptr_ptr, Word(ptr))) { + return false; + } + if (!context->wasmVm()->setWord(size_ptr, Word(size))) { + return false; + } + return true; } void exportPairs(Context* context, const Pairs& pairs, uint64_t* ptr_ptr, uint64_t* size_ptr) { @@ -380,75 +384,122 @@ uint32_t resolveQueueForTest(absl::string_view vm_id, absl::string_view queue_na Word getMetadataHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr) { if (type > static_cast(MetadataType::MAX)) { - return Word(static_cast(MetadataResult::BadType)); + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); std::string value; - auto result = context->getMetadata(static_cast(type.u64), - context->wasmVm()->getMemory(key_ptr, key_size), &value); - context->wasm()->copyToPointerSize(value, value_ptr_ptr, value_size_ptr); - return Word(static_cast(result)); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + if (!key) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + auto result = context->getMetadata(static_cast(type.u64), key.value(), &value); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->copyToPointerSize(value, value_ptr_ptr, value_size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(result); } Word setMetadataHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, Word value_size) { if (type > static_cast(MetadataType::MAX)) { - return Word(static_cast(MetadataResult::BadType)); + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - return Word(static_cast(context->setMetadata( - static_cast(type.u64), context->wasmVm()->getMemory(key_ptr, key_size), - context->wasmVm()->getMemory(value_ptr, value_size)))); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + auto value = context->wasmVm()->getMemory(value_ptr, value_size); + if (!key || !value) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord( + context->setMetadata(static_cast(type.u64), key.value(), value.value())); } Word getMetadataPairsHandler(void* raw_context, Word type, Word ptr_ptr, Word size_ptr) { if (type > static_cast(MetadataType::MAX)) { - return Word(static_cast(MetadataResult::BadType)); + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); PairsWithStringValues pairs; auto result = context->getMetadataPairs(static_cast(type.u64), &pairs); - getPairs(context, pairs, ptr_ptr, size_ptr); - return Word(static_cast(result)); + if (!getPairs(context, pairs, ptr_ptr, size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(result); } Word getMetadataStructHandler(void* raw_context, Word type, Word name_ptr, Word name_size, Word value_ptr_ptr, Word value_size_ptr) { if (type > static_cast(MetadataType::MAX)) { - return Word(static_cast(MetadataResult::BadType)); + return Word(static_cast(WasmResult::BadArgument)); } auto context = WASM_CONTEXT(raw_context); std::string value; + auto name = context->wasmVm()->getMemory(name_ptr, name_size); + if (!name) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } auto result = - context->getMetadataStruct(static_cast(type.u64), - context->wasmVm()->getMemory(name_ptr, name_size), &value); - context->wasm()->copyToPointerSize(value, value_ptr_ptr, value_size_ptr); - return Word(static_cast(result)); + context->getMetadataStruct(static_cast(type.u64), name.value(), &value); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->copyToPointerSize(value, value_ptr_ptr, value_size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word setMetadataStructHandler(void* raw_context, Word type, Word name_ptr, Word name_size, Word value_ptr, Word value_size) { if (type > static_cast(MetadataType::MAX)) { - return Word(static_cast(MetadataResult::BadType)); + return Word(static_cast(WasmResult::BadArgument)); } auto context = WASM_CONTEXT(raw_context); - return Word(static_cast(context->setMetadataStruct( - static_cast(type.u64), context->wasmVm()->getMemory(name_ptr, name_size), - context->wasmVm()->getMemory(value_ptr, value_size)))); + auto name = context->wasmVm()->getMemory(name_ptr, name_size); + auto value = context->wasmVm()->getMemory(value_ptr, value_size); + if (!name || !value) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return Word(static_cast(context->setMetadataStruct(static_cast(type.u64), + name.value(), value.value()))); +} + +// Generic selector +Word getSelectorExpressionHandler(void* raw_context, Word path_ptr, Word path_size, + Word value_ptr_ptr, Word value_size_ptr) { + auto context = WASM_CONTEXT(raw_context); + auto path = context->wasmVm()->getMemory(path_ptr, path_size); + if (!path.has_value()) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + std::string value; + auto result = context->getSelectorExpression(path.value(), &value); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->copyToPointerSize(value, value_ptr_ptr, value_size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } // Continue/Reply/Route -void continueRequestHandler(void* raw_context) { +Word continueRequestHandler(void* raw_context) { auto context = WASM_CONTEXT(raw_context); context->continueRequest(); + return wasmResultToWord(WasmResult::Ok); } -void continueResponseHandler(void* raw_context) { +Word continueResponseHandler(void* raw_context) { auto context = WASM_CONTEXT(raw_context); context->continueResponse(); + return wasmResultToWord(WasmResult::Ok); } -void sendLocalResponseHandler(void* raw_context, Word response_code, Word response_code_details_ptr, +Word sendLocalResponseHandler(void* raw_context, Word response_code, Word response_code_details_ptr, Word response_code_details_size, Word body_ptr, Word body_size, Word additional_response_header_pairs_ptr, Word additional_response_header_pairs_size, Word grpc_code) { @@ -456,8 +507,12 @@ void sendLocalResponseHandler(void* raw_context, Word response_code, Word respon auto details = context->wasmVm()->getMemory(response_code_details_ptr, response_code_details_size); auto body = context->wasmVm()->getMemory(body_ptr, body_size); - auto additional_headers = toPairs(context->wasmVm()->getMemory( - additional_response_header_pairs_ptr, additional_response_header_pairs_size)); + auto additional_response_header_pairs = context->wasmVm()->getMemory( + additional_response_header_pairs_ptr, additional_response_header_pairs_size); + if (!details || !body || !additional_response_header_pairs) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + auto additional_headers = toPairs(additional_response_header_pairs.value()); auto modify_headers = [additional_headers](Http::HeaderMap& headers) { for (auto& p : additional_headers) { const Http::LowerCaseString lower_key(std::move(std::string(p.first))); @@ -468,8 +523,9 @@ void sendLocalResponseHandler(void* raw_context, Word response_code, Word respon auto grpc_status_opt = (grpc_status != Grpc::Status::GrpcStatus::InvalidCode) ? absl::optional(grpc_status) : absl::optional(); - context->sendLocalResponse(static_cast(response_code.u64), body, - modify_headers, grpc_status_opt, details); + context->sendLocalResponse(static_cast(response_code.u64), body.value(), + modify_headers, grpc_status_opt, details.value()); + return wasmResultToWord(WasmResult::Ok); } Word setEffectiveContextHandler(void* raw_context, Word context_id) { @@ -477,25 +533,38 @@ Word setEffectiveContextHandler(void* raw_context, Word context_id) { uint32_t cid = static_cast(context_id.u64); auto c = context->wasm()->getContext(cid); if (!c) { - return 1; // Error. + return wasmResultToWord(WasmResult::BadArgument); } effective_context_id_ = cid; - return 0; // Ok. + return wasmResultToWord(WasmResult::Ok); } -void clearRouteCacheHandler(void* raw_context) { +Word clearRouteCacheHandler(void* raw_context) { auto context = WASM_CONTEXT(raw_context); context->clearRouteCache(); + return wasmResultToWord(WasmResult::Ok); } // SharedData -void getSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr_ptr, +Word getSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr, Word cas_ptr) { auto context = WASM_CONTEXT(raw_context); auto key = context->wasmVm()->getMemory(key_ptr, key_size); - auto p = context->getSharedData(key); - context->wasm()->copyToPointerSize(p.first, value_ptr_ptr, value_size_ptr); - context->wasmVm()->setMemory(cas_ptr, sizeof(uint32_t), &p.second); + if (!key) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + std::pair data; + WasmResult result = context->getSharedData(key.value(), &data); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->copyToPointerSize(data.first, value_ptr_ptr, value_size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + if (!context->wasmVm()->setMemory(cas_ptr, sizeof(uint32_t), &data.second)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word setSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr, @@ -503,122 +572,179 @@ Word setSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word v auto context = WASM_CONTEXT(raw_context); auto key = context->wasmVm()->getMemory(key_ptr, key_size); auto value = context->wasmVm()->getMemory(value_ptr, value_size); - auto ok = context->setSharedData(key, value, cas); - return Word(static_cast(ok)); + if (!key || !value) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(context->setSharedData(key.value(), value.value(), cas)); } -Word registerSharedQueueHandler(void* raw_context, Word queue_name_ptr, Word queue_name_size) { +Word registerSharedQueueHandler(void* raw_context, Word queue_name_ptr, Word queue_name_size, + Word token_ptr) { auto context = WASM_CONTEXT(raw_context); auto queue_name = context->wasmVm()->getMemory(queue_name_ptr, queue_name_size); - return Word(context->registerSharedQueue(queue_name)); + if (!queue_name) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + uint32_t token = context->registerSharedQueue(queue_name.value()); + if (!context->wasm()->setDatatype(token_ptr, token)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word dequeueSharedQueueHandler(void* raw_context, Word token, Word data_ptr_ptr, Word data_size_ptr) { auto context = WASM_CONTEXT(raw_context); - auto result = context->dequeueSharedQueue(token.u32()); - context->wasm()->copyToPointerSize(result.first, data_ptr_ptr, data_size_ptr); - return Word(static_cast(result.second)); + std::string data; + WasmResult result = context->dequeueSharedQueue(token.u32(), &data); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->copyToPointerSize(data, data_ptr_ptr, data_size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word resolveSharedQueueHandler(void* raw_context, Word vm_id_ptr, Word vm_id_size, - Word queue_name_ptr, Word queue_name_size) { + Word queue_name_ptr, Word queue_name_size, Word token_ptr) { auto context = WASM_CONTEXT(raw_context); auto vm_id = context->wasmVm()->getMemory(vm_id_ptr, vm_id_size); auto queue_name = context->wasmVm()->getMemory(queue_name_ptr, queue_name_size); - auto token = context->resolveSharedQueue(vm_id, queue_name); - return Word(static_cast(token)); + if (!vm_id || !queue_name) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + uint32_t token = 0; + auto result = context->resolveSharedQueue(vm_id.value(), queue_name.value(), &token); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->setDatatype(token_ptr, token)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word enqueueSharedQueueHandler(void* raw_context, Word token, Word data_ptr, Word data_size) { auto context = WASM_CONTEXT(raw_context); auto data = context->wasmVm()->getMemory(data_ptr, data_size); - auto ok = context->enqueueSharedQueue(token.u32(), data); - return Word(static_cast(ok)); + if (!data) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(context->enqueueSharedQueue(token.u32(), data.value())); } // Header/Trailer/Metadata Maps -void addHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word addHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, Word value_size) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - context->addHeaderMapValue(static_cast(type.u64), - context->wasmVm()->getMemory(key_ptr, key_size), - context->wasmVm()->getMemory(value_ptr, value_size)); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + auto value = context->wasmVm()->getMemory(value_ptr, value_size); + if (!key || !value) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + context->addHeaderMapValue(static_cast(type.u64), key.value(), value.value()); + return wasmResultToWord(WasmResult::Ok); } -void getHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word getHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - auto result = context->getHeaderMapValue(static_cast(type.u64), - context->wasmVm()->getMemory(key_ptr, key_size)); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + if (!key) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + auto result = context->getHeaderMapValue(static_cast(type.u64), key.value()); context->wasm()->copyToPointerSize(result, value_ptr_ptr, value_size_ptr); + return wasmResultToWord(WasmResult::Ok); } -void replaceHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word replaceHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, Word value_size) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - context->replaceHeaderMapValue(static_cast(type.u64), - context->wasmVm()->getMemory(key_ptr, key_size), - context->wasmVm()->getMemory(value_ptr, value_size)); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + auto value = context->wasmVm()->getMemory(value_ptr, value_size); + if (!key || !value) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + context->replaceHeaderMapValue(static_cast(type.u64), key.value(), value.value()); + return wasmResultToWord(WasmResult::Ok); } -void removeHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size) { +Word removeHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - context->removeHeaderMapValue(static_cast(type.u64), - context->wasmVm()->getMemory(key_ptr, key_size)); + auto key = context->wasmVm()->getMemory(key_ptr, key_size); + if (!key) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + context->removeHeaderMapValue(static_cast(type.u64), key.value()); + return wasmResultToWord(WasmResult::Ok); } -void getHeaderMapPairsHandler(void* raw_context, Word type, Word ptr_ptr, Word size_ptr) { +Word getHeaderMapPairsHandler(void* raw_context, Word type, Word ptr_ptr, Word size_ptr) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); auto result = context->getHeaderMapPairs(static_cast(type.u64)); - getPairs(context, result, ptr_ptr, size_ptr); + if (!getPairs(context, result, ptr_ptr, size_ptr)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } -void setHeaderMapPairsHandler(void* raw_context, Word type, Word ptr, Word size) { +Word setHeaderMapPairsHandler(void* raw_context, Word type, Word ptr, Word size) { if (type > static_cast(HeaderMapType::MAX)) { - return; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - context->setHeaderMapPairs(static_cast(type.u64), - toPairs(context->wasmVm()->getMemory(ptr, size))); + auto data = context->wasmVm()->getMemory(ptr, size); + if (!data) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + context->setHeaderMapPairs(static_cast(type.u64), toPairs(data.value())); + return wasmResultToWord(WasmResult::Ok); } -uint32_t getHeaderMapSizeHandler(void* raw_context, Word type) { +Word getHeaderMapSizeHandler(void* raw_context, Word type, Word result_ptr) { if (type > static_cast(HeaderMapType::MAX)) { - return 0; + return wasmResultToWord(WasmResult::BadArgument); } auto context = WASM_CONTEXT(raw_context); - return context->getHeaderMapSize(static_cast(type.u64)); + size_t result = context->getHeaderMapSize(static_cast(type.u64)); + if (!context->wasmVm()->setWord(result_ptr, Word(result))) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } // Body Buffer -void getRequestBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, +Word getRequestBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, Word size_ptr) { auto context = WASM_CONTEXT(raw_context); auto result = context->getRequestBodyBufferBytes(start, length); context->wasm()->copyToPointerSize(result, ptr_ptr, size_ptr); + return wasmResultToWord(WasmResult::Ok); } -void getResponseBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, +Word getResponseBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, Word size_ptr) { auto context = WASM_CONTEXT(raw_context); auto result = context->getResponseBodyBufferBytes(start, length); context->wasm()->copyToPointerSize(result, ptr_ptr, size_ptr); + return wasmResultToWord(WasmResult::Ok); } Word httpCallHandler(void* raw_context, Word uri_ptr, Word uri_size, Word header_pairs_ptr, @@ -626,33 +752,59 @@ Word httpCallHandler(void* raw_context, Word uri_ptr, Word uri_size, Word header Word trailer_pairs_size, Word timeout_milliseconds) { auto context = WASM_CONTEXT(raw_context)->root_context(); auto uri = context->wasmVm()->getMemory(uri_ptr, uri_size); - auto headers = toPairs(context->wasmVm()->getMemory(header_pairs_ptr, header_pairs_size)); auto body = context->wasmVm()->getMemory(body_ptr, body_size); - auto trailers = toPairs(context->wasmVm()->getMemory(trailer_pairs_ptr, trailer_pairs_size)); - return context->httpCall(uri, headers, body, trailers, timeout_milliseconds); + auto header_pairs = context->wasmVm()->getMemory(header_pairs_ptr, header_pairs_size); + auto trailer_pairs = context->wasmVm()->getMemory(trailer_pairs_ptr, trailer_pairs_size); + if (!uri || !body || !header_pairs || !trailer_pairs) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + auto headers = toPairs(header_pairs.value()); + auto trailers = toPairs(trailer_pairs.value()); + return context->httpCall(uri.value(), headers, body.value(), trailers, timeout_milliseconds); } -Word defineMetricHandler(void* raw_context, Word metric_type, Word name_ptr, Word name_size) { +Word defineMetricHandler(void* raw_context, Word metric_type, Word name_ptr, Word name_size, + Word metric_id_ptr) { if (metric_type > static_cast(Context::MetricType::Max)) return 0; auto context = WASM_CONTEXT(raw_context); auto name = context->wasmVm()->getMemory(name_ptr, name_size); - return context->defineMetric(static_cast(metric_type.u64), name); + if (!name) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + uint32_t metric_id = 0; + auto result = context->defineMetric(static_cast(metric_type.u64), + name.value(), &metric_id); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->setDatatype(metric_id_ptr, metric_id)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } -void incrementMetricHandler(void* raw_context, Word metric_id, int64_t offset) { +Word incrementMetricHandler(void* raw_context, Word metric_id, int64_t offset) { auto context = WASM_CONTEXT(raw_context); - context->incrementMetric(metric_id, offset); + return wasmResultToWord(context->incrementMetric(metric_id, offset)); } -void recordMetricHandler(void* raw_context, Word metric_id, uint64_t value) { +Word recordMetricHandler(void* raw_context, Word metric_id, uint64_t value) { auto context = WASM_CONTEXT(raw_context); - context->recordMetric(metric_id, value); + return wasmResultToWord(context->recordMetric(metric_id, value)); } -uint64_t getMetricHandler(void* raw_context, Word metric_id) { +Word getMetricHandler(void* raw_context, Word metric_id, Word result_uint64_ptr) { auto context = WASM_CONTEXT(raw_context); - return context->getMetric(metric_id); + uint64_t value = 0; + auto result = context->getMetric(metric_id, &value); + if (result != WasmResult::Ok) { + return wasmResultToWord(result); + } + if (!context->wasm()->setDatatype(result_uint64_ptr, value)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } Word grpcCallHandler(void* raw_context, Word service_ptr, Word service_size, Word service_name_ptr, @@ -663,12 +815,15 @@ Word grpcCallHandler(void* raw_context, Word service_ptr, Word service_size, Wor auto service_name = context->wasmVm()->getMemory(service_name_ptr, service_name_size); auto method_name = context->wasmVm()->getMemory(method_name_ptr, method_name_size); auto request = context->wasmVm()->getMemory(request_ptr, request_size); + if (!service || !service_name || !method_name || !request) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } envoy::api::v2::core::GrpcService service_proto; - if (!service_proto.ParseFromArray(service.data(), service.size())) { + if (!service_proto.ParseFromArray(service.value().data(), service.value().size())) { return false; } - return context->grpcCall(service_proto, service_name, method_name, request, - std::chrono::milliseconds(timeout_milliseconds)); + return context->grpcCall(service_proto, service_name.value(), method_name.value(), + request.value(), std::chrono::milliseconds(timeout_milliseconds)); } Word grpcStreamHandler(void* raw_context, Word service_ptr, Word service_size, @@ -678,28 +833,34 @@ Word grpcStreamHandler(void* raw_context, Word service_ptr, Word service_size, auto service = context->wasmVm()->getMemory(service_ptr, service_size); auto service_name = context->wasmVm()->getMemory(service_name_ptr, service_name_size); auto method_name = context->wasmVm()->getMemory(method_name_ptr, method_name_size); + if (!service || !service_name || !method_name) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } envoy::api::v2::core::GrpcService service_proto; - if (!service_proto.ParseFromArray(service.data(), service.size())) { + if (!service_proto.ParseFromArray(service.value().data(), service.value().size())) { return false; } - return context->grpcStream(service_proto, service_name, method_name); + return context->grpcStream(service_proto, service_name.value(), method_name.value()); } -void grpcCancelHandler(void* raw_context, Word token) { +Word grpcCancelHandler(void* raw_context, Word token) { auto context = WASM_CONTEXT(raw_context)->root_context(); - context->grpcCancel(token); + return wasmResultToWord(context->grpcCancel(token)); } -void grpcCloseHandler(void* raw_context, Word token) { +Word grpcCloseHandler(void* raw_context, Word token) { auto context = WASM_CONTEXT(raw_context)->root_context(); - context->grpcClose(token); + return wasmResultToWord(context->grpcClose(token)); } -void grpcSendHandler(void* raw_context, Word token, Word message_ptr, Word message_size, +Word grpcSendHandler(void* raw_context, Word token, Word message_ptr, Word message_size, Word end_stream) { auto context = WASM_CONTEXT(raw_context)->root_context(); auto message = context->wasmVm()->getMemory(message_ptr, message_size); - context->grpcSend(token, message, end_stream); + if (!message) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(context->grpcSend(token, message.value(), end_stream)); } Word _emscripten_get_heap_sizeHandler(void* raw_context) { @@ -709,7 +870,11 @@ Word _emscripten_get_heap_sizeHandler(void* raw_context) { Word _emscripten_memcpy_bigHandler(void* raw_context, Word dst, Word src, Word size) { auto context = WASM_CONTEXT(raw_context); - context->wasmVm()->setMemory(dst, size, context->wasmVm()->getMemory(src, size).data()); + auto data = context->wasmVm()->getMemory(src, size); + if (!data) { + return 0; + } + context->wasmVm()->setMemory(dst, size, data.value().data()); return dst; } @@ -749,6 +914,10 @@ Word ___cxa_uncaught_exceptionHandler(void*) { throw WasmException("emscripten cxa_uncaught_exception"); } +Word ___cxa_uncaught_exceptionsHandler(void*) { + throw WasmException("emscripten cxa_uncaught_exceptions"); +} + Word ___clock_gettimeHandler(void*, Word, Word) { throw WasmException("emscripten clock_gettime"); } void ___lockHandler(void*, Word) { throw WasmException("emscripten lock"); } @@ -768,7 +937,11 @@ Word ___syscall146Handler(void* raw_context, Word, Word syscall_args_ptr) { // Read syscall args. auto memslice = context->wasmVm()->getMemory(syscall_args_ptr, 3 * sizeof(uint32_t)); - const uint32_t* syscall_args = reinterpret_cast(memslice.data()); + if (!memslice) { + context->wasm()->setErrno(EINVAL); + return -1; + } + const uint32_t* syscall_args = reinterpret_cast(memslice.value().data()); spdlog::level::level_enum log_level; switch (syscall_args[0] /* fd */) { @@ -786,10 +959,18 @@ Word ___syscall146Handler(void* raw_context, Word, Word syscall_args_ptr) { for (size_t i = 0; i < syscall_args[2] /* iovcnt */; i++) { memslice = context->wasmVm()->getMemory(syscall_args[1] /* iov */ + i * 2 * sizeof(uint32_t), 2 * sizeof(uint32_t)); - const uint32_t* iovec = reinterpret_cast(memslice.data()); + if (!memslice) { + context->wasm()->setErrno(EINVAL); + return -1; + } + const uint32_t* iovec = reinterpret_cast(memslice.value().data()); if (iovec[1] /* size */) { memslice = context->wasmVm()->getMemory(iovec[0] /* data */, iovec[1] /* size */); - s.append(memslice.data(), memslice.size()); + if (!memslice) { + context->wasm()->setErrno(EINVAL); + return -1; + } + s.append(memslice.value().data(), memslice.value().size()); } } @@ -824,22 +1005,33 @@ Word _pthread_setspecificHandler(void*, Word, Word) { } void setTempRet0Handler(void*, Word) { throw WasmException("emscripten setTempRet0"); } -void setTickPeriodMillisecondsHandler(void* raw_context, Word tick_period_milliseconds) { - WASM_CONTEXT(raw_context)->setTickPeriod(std::chrono::milliseconds(tick_period_milliseconds)); +Word setTickPeriodMillisecondsHandler(void* raw_context, Word tick_period_milliseconds) { + return wasmResultToWord(WASM_CONTEXT(raw_context) + ->setTickPeriod(std::chrono::milliseconds(tick_period_milliseconds))); } -uint64_t getCurrentTimeNanosecondsHandler(void* raw_context) { - return WASM_CONTEXT(raw_context)->getCurrentTimeNanoseconds(); +Word getCurrentTimeNanosecondsHandler(void* raw_context, Word result_uint64_ptr) { + auto context = WASM_CONTEXT(raw_context); + uint64_t result = context->getCurrentTimeNanoseconds(); + if (!context->wasm()->setDatatype(result_uint64_ptr.u64, result)) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + return wasmResultToWord(WasmResult::Ok); } -void logHandler(void* raw_context, Word level, Word address, Word size) { +Word logHandler(void* raw_context, Word level, Word address, Word size) { auto context = WASM_CONTEXT(raw_context); - context->scriptLog(static_cast(level.u64), - context->wasmVm()->getMemory(address, size)); + auto message = context->wasmVm()->getMemory(address, size); + if (!message) { + return wasmResultToWord(WasmResult::InvalidMemoryAccess); + } + context->scriptLog(static_cast(level.u64), message.value()); + return wasmResultToWord(WasmResult::Ok); } -void Context::setTickPeriod(std::chrono::milliseconds tick_period) { +WasmResult Context::setTickPeriod(std::chrono::milliseconds tick_period) { wasm_->setTickPeriod(root_context_id_ ? root_context_id_ : id_, tick_period); + return WasmResult::Ok; } uint64_t Context::getCurrentTimeNanoseconds() { @@ -848,12 +1040,159 @@ uint64_t Context::getCurrentTimeNanoseconds() { .count(); } +WasmResult serializeValue(Filters::Common::Expr::CelValue value, std::string* result) { + using Filters::Common::Expr::CelValue; + switch (value.type()) { + case CelValue::Type::kMessage: + if (value.MessageOrDie() != nullptr && value.MessageOrDie()->SerializeToString(result)) { + return WasmResult::Ok; + } + return WasmResult::SerializationFailure; + case CelValue::Type::kString: + result->assign(value.StringOrDie().value().data(), value.StringOrDie().value().size()); + return WasmResult::Ok; + case CelValue::Type::kBytes: + result->assign(value.BytesOrDie().value().data(), value.BytesOrDie().value().size()); + return WasmResult::Ok; + case CelValue::Type::kInt64: { + auto out = value.Int64OrDie(); + result->assign(reinterpret_cast(&out), sizeof(int64_t)); + return WasmResult::Ok; + } + case CelValue::Type::kUint64: { + auto out = value.Uint64OrDie(); + result->assign(reinterpret_cast(&out), sizeof(uint64_t)); + return WasmResult::Ok; + } + case CelValue::Type::kDouble: { + auto out = value.DoubleOrDie(); + result->assign(reinterpret_cast(&out), sizeof(double)); + return WasmResult::Ok; + } + case CelValue::Type::kBool: { + auto out = value.BoolOrDie(); + result->assign(reinterpret_cast(&out), sizeof(bool)); + return WasmResult::Ok; + } + case CelValue::Type::kDuration: { + auto out = value.DurationOrDie(); + result->assign(reinterpret_cast(&out), sizeof(absl::Duration)); + return WasmResult::Ok; + } + case CelValue::Type::kTimestamp: { + auto out = value.TimestampOrDie(); + result->assign(reinterpret_cast(&out), sizeof(absl::Time)); + return WasmResult::Ok; + } + default: + // TODO: lists and maps + break; + } + + return WasmResult::SerializationFailure; +} + +WasmResult Context::getSelectorExpression(absl::string_view path, std::string* result) { + using Filters::Common::Expr::CelValue; + using google::api::expr::runtime::FieldBackedListImpl; + using google::api::expr::runtime::FieldBackedMapImpl; + + bool first = true; + CelValue value; + Protobuf::Arena arena; + const StreamInfo::StreamInfo& info = decoder_callbacks_->streamInfo(); + const auto request_headers = request_headers_ ? request_headers_ : access_log_request_headers_; + const auto response_headers = + response_headers_ ? response_headers_ : access_log_response_headers_; + const auto response_trailers = + response_trailers_ ? response_trailers_ : access_log_response_trailers_; + + size_t start = 0; + while (true) { + if (start >= path.size()) { + break; + } + + size_t end = path.find('\0', start); + if (end == absl::string_view::npos) { + // this should not happen unless the input string is not null-terminated in the view + return WasmResult::ParseFailure; + } + auto part = path.substr(start, end - start); + start = end + 1; + + // top-level ident + if (first) { + first = false; + if (part == "metadata") { + value = CelValue::CreateMessage(&info.dynamicMetadata(), &arena); + } else if (part == "request") { + value = CelValue::CreateMap(Protobuf::Arena::Create( + &arena, request_headers, info)); + } else if (part == "response") { + value = CelValue::CreateMap(Protobuf::Arena::Create( + &arena, response_headers, response_trailers, info)); + } else if (part == "connection") { + value = CelValue::CreateMap( + Protobuf::Arena::Create(&arena, info)); + } else if (part == "node") { + value = CelValue::CreateMessage(&wasm_->local_info_.node(), &arena); + } else if (part == "source") { + value = CelValue::CreateMap( + Protobuf::Arena::Create(&arena, info, false)); + } else if (part == "destination") { + value = CelValue::CreateMap( + Protobuf::Arena::Create(&arena, info, true)); + } else { + return WasmResult::NotFound; + } + continue; + } + + if (value.IsMap()) { + auto& map = *value.MapOrDie(); + auto field = map[CelValue::CreateString(part)]; + if (field.has_value()) { + value = field.value(); + } else { + return {}; + } + } else if (value.IsMessage()) { + auto msg = value.MessageOrDie(); + if (msg == nullptr) { + return {}; + } + const Protobuf::Descriptor* desc = msg->GetDescriptor(); + const Protobuf::FieldDescriptor* field_desc = desc->FindFieldByName(std::string(part)); + if (field_desc == nullptr) { + return {}; + } else if (field_desc->is_map()) { + value = CelValue::CreateMap( + Protobuf::Arena::Create(&arena, msg, field_desc, &arena)); + } else if (field_desc->is_repeated()) { + value = CelValue::CreateList( + Protobuf::Arena::Create(&arena, msg, field_desc, &arena)); + } else { + auto status = + google::api::expr::runtime::CreateValueFromSingleField(msg, field_desc, &arena, &value); + if (!status.ok()) { + return {}; + } + } + } else { + return {}; + } + } + + return serializeValue(value, result); +} + // Shared Data -std::pair Context::getSharedData(absl::string_view key) { - return global_shared_data.get(wasm_->id(), key); +WasmResult Context::getSharedData(absl::string_view key, std::pair* data) { + return global_shared_data.get(wasm_->id(), key, data); } -bool Context::setSharedData(absl::string_view key, absl::string_view value, uint32_t cas) { +WasmResult Context::setSharedData(absl::string_view key, absl::string_view value, uint32_t cas) { return global_shared_data.set(wasm_->id(), key, value, cas); } @@ -865,15 +1204,21 @@ uint32_t Context::registerSharedQueue(absl::string_view queue_name) { wasm_->id(), queue_name, isRootContext() ? id_ : root_context_id_, wasm_->dispatcher_); } -uint32_t Context::resolveSharedQueue(absl::string_view vm_id, absl::string_view queue_name) { - return global_shared_data.resolveQueue(vm_id, queue_name); +WasmResult Context::resolveSharedQueue(absl::string_view vm_id, absl::string_view queue_name, + uint32_t* token_ptr) { + uint32_t token = global_shared_data.resolveQueue(vm_id, queue_name); + if (!token) { + return WasmResult::NotFound; + } + *token_ptr = token; + return WasmResult::Ok; } -std::pair Context::dequeueSharedQueue(uint32_t token) { - return global_shared_data.dequeue(token); +WasmResult Context::dequeueSharedQueue(uint32_t token, std::string* data) { + return global_shared_data.dequeue(token, data); } -bool Context::enqueueSharedQueue(uint32_t token, absl::string_view value) { +WasmResult Context::enqueueSharedQueue(uint32_t token, absl::string_view value) { return global_shared_data.enqueue(token, value); } @@ -1019,7 +1364,7 @@ uint32_t Context::getHeaderMapSize(HeaderMapType type) { if (!map) { return 0; } - return map->byteSize(); + return static_cast(map->refreshByteSize()); } // Body Buffer @@ -1257,7 +1602,11 @@ uint32_t Context::getDestinationPort(StreamType type) { auto streamInfo = getConstStreamInfo(StreamType2MetadataType(type)); if (!streamInfo) return 0; - auto address = streamInfo->upstreamHost()->address(); + auto host = streamInfo->upstreamHost(); + if (!host) { + return 0; + } + auto address = host->address(); if (!address) { return 0; } @@ -1283,6 +1632,14 @@ std::string Context::getTlsVersion(StreamType type) { return streamInfo->downstreamSslConnection()->tlsVersion(); } +absl::optional Context::peerCertificatePresented(StreamType type) { + auto streamInfo = getConstStreamInfo(StreamType2MetadataType(type)); + if (!streamInfo || !streamInfo->downstreamSslConnection()) { + return absl::nullopt; + } + return streamInfo->downstreamSslConnection()->peerCertificatePresented(); +} + const ProtobufWkt::Struct* Context::getMetadataStructProto(MetadataType type, absl::string_view name) { switch (type) { @@ -1343,164 +1700,191 @@ const ProtobufWkt::Struct* Context::getMetadataStructProto(MetadataType type, } } -MetadataResult Context::getMetadata(MetadataType type, absl::string_view key, - std::string* result_ptr) { +WasmResult Context::getMetadata(MetadataType type, absl::string_view key, std::string* result_ptr) { if (type == MetadataType::Expression) { - static absl::flat_hash_map> + static absl::flat_hash_map> handlers = { {"request.protocol", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto protocol = context->getProtocol(StreamType::Request); *result_ptr = protocol; if (protocol.empty()) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"response.protocol", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto protocol = context->getProtocol(StreamType::Response); *result_ptr = protocol; if (protocol.empty()) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"request.destination_port", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto port = context->getDestinationPort(StreamType::Request); result_ptr->assign(reinterpret_cast(&port), sizeof(port)); if (!port) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"response.destination_port", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto port = context->getDestinationPort(StreamType::Response); result_ptr->assign(reinterpret_cast(&port), sizeof(port)); if (!port) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"request.response_code", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto response_code = context->getResponseCode(StreamType::Request); result_ptr->assign(reinterpret_cast(&response_code), sizeof(response_code)); if (!response_code) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"response.response_code", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto response_code = context->getResponseCode(StreamType::Response); result_ptr->assign(reinterpret_cast(&response_code), sizeof(response_code)); if (!response_code) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"request.tls_version", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto tls_version = context->getTlsVersion(StreamType::Request); *result_ptr = tls_version; if (tls_version.empty()) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } - return MetadataResult::Ok; + return WasmResult::Ok; }}, {"response.tls_version", - [](Context* context, std::string* result_ptr) -> MetadataResult { + [](Context* context, std::string* result_ptr) -> WasmResult { auto tls_version = context->getTlsVersion(StreamType::Response); *result_ptr = tls_version; if (tls_version.empty()) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; + } + return WasmResult::Ok; + }}, + {"request.peer_certificate_presented", + [](Context* context, std::string* result_ptr) -> WasmResult { + auto peer_certificate_presented = + context->peerCertificatePresented(StreamType::Request); + if (!peer_certificate_presented) { + return WasmResult::NotFound; } - return MetadataResult::Ok; + bool present = peer_certificate_presented.value(); + result_ptr->assign(reinterpret_cast(&present), sizeof(present)); + return WasmResult::Ok; + }}, + {"response.peer_certificate_presented", + [](Context* context, std::string* result_ptr) -> WasmResult { + auto peer_certificate_presented = + context->peerCertificatePresented(StreamType::Response); + if (!peer_certificate_presented) { + return WasmResult::NotFound; + } + bool present = peer_certificate_presented.value(); + result_ptr->assign(reinterpret_cast(&present), sizeof(present)); + return WasmResult::Ok; + }}, + {"plugin.direction", + [](Context* context, std::string* result_ptr) -> WasmResult { + auto direction = context->wasm_->direction_; + result_ptr->assign(reinterpret_cast(&direction), sizeof(direction)); + return WasmResult::Ok; }}, }; auto it = handlers.find(key); if (it == handlers.end()) { - return MetadataResult::BadExpression; + return WasmResult::BadExpression; } return it->second(this, result_ptr); } auto proto_struct = getMetadataStructProto(type); if (!proto_struct) { - return MetadataResult::StructNotFound; + return WasmResult::NotFound; } auto it = proto_struct->fields().find(std::string(key)); if (it == proto_struct->fields().end()) { - return MetadataResult::FieldNotFound; + return WasmResult::NotFound; } std::string result; if (!it->second.SerializeToString(&result)) { - return MetadataResult::SerializationFailure; + return WasmResult::SerializationFailure; } - *result_ptr = result; - return MetadataResult::Ok; + *result_ptr = std::move(result); + return WasmResult::Ok; } -MetadataResult Context::setMetadata(MetadataType type, absl::string_view key, - absl::string_view serialized_proto_struct) { +WasmResult Context::setMetadata(MetadataType type, absl::string_view key, + absl::string_view serialized_proto_struct) { auto streamInfo = getStreamInfo(type); if (!streamInfo) { - return MetadataResult::StructNotFound; + return WasmResult::NotFound; } streamInfo->setDynamicMetadata( HttpFilters::HttpFilterNames::get().Wasm, MessageUtil::keyValueStruct(std::string(key), std::string(serialized_proto_struct))); - return MetadataResult::Ok; + return WasmResult::Ok; } -MetadataResult Context::getMetadataPairs(MetadataType type, PairsWithStringValues* result_ptr) { +WasmResult Context::getMetadataPairs(MetadataType type, PairsWithStringValues* result_ptr) { auto proto_struct = getMetadataStructProto(type); if (!proto_struct) { - return MetadataResult::StructNotFound; + return WasmResult::NotFound; } PairsWithStringValues result; for (auto& p : proto_struct->fields()) { std::string value; if (!p.second.SerializeToString(&value)) { - return MetadataResult::SerializationFailure; + return WasmResult::SerializationFailure; } result.emplace_back(p.first, std::move(value)); } - *result_ptr = result; - return MetadataResult::Ok; + *result_ptr = std::move(result); + return WasmResult::Ok; } -MetadataResult Context::getMetadataStruct(MetadataType type, absl::string_view name, - std::string* result_ptr) { +WasmResult Context::getMetadataStruct(MetadataType type, absl::string_view name, + std::string* result_ptr) { auto proto_struct = getMetadataStructProto(type, name); if (!proto_struct) { - return MetadataResult::StructNotFound; + return WasmResult::NotFound; } std::string result; if (!proto_struct->SerializeToString(&result)) { - return MetadataResult::SerializationFailure; + return WasmResult::SerializationFailure; } - *result_ptr = result; - return MetadataResult::Ok; + *result_ptr = std::move(result); + return WasmResult::Ok; } -MetadataResult Context::setMetadataStruct(MetadataType type, absl::string_view name, - absl::string_view serialized_proto_struct) { +WasmResult Context::setMetadataStruct(MetadataType type, absl::string_view name, + absl::string_view serialized_proto_struct) { auto streamInfo = getStreamInfo(type); if (!streamInfo) { - return MetadataResult::StructNotFound; + return WasmResult::NotFound; } ProtobufWkt::Struct proto_struct; if (!proto_struct.ParseFromArray(serialized_proto_struct.data(), serialized_proto_struct.size())) { - return MetadataResult::ParseFailure; + return WasmResult::ParseFailure; } streamInfo->setDynamicMetadata(std::string(name), proto_struct); - return MetadataResult::Ok; + return WasmResult::Ok; } void Context::scriptLog(spdlog::level::level_enum level, absl::string_view message) { @@ -1559,6 +1943,7 @@ void Context::onCreate(uint32_t root_context_id) { Http::FilterHeadersStatus Context::onRequestHeaders() { onCreate(root_context_id_); + in_vm_context_created_ = true; // Store the stream id so that we can use it in log(). auto& stream_info = decoder_callbacks_->streamInfo(); auto& metadata = (*stream_info.dynamicMetadata() @@ -1608,8 +1993,17 @@ Http::FilterMetadataStatus Context::onRequestMetadata() { } Http::FilterHeadersStatus Context::onResponseHeaders() { - if (!wasm_->onResponseHeaders_) + if (!in_vm_context_created_) { + // If the request is invalid then onRequestHeaders() will not be called and neither will + // onCreate() then sendLocalReply be called which will call this function. In this case we + // need to call onCreate() so that the Context inside the VM is created before the + // onResponseHeaders() call. + onCreate(root_context_id_); + in_vm_context_created_ = true; + } + if (!wasm_->onResponseHeaders_) { return Http::FilterHeadersStatus::Continue; + } if (wasm_->onResponseHeaders_(this, id_) == 0) { return Http::FilterHeadersStatus::Continue; } @@ -1699,93 +2093,112 @@ void Context::onGrpcReceiveTrailingMetadata(uint32_t token, Http::HeaderMapPtr&& grpc_receive_trailing_metadata_ = nullptr; } -uint32_t Context::defineMetric(MetricType type, absl::string_view name) { +WasmResult Context::defineMetric(MetricType type, absl::string_view name, uint32_t* metric_id_ptr) { auto stat_name = wasm_->stat_name_set_.getStatName(name); if (type == MetricType::Counter) { auto id = wasm_->nextCounterMetricId(); auto c = &wasm_->scope_.counterFromStatName(stat_name); wasm_->counters_.emplace(id, c); - return id; + *metric_id_ptr = id; + return WasmResult::Ok; } else if (type == MetricType::Gauge) { auto id = wasm_->nextGaugeMetricId(); auto g = &wasm_->scope_.gaugeFromStatName(stat_name, Stats::Gauge::ImportMode::Accumulate); wasm_->gauges_.emplace(id, g); - return id; + *metric_id_ptr = id; + return WasmResult::Ok; } else if (type == MetricType::Histogram) { auto id = wasm_->nextHistogramMetricId(); auto h = &wasm_->scope_.histogramFromStatName(stat_name); wasm_->histograms_.emplace(id, h); - return id; + *metric_id_ptr = id; + return WasmResult::Ok; } - return 0; + return WasmResult::BadArgument; } -void Context::incrementMetric(uint32_t metric_id, int64_t offset) { +WasmResult Context::incrementMetric(uint32_t metric_id, int64_t offset) { auto type = static_cast(metric_id & Wasm::kMetricTypeMask); if (type == MetricType::Counter) { auto it = wasm_->counters_.find(metric_id); if (it != wasm_->counters_.end()) { if (offset > 0) { it->second->add(offset); + return WasmResult::Ok; + } else { + return WasmResult::BadArgument; } + return WasmResult::NotFound; } } else if (type == MetricType::Gauge) { auto it = wasm_->gauges_.find(metric_id); if (it != wasm_->gauges_.end()) { if (offset > 0) { it->second->add(offset); + return WasmResult::Ok; } else { it->second->sub(-offset); + return WasmResult::Ok; } } + return WasmResult::NotFound; } + return WasmResult::BadArgument; } -void Context::recordMetric(uint32_t metric_id, uint64_t value) { +WasmResult Context::recordMetric(uint32_t metric_id, uint64_t value) { auto type = static_cast(metric_id & Wasm::kMetricTypeMask); if (type == MetricType::Counter) { auto it = wasm_->counters_.find(metric_id); if (it != wasm_->counters_.end()) { it->second->add(value); + return WasmResult::Ok; } } else if (type == MetricType::Gauge) { auto it = wasm_->gauges_.find(metric_id); if (it != wasm_->gauges_.end()) { it->second->set(value); + return WasmResult::Ok; } } else if (type == MetricType::Histogram) { auto it = wasm_->histograms_.find(metric_id); if (it != wasm_->histograms_.end()) { it->second->recordValue(value); + return WasmResult::Ok; } } + return WasmResult::NotFound; } -uint64_t Context::getMetric(uint32_t metric_id) { +WasmResult Context::getMetric(uint32_t metric_id, uint64_t* result_uint64_ptr) { auto type = static_cast(metric_id & Wasm::kMetricTypeMask); if (type == MetricType::Counter) { auto it = wasm_->counters_.find(metric_id); if (it != wasm_->counters_.end()) { - return it->second->value(); + *result_uint64_ptr = it->second->value(); + return WasmResult::Ok; } + return WasmResult::NotFound; } else if (type == MetricType::Gauge) { auto it = wasm_->gauges_.find(metric_id); if (it != wasm_->gauges_.end()) { - return it->second->value(); + *result_uint64_ptr = it->second->value(); + return WasmResult::Ok; } + return WasmResult::NotFound; } - return 0; + return WasmResult::BadArgument; } Wasm::Wasm(absl::string_view vm, absl::string_view id, absl::string_view vm_configuration, Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, - Stats::Scope& scope, const LocalInfo::LocalInfo& local_info, + Stats::Scope& scope, PluginDirection direction, const LocalInfo::LocalInfo& local_info, const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr owned_scope) : cluster_manager_(cluster_manager), dispatcher_(dispatcher), scope_(scope), - local_info_(local_info), listener_metadata_(listener_metadata), owned_scope_(owned_scope), - time_source_(dispatcher.timeSource()), vm_configuration_(vm_configuration), - stat_name_set_(scope_.symbolTable()) { + direction_(direction), local_info_(local_info), listener_metadata_(listener_metadata), + owned_scope_(owned_scope), time_source_(dispatcher.timeSource()), + vm_configuration_(vm_configuration), stat_name_set_(scope_.symbolTable()) { wasm_vm_ = Common::Wasm::createWasmVm(vm); id_ = std::string(id); } @@ -1828,6 +2241,7 @@ void Wasm::registerCallbacks() { _REGISTER(___cxa_pure_virtual); _REGISTER(___cxa_allocate_exception); _REGISTER(___cxa_uncaught_exception); + _REGISTER(___cxa_uncaught_exceptions); _REGISTER(___call_main); _REGISTER(___clock_gettime); _REGISTER(___lock); @@ -1928,6 +2342,7 @@ void Wasm::getFunctions() { #define _GET(_fn) wasm_vm_->getFunction("_" #_fn, &_fn##_); _GET(malloc); _GET(free); + _GET(__errno_location); #undef _GET #define _GET_PROXY(_fn) wasm_vm_->getFunction("_proxy_" #_fn, &_fn##_); @@ -1963,9 +2378,10 @@ void Wasm::getFunctions() { Wasm::Wasm(const Wasm& wasm, Event::Dispatcher& dispatcher) : std::enable_shared_from_this(wasm), cluster_manager_(wasm.cluster_manager_), - dispatcher_(dispatcher), scope_(wasm.scope_), local_info_(wasm.local_info_), - listener_metadata_(wasm.listener_metadata_), id_(wasm.id_), owned_scope_(wasm.owned_scope_), - time_source_(dispatcher.timeSource()), stat_name_set_(scope_.symbolTable()) { + dispatcher_(dispatcher), scope_(wasm.scope_), direction_(wasm.direction_), + local_info_(wasm.local_info_), listener_metadata_(wasm.listener_metadata_), id_(wasm.id_), + owned_scope_(wasm.owned_scope_), time_source_(dispatcher.timeSource()), + stat_name_set_(scope_.symbolTable()) { wasm_vm_ = wasm.wasmVm()->clone(); vm_context_ = std::make_shared(this); getFunctions(); @@ -1988,6 +2404,11 @@ bool Wasm::initialize(const std::string& code, absl::string_view name, bool allo start = decodeVarint(start, end, &emscripten_metadata_minor_version_); start = decodeVarint(start, end, &emscripten_abi_major_version_); start = decodeVarint(start, end, &emscripten_abi_minor_version_); + if (emscripten_metadata_major_version_ > 0 || emscripten_metadata_minor_version_ > 1) { + // metadata 0.2 - added: wasm_backend. + uint32_t temp; + start = decodeVarint(start, end, &temp); + } start = decodeVarint(start, end, &emscripten_memory_size_); start = decodeVarint(start, end, &emscripten_table_size_); if (emscripten_metadata_major_version_ > 0 || emscripten_metadata_minor_version_ > 0) { @@ -2051,6 +2472,14 @@ void Wasm::startForTesting(std::unique_ptr context) { context_ptr->onStart("", ""); } +void Wasm::setErrno(int32_t err) { + if (!__errno_location_) { + return; + } + Word location = __errno_location_(vmContext()); + setDatatype(location.u64, err); +} + void Wasm::setTickPeriod(uint32_t context_id, std::chrono::milliseconds new_tick_period) { auto& tick_period = tick_period_[context_id]; auto& timer = timer_[context_id]; @@ -2296,47 +2725,65 @@ void Context::onGrpcClose(uint32_t token, const Grpc::Status::GrpcStatus& status } } -void Context::grpcSend(uint32_t token, absl::string_view message, bool end_stream) { +WasmResult Context::grpcSend(uint32_t token, absl::string_view message, bool end_stream) { if (IsGrpcCallToken(token)) { - return; + return WasmResult::BadArgument; } auto it = grpc_stream_.find(token); + if (it == grpc_stream_.end()) { + return WasmResult::NotFound; + } if (it != grpc_stream_.end() && it->second.stream) { it->second.stream->sendMessageRaw( Buffer::InstancePtr(new Buffer::OwnedImpl(message.data(), message.size())), end_stream); } + return WasmResult::Ok; } -void Context::grpcClose(uint32_t token) { +WasmResult Context::grpcClose(uint32_t token) { if (IsGrpcCallToken(token)) { auto it = grpc_call_request_.find(token); + if (it == grpc_call_request_.end()) { + return WasmResult::NotFound; + } if (it != grpc_call_request_.end() && it->second.request) { it->second.request->cancel(); } grpc_call_request_.erase(token); } else { auto it = grpc_stream_.find(token); + if (it == grpc_stream_.end()) { + return WasmResult::NotFound; + } if (it != grpc_stream_.end() && it->second.stream) { it->second.stream->closeStream(); } grpc_stream_.erase(token); } + return WasmResult::Ok; } -void Context::grpcCancel(uint32_t token) { +WasmResult Context::grpcCancel(uint32_t token) { if (IsGrpcCallToken(token)) { auto it = grpc_call_request_.find(token); + if (it == grpc_call_request_.end()) { + return WasmResult::NotFound; + } if (it != grpc_call_request_.end() && it->second.request) { it->second.request->cancel(); } grpc_call_request_.erase(token); } else { auto it = grpc_stream_.find(token); + if (it == grpc_stream_.end()) { + return WasmResult::NotFound; + } if (it != grpc_stream_.end() && it->second.stream) { it->second.stream->resetStream(); } grpc_stream_.erase(token); } + return WasmResult::Ok; } void GrpcCallClientHandler::onSuccessRaw(Buffer::InstancePtr&& response, Tracing::Span&) { @@ -2358,46 +2805,16 @@ void GrpcStreamClientHandler::onRemoteClose(Grpc::Status::GrpcStatus status, context->onGrpcClose(token, status, message); } -std::unique_ptr createWasmVm(absl::string_view wasm_vm) { - if (wasm_vm.empty()) { -#if defined(ENVOY_WASM_V8) && !defined(ENVOY_WASM_WAVM) - return V8::createVm(); -#elif defined(ENVOY_WASM_WAVM) && !defined(ENVOY_WASM_V8) - return Wavm::createVm(); -#else - throw WasmException("Failed to create WASM VM with unspecified runtime."); -#endif - } else if (wasm_vm == WasmVmNames::get().Null) { - return Null::createVm(); - } else -#ifdef ENVOY_WASM_V8 - if (wasm_vm == WasmVmNames::get().v8) { - return V8::createVm(); - } else -#endif -#ifdef ENVOY_WASM_WAVM - if (wasm_vm == WasmVmNames::get().Wavm) { - return Wavm::createVm(); - } else -#endif - { - throw WasmException(fmt::format( - "Failed to create WASM VM using {} runtime. Envoy was compiled without support for it.", - wasm_vm)); - } -} - -static std::shared_ptr -createWasmInternal(absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, - absl::string_view root_id, // e.g. filter instance id - Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, - Api::Api& api, Stats::Scope& scope, const LocalInfo::LocalInfo& local_info, - const envoy::api::v2::core::Metadata* listener_metadata, - Stats::ScopeSharedPtr scope_ptr, - std::unique_ptr root_context_for_testing) { - auto wasm = - std::make_shared(vm_config.vm(), vm_id, vm_config.configuration(), cluster_manager, - dispatcher, scope, local_info, listener_metadata, scope_ptr); +static std::shared_ptr createWasmInternal( + absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, + absl::string_view root_id, // e.g. filter instance id + Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, Api::Api& api, + Stats::Scope& scope, PluginDirection direction, const LocalInfo::LocalInfo& local_info, + const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr scope_ptr, + std::unique_ptr root_context_for_testing) { + auto wasm = std::make_shared(vm_config.vm(), vm_id, vm_config.configuration(), + cluster_manager, dispatcher, scope, direction, local_info, + listener_metadata, scope_ptr); const auto& code = Config::DataSource::read(vm_config.code(), true, api); const auto& path = Config::DataSource::getPath(vm_config.code()) .value_or(code.empty() ? EMPTY_STRING : INLINE_STRING); @@ -2407,11 +2824,9 @@ createWasmInternal(absl::string_view vm_id, const envoy::config::wasm::v2::VmCon if (!wasm->initialize(code, vm_id, vm_config.allow_precompiled())) { throw WasmException(fmt::format("Failed to initialize WASM code from {}", path)); } - Context* context; if (!root_context_for_testing) { - context = wasm->start(root_id, vm_config.configuration()); + wasm->start(root_id, vm_config.configuration()); } else { - context = root_context_for_testing.get(); wasm->startForTesting(std::move(root_context_for_testing)); } return wasm; @@ -2422,23 +2837,22 @@ std::shared_ptr createWasm(absl::string_view vm_id, absl::string_view root_id, // e.g. filter instance id Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, Api::Api& api, Stats::Scope& scope, - const LocalInfo::LocalInfo& local_info, + PluginDirection direction, const LocalInfo::LocalInfo& local_info, const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr scope_ptr) { return createWasmInternal(vm_id, vm_config, root_id, cluster_manager, dispatcher, api, scope, - local_info, listener_metadata, scope_ptr, nullptr); + direction, local_info, listener_metadata, scope_ptr, nullptr); } -std::shared_ptr -createWasmForTesting(absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, - absl::string_view root_id, // e.g. filter instance id - Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, - Api::Api& api, Stats::Scope& scope, const LocalInfo::LocalInfo& local_info, - const envoy::api::v2::core::Metadata* listener_metadata, - Stats::ScopeSharedPtr scope_ptr, - std::unique_ptr root_context_for_testing) { +std::shared_ptr createWasmForTesting( + absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, + absl::string_view root_id, // e.g. filter instance id + Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, Api::Api& api, + Stats::Scope& scope, PluginDirection direction, const LocalInfo::LocalInfo& local_info, + const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr scope_ptr, + std::unique_ptr root_context_for_testing) { return createWasmInternal(vm_id, vm_config, root_id, cluster_manager, dispatcher, api, scope, - local_info, listener_metadata, scope_ptr, + direction, local_info, listener_metadata, scope_ptr, std::move(root_context_for_testing)); } @@ -2451,10 +2865,10 @@ std::shared_ptr createThreadLocalWasm(Wasm& base_wasm, absl::string_view r wasm = std::make_shared(base_wasm, dispatcher); root_context = wasm->start(root_id, base_wasm.vm_configuration()); } else { - wasm = std::make_shared(base_wasm.wasmVm()->vm(), base_wasm.id(), - base_wasm.vm_configuration(), base_wasm.clusterManager(), - dispatcher, base_wasm.scope(), base_wasm.localInfo(), - base_wasm.listenerMetadata(), nullptr /* owned scope */); + wasm = std::make_shared( + base_wasm.wasmVm()->vm(), base_wasm.id(), base_wasm.vm_configuration(), + base_wasm.clusterManager(), dispatcher, base_wasm.scope(), base_wasm.direction(), + base_wasm.localInfo(), base_wasm.listenerMetadata(), nullptr /* owned scope */); if (!wasm->initialize(base_wasm.code(), base_wasm.id(), base_wasm.allow_precompiled())) { throw WasmException("Failed to initialize WASM code"); } diff --git a/source/extensions/common/wasm/wasm.h b/source/extensions/common/wasm/wasm.h index f9b0386730ac5..b7536a4523380 100644 --- a/source/extensions/common/wasm/wasm.h +++ b/source/extensions/common/wasm/wasm.h @@ -28,6 +28,9 @@ namespace Extensions { namespace Common { namespace Wasm { +#include "api/wasm/cpp/proxy_wasm_result.h" +#include "api/wasm/cpp/proxy_wasm_metadata.h" + class Context; class Wasm; class WasmVm; @@ -35,42 +38,10 @@ class WasmVm; using Pairs = std::vector>; using PairsWithStringValues = std::vector>; -// These need to match those in api/wasm/cpp/proxy_wasm_enums.h enum class StreamType : int32_t { Request = 0, Response = 1, MAX = 1 }; -enum class MetadataType : int32_t { - Request = 0, - Response = 1, - RequestRoute = 2, - ResponseRoute = 3, - Log = 4, - Node = 5, - Listener = 6, - Cluster = 7, - Expression = 8, - MAX = 8 -}; -enum class HeaderMapType : int32_t { - RequestHeaders = 0, - RequestTrailers = 1, - ResponseHeaders = 2, - ResponseTrailers = 3, - GrpcCreateInitialMetadata = 4, - GrpcReceiveInitialMetadata = 5, - GrpcReceiveTrailingMetadata = 6, - MAX = 6, -}; -enum class MetadataResult : int32_t { - Ok = 0, - StructNotFound = 1, - FieldNotFound = 2, - SerializationFailure = 3, - BadType = 4, - ParseFailure = 5, - BadExpression = 6, -}; // Handlers for functions exported from envoy to wasm. -void logHandler(void* raw_context, Word level, Word address, Word size); +Word logHandler(void* raw_context, Word level, Word address, Word size); Word getMetadataHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr); Word setMetadataHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, @@ -80,57 +51,61 @@ Word getMetadataStructHandler(void* raw_context, Word type, Word name_ptr, Word Word value_ptr_ptr, Word value_size_ptr); Word setMetadataStructHandler(void* raw_context, Word type, Word name_ptr, Word name_size, Word value_ptr, Word value_size); -void continueRequestHandler(void* raw_context); -void continueResponseHandler(void* raw_context); -void sendLocalResponseHandler(void* raw_context, Word response_code, Word response_code_details_ptr, +Word getSelectorExpressionHandler(void* raw_context, Word path_ptr, Word path_size, + Word value_ptr_ptr, Word value_size_ptr); +Word continueRequestHandler(void* raw_context); +Word continueResponseHandler(void* raw_context); +Word sendLocalResponseHandler(void* raw_context, Word response_code, Word response_code_details_ptr, Word response_code_details_size, Word body_ptr, Word body_size, Word additional_response_header_pairs_ptr, Word additional_response_header_pairs_size, Word grpc_status); -void clearRouteCacheHandler(void* raw_context); -void getSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr_ptr, +Word clearRouteCacheHandler(void* raw_context); +Word getSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr, Word cas_ptr); Word setSharedDataHandler(void* raw_context, Word key_ptr, Word key_size, Word value_ptr, Word value_size, Word cas); -Word registerSharedQueueHandler(void* raw_context, Word queue_name_ptr, Word queue_name_size); +Word registerSharedQueueHandler(void* raw_context, Word queue_name_ptr, Word queue_name_size, + Word token_ptr); Word resolveSharedQueueHandler(void* raw_context, Word vm_id_ptr, Word vm_id_size, - Word queue_name_ptr, Word queue_name_size); + Word queue_name_ptr, Word queue_name_size, Word token_ptr); Word dequeueSharedQueueHandler(void* raw_context, Word token, Word data_ptr_ptr, Word data_size_ptr); Word enqueueSharedQueueHandler(void* raw_context, Word token, Word data_ptr, Word data_size); -void addHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word addHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, Word value_size); -void getHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word getHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr_ptr, Word value_size_ptr); -void replaceHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, +Word replaceHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size, Word value_ptr, Word value_size); -void removeHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size); -void getHeaderMapPairsHandler(void* raw_context, Word type, Word ptr_ptr, Word size_ptr); -void setHeaderMapPairsHandler(void* raw_context, Word type, Word ptr, Word size); -uint32_t getHeaderMapSizeHandler(void* raw_context, Word type); -void getRequestBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, +Word removeHeaderMapValueHandler(void* raw_context, Word type, Word key_ptr, Word key_size); +Word getHeaderMapPairsHandler(void* raw_context, Word type, Word ptr_ptr, Word size_ptr); +Word setHeaderMapPairsHandler(void* raw_context, Word type, Word ptr, Word size); +Word getHeaderMapSizeHandler(void* raw_context, Word type, Word result_ptr); +Word getRequestBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, Word size_ptr); -void getResponseBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, +Word getResponseBodyBufferBytesHandler(void* raw_context, Word start, Word length, Word ptr_ptr, Word size_ptr); Word httpCallHandler(void* raw_context, Word uri_ptr, Word uri_size, Word header_pairs_ptr, Word header_pairs_size, Word body_ptr, Word body_size, Word trailer_pairs_ptr, Word trailer_pairs_size, Word timeout_milliseconds); -Word defineMetricHandler(void* raw_context, Word metric_type, Word name_ptr, Word name_size); -void incrementMetricHandler(void* raw_context, Word metric_id, int64_t offset); -void recordMetricHandler(void* raw_context, Word metric_id, uint64_t value); -uint64_t getMetricHandler(void* raw_context, Word metric_id); +Word defineMetricHandler(void* raw_context, Word metric_type, Word name_ptr, Word name_size, + Word result_ptr); +Word incrementMetricHandler(void* raw_context, Word metric_id, int64_t offset); +Word recordMetricHandler(void* raw_context, Word metric_id, uint64_t value); +Word getMetricHandler(void* raw_context, Word metric_id, Word result_uint64_ptr); Word grpcCallHandler(void* raw_context, Word service_ptr, Word service_size, Word service_name_ptr, Word service_name_size, Word method_name_ptr, Word method_name_size, Word request_ptr, Word request_size, Word timeout_milliseconds); Word grpcStreamHandler(void* raw_context, Word service_ptr, Word service_size, Word service_name_ptr, Word service_name_size, Word method_name_ptr, Word method_name_size); -void grpcCancelHandler(void* raw_context, Word token); -void grpcCloseHandler(void* raw_context, Word token); -void grpcSendHandler(void* raw_context, Word token, Word message_ptr, Word message_size, +Word grpcCancelHandler(void* raw_context, Word token); +Word grpcCloseHandler(void* raw_context, Word token); +Word grpcSendHandler(void* raw_context, Word token, Word message_ptr, Word message_size, Word end_stream); -void setTickPeriodMillisecondsHandler(void* raw_context, Word tick_period_milliseconds); -uint64_t getCurrentTimeNanosecondsHandler(void* raw_context); +Word setTickPeriodMillisecondsHandler(void* raw_context, Word tick_period_milliseconds); +Word getCurrentTimeNanosecondsHandler(void* raw_context, Word result_uint64_ptr); Word setEffectiveContextHandler(void* raw_context, Word context_id); @@ -236,7 +211,7 @@ class Context : public Http::StreamFilter, // General Callbacks. // virtual void scriptLog(spdlog::level::level_enum level, absl::string_view message); - virtual void setTickPeriod(std::chrono::milliseconds tick_period); + virtual WasmResult setTickPeriod(std::chrono::milliseconds tick_period); virtual uint64_t getCurrentTimeNanoseconds(); // @@ -279,20 +254,24 @@ class Context : public Http::StreamFilter, virtual uint32_t getDestinationPort(StreamType type); virtual uint32_t getResponseCode(StreamType type); virtual std::string getTlsVersion(StreamType type); + virtual absl::optional peerCertificatePresented(StreamType type); + + // Generic resolver producing a serialized value + virtual WasmResult getSelectorExpression(absl::string_view path, std::string* result); // Metadata // When used with MetadataType::Request/Response refers to metadata with name "envoy.wasm": the // values are serialized ProtobufWkt::Struct Value - virtual MetadataResult getMetadata(MetadataType type, absl::string_view key, std::string* result); - virtual MetadataResult setMetadata(MetadataType type, absl::string_view key, - absl::string_view serialized_proto_struct); - virtual MetadataResult getMetadataPairs(MetadataType type, PairsWithStringValues* result); + virtual WasmResult getMetadata(MetadataType type, absl::string_view key, std::string* result); + virtual WasmResult setMetadata(MetadataType type, absl::string_view key, + absl::string_view serialized_proto_struct); + virtual WasmResult getMetadataPairs(MetadataType type, PairsWithStringValues* result); // Name is ignored when the type is not MetadataType::Request/Response: the values are serialized // ProtobufWkt::Struct - virtual MetadataResult getMetadataStruct(MetadataType type, absl::string_view name, - std::string* result); - virtual MetadataResult setMetadataStruct(MetadataType type, absl::string_view key, - absl::string_view serialized_proto_struct); + virtual WasmResult getMetadataStruct(MetadataType type, absl::string_view name, + std::string* result); + virtual WasmResult setMetadataStruct(MetadataType type, absl::string_view key, + absl::string_view serialized_proto_struct); // Continue virtual void continueRequest() { @@ -317,14 +296,16 @@ class Context : public Http::StreamFilter, } // Shared Data - virtual std::pair getSharedData(absl::string_view key); - virtual bool setSharedData(absl::string_view key, absl::string_view value, uint32_t cas); + virtual WasmResult getSharedData(absl::string_view key, + std::pair* data); + virtual WasmResult setSharedData(absl::string_view key, absl::string_view value, uint32_t cas); // Shared Queue virtual uint32_t registerSharedQueue(absl::string_view queue_name); - virtual uint32_t resolveSharedQueue(absl::string_view vm_id, absl::string_view queue_name); - virtual std::pair dequeueSharedQueue(uint32_t token); - virtual bool enqueueSharedQueue(uint32_t token, absl::string_view value); + virtual WasmResult resolveSharedQueue(absl::string_view vm_id, absl::string_view queue_name, + uint32_t* token); + virtual WasmResult dequeueSharedQueue(uint32_t token, std::string* data); + virtual WasmResult enqueueSharedQueue(uint32_t token, absl::string_view value); // Header/Trailer/Metadata Maps virtual void addHeaderMapValue(HeaderMapType type, absl::string_view key, @@ -358,10 +339,10 @@ class Context : public Http::StreamFilter, Histogram = 2, Max = 2, }; - virtual uint32_t defineMetric(MetricType type, absl::string_view name); - virtual void incrementMetric(uint32_t metric_id, int64_t offset); - virtual void recordMetric(uint32_t metric_id, uint64_t value); - virtual uint64_t getMetric(uint32_t metric_id); + virtual WasmResult defineMetric(MetricType type, absl::string_view name, uint32_t* metric_id_ptr); + virtual WasmResult incrementMetric(uint32_t metric_id, int64_t offset); + virtual WasmResult recordMetric(uint32_t metric_id, uint64_t value); + virtual WasmResult getMetric(uint32_t metric_id, uint64_t* value_ptr); // gRPC // Returns a token which will be used with the corresponding onGrpc and grpc calls. @@ -371,9 +352,10 @@ class Context : public Http::StreamFilter, const absl::optional& timeout); virtual uint32_t grpcStream(const envoy::api::v2::core::GrpcService& grpc_service, absl::string_view service_name, absl::string_view method_name); - virtual void grpcClose(uint32_t token); // cancel on call, close on stream. - virtual void grpcCancel(uint32_t token); // cancel on call, reset on stream. - virtual void grpcSend(uint32_t token, absl::string_view message, bool end_stream); // stream only + virtual WasmResult grpcClose(uint32_t token); // cancel on call, close on stream. + virtual WasmResult grpcCancel(uint32_t token); // cancel on call, reset on stream. + virtual WasmResult grpcSend(uint32_t token, absl::string_view message, + bool end_stream); // stream only // Connection virtual bool isSsl(); @@ -415,6 +397,7 @@ class Context : public Http::StreamFilter, Context* root_context_{nullptr}; // set in all contexts. const std::string root_id_; // set only in roots. std::string log_prefix_; + bool in_vm_context_created_ = false; bool destroyed_ = false; uint32_t next_http_call_token_ = 1; @@ -460,7 +443,7 @@ class Wasm : public Envoy::Server::Wasm, public: Wasm(absl::string_view vm, absl::string_view id, absl::string_view vm_configuration, Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, - Stats::Scope& scope, const LocalInfo::LocalInfo& local_info, + Stats::Scope& scope, PluginDirection direction, const LocalInfo::LocalInfo& local_info, const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr owned_scope = nullptr); Wasm(const Wasm& other, Event::Dispatcher& dispatcher); @@ -483,6 +466,7 @@ class Wasm : public Envoy::Server::Wasm, } Upstream::ClusterManager& clusterManager() const { return cluster_manager_; } Stats::Scope& scope() const { return scope_; } + PluginDirection direction() { return direction_; } const LocalInfo::LocalInfo& localInfo() { return local_info_; } const envoy::api::v2::core::Metadata* listenerMetadata() { return listener_metadata_; } @@ -517,6 +501,7 @@ class Wasm : public Envoy::Server::Wasm, bool copyToPointerSize(absl::string_view s, uint64_t ptr_ptr, uint64_t size_ptr); bool copyToPointerSize(const Buffer::Instance& buffer, uint64_t start, uint64_t length, uint64_t ptr_ptr, uint64_t size_ptr); + template bool setDatatype(uint64_t ptr, const T& t); // For testing. void setContext(Context* context) { contexts_[context->id()] = context; } @@ -536,6 +521,8 @@ class Wasm : public Envoy::Server::Wasm, return true; } + void setErrno(int32_t err); + private: friend class Context; // These are the same as the values of the Context::MetricType enum, here separately for @@ -572,6 +559,7 @@ class Wasm : public Envoy::Server::Wasm, Upstream::ClusterManager& cluster_manager_; Event::Dispatcher& dispatcher_; Stats::Scope& scope_; // Either an inherited scope or owned_scope_ below. + const PluginDirection direction_; const LocalInfo::LocalInfo& local_info_; const envoy::api::v2::core::Metadata* listener_metadata_{}; std::string id_; @@ -589,6 +577,7 @@ class Wasm : public Envoy::Server::Wasm, WasmCall1Word malloc_; WasmCall1Void free_; + WasmCall0Word __errno_location_; // Calls into the VM. WasmCall5Void onStart_; @@ -668,7 +657,7 @@ std::shared_ptr createWasm(absl::string_view vm_id, absl::string_view root_id, Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, Api::Api& api, Stats::Scope& scope, - const LocalInfo::LocalInfo& local_info, + PluginDirection direction, const LocalInfo::LocalInfo& local_info, const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr owned_scope); @@ -677,14 +666,13 @@ std::shared_ptr createThreadLocalWasm(Wasm& base_wasm, absl::string_view r absl::string_view configuration, Event::Dispatcher& dispatcher); -std::shared_ptr -createWasmForTesting(absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, - absl::string_view root_id, // e.g. filter instance id - Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, - Api::Api& api, Stats::Scope& scope, const LocalInfo::LocalInfo& local_info, - const envoy::api::v2::core::Metadata* listener_metadata, - Stats::ScopeSharedPtr scope_ptr, - std::unique_ptr root_context_for_testing); +std::shared_ptr createWasmForTesting( + absl::string_view vm_id, const envoy::config::wasm::v2::VmConfig& vm_config, + absl::string_view root_id, // e.g. filter instance id + Upstream::ClusterManager& cluster_manager, Event::Dispatcher& dispatcher, Api::Api& api, + Stats::Scope& scope, PluginDirection direction, const LocalInfo::LocalInfo& local_info, + const envoy::api::v2::core::Metadata* listener_metadata, Stats::ScopeSharedPtr scope_ptr, + std::unique_ptr root_context_for_testing); // Get an existing ThreadLocal VM matching 'vm_id'. std::shared_ptr getThreadLocalWasm(absl::string_view vm_id, absl::string_view root_id, @@ -731,9 +719,15 @@ inline absl::string_view Context::root_id() const { inline void* Wasm::allocMemory(uint64_t size, uint64_t* address) { Word a = malloc_(vmContext(), size); + if (!a.u64) { + throw WasmException("malloc_ returns nullptr (OOM)"); + } + auto memory = wasm_vm_->getMemory(a, size); + if (!memory) { + throw WasmException("malloc_ returned illegal address"); + } *address = a.u64; - // Note: this can throw a WASM exception. - return const_cast(reinterpret_cast(wasm_vm_->getMemory(a, size).data())); + return const_cast(reinterpret_cast(memory.value().data())); } inline void Wasm::freeMemoryOffset(uint64_t address) { free_(vmContext(), address); } @@ -794,10 +788,10 @@ inline bool Wasm::copyToPointerSize(absl::string_view s, uint64_t ptr_ptr, uint6 } memcpy(p, s.data(), size); } - if (!wasm_vm_->setWord(ptr_ptr, pointer)) { + if (!wasm_vm_->setWord(ptr_ptr, Word(pointer))) { return false; } - if (!wasm_vm_->setWord(size_ptr, size)) { + if (!wasm_vm_->setWord(size_ptr, Word(size))) { return false; } return true; @@ -835,15 +829,34 @@ inline bool Wasm::copyToPointerSize(const Buffer::Instance& buffer, uint64_t sta s = 0; p += ll; } - if (!wasm_vm_->setWord(ptr_ptr, pointer)) { + if (!wasm_vm_->setWord(ptr_ptr, Word(pointer))) { return false; } - if (!wasm_vm_->setWord(size_ptr, length)) { + if (!wasm_vm_->setWord(size_ptr, Word(length))) { return false; } return true; } +template inline bool Wasm::setDatatype(uint64_t ptr, const T& t) { + return wasm_vm_->setMemory(ptr, sizeof(T), &t); +} + +inline PluginDirection +pluginDirectionFromTrafficDirection(envoy::api::v2::core::TrafficDirection direction) { + switch (direction) { + case envoy::api::v2::core::TrafficDirection::UNSPECIFIED: + return PluginDirection::Unspecified; + case envoy::api::v2::core::TrafficDirection::INBOUND: + return PluginDirection::Inbound; + case envoy::api::v2::core::TrafficDirection::OUTBOUND: + return PluginDirection::Outbound; + default: + ASSERT(!"Bad envoy::api::v2::core::TrafficDirection"); + NOT_REACHED_GCOVR_EXCL_LINE; + } +} + } // namespace Wasm } // namespace Common } // namespace Extensions diff --git a/source/extensions/common/wasm/wasm_vm.cc b/source/extensions/common/wasm/wasm_vm.cc new file mode 100644 index 0000000000000..f51df0629aea0 --- /dev/null +++ b/source/extensions/common/wasm/wasm_vm.cc @@ -0,0 +1,55 @@ +#include "extensions/common/wasm/wasm_vm.h" + +#include + +#include "extensions/common/wasm/null/null.h" + +#ifdef ENVOY_WASM_V8 +#include "extensions/common/wasm/v8/v8.h" +#endif +#ifdef ENVOY_WASM_WAVM +#include "extensions/common/wasm/wavm/wavm.h" +#endif +#include "extensions/common/wasm/well_known_names.h" + +namespace Envoy { +namespace Extensions { +namespace Common { +namespace Wasm { + +thread_local Envoy::Extensions::Common::Wasm::Context* current_context_ = nullptr; +thread_local uint32_t effective_context_id_ = 0; + +std::unique_ptr createWasmVm(absl::string_view wasm_vm) { + if (wasm_vm.empty()) { +#if defined(ENVOY_WASM_V8) && !defined(ENVOY_WASM_WAVM) + return V8::createVm(); +#elif defined(ENVOY_WASM_WAVM) && !defined(ENVOY_WASM_V8) + return Wavm::createVm(); +#else + throw WasmException("Failed to create WASM VM with unspecified runtime."); +#endif + } else if (wasm_vm == WasmVmNames::get().Null) { + return Null::createVm(); + } else +#ifdef ENVOY_WASM_V8 + if (wasm_vm == WasmVmNames::get().v8) { + return V8::createVm(); + } else +#endif +#ifdef ENVOY_WASM_WAVM + if (wasm_vm == WasmVmNames::get().Wavm) { + return Wavm::createVm(); + } else +#endif + { + throw WasmException(fmt::format( + "Failed to create WASM VM using {} runtime. Envoy was compiled without support for it.", + wasm_vm)); + } +} + +} // namespace Wasm +} // namespace Common +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/common/wasm/wasm_vm.h b/source/extensions/common/wasm/wasm_vm.h index 4ebeec5ab606e..f6d93333536a1 100644 --- a/source/extensions/common/wasm/wasm_vm.h +++ b/source/extensions/common/wasm/wasm_vm.h @@ -6,6 +6,8 @@ #include "common/common/logger.h" +#include "absl/types/optional.h" + namespace Envoy { namespace Extensions { namespace Common { @@ -49,6 +51,7 @@ using WasmCall5Void = std::function; using WasmCall7Void = std::function; using WasmCall8Void = std::function; +using WasmCall0Word = std::function; using WasmCall1Word = std::function; using WasmCall2Word = std::function; using WasmCall3Word = std::function; @@ -57,6 +60,9 @@ using WasmCall5Word = std::function; using WasmCall7Word = std::function; using WasmCall8Word = std::function; +#define FOR_ALL_WASM_VM_EXPORTS(_f) \ + _f(WasmCall0Void) _f(WasmCall1Void) _f(WasmCall2Void) _f(WasmCall3Void) _f(WasmCall4Void) \ + _f(WasmCall5Void) _f(WasmCall8Void) _f(WasmCall0Word) _f(WasmCall1Word) _f(WasmCall3Word) // Calls out of the WASM VM. // 1st arg is always a pointer to raw_context (void*). @@ -80,15 +86,19 @@ using WasmCallback7Word = Word (*)(void*, Word, Word, Word, Word, Word, Word, Wo using WasmCallback8Word = Word (*)(void*, Word, Word, Word, Word, Word, Word, Word, Word, Word); using WasmCallback9Word = Word (*)(void*, Word, Word, Word, Word, Word, Word, Word, Word, Word, Word); +#define FOR_ALL_WASM_VM_IMPORTS(_f) \ + _f(WasmCallback0Void) _f(WasmCallback1Void) _f(WasmCallback2Void) _f(WasmCallback3Void) \ + _f(WasmCallback4Void) _f(WasmCallback0Word) _f(WasmCallback1Word) _f(WasmCallback2Word) \ + _f(WasmCallback3Word) _f(WasmCallback4Word) _f(WasmCallback5Word) _f(WasmCallback6Word) \ + _f(WasmCallback7Word) _f(WasmCallback8Word) _f(WasmCallback9Word) \ + _f(WasmCallback_WWl) _f(WasmCallback_WWm) + // Using the standard g++/clang mangling algorithm: // https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangling-builtin // Extended with W = Word // Z = void, j = uint32_t, l = int64_t, m = uint64_t -using WasmCallback_ZWl = void (*)(void*, Word, int64_t); -using WasmCallback_ZWm = void (*)(void*, Word, uint64_t); -using WasmCallback_m = uint64_t (*)(void*); -using WasmCallback_mW = uint64_t (*)(void*, Word); -using WasmCallback_jW = uint32_t (*)(void*, Word); +using WasmCallback_WWl = Word (*)(void*, Word, int64_t); +using WasmCallback_WWm = Word (*)(void*, Word, uint64_t); // Wasm VM instance. Provides the low level WASM interface. class WasmVm : public Logger::Loggable { @@ -116,14 +126,15 @@ class WasmVm : public Logger::Loggable { // Get size of the currently allocated memory in the VM. virtual uint64_t getMemorySize() PURE; - // Convert a block of memory in the VM to a string_view. - virtual absl::string_view getMemory(uint64_t pointer, uint64_t size) PURE; + // Convert a block of memory in the VM to a string_view. Returns 'false' in second if the + // pointer/size is invalid. + virtual absl::optional getMemory(uint64_t pointer, uint64_t size) PURE; // Convert a host pointer to memory in the VM into a VM "pointer" (an offset into the Memory). virtual bool getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) PURE; // Set a block of memory in the VM, returns true on success, false if the pointer/size is invalid. virtual bool setMemory(uint64_t pointer, uint64_t size, const void* data) PURE; // Set a Word in the VM, returns true on success, false if the pointer is invalid. - virtual bool setWord(uint64_t pointer, uint64_t data) PURE; + virtual bool setWord(uint64_t pointer, Word data) PURE; // Make a new intrinsic module (e.g. for Emscripten support). virtual void makeModule(absl::string_view name) PURE; @@ -131,43 +142,16 @@ class WasmVm : public Logger::Loggable { virtual absl::string_view getUserSection(absl::string_view name) PURE; // Get typed function exported by the WASM module. - virtual void getFunction(absl::string_view functionName, WasmCall0Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall1Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall2Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall3Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall4Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall5Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall8Void* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall1Word* f) PURE; - virtual void getFunction(absl::string_view functionName, WasmCall3Word* f) PURE; +#define _GET_FUNCTION(_T) virtual void getFunction(absl::string_view functionName, _T* f) PURE; + FOR_ALL_WASM_VM_EXPORTS(_GET_FUNCTION) +#undef _GET_FUNCTION // Register typed callbacks exported by the host environment. -#define REGISTER_CALLBACK(_t) \ +#define _REGISTER_CALLBACK(_T) \ virtual void registerCallback(absl::string_view moduleName, absl::string_view functionName, \ - _t f, typename ConvertFunctionTypeWordToUint32<_t>::type) PURE; - REGISTER_CALLBACK(WasmCallback0Void); - REGISTER_CALLBACK(WasmCallback1Void); - REGISTER_CALLBACK(WasmCallback2Void); - REGISTER_CALLBACK(WasmCallback3Void); - REGISTER_CALLBACK(WasmCallback4Void); - REGISTER_CALLBACK(WasmCallback5Void); - REGISTER_CALLBACK(WasmCallback8Void); - REGISTER_CALLBACK(WasmCallback0Word); - REGISTER_CALLBACK(WasmCallback1Word); - REGISTER_CALLBACK(WasmCallback2Word); - REGISTER_CALLBACK(WasmCallback3Word); - REGISTER_CALLBACK(WasmCallback4Word); - REGISTER_CALLBACK(WasmCallback5Word); - REGISTER_CALLBACK(WasmCallback6Word); - REGISTER_CALLBACK(WasmCallback7Word); - REGISTER_CALLBACK(WasmCallback8Word); - REGISTER_CALLBACK(WasmCallback9Word); - REGISTER_CALLBACK(WasmCallback_ZWl); - REGISTER_CALLBACK(WasmCallback_ZWm); - REGISTER_CALLBACK(WasmCallback_m); - REGISTER_CALLBACK(WasmCallback_mW); - REGISTER_CALLBACK(WasmCallback_jW); -#undef REGISTER_CALLBACK + _T f, typename ConvertFunctionTypeWordToUint32<_T>::type) PURE; + FOR_ALL_WASM_VM_IMPORTS(_REGISTER_CALLBACK) +#undef _REGISTER_CALLBACK // Register typed value exported by the host environment. virtual std::unique_ptr> makeGlobal(absl::string_view module_name, diff --git a/source/extensions/common/wasm/wavm/wavm.cc b/source/extensions/common/wasm/wavm/wavm.cc index b157be8cad042..d4913c17b1ef2 100644 --- a/source/extensions/common/wasm/wavm/wavm.cc +++ b/source/extensions/common/wasm/wavm/wavm.cc @@ -97,17 +97,16 @@ const Logger::Id wasmId = Logger::Id::wasm; }); \ } while (0) -#define CALL_WITH_CONTEXT_RETURN(_x, _context, _type, _member) \ +#define CALL_WITH_CONTEXT_RETURN(_x, _context, _T, _member) \ do { \ SaveRestoreContext _saved_context(static_cast(_context)); \ - _type _return_value; \ - WAVM::Runtime::catchRuntimeExceptions( \ - [&] { _return_value = static_cast<_type>(_x[0]._member); }, \ - [&](WAVM::Runtime::Exception* exception) { \ - auto description = describeException(exception); \ - destroyException(exception); \ - throw WasmException(description); \ - }); \ + _T _return_value; \ + WAVM::Runtime::catchRuntimeExceptions([&] { _return_value = static_cast<_T>(_x[0]._member); }, \ + [&](WAVM::Runtime::Exception* exception) { \ + auto description = describeException(exception); \ + destroyException(exception); \ + throw WasmException(description); \ + }); \ return _return_value; \ } while (0) @@ -221,62 +220,33 @@ struct Wavm : public WasmVm { void link(absl::string_view debug_name, bool needs_emscripten) override; void start(Context* context) override; uint64_t getMemorySize() override; - absl::string_view getMemory(uint64_t pointer, uint64_t size) override; + absl::optional getMemory(uint64_t pointer, uint64_t size) override; bool getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) override; bool setMemory(uint64_t pointer, uint64_t size, const void* data) override; - bool setWord(uint64_t pointer, uint64_t data) override; + bool setWord(uint64_t pointer, Word data) override; void makeModule(absl::string_view name) override; absl::string_view getUserSection(absl::string_view name) override; void getInstantiatedGlobals(); -#define _GET_FUNCTION(_type) \ - void getFunction(absl::string_view functionName, _type* f) override { \ +#define _GET_FUNCTION(_T) \ + void getFunction(absl::string_view functionName, _T* f) override { \ getFunctionWavm(this, functionName, f); \ }; - _GET_FUNCTION(WasmCall0Void); - _GET_FUNCTION(WasmCall1Void); - _GET_FUNCTION(WasmCall2Void); - _GET_FUNCTION(WasmCall3Void); - _GET_FUNCTION(WasmCall4Void); - _GET_FUNCTION(WasmCall5Void); - _GET_FUNCTION(WasmCall8Void); - _GET_FUNCTION(WasmCall1Word); - _GET_FUNCTION(WasmCall3Word); + FOR_ALL_WASM_VM_EXPORTS(_GET_FUNCTION) #undef _GET_FUNCTION -#define _REGISTER_CALLBACK(_type) \ - void registerCallback(absl::string_view moduleName, absl::string_view functionName, _type, \ - typename ConvertFunctionTypeWordToUint32<_type>::type f) override { \ +#define _REGISTER_CALLBACK(_T) \ + void registerCallback(absl::string_view moduleName, absl::string_view functionName, _T, \ + typename ConvertFunctionTypeWordToUint32<_T>::type f) override { \ registerCallbackWavm(this, moduleName, functionName, f); \ }; - _REGISTER_CALLBACK(WasmCallback0Void); - _REGISTER_CALLBACK(WasmCallback1Void); - _REGISTER_CALLBACK(WasmCallback2Void); - _REGISTER_CALLBACK(WasmCallback3Void); - _REGISTER_CALLBACK(WasmCallback4Void); - _REGISTER_CALLBACK(WasmCallback5Void); - _REGISTER_CALLBACK(WasmCallback8Void); - _REGISTER_CALLBACK(WasmCallback0Word); - _REGISTER_CALLBACK(WasmCallback1Word); - _REGISTER_CALLBACK(WasmCallback2Word); - _REGISTER_CALLBACK(WasmCallback3Word); - _REGISTER_CALLBACK(WasmCallback4Word); - _REGISTER_CALLBACK(WasmCallback5Word); - _REGISTER_CALLBACK(WasmCallback6Word); - _REGISTER_CALLBACK(WasmCallback7Word); - _REGISTER_CALLBACK(WasmCallback8Word); - _REGISTER_CALLBACK(WasmCallback9Word); - _REGISTER_CALLBACK(WasmCallback_ZWl); - _REGISTER_CALLBACK(WasmCallback_ZWm); - _REGISTER_CALLBACK(WasmCallback_m); - _REGISTER_CALLBACK(WasmCallback_jW); - _REGISTER_CALLBACK(WasmCallback_mW); + FOR_ALL_WASM_VM_IMPORTS(_REGISTER_CALLBACK) #undef _REGISTER_CALLBACK -#define _REGISTER_GLOBAL(_type) \ - std::unique_ptr> makeGlobal(absl::string_view moduleName, absl::string_view name, \ - _type initialValue) override { \ +#define _REGISTER_GLOBAL(_T) \ + std::unique_ptr> makeGlobal(absl::string_view moduleName, absl::string_view name, \ + _T initialValue) override { \ return makeGlobalWavm(this, moduleName, name, initialValue); \ }; _REGISTER_GLOBAL(Word); @@ -322,7 +292,7 @@ std::unique_ptr Wavm::clone() { auto wavm = std::make_unique(); wavm->compartment_ = WAVM::Runtime::cloneCompartment(compartment_); wavm->memory_ = WAVM::Runtime::remapToClonedCompartment(memory_, wavm->compartment_); - memory_base_ = WAVM::Runtime::getMemoryBaseAddress(memory_); + wavm->memory_base_ = WAVM::Runtime::getMemoryBaseAddress(wavm->memory_); wavm->context_ = WAVM::Runtime::createContext(wavm->compartment_); for (auto& p : intrinsicModuleInstances_) { wavm->intrinsicModuleInstances_.emplace( @@ -430,10 +400,12 @@ void Wavm::start(Context* context) { uint64_t Wavm::getMemorySize() { return WAVM::Runtime::getMemoryNumPages(memory_) * wasmPageSize; } -absl::string_view Wavm::getMemory(uint64_t pointer, uint64_t size) { - return {reinterpret_cast( - WAVM::Runtime::memoryArrayPtr(memory_, pointer, static_cast(size))), - static_cast(size)}; +absl::optional Wavm::getMemory(uint64_t pointer, uint64_t size) { + auto memoryNumBytes = WAVM::Runtime::getMemoryNumPages(memory_) * wasmPageSize; + if (pointer + size > memoryNumBytes) { + return absl::nullopt; + } + return absl::string_view(reinterpret_cast(memory_base_ + pointer), size); } bool Wavm::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { @@ -449,26 +421,18 @@ bool Wavm::getMemoryOffset(void* host_pointer, uint64_t* vm_pointer) { } bool Wavm::setMemory(uint64_t pointer, uint64_t size, const void* data) { - auto p = reinterpret_cast( - WAVM::Runtime::memoryArrayPtr(memory_, pointer, static_cast(size))); - if (p) { - memcpy(p, data, size); - return true; - } else { + auto memoryNumBytes = WAVM::Runtime::getMemoryNumPages(memory_) * wasmPageSize; + if (pointer + size > memoryNumBytes) { return false; } + auto p = reinterpret_cast(memory_base_ + pointer); + memcpy(p, data, size); + return true; } -bool Wavm::setWord(uint64_t pointer, uint64_t data) { - auto p = reinterpret_cast( - WAVM::Runtime::memoryArrayPtr(memory_, pointer, static_cast(sizeof(uint32_t)))); - if (p) { - uint32_t data32 = static_cast(data); - memcpy(p, &data32, sizeof(uint32_t)); - return true; - } else { - return false; - } +bool Wavm::setWord(uint64_t pointer, Word data) { + uint32_t data32 = data.u32(); + return setMemory(pointer, sizeof(uint32_t), &data32); } absl::string_view Wavm::getUserSection(absl::string_view name) { diff --git a/source/extensions/extensions_build_config.bzl b/source/extensions/extensions_build_config.bzl index 317abb1a8a633..1ff3ebca972a3 100644 --- a/source/extensions/extensions_build_config.bzl +++ b/source/extensions/extensions_build_config.bzl @@ -5,7 +5,7 @@ EXTENSIONS = { # "envoy.access_loggers.file": "//source/extensions/access_loggers/file:config", - "envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/http_grpc:config", + "envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/grpc:http_config", "envoy.access_loggers.wasm": "//source/extensions/access_loggers/wasm:config", # @@ -155,7 +155,7 @@ WINDOWS_EXTENSIONS = { # "envoy.access_loggers.file": "//source/extensions/access_loggers/file:config", - #"envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/http_grpc:config", + #"envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/grpc:http_config", # # gRPC Credentials Plugins diff --git a/source/extensions/filters/common/expr/BUILD b/source/extensions/filters/common/expr/BUILD new file mode 100644 index 0000000000000..7b2a6f140792b --- /dev/null +++ b/source/extensions/filters/common/expr/BUILD @@ -0,0 +1,34 @@ +licenses(["notice"]) # Apache 2 + +load( + "//bazel:envoy_build_system.bzl", + "envoy_cc_library", + "envoy_package", +) + +envoy_package() + +envoy_cc_library( + name = "evaluator_lib", + srcs = ["evaluator.cc"], + hdrs = ["evaluator.h"], + deps = [ + ":context_lib", + "//source/common/http:utility_lib", + "//source/common/protobuf", + "@com_google_cel_cpp//eval/public:builtin_func_registrar", + "@com_google_cel_cpp//eval/public:cel_expr_builder_factory", + "@com_google_cel_cpp//eval/public:cel_expression", + "@com_google_cel_cpp//eval/public:cel_value", + ], +) + +envoy_cc_library( + name = "context_lib", + srcs = ["context.cc"], + hdrs = ["context.h"], + deps = [ + "//source/common/http:utility_lib", + "@com_google_cel_cpp//eval/public:cel_value", + ], +) diff --git a/source/extensions/filters/common/expr/context.cc b/source/extensions/filters/common/expr/context.cc new file mode 100644 index 0000000000000..5d0471bbd1181 --- /dev/null +++ b/source/extensions/filters/common/expr/context.cc @@ -0,0 +1,164 @@ +#include "extensions/filters/common/expr/context.h" + +#include "absl/strings/numbers.h" +#include "absl/time/time.h" + +namespace Envoy { +namespace Extensions { +namespace Filters { +namespace Common { +namespace Expr { + +namespace { + +absl::optional convertHeaderEntry(const Http::HeaderEntry* header) { + if (header == nullptr) { + return {}; + } + return CelValue::CreateString(header->value().getStringView()); +} + +} // namespace + +absl::optional HeadersWrapper::operator[](CelValue key) const { + if (value_ == nullptr || !key.IsString()) { + return {}; + } + auto out = value_->get(Http::LowerCaseString(std::string(key.StringOrDie().value()))); + return convertHeaderEntry(out); +} + +absl::optional RequestWrapper::operator[](CelValue key) const { + if (!key.IsString()) { + return {}; + } + auto value = key.StringOrDie().value(); + + if (value == Headers) { + return CelValue::CreateMap(&headers_); + } else if (value == Time) { + return CelValue::CreateTimestamp(absl::FromChrono(info_.startTime())); + } else if (value == Size) { + // it is important to make a choice whether to rely on content-length vs stream info + // (which is not available at the time of the request headers) + if (headers_.value_ != nullptr && headers_.value_->ContentLength() != nullptr) { + int64_t length; + if (absl::SimpleAtoi(headers_.value_->ContentLength()->value().getStringView(), &length)) { + return CelValue::CreateInt64(length); + } + } else { + return CelValue::CreateInt64(info_.bytesReceived()); + } + } else if (value == Duration) { + auto duration = info_.requestComplete(); + if (duration.has_value()) { + return CelValue::CreateDuration(absl::FromChrono(duration.value())); + } + } + + if (headers_.value_ != nullptr) { + if (value == Path) { + return convertHeaderEntry(headers_.value_->Path()); + } else if (value == UrlPath) { + absl::string_view path = headers_.value_->Path()->value().getStringView(); + size_t query_offset = path.find('?'); + if (query_offset == absl::string_view::npos) { + return CelValue::CreateString(path); + } + return CelValue::CreateString(path.substr(0, query_offset)); + } else if (value == Host) { + return convertHeaderEntry(headers_.value_->Host()); + } else if (value == Scheme) { + return convertHeaderEntry(headers_.value_->Scheme()); + } else if (value == Method) { + return convertHeaderEntry(headers_.value_->Method()); + } else if (value == Referer) { + return convertHeaderEntry(headers_.value_->Referer()); + } else if (value == ID) { + return convertHeaderEntry(headers_.value_->RequestId()); + } else if (value == UserAgent) { + return convertHeaderEntry(headers_.value_->UserAgent()); + } else if (value == TotalSize) { + return CelValue::CreateInt64(info_.bytesReceived() + headers_.value_->byteSize().value_or(0)); + } + } + return {}; +} + +absl::optional ResponseWrapper::operator[](CelValue key) const { + if (!key.IsString()) { + return {}; + } + auto value = key.StringOrDie().value(); + if (value == Code) { + auto code = info_.responseCode(); + if (code.has_value()) { + return CelValue::CreateInt64(code.value()); + } + } else if (value == Size) { + return CelValue::CreateInt64(info_.bytesSent()); + } else if (value == Headers) { + return CelValue::CreateMap(&headers_); + } else if (value == Trailers) { + return CelValue::CreateMap(&trailers_); + } + return {}; +} + +absl::optional ConnectionWrapper::operator[](CelValue key) const { + if (!key.IsString()) { + return {}; + } + auto value = key.StringOrDie().value(); + if (value == UpstreamAddress) { + auto upstream_host = info_.upstreamHost(); + if (upstream_host != nullptr && upstream_host->address() != nullptr) { + return CelValue::CreateString(upstream_host->address()->asStringView()); + } + } else if (value == UpstreamPort) { + auto upstream_host = info_.upstreamHost(); + if (upstream_host != nullptr && upstream_host->address() != nullptr && + upstream_host->address()->ip() != nullptr) { + return CelValue::CreateInt64(upstream_host->address()->ip()->port()); + } + } else if (value == MTLS) { + return CelValue::CreateBool(info_.downstreamSslConnection() != nullptr && + info_.downstreamSslConnection()->peerCertificatePresented()); + } else if (value == RequestedServerName) { + return CelValue::CreateString(info_.requestedServerName()); + } + + return {}; +} + +absl::optional PeerWrapper::operator[](CelValue key) const { + if (!key.IsString()) { + return {}; + } + auto value = key.StringOrDie().value(); + if (value == Address) { + if (local_) { + return CelValue::CreateString(info_.downstreamLocalAddress()->asStringView()); + } else { + return CelValue::CreateString(info_.downstreamRemoteAddress()->asStringView()); + } + } else if (value == Port) { + if (local_) { + if (info_.downstreamLocalAddress()->ip() != nullptr) { + return CelValue::CreateInt64(info_.downstreamLocalAddress()->ip()->port()); + } + } else { + if (info_.downstreamRemoteAddress()->ip() != nullptr) { + return CelValue::CreateInt64(info_.downstreamRemoteAddress()->ip()->port()); + } + } + } + + return {}; +} + +} // namespace Expr +} // namespace Common +} // namespace Filters +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/filters/common/expr/context.h b/source/extensions/filters/common/expr/context.h new file mode 100644 index 0000000000000..7b59c41a5a101 --- /dev/null +++ b/source/extensions/filters/common/expr/context.h @@ -0,0 +1,129 @@ +#pragma once + +#include "envoy/stream_info/stream_info.h" + +#include "common/http/headers.h" + +#include "eval/public/cel_value.h" + +namespace Envoy { +namespace Extensions { +namespace Filters { +namespace Common { +namespace Expr { + +using CelValue = google::api::expr::runtime::CelValue; + +// Symbols for traversing the request properties +constexpr absl::string_view Request = "request"; +constexpr absl::string_view Path = "path"; +constexpr absl::string_view UrlPath = "url_path"; +constexpr absl::string_view Host = "host"; +constexpr absl::string_view Scheme = "scheme"; +constexpr absl::string_view Method = "method"; +constexpr absl::string_view Referer = "referer"; +constexpr absl::string_view Headers = "headers"; +constexpr absl::string_view Time = "time"; +constexpr absl::string_view ID = "id"; +constexpr absl::string_view UserAgent = "useragent"; +constexpr absl::string_view Size = "size"; +constexpr absl::string_view TotalSize = "total_size"; +constexpr absl::string_view Duration = "duration"; + +// Symbols for traversing the response properties +constexpr absl::string_view Response = "response"; +constexpr absl::string_view Code = "code"; +constexpr absl::string_view Trailers = "trailers"; + +// Per-request or per-connection metadata +constexpr absl::string_view Metadata = "metadata"; + +// Connection properties +constexpr absl::string_view Connection = "connection"; +constexpr absl::string_view UpstreamAddress = "upstream_address"; +constexpr absl::string_view UpstreamPort = "upstream_port"; +constexpr absl::string_view MTLS = "mtls"; +constexpr absl::string_view RequestedServerName = "requested_server_name"; + +// Source properties +constexpr absl::string_view Source = "source"; +constexpr absl::string_view Address = "address"; +constexpr absl::string_view Port = "port"; + +// Destination properties +constexpr absl::string_view Destination = "destination"; + +class RequestWrapper; + +class HeadersWrapper : public google::api::expr::runtime::CelMap { +public: + HeadersWrapper(const Http::HeaderMap* value) : value_(value) {} + absl::optional operator[](CelValue key) const override; + int size() const override { return value_ == nullptr ? 0 : value_->size(); } + bool empty() const override { return value_ == nullptr ? true : value_->empty(); } + const google::api::expr::runtime::CelList* ListKeys() const override { + NOT_IMPLEMENTED_GCOVR_EXCL_LINE; + } + +private: + friend class RequestWrapper; + const Http::HeaderMap* value_; +}; + +class BaseWrapper : public google::api::expr::runtime::CelMap { +public: + int size() const override { return 0; } + bool empty() const override { return false; } + const google::api::expr::runtime::CelList* ListKeys() const override { + NOT_IMPLEMENTED_GCOVR_EXCL_LINE; + } +}; + +class RequestWrapper : public BaseWrapper { +public: + RequestWrapper(const Http::HeaderMap* headers, const StreamInfo::StreamInfo& info) + : headers_(headers), info_(info) {} + absl::optional operator[](CelValue key) const override; + +private: + const HeadersWrapper headers_; + const StreamInfo::StreamInfo& info_; +}; + +class ResponseWrapper : public BaseWrapper { +public: + ResponseWrapper(const Http::HeaderMap* headers, const Http::HeaderMap* trailers, + const StreamInfo::StreamInfo& info) + : headers_(headers), trailers_(trailers), info_(info) {} + absl::optional operator[](CelValue key) const override; + +private: + const HeadersWrapper headers_; + const HeadersWrapper trailers_; + const StreamInfo::StreamInfo& info_; +}; + +class ConnectionWrapper : public BaseWrapper { +public: + ConnectionWrapper(const StreamInfo::StreamInfo& info) : info_(info) {} + absl::optional operator[](CelValue key) const override; + +private: + const StreamInfo::StreamInfo& info_; +}; + +class PeerWrapper : public BaseWrapper { +public: + PeerWrapper(const StreamInfo::StreamInfo& info, bool local) : info_(info), local_(local) {} + absl::optional operator[](CelValue key) const override; + +private: + const StreamInfo::StreamInfo& info_; + const bool local_; +}; + +} // namespace Expr +} // namespace Common +} // namespace Filters +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/filters/common/expr/evaluator.cc b/source/extensions/filters/common/expr/evaluator.cc new file mode 100644 index 0000000000000..bd25da52975f8 --- /dev/null +++ b/source/extensions/filters/common/expr/evaluator.cc @@ -0,0 +1,86 @@ +#include "extensions/filters/common/expr/evaluator.h" + +#include "envoy/common/exception.h" + +#include "eval/public/builtin_func_registrar.h" +#include "eval/public/cel_expr_builder_factory.h" + +namespace Envoy { +namespace Extensions { +namespace Filters { +namespace Common { +namespace Expr { + +BuilderPtr createBuilder(Protobuf::Arena* arena) { + google::api::expr::runtime::InterpreterOptions options; + + // Conformance with spec/go runtimes requires this setting + options.partial_string_match = true; + + if (arena != nullptr) { + options.constant_folding = true; + options.constant_arena = arena; + } + + auto builder = google::api::expr::runtime::CreateCelExpressionBuilder(options); + auto register_status = + google::api::expr::runtime::RegisterBuiltinFunctions(builder->GetRegistry()); + if (!register_status.ok()) { + throw EnvoyException( + absl::StrCat("failed to register built-in functions: ", register_status.message())); + } + return builder; +} + +ExpressionPtr createExpression(Builder& builder, const google::api::expr::v1alpha1::Expr& expr) { + google::api::expr::v1alpha1::SourceInfo source_info; + auto cel_expression_status = builder.CreateExpression(&expr, &source_info); + if (!cel_expression_status.ok()) { + throw EnvoyException( + absl::StrCat("failed to create an expression: ", cel_expression_status.status().message())); + } + return std::move(cel_expression_status.ValueOrDie()); +} + +absl::optional evaluate(const Expression& expr, Protobuf::Arena* arena, + const StreamInfo::StreamInfo& info, + const Http::HeaderMap* request_headers, + const Http::HeaderMap* response_headers, + const Http::HeaderMap* response_trailers) { + google::api::expr::runtime::Activation activation; + const RequestWrapper request(request_headers, info); + const ResponseWrapper response(response_headers, response_trailers, info); + const ConnectionWrapper connection(info); + const PeerWrapper source(info, false); + const PeerWrapper destination(info, true); + activation.InsertValue(Request, CelValue::CreateMap(&request)); + activation.InsertValue(Response, CelValue::CreateMap(&response)); + activation.InsertValue(Metadata, CelValue::CreateMessage(&info.dynamicMetadata(), arena)); + activation.InsertValue(Connection, CelValue::CreateMap(&connection)); + activation.InsertValue(Source, CelValue::CreateMap(&source)); + activation.InsertValue(Destination, CelValue::CreateMap(&destination)); + + auto eval_status = expr.Evaluate(activation, arena); + if (!eval_status.ok()) { + return {}; + } + + return eval_status.ValueOrDie(); +} + +bool matches(const Expression& expr, const StreamInfo::StreamInfo& info, + const Http::HeaderMap& headers) { + Protobuf::Arena arena; + auto eval_status = Expr::evaluate(expr, &arena, info, &headers, nullptr, nullptr); + if (!eval_status.has_value()) { + return false; + } + auto result = eval_status.value(); + return result.IsBool() ? result.BoolOrDie() : false; +} + +} // namespace Expr +} // namespace Common +} // namespace Filters +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/filters/common/expr/evaluator.h b/source/extensions/filters/common/expr/evaluator.h new file mode 100644 index 0000000000000..92ccea420d216 --- /dev/null +++ b/source/extensions/filters/common/expr/evaluator.h @@ -0,0 +1,50 @@ +#pragma once + +#include "envoy/stream_info/stream_info.h" + +#include "common/http/headers.h" +#include "common/protobuf/protobuf.h" + +#include "extensions/filters/common/expr/context.h" + +#include "eval/public/cel_expression.h" +#include "eval/public/cel_value.h" + +namespace Envoy { +namespace Extensions { +namespace Filters { +namespace Common { +namespace Expr { + +using Builder = google::api::expr::runtime::CelExpressionBuilder; +using BuilderPtr = std::unique_ptr; +using Expression = google::api::expr::runtime::CelExpression; +using ExpressionPtr = std::unique_ptr; + +// Creates an expression builder. The optional arena is used to enable constant folding +// for intermediate evaluation results. +// Throws an exception if fails to construct an expression builder. +BuilderPtr createBuilder(Protobuf::Arena* arena); + +// Creates an interpretable expression from a protobuf representation. +// Throws an exception if fails to construct a runtime expression. +ExpressionPtr createExpression(Builder& builder, const google::api::expr::v1alpha1::Expr& expr); + +// Evaluates an expression for a request. The arena is used to hold intermediate computational +// results and potentially the final value. +absl::optional evaluate(const Expression& expr, Protobuf::Arena* arena, + const StreamInfo::StreamInfo& info, + const Http::HeaderMap* request_headers, + const Http::HeaderMap* response_headers, + const Http::HeaderMap* response_trailers); + +// Evaluates an expression and returns true if the expression evaluates to "true". +// Returns false if the expression fails to evaluate. +bool matches(const Expression& expr, const StreamInfo::StreamInfo& info, + const Http::HeaderMap& headers); + +} // namespace Expr +} // namespace Common +} // namespace Filters +} // namespace Extensions +} // namespace Envoy diff --git a/source/extensions/filters/common/rbac/BUILD b/source/extensions/filters/common/rbac/BUILD index 6aa4fc4088bde..94398324482f5 100644 --- a/source/extensions/filters/common/rbac/BUILD +++ b/source/extensions/filters/common/rbac/BUILD @@ -33,6 +33,7 @@ envoy_cc_library( "//source/common/common:matchers_lib", "//source/common/http:header_utility_lib", "//source/common/network:cidr_range_lib", + "//source/extensions/filters/common/expr:evaluator_lib", "@envoy_api//envoy/api/v2/core:base_cc", "@envoy_api//envoy/config/rbac/v2:rbac_cc", ], diff --git a/source/extensions/filters/common/rbac/engine.h b/source/extensions/filters/common/rbac/engine.h index 4a07c03d2a312..093eb72fb7786 100644 --- a/source/extensions/filters/common/rbac/engine.h +++ b/source/extensions/filters/common/rbac/engine.h @@ -4,6 +4,7 @@ #include "envoy/http/filter.h" #include "envoy/http/header_map.h" #include "envoy/network/connection.h" +#include "envoy/stream_info/stream_info.h" namespace Envoy { namespace Extensions { @@ -24,24 +25,25 @@ class RoleBasedAccessControlEngine { * @param connection the downstream connection used to identify the action/principal. * @param headers the headers of the incoming request used to identify the action/principal. An * empty map should be used if there are no headers available. - * @param metadata the metadata with additional information about the action/principal. + * @param info the per-request or per-connection stream info with additional information + * about the action/principal. * @param effective_policy_id it will be filled by the matching policy's ID, * which is used to identity the source of the allow/deny. */ virtual bool allowed(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata, + const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const PURE; /** * Returns whether or not the current action is permitted. * * @param connection the downstream connection used to identify the action/principal. - * @param metadata the metadata with additional information about the action/principal. + * @param info the per-request or per-connection stream info with additional information + * about the action/principal. * @param effective_policy_id it will be filled by the matching policy's ID, * which is used to identity the source of the allow/deny. */ - virtual bool allowed(const Network::Connection& connection, - const envoy::api::v2::core::Metadata& metadata, + virtual bool allowed(const Network::Connection& connection, const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const PURE; }; diff --git a/source/extensions/filters/common/rbac/engine_impl.cc b/source/extensions/filters/common/rbac/engine_impl.cc index a35697d74d5f3..4456dd6eafbb9 100644 --- a/source/extensions/filters/common/rbac/engine_impl.cc +++ b/source/extensions/filters/common/rbac/engine_impl.cc @@ -12,19 +12,27 @@ RoleBasedAccessControlEngineImpl::RoleBasedAccessControlEngineImpl( const envoy::config::rbac::v2::RBAC& rules) : allowed_if_matched_(rules.action() == envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW) { + // guard expression builder by presence of a condition in policies for (const auto& policy : rules.policies()) { - policies_.insert(std::make_pair(policy.first, policy.second)); + if (policy.second.has_condition()) { + builder_ = Expr::createBuilder(&constant_arena_); + break; + } + } + + for (const auto& policy : rules.policies()) { + policies_.emplace(policy.first, std::make_unique(policy.second, builder_.get())); } } bool RoleBasedAccessControlEngineImpl::allowed(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata, + const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const { bool matched = false; for (const auto& policy : policies_) { - if (policy.second.matches(connection, headers, metadata)) { + if (policy.second->matches(connection, headers, info)) { matched = true; if (effective_policy_id != nullptr) { *effective_policy_id = policy.first; @@ -40,10 +48,10 @@ bool RoleBasedAccessControlEngineImpl::allowed(const Network::Connection& connec } bool RoleBasedAccessControlEngineImpl::allowed(const Network::Connection& connection, - const envoy::api::v2::core::Metadata& metadata, + const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const { static const Http::HeaderMapImpl* empty_header = new Http::HeaderMapImpl(); - return allowed(connection, *empty_header, metadata, effective_policy_id); + return allowed(connection, *empty_header, info, effective_policy_id); } } // namespace RBAC diff --git a/source/extensions/filters/common/rbac/engine_impl.h b/source/extensions/filters/common/rbac/engine_impl.h index cabbeb31e30fa..43b71fe5d8b03 100644 --- a/source/extensions/filters/common/rbac/engine_impl.h +++ b/source/extensions/filters/common/rbac/engine_impl.h @@ -11,22 +11,23 @@ namespace Filters { namespace Common { namespace RBAC { -class RoleBasedAccessControlEngineImpl : public RoleBasedAccessControlEngine { +class RoleBasedAccessControlEngineImpl : public RoleBasedAccessControlEngine, NonCopyable { public: RoleBasedAccessControlEngineImpl(const envoy::config::rbac::v2::RBAC& rules); bool allowed(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata, - std::string* effective_policy_id) const override; + const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const override; - bool allowed(const Network::Connection& connection, - const envoy::api::v2::core::Metadata& metadata, + bool allowed(const Network::Connection& connection, const StreamInfo::StreamInfo& info, std::string* effective_policy_id) const override; private: const bool allowed_if_matched_; - std::map policies_; + std::map> policies_; + + Protobuf::Arena constant_arena_; + Expr::BuilderPtr builder_; }; } // namespace RBAC diff --git a/source/extensions/filters/common/rbac/matchers.cc b/source/extensions/filters/common/rbac/matchers.cc index d718e8b34167c..d2742e2e9ea15 100644 --- a/source/extensions/filters/common/rbac/matchers.cc +++ b/source/extensions/filters/common/rbac/matchers.cc @@ -70,9 +70,9 @@ AndMatcher::AndMatcher(const envoy::config::rbac::v2::Principal_Set& set) { bool AndMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const { + const StreamInfo::StreamInfo& info) const { for (const auto& matcher : matchers_) { - if (!matcher->matches(connection, headers, metadata)) { + if (!matcher->matches(connection, headers, info)) { return false; } } @@ -95,9 +95,9 @@ OrMatcher::OrMatcher(const Protobuf::RepeatedPtrField<::envoy::config::rbac::v2: bool OrMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const { + const StreamInfo::StreamInfo& info) const { for (const auto& matcher : matchers_) { - if (matcher->matches(connection, headers, metadata)) { + if (matcher->matches(connection, headers, info)) { return true; } } @@ -107,17 +107,17 @@ bool OrMatcher::matches(const Network::Connection& connection, bool NotMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const { - return !matcher_->matches(connection, headers, metadata); + const StreamInfo::StreamInfo& info) const { + return !matcher_->matches(connection, headers, info); } bool HeaderMatcher::matches(const Network::Connection&, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const { + const StreamInfo::StreamInfo&) const { return Envoy::Http::HeaderUtility::matchHeaders(headers, header_); } bool IPMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&) const { + const StreamInfo::StreamInfo&) const { const Envoy::Network::Address::InstanceConstSharedPtr& ip = destination_ ? connection.localAddress() : connection.remoteAddress(); @@ -125,14 +125,14 @@ bool IPMatcher::matches(const Network::Connection& connection, const Envoy::Http } bool PortMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&) const { + const StreamInfo::StreamInfo&) const { const Envoy::Network::Address::Ip* ip = connection.localAddress().get()->ip(); return ip && ip->port() == port_; } bool AuthenticatedMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&) const { + const StreamInfo::StreamInfo&) const { const auto* ssl = connection.ssl(); if (!ssl) { // connection was not authenticated return false; @@ -142,30 +142,38 @@ bool AuthenticatedMatcher::matches(const Network::Connection& connection, const auto uriSans = ssl->uriSanPeerCertificate(); std::string principal; - if (uriSans.empty()) { - principal = ssl->subjectPeerCertificate(); - } else { + // If set, The URI SAN or DNS SAN in that order is used as Principal, otherwise the subject field + // is used. + if (!uriSans.empty()) { principal = uriSans[0]; + } else { + const auto dnsSans = ssl->dnsSansPeerCertificate(); + if (!dnsSans.empty()) { + principal = dnsSans[0]; + } else { + principal = ssl->subjectPeerCertificate(); + } } return matcher_.value().match(principal); } bool MetadataMatcher::matches(const Network::Connection&, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata& metadata) const { - return matcher_.match(metadata); + const StreamInfo::StreamInfo& info) const { + return matcher_.match(info.dynamicMetadata()); } bool PolicyMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const { - return permissions_.matches(connection, headers, metadata) && - principals_.matches(connection, headers, metadata); + const StreamInfo::StreamInfo& info) const { + return permissions_.matches(connection, headers, info) && + principals_.matches(connection, headers, info) && + (expr_ == nullptr ? true : Expr::matches(*expr_, info, headers)); } bool RequestedServerNameMatcher::matches(const Network::Connection& connection, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&) const { + const StreamInfo::StreamInfo&) const { return match(connection.requestedServerName()); } diff --git a/source/extensions/filters/common/rbac/matchers.h b/source/extensions/filters/common/rbac/matchers.h index 28b81846e1149..98f369d49e20b 100644 --- a/source/extensions/filters/common/rbac/matchers.h +++ b/source/extensions/filters/common/rbac/matchers.h @@ -11,6 +11,8 @@ #include "common/http/header_utility.h" #include "common/network/cidr_range.h" +#include "extensions/filters/common/expr/evaluator.h" + namespace Envoy { namespace Extensions { namespace Filters { @@ -36,7 +38,7 @@ class Matcher { * @param metadata the additional information about the action/principal. */ virtual bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const PURE; + const StreamInfo::StreamInfo& info) const PURE; /** * Creates a shared instance of a matcher based off the rules defined in the Permission config @@ -57,7 +59,7 @@ class Matcher { class AlwaysMatcher : public Matcher { public: bool matches(const Network::Connection&, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&) const override { + const StreamInfo::StreamInfo&) const override { return true; } }; @@ -72,7 +74,7 @@ class AndMatcher : public Matcher { AndMatcher(const envoy::config::rbac::v2::Principal_Set& ids); bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: std::vector matchers_; @@ -90,7 +92,7 @@ class OrMatcher : public Matcher { OrMatcher(const Protobuf::RepeatedPtrField<::envoy::config::rbac::v2::Principal>& ids); bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: std::vector matchers_; @@ -104,7 +106,7 @@ class NotMatcher : public Matcher { : matcher_(Matcher::create(principal)) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: MatcherConstSharedPtr matcher_; @@ -119,7 +121,7 @@ class HeaderMatcher : public Matcher { HeaderMatcher(const envoy::api::v2::route::HeaderMatcher& matcher) : header_(matcher) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: const Envoy::Http::HeaderUtility::HeaderData header_; @@ -135,7 +137,7 @@ class IPMatcher : public Matcher { : range_(Network::Address::CidrRange::create(range)), destination_(destination) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: const Network::Address::CidrRange range_; @@ -150,7 +152,7 @@ class PortMatcher : public Matcher { PortMatcher(const uint32_t port) : port_(port) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: const uint32_t port_; @@ -168,7 +170,7 @@ class AuthenticatedMatcher : public Matcher { : absl::nullopt) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: const absl::optional matcher_; @@ -177,18 +179,27 @@ class AuthenticatedMatcher : public Matcher { /** * Matches a Policy which is a collection of permission and principal matchers. If any action * matches a permission, the principals are then checked for a match. + * The condition is a conjunction clause. */ -class PolicyMatcher : public Matcher { +class PolicyMatcher : public Matcher, NonCopyable { public: - PolicyMatcher(const envoy::config::rbac::v2::Policy& policy) - : permissions_(policy.permissions()), principals_(policy.principals()) {} + PolicyMatcher(const envoy::config::rbac::v2::Policy& policy, Expr::Builder* builder) + : permissions_(policy.permissions()), principals_(policy.principals()), + condition_(policy.condition()) { + if (policy.has_condition()) { + expr_ = Expr::createExpression(*builder, condition_); + } + } bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; private: const OrMatcher permissions_; const OrMatcher principals_; + + const google::api::expr::v1alpha1::Expr condition_; + Expr::ExpressionPtr expr_; }; class MetadataMatcher : public Matcher { @@ -196,7 +207,7 @@ class MetadataMatcher : public Matcher { MetadataMatcher(const Envoy::Matchers::MetadataMatcher& matcher) : matcher_(matcher) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata& metadata) const override; + const StreamInfo::StreamInfo& info) const override; private: const Envoy::Matchers::MetadataMatcher matcher_; @@ -212,7 +223,7 @@ class RequestedServerNameMatcher : public Matcher, Envoy::Matchers::StringMatche : Envoy::Matchers::StringMatcher(requested_server_name) {} bool matches(const Network::Connection& connection, const Envoy::Http::HeaderMap& headers, - const envoy::api::v2::core::Metadata&) const override; + const StreamInfo::StreamInfo&) const override; }; } // namespace RBAC diff --git a/source/extensions/filters/common/rbac/utility.h b/source/extensions/filters/common/rbac/utility.h index bcf934f41feb1..684c4204ecb6f 100644 --- a/source/extensions/filters/common/rbac/utility.h +++ b/source/extensions/filters/common/rbac/utility.h @@ -47,16 +47,16 @@ RoleBasedAccessControlFilterStats generateStats(const std::string& prefix, Stats enum class EnforcementMode { Enforced, Shadow }; template -absl::optional createEngine(const ConfigType& config) { - return config.has_rules() ? absl::make_optional(config.rules()) - : absl::nullopt; +std::unique_ptr createEngine(const ConfigType& config) { + return config.has_rules() ? std::make_unique(config.rules()) + : nullptr; } template -absl::optional createShadowEngine(const ConfigType& config) { +std::unique_ptr createShadowEngine(const ConfigType& config) { return config.has_shadow_rules() - ? absl::make_optional(config.shadow_rules()) - : absl::nullopt; + ? std::make_unique(config.shadow_rules()) + : nullptr; } } // namespace RBAC diff --git a/source/extensions/filters/http/lua/lua_filter.cc b/source/extensions/filters/http/lua/lua_filter.cc index 1dd5edff1fad7..2f163162df06d 100644 --- a/source/extensions/filters/http/lua/lua_filter.cc +++ b/source/extensions/filters/http/lua/lua_filter.cc @@ -146,9 +146,19 @@ Http::HeaderMapPtr StreamHandleWrapper::buildHeadersFromTable(lua_State* state, while (lua_next(state, table_index) != 0) { // Uses 'key' (at index -2) and 'value' (at index -1). const char* key = luaL_checkstring(state, -2); - const char* value = luaL_checkstring(state, -1); - headers->addCopy(Http::LowerCaseString(key), value); - + // Check if the current value is a table, we iterate through the table and add each element of + // it as a header entry value for the current key. + if (lua_istable(state, -1)) { + lua_pushnil(state); + while (lua_next(state, -2) != 0) { + const char* value = luaL_checkstring(state, -1); + headers->addCopy(Http::LowerCaseString(key), value); + lua_pop(state, 1); + } + } else { + const char* value = luaL_checkstring(state, -1); + headers->addCopy(Http::LowerCaseString(key), value); + } // Removes 'value'; keeps 'key' for next iteration. This is the input for lua_next() so that // it can push the next key/value pair onto the stack. lua_pop(state, 1); diff --git a/source/extensions/filters/http/rbac/rbac_filter.cc b/source/extensions/filters/http/rbac/rbac_filter.cc index 965888fd3105f..c9c8ee8fc8af5 100644 --- a/source/extensions/filters/http/rbac/rbac_filter.cc +++ b/source/extensions/filters/http/rbac/rbac_filter.cc @@ -26,7 +26,7 @@ RoleBasedAccessControlFilterConfig::RoleBasedAccessControlFilterConfig( engine_(Filters::Common::RBAC::createEngine(proto_config)), shadow_engine_(Filters::Common::RBAC::createShadowEngine(proto_config)) {} -const absl::optional& +const Filters::Common::RBAC::RoleBasedAccessControlEngineImpl* RoleBasedAccessControlFilterConfig::engine(const Router::RouteConstSharedPtr route, Filters::Common::RBAC::EnforcementMode mode) const { if (!route || !route->routeEntry()) { @@ -70,14 +70,18 @@ Http::FilterHeadersStatus RoleBasedAccessControlFilter::decodeHeaders(Http::Head headers, callbacks_->streamInfo().dynamicMetadata().DebugString()); std::string effective_policy_id; - const auto& shadow_engine = + const auto shadow_engine = config_->engine(callbacks_->route(), Filters::Common::RBAC::EnforcementMode::Shadow); - if (shadow_engine.has_value()) { + if (shadow_engine != nullptr) { std::string shadow_resp_code = Filters::Common::RBAC::DynamicMetadataKeysSingleton::get().EngineResultAllowed; - if (shadow_engine->allowed(*callbacks_->connection(), headers, - callbacks_->streamInfo().dynamicMetadata(), &effective_policy_id)) { + // Refresh headers byte size before checking if allowed. + // TODO(asraa): Remove this when entries in HeaderMap can no longer be modified by reference and + // HeaderMap holds an accurate internal byte size count. + headers.refreshByteSize(); + if (shadow_engine->allowed(*callbacks_->connection(), headers, callbacks_->streamInfo(), + &effective_policy_id)) { ENVOY_LOG(debug, "shadow allowed"); config_->stats().shadow_allowed_.inc(); } else { @@ -102,11 +106,14 @@ Http::FilterHeadersStatus RoleBasedAccessControlFilter::decodeHeaders(Http::Head callbacks_->streamInfo().setDynamicMetadata(HttpFilterNames::get().Rbac, metrics); } - const auto& engine = + const auto engine = config_->engine(callbacks_->route(), Filters::Common::RBAC::EnforcementMode::Enforced); - if (engine.has_value()) { - if (engine->allowed(*callbacks_->connection(), headers, - callbacks_->streamInfo().dynamicMetadata(), nullptr)) { + if (engine != nullptr) { + // Refresh headers byte size before checking if allowed. + // TODO(asraa): Remove this when entries in HeaderMap can no longer be modified by reference and + // HeaderMap holds an accurate internal byte size count. + headers.refreshByteSize(); + if (engine->allowed(*callbacks_->connection(), headers, callbacks_->streamInfo(), nullptr)) { ENVOY_LOG(debug, "enforced allowed"); config_->stats().allowed_.inc(); return Http::FilterHeadersStatus::Continue; diff --git a/source/extensions/filters/http/rbac/rbac_filter.h b/source/extensions/filters/http/rbac/rbac_filter.h index 5397a3c31c586..e6b0044580520 100644 --- a/source/extensions/filters/http/rbac/rbac_filter.h +++ b/source/extensions/filters/http/rbac/rbac_filter.h @@ -22,14 +22,15 @@ class RoleBasedAccessControlRouteSpecificFilterConfig : public Router::RouteSpec RoleBasedAccessControlRouteSpecificFilterConfig( const envoy::config::filter::http::rbac::v2::RBACPerRoute& per_route_config); - const absl::optional& + const Filters::Common::RBAC::RoleBasedAccessControlEngineImpl* engine(Filters::Common::RBAC::EnforcementMode mode) const { - return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_ : shadow_engine_; + return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_.get() + : shadow_engine_.get(); } private: - const absl::optional engine_; - const absl::optional shadow_engine_; + std::unique_ptr engine_; + std::unique_ptr shadow_engine_; }; /** @@ -43,20 +44,21 @@ class RoleBasedAccessControlFilterConfig { Filters::Common::RBAC::RoleBasedAccessControlFilterStats& stats() { return stats_; } - const absl::optional& + const Filters::Common::RBAC::RoleBasedAccessControlEngineImpl* engine(const Router::RouteConstSharedPtr route, Filters::Common::RBAC::EnforcementMode mode) const; private: - const absl::optional& + const Filters::Common::RBAC::RoleBasedAccessControlEngineImpl* engine(Filters::Common::RBAC::EnforcementMode mode) const { - return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_ : shadow_engine_; + return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_.get() + : shadow_engine_.get(); } Filters::Common::RBAC::RoleBasedAccessControlFilterStats stats_; - const absl::optional engine_; - const absl::optional shadow_engine_; + std::unique_ptr engine_; + std::unique_ptr shadow_engine_; }; using RoleBasedAccessControlFilterConfigSharedPtr = diff --git a/source/extensions/filters/http/router/config.h b/source/extensions/filters/http/router/config.h index 4dfde8845f1a4..bfb7df66649dd 100644 --- a/source/extensions/filters/http/router/config.h +++ b/source/extensions/filters/http/router/config.h @@ -26,6 +26,8 @@ class RouterFilterConfig createFilterFactory(const Json::Object& json_config, const std::string& stat_prefix, Server::Configuration::FactoryContext& context) override; + bool isTerminalFilter() override { return true; } + private: Http::FilterFactoryCb createFilterFactoryFromProtoTyped( const envoy::config::filter::http::router::v2::Router& proto_config, diff --git a/source/extensions/filters/http/wasm/wasm_filter.cc b/source/extensions/filters/http/wasm/wasm_filter.cc index df7570f125aee..d41fa8aff2e1d 100644 --- a/source/extensions/filters/http/wasm/wasm_filter.cc +++ b/source/extensions/filters/http/wasm/wasm_filter.cc @@ -25,8 +25,9 @@ FilterConfig::FilterConfig(const envoy::config::filter::http::wasm::v2::Wasm& co // individual threads. auto base_wasm = Common::Wasm::createWasm( vm_id, config.vm_config(), root_id, context.clusterManager(), context.dispatcher(), - context.api(), context.scope(), context.localInfo(), &context.listenerMetadata(), - nullptr /* owned_scope */); + context.api(), context.scope(), + Common::Wasm::pluginDirectionFromTrafficDirection(context.direction()), context.localInfo(), + &context.listenerMetadata(), nullptr /* owned_scope */); // NB: the Slot set() call doesn't complete inline, so all arguments must outlive this call. tls_slot_->set([base_wasm, root_id, configuration](Event::Dispatcher& dispatcher) { auto result = Extensions::Common::Wasm::createThreadLocalWasm(*base_wasm, root_id, diff --git a/source/extensions/filters/http/wasm/wasm_filter.h b/source/extensions/filters/http/wasm/wasm_filter.h index 0532da328e0b1..2ab2525c4d942 100644 --- a/source/extensions/filters/http/wasm/wasm_filter.h +++ b/source/extensions/filters/http/wasm/wasm_filter.h @@ -28,7 +28,7 @@ class FilterConfig : Logger::Loggable { if (!root_context_id_) { root_context_id_ = wasm.getRootContext(root_id_)->id(); } - return std::make_shared(&tls_slot_->getTyped(), root_context_id_); + return std::make_shared(&wasm, root_context_id_); } private: diff --git a/source/extensions/filters/network/common/factory_base.h b/source/extensions/filters/network/common/factory_base.h index 417ebdd85b20c..0c241878d2e87 100644 --- a/source/extensions/filters/network/common/factory_base.h +++ b/source/extensions/filters/network/common/factory_base.h @@ -45,8 +45,11 @@ class FactoryBase : public Server::Configuration::NamedNetworkFilterConfigFactor std::string name() override { return name_; } + bool isTerminalFilter() override { return is_terminal_filter_; } + protected: - FactoryBase(const std::string& name) : name_(name) {} + FactoryBase(const std::string& name, bool is_terminal = false) + : name_(name), is_terminal_filter_(is_terminal) {} private: virtual Network::FilterFactoryCb @@ -59,6 +62,7 @@ class FactoryBase : public Server::Configuration::NamedNetworkFilterConfigFactor } const std::string name_; + const bool is_terminal_filter_; }; } // namespace Common diff --git a/source/extensions/filters/network/common/redis/client.h b/source/extensions/filters/network/common/redis/client.h index 4e041ad33552f..e20df148fb82d 100644 --- a/source/extensions/filters/network/common/redis/client.h +++ b/source/extensions/filters/network/common/redis/client.h @@ -99,6 +99,11 @@ class Client : public Event::DeferredDeletable { using ClientPtr = std::unique_ptr; +/** + * Read policy to use for Redis cluster. + */ +enum class ReadPolicy { Master, PreferMaster, Replica, PreferReplica, Any }; + /** * Configuration for a redis connection pool. */ @@ -157,6 +162,11 @@ class Config { * minimize the need for a large maxUpstreamUnknownConnections() value. */ virtual uint32_t maxUpstreamUnknownConnections() const PURE; + + /** + * @return the read policy the proxy should use. + */ + virtual ReadPolicy readPolicy() const PURE; }; /** diff --git a/source/extensions/filters/network/common/redis/client_impl.cc b/source/extensions/filters/network/common/redis/client_impl.cc index 192177dca7a1d..a2610417a8730 100644 --- a/source/extensions/filters/network/common/redis/client_impl.cc +++ b/source/extensions/filters/network/common/redis/client_impl.cc @@ -19,7 +19,32 @@ ConfigImpl::ConfigImpl( 3)), // Default timeout is 3ms. If max_buffer_size_before_flush is zero, this is not used // as the buffer is flushed on each request immediately. max_upstream_unknown_connections_( - PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, max_upstream_unknown_connections, 100)) {} + PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, max_upstream_unknown_connections, 100)) { + switch (config.read_policy()) { + case envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_MASTER: + read_policy_ = ReadPolicy::Master; + break; + case envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_PREFER_MASTER: + read_policy_ = ReadPolicy::PreferMaster; + break; + case envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_REPLICA: + read_policy_ = ReadPolicy::PreferMaster; + break; + case envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_PREFER_REPLICA: + read_policy_ = ReadPolicy::PreferMaster; + break; + case envoy::config::filter::network::redis_proxy::v2::RedisProxy_ConnPoolSettings_ReadPolicy_ANY: + read_policy_ = ReadPolicy::PreferMaster; + break; + default: + NOT_REACHED_GCOVR_EXCL_LINE; + break; + } +} ClientPtr ClientImpl::create(Upstream::HostConstSharedPtr host, Event::Dispatcher& dispatcher, EncoderPtr&& encoder, DecoderFactory& decoder_factory, diff --git a/source/extensions/filters/network/common/redis/client_impl.h b/source/extensions/filters/network/common/redis/client_impl.h index ffeb0ee458d82..9522482fb0227 100644 --- a/source/extensions/filters/network/common/redis/client_impl.h +++ b/source/extensions/filters/network/common/redis/client_impl.h @@ -49,6 +49,7 @@ class ConfigImpl : public Config { uint32_t maxUpstreamUnknownConnections() const override { return max_upstream_unknown_connections_; } + ReadPolicy readPolicy() const override { return read_policy_; } private: const std::chrono::milliseconds op_timeout_; @@ -57,6 +58,7 @@ class ConfigImpl : public Config { const uint32_t max_buffer_size_before_flush_; const std::chrono::milliseconds buffer_flush_timeout_; const uint32_t max_upstream_unknown_connections_; + ReadPolicy read_policy_; }; class ClientImpl : public Client, public DecoderCallbacks, public Network::ConnectionCallbacks { diff --git a/source/extensions/filters/network/common/redis/supported_commands.h b/source/extensions/filters/network/common/redis/supported_commands.h index a315a02deeec7..89e93868fc8d5 100644 --- a/source/extensions/filters/network/common/redis/supported_commands.h +++ b/source/extensions/filters/network/common/redis/supported_commands.h @@ -18,34 +18,34 @@ struct SupportedCommands { /** * @return commands which hash to a single server */ - static const std::vector& simpleCommands() { + static const absl::flat_hash_set& simpleCommands() { CONSTRUCT_ON_FIRST_USE( - std::vector, "append", "bitcount", "bitfield", "bitpos", "decr", "decrby", - "dump", "expire", "expireat", "geoadd", "geodist", "geohash", "geopos", "georadius_ro", - "georadiusbymember_ro", "get", "getbit", "getrange", "getset", "hdel", "hexists", "hget", - "hgetall", "hincrby", "hincrbyfloat", "hkeys", "hlen", "hmget", "hmset", "hscan", "hset", - "hsetnx", "hstrlen", "hvals", "incr", "incrby", "incrbyfloat", "lindex", "linsert", "llen", - "lpop", "lpush", "lpushx", "lrange", "lrem", "lset", "ltrim", "persist", "pexpire", - "pexpireat", "psetex", "pttl", "restore", "rpop", "rpush", "rpushx", "sadd", "scard", "set", - "setbit", "setex", "setnx", "setrange", "sismember", "smembers", "spop", "srandmember", - "srem", "sscan", "strlen", "ttl", "type", "zadd", "zcard", "zcount", "zincrby", "zlexcount", - "zpopmin", "zpopmax", "zrange", "zrangebylex", "zrangebyscore", "zrank", "zrem", - "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "zrevrange", "zrevrangebylex", - "zrevrangebyscore", "zrevrank", "zscan", "zscore"); + absl::flat_hash_set, "append", "bitcount", "bitfield", "bitpos", "decr", + "decrby", "dump", "expire", "expireat", "geoadd", "geodist", "geohash", "geopos", + "georadius_ro", "georadiusbymember_ro", "get", "getbit", "getrange", "getset", "hdel", + "hexists", "hget", "hgetall", "hincrby", "hincrbyfloat", "hkeys", "hlen", "hmget", "hmset", + "hscan", "hset", "hsetnx", "hstrlen", "hvals", "incr", "incrby", "incrbyfloat", "lindex", + "linsert", "llen", "lpop", "lpush", "lpushx", "lrange", "lrem", "lset", "ltrim", "persist", + "pexpire", "pexpireat", "psetex", "pttl", "restore", "rpop", "rpush", "rpushx", "sadd", + "scard", "set", "setbit", "setex", "setnx", "setrange", "sismember", "smembers", "spop", + "srandmember", "srem", "sscan", "strlen", "ttl", "type", "zadd", "zcard", "zcount", + "zincrby", "zlexcount", "zpopmin", "zpopmax", "zrange", "zrangebylex", "zrangebyscore", + "zrank", "zrem", "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "zrevrange", + "zrevrangebylex", "zrevrangebyscore", "zrevrank", "zscan", "zscore"); } /** * @return commands which hash on the fourth argument */ - static const std::vector& evalCommands() { - CONSTRUCT_ON_FIRST_USE(std::vector, "eval", "evalsha"); + static const absl::flat_hash_set& evalCommands() { + CONSTRUCT_ON_FIRST_USE(absl::flat_hash_set, "eval", "evalsha"); } /** * @return commands which are sent to multiple servers and coalesced by summing the responses */ - static const std::vector& hashMultipleSumResultCommands() { - CONSTRUCT_ON_FIRST_USE(std::vector, "del", "exists", "touch", "unlink"); + static const absl::flat_hash_set& hashMultipleSumResultCommands() { + CONSTRUCT_ON_FIRST_USE(absl::flat_hash_set, "del", "exists", "touch", "unlink"); } /** @@ -81,6 +81,10 @@ struct SupportedCommands { "zadd", "zincrby", "touch", "zpopmin", "zpopmax", "zrem", "zremrangebylex", "zremrangebyrank", "zremrangebyscore", "unlink"); } + + static bool isReadCommand(const std::string& command) { + return !writeCommands().contains(command); + } }; } // namespace Redis diff --git a/source/extensions/filters/network/common/redis/utility.cc b/source/extensions/filters/network/common/redis/utility.cc index 81f69e20b0ada..c13b9c4fb4e83 100644 --- a/source/extensions/filters/network/common/redis/utility.cc +++ b/source/extensions/filters/network/common/redis/utility.cc @@ -18,6 +18,19 @@ Redis::RespValue makeAuthCommand(const std::string& password) { return auth_command; } +ReadOnlyRequest::ReadOnlyRequest() { + std::vector values(1); + values[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + values[0].asString() = "readonly"; + type(NetworkFilters::Common::Redis::RespType::Array); + asArray().swap(values); +} + +const ReadOnlyRequest& ReadOnlyRequest::instance() { + static const ReadOnlyRequest* instance = new ReadOnlyRequest{}; + return *instance; +} + } // namespace Utility } // namespace Redis } // namespace Common diff --git a/source/extensions/filters/network/common/redis/utility.h b/source/extensions/filters/network/common/redis/utility.h index 619c470b359eb..fc8369acef458 100644 --- a/source/extensions/filters/network/common/redis/utility.h +++ b/source/extensions/filters/network/common/redis/utility.h @@ -13,6 +13,12 @@ namespace Utility { Redis::RespValue makeAuthCommand(const std::string& password); +class ReadOnlyRequest : public Redis::RespValue { +public: + ReadOnlyRequest(); + static const ReadOnlyRequest& instance(); +}; + } // namespace Utility } // namespace Redis } // namespace Common diff --git a/source/extensions/filters/network/dubbo_proxy/config.h b/source/extensions/filters/network/dubbo_proxy/config.h index c0c09967b95ab..0868acb5366e5 100644 --- a/source/extensions/filters/network/dubbo_proxy/config.h +++ b/source/extensions/filters/network/dubbo_proxy/config.h @@ -24,7 +24,7 @@ class DubboProxyFilterConfigFactory : public Common::FactoryBase< envoy::config::filter::network::dubbo_proxy::v2alpha1::DubboProxy> { public: - DubboProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().DubboProxy) {} + DubboProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().DubboProxy, true) {} private: Network::FilterFactoryCb createFilterFactoryFromProtoTyped( diff --git a/source/extensions/filters/network/dubbo_proxy/conn_manager.cc b/source/extensions/filters/network/dubbo_proxy/conn_manager.cc index b9a5f27d278f5..4546ed7463487 100644 --- a/source/extensions/filters/network/dubbo_proxy/conn_manager.cc +++ b/source/extensions/filters/network/dubbo_proxy/conn_manager.cc @@ -79,7 +79,7 @@ void ConnectionManager::onBelowWriteBufferLowWatermark() { } StreamHandler& ConnectionManager::newStream() { - ENVOY_LOG(debug, "dubbo: create the new docoder event handler"); + ENVOY_LOG(debug, "dubbo: create the new decoder event handler"); ActiveMessagePtr new_message(std::make_unique(*this)); new_message->createFilterChain(); diff --git a/source/extensions/filters/network/echo/config.cc b/source/extensions/filters/network/echo/config.cc index f4b43736ea22d..f497c57eaf878 100644 --- a/source/extensions/filters/network/echo/config.cc +++ b/source/extensions/filters/network/echo/config.cc @@ -35,6 +35,7 @@ class EchoConfigFactory : public Server::Configuration::NamedNetworkFilterConfig } std::string name() override { return NetworkFilterNames::get().Echo; } + bool isTerminalFilter() override { return true; } }; /** diff --git a/source/extensions/filters/network/http_connection_manager/BUILD b/source/extensions/filters/network/http_connection_manager/BUILD index 1f5474a651e2f..6f1c4ce09a1e8 100644 --- a/source/extensions/filters/network/http_connection_manager/BUILD +++ b/source/extensions/filters/network/http_connection_manager/BUILD @@ -38,6 +38,7 @@ envoy_cc_library( "//source/common/protobuf:utility_lib", "//source/common/router:rds_lib", "//source/common/router:scoped_rds_lib", + "//source/common/runtime:runtime_lib", "//source/extensions/filters/network:well_known_names", "//source/extensions/filters/network/common:factory_base_lib", ], diff --git a/source/extensions/filters/network/http_connection_manager/config.cc b/source/extensions/filters/network/http_connection_manager/config.cc index 02feb699471c1..7c9c817e680a7 100644 --- a/source/extensions/filters/network/http_connection_manager/config.cc +++ b/source/extensions/filters/network/http_connection_manager/config.cc @@ -23,6 +23,7 @@ #include "common/protobuf/utility.h" #include "common/router/rds_impl.h" #include "common/router/scoped_rds.h" +#include "common/runtime/runtime_impl.h" namespace Envoy { namespace Extensions { @@ -149,7 +150,11 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( http1_settings_(Http::Utility::parseHttp1Settings(config.http_protocol_options())), max_request_headers_kb_(PROTOBUF_GET_WRAPPED_OR_DEFAULT( config, max_request_headers_kb, Http::DEFAULT_MAX_REQUEST_HEADERS_KB)), - idle_timeout_(PROTOBUF_GET_OPTIONAL_MS(config, idle_timeout)), + max_request_headers_count_(PROTOBUF_GET_WRAPPED_OR_DEFAULT( + config.common_http_protocol_options(), max_headers_count, + context.runtime().snapshot().getInteger(Http::MaxRequestHeadersCountOverrideKey, + Http::DEFAULT_MAX_HEADERS_COUNT))), + idle_timeout_(PROTOBUF_GET_OPTIONAL_MS(config.common_http_protocol_options(), idle_timeout)), stream_idle_timeout_( PROTOBUF_GET_MS_OR_DEFAULT(config, stream_idle_timeout, StreamIdleTimeoutMs)), request_timeout_(PROTOBUF_GET_MS_OR_DEFAULT(config, request_timeout, RequestTimeoutMs)), @@ -172,6 +177,12 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( #endif ))), merge_slashes_(config.merge_slashes()) { + // If idle_timeout_ was not configured in common_http_protocol_options, use value in deprecated + // idle_timeout field. + // TODO(asraa): Remove when idle_timeout is removed. + if (!idle_timeout_) { + idle_timeout_ = PROTOBUF_GET_OPTIONAL_MS(config, idle_timeout); + } // If scoped RDS is enabled, avoid creating a route config provider. Route config providers will // be managed by the scoped routing logic instead. switch (config.route_specifier_case()) { @@ -266,8 +277,9 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( envoy::type::FractionalPercent random_sampling; // TODO: Random sampling historically was an integer and default to out of 10,000. We should // deprecate that and move to a straight fractional percent config. - random_sampling.set_numerator( - tracing_config.has_random_sampling() ? tracing_config.random_sampling().value() : 10000); + uint64_t random_sampling_numerator{PROTOBUF_PERCENT_TO_ROUNDED_INTEGER_OR_DEFAULT( + tracing_config, random_sampling, 10000, 10000)}; + random_sampling.set_numerator(random_sampling_numerator); random_sampling.set_denominator(envoy::type::FractionalPercent::TEN_THOUSAND); envoy::type::FractionalPercent overall_sampling; overall_sampling.set_numerator( @@ -307,7 +319,10 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( const auto& filters = config.http_filters(); for (int32_t i = 0; i < filters.size(); i++) { - processFilter(filters[i], i, "http", filter_factories_); + bool is_terminal = false; + processFilter(filters[i], i, "http", filter_factories_, is_terminal); + Config::Utility::validateTerminalFilters(filters[i].name(), "http", is_terminal, + i == filters.size() - 1); } for (const auto& upgrade_config : config.upgrade_configs()) { @@ -320,8 +335,12 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( } if (!upgrade_config.filters().empty()) { std::unique_ptr factories = std::make_unique(); - for (int32_t i = 0; i < upgrade_config.filters().size(); i++) { - processFilter(upgrade_config.filters(i), i, name, *factories); + for (int32_t j = 0; j < upgrade_config.filters().size(); j++) { + bool is_terminal = false; + processFilter(upgrade_config.filters(j), j, name, *factories, is_terminal); + Config::Utility::validateTerminalFilters(upgrade_config.filters(j).name(), "http upgrade", + is_terminal, + j == upgrade_config.filters().size() - 1); } upgrade_filter_factories_.emplace( std::make_pair(name, FilterConfig{std::move(factories), enabled})); @@ -335,7 +354,8 @@ HttpConnectionManagerConfig::HttpConnectionManagerConfig( void HttpConnectionManagerConfig::processFilter( const envoy::config::filter::network::http_connection_manager::v2::HttpFilter& proto_config, - int i, absl::string_view prefix, std::list& filter_factories) { + int i, absl::string_view prefix, std::list& filter_factories, + bool& is_terminal) { const std::string& string_name = proto_config.name(); ENVOY_LOG(debug, " {} filter #{}", prefix, i); @@ -358,6 +378,7 @@ void HttpConnectionManagerConfig::processFilter( proto_config, context_.messageValidationVisitor(), factory); callback = factory.createFilterFactoryFromProto(*message, stats_prefix_, context_); } + is_terminal = factory.isTerminalFilter(); filter_factories.push_back(callback); } @@ -368,14 +389,16 @@ HttpConnectionManagerConfig::createCodec(Network::Connection& connection, switch (codec_type_) { case CodecType::HTTP1: return std::make_unique( - connection, context_.scope(), callbacks, http1_settings_, maxRequestHeadersKb()); + connection, context_.scope(), callbacks, http1_settings_, maxRequestHeadersKb(), + maxRequestHeadersCount()); case CodecType::HTTP2: return std::make_unique( - connection, callbacks, context_.scope(), http2_settings_, maxRequestHeadersKb()); + connection, callbacks, context_.scope(), http2_settings_, maxRequestHeadersKb(), + maxRequestHeadersCount()); case CodecType::AUTO: - return Http::ConnectionManagerUtility::autoCreateCodec(connection, data, callbacks, - context_.scope(), http1_settings_, - http2_settings_, maxRequestHeadersKb()); + return Http::ConnectionManagerUtility::autoCreateCodec( + connection, data, callbacks, context_.scope(), http1_settings_, http2_settings_, + maxRequestHeadersKb(), maxRequestHeadersCount()); } NOT_REACHED_GCOVR_EXCL_LINE; diff --git a/source/extensions/filters/network/http_connection_manager/config.h b/source/extensions/filters/network/http_connection_manager/config.h index 6cd895503aa6c..2b7f7190a9ed6 100644 --- a/source/extensions/filters/network/http_connection_manager/config.h +++ b/source/extensions/filters/network/http_connection_manager/config.h @@ -33,7 +33,7 @@ class HttpConnectionManagerFilterConfigFactory envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager> { public: HttpConnectionManagerFilterConfigFactory() - : FactoryBase(NetworkFilterNames::get().HttpConnectionManager) {} + : FactoryBase(NetworkFilterNames::get().HttpConnectionManager, true) {} // NamedNetworkFilterConfigFactory Network::FilterFactoryCb @@ -106,6 +106,7 @@ class HttpConnectionManagerConfig : Logger::Loggable, bool generateRequestId() override { return generate_request_id_; } bool preserveExternalRequestId() const override { return preserve_external_request_id_; } uint32_t maxRequestHeadersKb() const override { return max_request_headers_kb_; } + uint32_t maxRequestHeadersCount() const override { return max_request_headers_count_; } absl::optional idleTimeout() const override { return idle_timeout_; } std::chrono::milliseconds streamIdleTimeout() const override { return stream_idle_timeout_; } std::chrono::milliseconds requestTimeout() const override { return request_timeout_; } @@ -145,7 +146,7 @@ class HttpConnectionManagerConfig : Logger::Loggable, enum class CodecType { HTTP1, HTTP2, AUTO }; void processFilter( const envoy::config::filter::network::http_connection_manager::v2::HttpFilter& proto_config, - int i, absl::string_view prefix, FilterFactoriesList& filter_factories); + int i, absl::string_view prefix, FilterFactoriesList& filter_factories, bool& is_terminal); Server::Configuration::FactoryContext& context_; FilterFactoriesList filter_factories_; @@ -170,6 +171,7 @@ class HttpConnectionManagerConfig : Logger::Loggable, Http::TracingConnectionManagerConfigPtr tracing_config_; absl::optional user_agent_; const uint32_t max_request_headers_kb_; + const uint32_t max_request_headers_count_; absl::optional idle_timeout_; std::chrono::milliseconds stream_idle_timeout_; std::chrono::milliseconds request_timeout_; diff --git a/source/extensions/filters/network/kafka/protocol/generator.py b/source/extensions/filters/network/kafka/protocol/generator.py index d407eca1ce61e..f72e562b024f7 100755 --- a/source/extensions/filters/network/kafka/protocol/generator.py +++ b/source/extensions/filters/network/kafka/protocol/generator.py @@ -512,6 +512,6 @@ def get_template(template): import sys # Templates are resolved relatively to main start script, due to main & test templates being # stored in different directories. - env = jinja2.Environment( - loader=jinja2.FileSystemLoader(searchpath=os.path.dirname(os.path.abspath(sys.argv[0])))) + env = jinja2.Environment(loader=jinja2.FileSystemLoader( + searchpath=os.path.dirname(os.path.abspath(sys.argv[0])))) return env.get_template(template) diff --git a/source/extensions/filters/network/kafka/serialization/generator.py b/source/extensions/filters/network/kafka/serialization/generator.py index 574aa3d66de3e..3eaafaf6d0383 100755 --- a/source/extensions/filters/network/kafka/serialization/generator.py +++ b/source/extensions/filters/network/kafka/serialization/generator.py @@ -52,6 +52,6 @@ def get_template(template): import sys # Templates are resolved relatively to main start script, due to main & test templates being # stored in different directories. - env = jinja2.Environment( - loader=jinja2.FileSystemLoader(searchpath=os.path.dirname(os.path.abspath(sys.argv[0])))) + env = jinja2.Environment(loader=jinja2.FileSystemLoader( + searchpath=os.path.dirname(os.path.abspath(sys.argv[0])))) return env.get_template(template) diff --git a/source/extensions/filters/network/rbac/rbac_filter.cc b/source/extensions/filters/network/rbac/rbac_filter.cc index 0c5008c88b1d8..9bc369f246dcd 100644 --- a/source/extensions/filters/network/rbac/rbac_filter.cc +++ b/source/extensions/filters/network/rbac/rbac_filter.cc @@ -77,11 +77,10 @@ void RoleBasedAccessControlFilter::setDynamicMetadata(std::string shadow_engine_ EngineResult RoleBasedAccessControlFilter::checkEngine(Filters::Common::RBAC::EnforcementMode mode) { - const auto& engine = config_->engine(mode); - if (engine.has_value()) { + const auto engine = config_->engine(mode); + if (engine != nullptr) { std::string effective_policy_id; - if (engine->allowed(callbacks_->connection(), - callbacks_->connection().streamInfo().dynamicMetadata(), + if (engine->allowed(callbacks_->connection(), callbacks_->connection().streamInfo(), &effective_policy_id)) { if (mode == Filters::Common::RBAC::EnforcementMode::Shadow) { ENVOY_LOG(debug, "shadow allowed"); diff --git a/source/extensions/filters/network/rbac/rbac_filter.h b/source/extensions/filters/network/rbac/rbac_filter.h index b548424c63de0..a42214004c5c6 100644 --- a/source/extensions/filters/network/rbac/rbac_filter.h +++ b/source/extensions/filters/network/rbac/rbac_filter.h @@ -26,9 +26,10 @@ class RoleBasedAccessControlFilterConfig { Filters::Common::RBAC::RoleBasedAccessControlFilterStats& stats() { return stats_; } - const absl::optional& + const Filters::Common::RBAC::RoleBasedAccessControlEngineImpl* engine(Filters::Common::RBAC::EnforcementMode mode) const { - return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_ : shadow_engine_; + return mode == Filters::Common::RBAC::EnforcementMode::Enforced ? engine_.get() + : shadow_engine_.get(); } envoy::config::filter::network::rbac::v2::RBAC::EnforcementType enforcementType() const { @@ -38,8 +39,8 @@ class RoleBasedAccessControlFilterConfig { private: Filters::Common::RBAC::RoleBasedAccessControlFilterStats stats_; - const absl::optional engine_; - const absl::optional shadow_engine_; + std::unique_ptr engine_; + std::unique_ptr shadow_engine_; const envoy::config::filter::network::rbac::v2::RBAC::EnforcementType enforcement_type_; }; diff --git a/source/extensions/filters/network/redis_proxy/config.h b/source/extensions/filters/network/redis_proxy/config.h index 6a6bf7914e8b6..37d6a7c0203c2 100644 --- a/source/extensions/filters/network/redis_proxy/config.h +++ b/source/extensions/filters/network/redis_proxy/config.h @@ -41,7 +41,7 @@ class RedisProxyFilterConfigFactory envoy::config::filter::network::redis_proxy::v2::RedisProxy, envoy::config::filter::network::redis_proxy::v2::RedisProtocolOptions> { public: - RedisProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().RedisProxy) {} + RedisProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().RedisProxy, true) {} // NamedNetworkFilterConfigFactory Network::FilterFactoryCb diff --git a/source/extensions/filters/network/redis_proxy/conn_pool_impl.cc b/source/extensions/filters/network/redis_proxy/conn_pool_impl.cc index 44f2634aa89a9..2e1414e0252c9 100644 --- a/source/extensions/filters/network/redis_proxy/conn_pool_impl.cc +++ b/source/extensions/filters/network/redis_proxy/conn_pool_impl.cc @@ -9,7 +9,6 @@ #include "common/stats/utility.h" #include "extensions/filters/network/redis_proxy/config.h" -#include "extensions/filters/network/well_known_names.h" namespace Envoy { namespace Extensions { @@ -198,11 +197,19 @@ InstanceImpl::ThreadLocalPool::threadLocalActiveClient(Upstream::HostConstShared client->host_ = host; client->redis_client_ = parent_.client_factory_.create(host, dispatcher_, parent_.config_); client->redis_client_->addConnectionCallbacks(*client); + // TODO(hyang): should the auth command and readonly command be moved to the factory method? if (!auth_password_.empty()) { // Send an AUTH command to the upstream server. client->redis_client_->makeRequest(Common::Redis::Utility::makeAuthCommand(auth_password_), null_pool_callbacks); } + // Any connection to replica requires the READONLY command in order to perform read. + // Also the READONLY command is a no-opt for the master. + // We only need to send the READONLY command iff it's possible that the host is a replica. + if (parent_.config_.readPolicy() != Common::Redis::Client::ReadPolicy::Master) { + client->redis_client_->makeRequest(Common::Redis::Utility::ReadOnlyRequest::instance(), + null_pool_callbacks); + } } return client; } @@ -218,8 +225,8 @@ InstanceImpl::ThreadLocalPool::makeRequest(const std::string& key, } const bool use_crc16 = is_redis_cluster_; - Clusters::Redis::RedisLoadBalancerContext lb_context(key, parent_.config_.enableHashtagging(), - use_crc16); + Clusters::Redis::RedisLoadBalancerContextImpl lb_context(key, parent_.config_.enableHashtagging(), + use_crc16, request); Upstream::HostConstSharedPtr host = cluster_->loadBalancer().chooseHost(&lb_context); if (!host) { return nullptr; diff --git a/source/extensions/filters/network/redis_proxy/router_impl.cc b/source/extensions/filters/network/redis_proxy/router_impl.cc index 7fd51f52005ac..6cfa590220414 100644 --- a/source/extensions/filters/network/redis_proxy/router_impl.cc +++ b/source/extensions/filters/network/redis_proxy/router_impl.cc @@ -19,8 +19,7 @@ bool MirrorPolicyImpl::shouldMirror(const std::string& command) const { return false; } - if (exclude_read_commands_ && Common::Redis::SupportedCommands::writeCommands().find(command) == - Common::Redis::SupportedCommands::writeCommands().end()) { + if (exclude_read_commands_ && Common::Redis::SupportedCommands::isReadCommand(command)) { return false; } diff --git a/source/extensions/filters/network/tcp_proxy/config.h b/source/extensions/filters/network/tcp_proxy/config.h index e5664ed45a7f5..81d494cb3d5fd 100644 --- a/source/extensions/filters/network/tcp_proxy/config.h +++ b/source/extensions/filters/network/tcp_proxy/config.h @@ -16,7 +16,7 @@ namespace TcpProxy { class ConfigFactory : public Common::FactoryBase { public: - ConfigFactory() : FactoryBase(NetworkFilterNames::get().TcpProxy) {} + ConfigFactory() : FactoryBase(NetworkFilterNames::get().TcpProxy, true) {} // NamedNetworkFilterConfigFactory Network::FilterFactoryCb diff --git a/source/extensions/filters/network/thrift_proxy/config.h b/source/extensions/filters/network/thrift_proxy/config.h index c71e1a2ed1c7e..b51a96ee664a5 100644 --- a/source/extensions/filters/network/thrift_proxy/config.h +++ b/source/extensions/filters/network/thrift_proxy/config.h @@ -43,7 +43,7 @@ class ThriftProxyFilterConfigFactory envoy::config::filter::network::thrift_proxy::v2alpha1::ThriftProxy, envoy::config::filter::network::thrift_proxy::v2alpha1::ThriftProtocolOptions> { public: - ThriftProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().ThriftProxy) {} + ThriftProxyFilterConfigFactory() : FactoryBase(NetworkFilterNames::get().ThriftProxy, true) {} private: Network::FilterFactoryCb createFilterFactoryFromProtoTyped( diff --git a/source/extensions/health_checkers/redis/redis.h b/source/extensions/health_checkers/redis/redis.h index 346b27e9b951a..4c7cc320e01f2 100644 --- a/source/extensions/health_checkers/redis/redis.h +++ b/source/extensions/health_checkers/redis/redis.h @@ -68,6 +68,9 @@ class RedisHealthChecker : public Upstream::HealthCheckerImplBase { bool enableRedirection() const override { return true; } // Redirection errors are treated as check successes. + NetworkFilters::Common::Redis::Client::ReadPolicy readPolicy() const override { + return NetworkFilters::Common::Redis::Client::ReadPolicy::Master; + } // Batching unsigned int maxBufferSizeBeforeFlush() const override { diff --git a/source/extensions/wasm/config.cc b/source/extensions/wasm/config.cc index 73ce1ad3217fe..e88c4674a576e 100644 --- a/source/extensions/wasm/config.cc +++ b/source/extensions/wasm/config.cc @@ -21,10 +21,10 @@ Server::WasmSharedPtr WasmFactory::createWasm(const envoy::config::wasm::v2::Was // Create a base WASM to verify that the code loads before setting/cloning the for the individual // threads. auto root_id = config.root_id(); - auto base_wasm = Common::Wasm::createWasm(config.vm_id(), config.vm_config(), root_id, - context.clusterManager(), context.dispatcher(), - context.api(), context.scope(), context.localInfo(), - nullptr /* listener_metadata */, context.owned_scope()); + auto base_wasm = Common::Wasm::createWasm( + config.vm_id(), config.vm_config(), root_id, context.clusterManager(), context.dispatcher(), + context.api(), context.scope(), Common::Wasm::PluginDirection::Unspecified, + context.localInfo(), nullptr /* listener_metadata */, context.owned_scope()); if (config.singleton()) { // Return the WASM VM which will be stored as a singleton by the Server. auto root_context = base_wasm->start(root_id, config.vm_config().configuration()); diff --git a/source/server/config_validation/cluster_manager.cc b/source/server/config_validation/cluster_manager.cc index 8aee20745977c..c5fdc16db2761 100644 --- a/source/server/config_validation/cluster_manager.cc +++ b/source/server/config_validation/cluster_manager.cc @@ -9,7 +9,7 @@ ClusterManagerPtr ValidationClusterManagerFactory::clusterManagerFromProto( const envoy::config::bootstrap::v2::Bootstrap& bootstrap) { return std::make_unique( bootstrap, *this, stats_, tls_, runtime_, random_, local_info_, log_manager_, - main_thread_dispatcher_, admin_, validation_visitor_, api_, http_context_, time_system_); + main_thread_dispatcher_, admin_, validation_context_, api_, http_context_, time_system_); } CdsApiPtr @@ -26,10 +26,10 @@ ValidationClusterManager::ValidationClusterManager( Stats::Store& stats, ThreadLocal::Instance& tls, Runtime::Loader& runtime, Runtime::RandomGenerator& random, const LocalInfo::LocalInfo& local_info, AccessLog::AccessLogManager& log_manager, Event::Dispatcher& main_thread_dispatcher, - Server::Admin& admin, ProtobufMessage::ValidationVisitor& validation_visitor, Api::Api& api, + Server::Admin& admin, ProtobufMessage::ValidationContext& validation_context, Api::Api& api, Http::Context& http_context, Event::TimeSystem& time_system) : ClusterManagerImpl(bootstrap, factory, stats, tls, runtime, random, local_info, log_manager, - main_thread_dispatcher, admin, validation_visitor, api, http_context), + main_thread_dispatcher, admin, validation_context, api, http_context), async_client_(api, time_system) {} Http::ConnectionPool::Instance* diff --git a/source/server/config_validation/cluster_manager.h b/source/server/config_validation/cluster_manager.h index f4b4ce40bd9bb..5a7f299554750 100644 --- a/source/server/config_validation/cluster_manager.h +++ b/source/server/config_validation/cluster_manager.h @@ -24,12 +24,12 @@ class ValidationClusterManagerFactory : public ProdClusterManagerFactory { ThreadLocal::Instance& tls, Runtime::RandomGenerator& random, Network::DnsResolverSharedPtr dns_resolver, Ssl::ContextManager& ssl_context_manager, Event::Dispatcher& main_thread_dispatcher, const LocalInfo::LocalInfo& local_info, - Secret::SecretManager& secret_manager, ProtobufMessage::ValidationVisitor& validation_visitor, + Secret::SecretManager& secret_manager, ProtobufMessage::ValidationContext& validation_context, Api::Api& api, Http::Context& http_context, AccessLog::AccessLogManager& log_manager, Singleton::Manager& singleton_manager, Event::TimeSystem& time_system) : ProdClusterManagerFactory(admin, runtime, stats, tls, random, dns_resolver, ssl_context_manager, main_thread_dispatcher, local_info, - secret_manager, validation_visitor, api, http_context, + secret_manager, validation_context, api, http_context, log_manager, singleton_manager), time_system_(time_system) {} @@ -56,7 +56,7 @@ class ValidationClusterManager : public ClusterManagerImpl { Runtime::RandomGenerator& random, const LocalInfo::LocalInfo& local_info, AccessLog::AccessLogManager& log_manager, Event::Dispatcher& dispatcher, Server::Admin& admin, - ProtobufMessage::ValidationVisitor& validation_visitor, Api::Api& api, + ProtobufMessage::ValidationContext& validation_context, Api::Api& api, Http::Context& http_context, Event::TimeSystem& time_system); Http::ConnectionPool::Instance* httpConnPoolForCluster(const std::string&, ResourcePriority, diff --git a/source/server/config_validation/server.cc b/source/server/config_validation/server.cc index 9e32616d7124a..f0f63045d6044 100644 --- a/source/server/config_validation/server.cc +++ b/source/server/config_validation/server.cc @@ -43,7 +43,9 @@ ValidationInstance::ValidationInstance(const Options& options, Event::TimeSystem ComponentFactory& component_factory, Thread::ThreadFactory& thread_factory, Filesystem::Instance& file_system) - : options_(options), stats_store_(store), + : options_(options), validation_context_(options_.allowUnknownStaticFields(), + !options.rejectUnknownDynamicFields()), + stats_store_(store), api_(new Api::ValidationImpl(thread_factory, store, time_system, file_system)), dispatcher_(api_->allocateDispatcher()), singleton_manager_(new Singleton::ManagerImpl(api_->threadFactory())), @@ -75,7 +77,8 @@ void ValidationInstance::initialize(const Options& options, // be ready to serve, then the config has passed validation. // Handle configuration that needs to take place prior to the main configuration load. envoy::config::bootstrap::v2::Bootstrap bootstrap; - InstanceUtil::loadBootstrapConfig(bootstrap, options, messageValidationVisitor(), *api_); + InstanceUtil::loadBootstrapConfig(bootstrap, options, + messageValidationContext().staticValidationVisitor(), *api_); Config::Utility::createTagProducer(bootstrap); @@ -86,9 +89,9 @@ void ValidationInstance::initialize(const Options& options, options.serviceNodeName()); Configuration::InitialImpl initial_config(bootstrap); - overload_manager_ = std::make_unique(dispatcher(), stats(), threadLocal(), - bootstrap.overload_manager(), - messageValidationVisitor(), *api_); + overload_manager_ = std::make_unique( + dispatcher(), stats(), threadLocal(), bootstrap.overload_manager(), + messageValidationContext().staticValidationVisitor(), *api_); listener_manager_ = std::make_unique(*this, *this, *this, false); thread_local_.registerThread(*dispatcher_, true); runtime_loader_ = component_factory.createRuntime(*this, initial_config); @@ -97,7 +100,7 @@ void ValidationInstance::initialize(const Options& options, createContextManager(Ssl::ContextManagerFactory::name(), api_->timeSource()); cluster_manager_factory_ = std::make_unique( admin(), runtime(), stats(), threadLocal(), random(), dnsResolver(), sslContextManager(), - dispatcher(), localInfo(), *secret_manager_, messageValidationVisitor(), *api_, http_context_, + dispatcher(), localInfo(), *secret_manager_, messageValidationContext(), *api_, http_context_, accessLogManager(), singletonManager(), time_system_); config_.initialize(bootstrap, *this, *cluster_manager_factory_); http_context_.setTracer(config_.httpTracer()); diff --git a/source/server/config_validation/server.h b/source/server/config_validation/server.h index 2a710cd23675f..bbd350b325f10 100644 --- a/source/server/config_validation/server.h +++ b/source/server/config_validation/server.h @@ -104,15 +104,15 @@ class ValidationInstance : Logger::Loggable, return config_.statsFlushInterval(); } - ProtobufMessage::ValidationVisitor& messageValidationVisitor() override { - return options_.allowUnknownFields() ? ProtobufMessage::getStrictValidationVisitor() - : ProtobufMessage::getNullValidationVisitor(); + ProtobufMessage::ValidationContext& messageValidationContext() override { + return validation_context_; } // Server::ListenerComponentFactory LdsApiPtr createLdsApi(const envoy::api::v2::core::ConfigSource& lds_config) override { return std::make_unique(lds_config, clusterManager(), initManager(), stats(), - listenerManager(), messageValidationVisitor()); + listenerManager(), + messageValidationContext().dynamicValidationVisitor()); } std::vector createNetworkFilterFactoryList( const Protobuf::RepeatedPtrField& filters, @@ -173,6 +173,7 @@ class ValidationInstance : Logger::Loggable, // - There may be active connections referencing it. std::unique_ptr secret_manager_; const Options& options_; + ProtobufMessage::ProdValidationContextImpl validation_context_; Stats::IsolatedStoreImpl& stats_store_; ThreadLocal::InstanceImpl thread_local_; Api::ApiPtr api_; diff --git a/source/server/configuration_impl.cc b/source/server/configuration_impl.cc index 20c87a41e0391..da83272b53924 100644 --- a/source/server/configuration_impl.cc +++ b/source/server/configuration_impl.cc @@ -108,7 +108,7 @@ void MainImpl::initializeTracers(const envoy::config::trace::v2::Tracing& config // Now see if there is a factory that will accept the config. auto& factory = Config::Utility::getAndCheckFactory(type); ProtobufTypes::MessagePtr message = Config::Utility::translateToFactoryConfig( - configuration.http(), server.messageValidationVisitor(), factory); + configuration.http(), server.messageValidationContext().staticValidationVisitor(), factory); http_tracer_ = factory.createHttpTracer(*message, server); } @@ -120,7 +120,7 @@ void MainImpl::initializeStatsSinks(const envoy::config::bootstrap::v2::Bootstra // Generate factory and translate stats sink custom config auto& factory = Config::Utility::getAndCheckFactory(sink_object.name()); ProtobufTypes::MessagePtr message = Config::Utility::translateToFactoryConfig( - sink_object, server.messageValidationVisitor(), factory); + sink_object, server.messageValidationContext().staticValidationVisitor(), factory); stats_sinks_.emplace_back(factory.createStatsSink(*message, server)); } diff --git a/source/server/http/admin.cc b/source/server/http/admin.cc index 5faacc1eb76d6..dd2a28c361332 100644 --- a/source/server/http/admin.cc +++ b/source/server/http/admin.cc @@ -833,6 +833,12 @@ std::string PrometheusStatsFormatter::formattedTags(const std::vector 1 && extractedName[0] == '_') { + return sanitizeName(extractedName.substr(1)); + } // Add namespacing prefix to avoid conflicts, as per best practice: // https://prometheus.io/docs/practices/naming/#metric-names // Also, naming conventions on https://prometheus.io/docs/concepts/data_model/ @@ -1245,7 +1251,7 @@ Http::ServerConnectionPtr AdminImpl::createCodec(Network::Connection& connection Http::ServerConnectionCallbacks& callbacks) { return Http::ConnectionManagerUtility::autoCreateCodec( connection, data, callbacks, server_.stats(), Http::Http1Settings(), Http::Http2Settings(), - maxRequestHeadersKb()); + maxRequestHeadersKb(), maxRequestHeadersCount()); } bool AdminImpl::createNetworkFilterChain(Network::Connection& connection, diff --git a/source/server/http/admin.h b/source/server/http/admin.h index e3806f58e1888..09743702dc0c4 100644 --- a/source/server/http/admin.h +++ b/source/server/http/admin.h @@ -113,6 +113,7 @@ class AdminImpl : public Admin, bool preserveExternalRequestId() const override { return false; } absl::optional idleTimeout() const override { return idle_timeout_; } uint32_t maxRequestHeadersKb() const override { return max_request_headers_kb_; } + uint32_t maxRequestHeadersCount() const override { return max_request_headers_count_; } std::chrono::milliseconds streamIdleTimeout() const override { return {}; } std::chrono::milliseconds requestTimeout() const override { return {}; } std::chrono::milliseconds delayedCloseTimeout() const override { return {}; } @@ -359,6 +360,7 @@ class AdminImpl : public Admin, NullScopedRouteConfigProvider scoped_route_config_provider_; std::list handlers_; const uint32_t max_request_headers_kb_{Http::DEFAULT_MAX_REQUEST_HEADERS_KB}; + const uint32_t max_request_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; absl::optional idle_timeout_; absl::optional user_agent_; Http::SlowDateProviderImpl date_provider_; diff --git a/source/server/listener_manager_impl.cc b/source/server/listener_manager_impl.cc index 824c42ec97ead..0f2ec74ee62ba 100644 --- a/source/server/listener_manager_impl.cc +++ b/source/server/listener_manager_impl.cc @@ -64,6 +64,10 @@ std::vector ProdListenerComponentFactory::createNetwor auto& factory = Config::Utility::getAndCheckFactory( string_name); + + Config::Utility::validateTerminalFilters(filters[i].name(), "network", + factory.isTerminalFilter(), i == filters.size() - 1); + Network::FilterFactoryCb callback; if (Config::Utility::allowDeprecatedV1Config(context.runtime(), *filter_config)) { callback = factory.createFilterFactory(*filter_config->getObject("value", true), context); @@ -183,8 +187,9 @@ ProdListenerComponentFactory::createDrainManager(envoy::api::v2::Listener::Drain } ListenerImpl::ListenerImpl(const envoy::api::v2::Listener& config, const std::string& version_info, - ListenerManagerImpl& parent, const std::string& name, bool modifiable, - bool workers_started, uint64_t hash) + ListenerManagerImpl& parent, const std::string& name, bool added_via_api, + bool workers_started, uint64_t hash, + ProtobufMessage::ValidationVisitor& validation_visitor) : parent_(parent), address_(Network::Address::resolveProtoAddress(config.address())), filter_chain_manager_(address_), socket_type_(Network::Utility::protobufAddressSocketType(config.address())), @@ -196,8 +201,8 @@ ListenerImpl::ListenerImpl(const envoy::api::v2::Listener& config, const std::st PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, use_original_dst, false)), per_connection_buffer_limit_bytes_( PROTOBUF_GET_WRAPPED_OR_DEFAULT(config, per_connection_buffer_limit_bytes, 1024 * 1024)), - listener_tag_(parent_.factory_.nextListenerTag()), name_(name), modifiable_(modifiable), - workers_started_(workers_started), hash_(hash), + listener_tag_(parent_.factory_.nextListenerTag()), name_(name), added_via_api_(added_via_api), + workers_started_(workers_started), hash_(hash), validation_visitor_(validation_visitor), dynamic_init_manager_(fmt::format("Listener {}", name)), init_watcher_(std::make_unique( "ListenerImpl", [this] { parent_.onListenerWarmed(*this); })), @@ -280,8 +285,7 @@ ListenerImpl::ListenerImpl(const envoy::api::v2::Listener& config, const std::st parent_.server_.admin(), parent_.server_.sslContextManager(), *listener_scope_, parent_.server_.clusterManager(), parent_.server_.localInfo(), parent_.server_.dispatcher(), parent_.server_.random(), parent_.server_.stats(), parent_.server_.singletonManager(), - parent_.server_.threadLocal(), parent_.server_.messageValidationVisitor(), - parent_.server_.api()); + parent_.server_.threadLocal(), validation_visitor, parent_.server_.api()); factory_context.setInitManager(initManager()); ListenerFilterChainFactoryBuilder builder(*this, factory_context); filter_chain_manager_.addFilterChain(config.filter_chains(), builder); @@ -484,7 +488,7 @@ ListenerManagerStats ListenerManagerImpl::generateStats(Stats::Scope& scope) { } bool ListenerManagerImpl::addOrUpdateListener(const envoy::api::v2::Listener& config, - const std::string& version_info, bool modifiable) { + const std::string& version_info, bool added_via_api) { std::string name; if (!config.name().empty()) { name = config.name(); @@ -507,8 +511,10 @@ bool ListenerManagerImpl::addOrUpdateListener(const envoy::api::v2::Listener& co return false; } - ListenerImplPtr new_listener( - new ListenerImpl(config, version_info, *this, name, modifiable, workers_started_, hash)); + ListenerImplPtr new_listener(new ListenerImpl( + config, version_info, *this, name, added_via_api, workers_started_, hash, + added_via_api ? server_.messageValidationContext().dynamicValidationVisitor() + : server_.messageValidationContext().staticValidationVisitor())); ListenerImpl& new_listener_ref = *new_listener; // We mandate that a listener with the same name must have the same configured address. This diff --git a/source/server/listener_manager_impl.h b/source/server/listener_manager_impl.h index 9177a0ec03af2..1197ac82a9beb 100644 --- a/source/server/listener_manager_impl.h +++ b/source/server/listener_manager_impl.h @@ -60,9 +60,9 @@ class ProdListenerComponentFactory : public ListenerComponentFactory, // Server::ListenerComponentFactory LdsApiPtr createLdsApi(const envoy::api::v2::core::ConfigSource& lds_config) override { - return std::make_unique(lds_config, server_.clusterManager(), server_.initManager(), - server_.stats(), server_.listenerManager(), - server_.messageValidationVisitor()); + return std::make_unique( + lds_config, server_.clusterManager(), server_.initManager(), server_.stats(), + server_.listenerManager(), server_.messageValidationContext().dynamicValidationVisitor()); } std::vector createNetworkFilterFactoryList( const Protobuf::RepeatedPtrField& filters, @@ -126,7 +126,7 @@ class ListenerManagerImpl : public ListenerManager, Logger::Loggable admin_address_path("", "admin-address-path", "Admin address path", false, "", "string", cmd); @@ -104,7 +111,7 @@ OptionsImpl::OptionsImpl(int argc, const char* const* argv, TCLAP::ValueArg use_libevent_buffer("", "use-libevent-buffers", "Use the original libevent buffer implementation", - false, true, "bool", cmd); + false, false, "bool", cmd); cmd.setExceptionHandling(false); try { @@ -181,7 +188,13 @@ OptionsImpl::OptionsImpl(int argc, const char* const* argv, config_path_ = config_path.getValue(); config_yaml_ = config_yaml.getValue(); - allow_unknown_fields_ = allow_unknown_fields.getValue(); + if (allow_unknown_fields.getValue()) { + ENVOY_LOG(warn, + "--allow-unknown-fields is deprecated, use --allow-unknown-static-fields instead."); + } + allow_unknown_static_fields_ = + allow_unknown_static_fields.getValue() || allow_unknown_fields.getValue(); + reject_unknown_dynamic_fields_ = reject_unknown_dynamic_fields.getValue(); admin_address_path_ = admin_address_path.getValue(); log_path_ = log_path.getValue(); restart_epoch_ = restart_epoch.getValue(); @@ -241,7 +254,8 @@ Server::CommandLineOptionsPtr OptionsImpl::toCommandLineOptions() const { command_line_options->set_concurrency(concurrency()); command_line_options->set_config_path(configPath()); command_line_options->set_config_yaml(configYaml()); - command_line_options->set_allow_unknown_fields(allow_unknown_fields_); + command_line_options->set_allow_unknown_static_fields(allow_unknown_static_fields_); + command_line_options->set_reject_unknown_dynamic_fields(reject_unknown_dynamic_fields_); command_line_options->set_admin_address_path(adminAddressPath()); command_line_options->set_component_log_level(component_log_level_str_); command_line_options->set_log_level(spdlog::level::to_string_view(logLevel()).data(), diff --git a/source/server/options_impl.h b/source/server/options_impl.h index e9663953aa996..7fea3a2546a14 100644 --- a/source/server/options_impl.h +++ b/source/server/options_impl.h @@ -75,6 +75,12 @@ class OptionsImpl : public Server::Options, protected Logger::Loggable process_context) - : workers_started_(false), shutdown_(false), options_(options), time_source_(time_system), - restarter_(restarter), start_time_(time(nullptr)), original_start_time_(start_time_), - stats_store_(store), thread_local_(tls), + : workers_started_(false), shutdown_(false), options_(options), + validation_context_(options_.allowUnknownStaticFields(), + !options.rejectUnknownDynamicFields()), + time_source_(time_system), restarter_(restarter), start_time_(time(nullptr)), + original_start_time_(start_time_), stats_store_(store), thread_local_(tls), api_(new Api::Impl(thread_factory, store, time_system, file_system)), dispatcher_(api_->allocateDispatcher()), singleton_manager_(new Singleton::ManagerImpl(api_->threadFactory())), @@ -273,7 +275,8 @@ void InstanceImpl::initialize(const Options& options, Buffer::OwnedImpl().usesOldImpl() ? "old (libevent)" : "new"); // Handle configuration that needs to take place prior to the main configuration load. - InstanceUtil::loadBootstrapConfig(bootstrap_, options, messageValidationVisitor(), *api_); + InstanceUtil::loadBootstrapConfig(bootstrap_, options, + messageValidationContext().staticValidationVisitor(), *api_); bootstrap_config_update_time_ = time_source_.systemTime(); // Immediate after the bootstrap has been loaded, override the header prefix, if configured to @@ -293,6 +296,10 @@ void InstanceImpl::initialize(const Options& options, ServerStats{ALL_SERVER_STATS(POOL_COUNTER_PREFIX(stats_store_, server_stats_prefix), POOL_GAUGE_PREFIX(stats_store_, server_stats_prefix), POOL_HISTOGRAM_PREFIX(stats_store_, server_stats_prefix))}); + validation_context_.static_warning_validation_visitor().setCounter( + server_stats_->static_unknown_fields_); + validation_context_.dynamic_warning_validation_visitor().setCounter( + server_stats_->dynamic_unknown_fields_); initialization_timer_ = std::make_unique(server_stats_->initialization_time_ms_, timeSource()); @@ -346,7 +353,7 @@ void InstanceImpl::initialize(const Options& options, // Initialize the overload manager early so other modules can register for actions. overload_manager_ = std::make_unique( *dispatcher_, stats_store_, thread_local_, bootstrap_.overload_manager(), - messageValidationVisitor(), *api_); + messageValidationContext().staticValidationVisitor(), *api_); heap_shrinker_ = std::make_unique(*dispatcher_, *overload_manager_, stats_store_); @@ -379,7 +386,7 @@ void InstanceImpl::initialize(const Options& options, cluster_manager_factory_ = std::make_unique( *admin_, Runtime::LoaderSingleton::get(), stats_store_, thread_local_, *random_generator_, dns_resolver_, *ssl_context_manager_, *dispatcher_, *local_info_, *secret_manager_, - messageValidationVisitor(), *api_, http_context_, access_log_manager_, *singleton_manager_); + messageValidationContext(), *api_, http_context_, access_log_manager_, *singleton_manager_); // Optional Wasm services. These must be initialied afer threading but before the main // configuration which many reference wasm vms. @@ -433,8 +440,8 @@ void InstanceImpl::initialize(const Options& options, ->create(), *dispatcher_, Runtime::LoaderSingleton::get(), stats_store_, *ssl_context_manager_, *random_generator_, info_factory_, access_log_manager_, *config_.clusterManager(), - *local_info_, *admin_, *singleton_manager_, thread_local_, messageValidationVisitor(), - *api_); + *local_info_, *admin_, *singleton_manager_, thread_local_, + messageValidationContext().dynamicValidationVisitor(), *api_); } for (Stats::SinkPtr& sink : config_.statsSinks()) { @@ -466,8 +473,8 @@ Runtime::LoaderPtr InstanceUtil::createRuntime(Instance& server, ENVOY_LOG(info, "runtime: {}", MessageUtil::getYamlStringFromMessage(config.runtime())); return std::make_unique( server.dispatcher(), server.threadLocal(), config.runtime(), server.localInfo(), - server.initManager(), server.stats(), server.random(), server.messageValidationVisitor(), - server.api()); + server.initManager(), server.stats(), server.random(), + server.messageValidationContext().dynamicValidationVisitor(), server.api()); } void InstanceImpl::loadServerFlags(const absl::optional& flags_path) { diff --git a/source/server/server.h b/source/server/server.h index 70d46a8509405..29d63c8db5461 100644 --- a/source/server/server.h +++ b/source/server/server.h @@ -50,6 +50,8 @@ namespace Server { * All server wide stats. @see stats_macros.h */ #define ALL_SERVER_STATS(COUNTER, GAUGE, HISTOGRAM) \ + COUNTER(static_unknown_fields) \ + COUNTER(dynamic_unknown_fields) \ COUNTER(debug_assertion_failures) \ GAUGE(concurrency, NeverImport) \ GAUGE(days_until_first_cert_expiring, Accumulate) \ @@ -202,9 +204,8 @@ class InstanceImpl : Logger::Loggable, return config_.statsFlushInterval(); } - ProtobufMessage::ValidationVisitor& messageValidationVisitor() override { - return options_.allowUnknownFields() ? ProtobufMessage::getStrictValidationVisitor() - : ProtobufMessage::getNullValidationVisitor(); + ProtobufMessage::ValidationContext& messageValidationContext() override { + return validation_context_; } // ServerLifecycleNotifier @@ -237,6 +238,7 @@ class InstanceImpl : Logger::Loggable, bool workers_started_; bool shutdown_; const Options& options_; + ProtobufMessage::ProdValidationContextImpl validation_context_; TimeSource& time_source_; HotRestart& restarter_; const time_t start_time_; diff --git a/test/common/access_log/access_log_manager_impl_test.cc b/test/common/access_log/access_log_manager_impl_test.cc index 4681e9453a7cc..151ac7544b478 100644 --- a/test/common/access_log/access_log_manager_impl_test.cc +++ b/test/common/access_log/access_log_manager_impl_test.cc @@ -84,7 +84,7 @@ TEST_F(AccessLogManagerImplTest, flushToLogFilePeriodically) { // make sure timer is re-enabled on callback call log_file->write("test2"); EXPECT_CALL(*timer, enableTimer(timeout_40ms_)); - timer->callback_(); + timer->invokeCallback(); { Thread::LockGuard lock(file_->write_mutex_); @@ -147,7 +147,7 @@ TEST_F(AccessLogManagerImplTest, flushToLogFileOnDemand) { // make sure timer is re-enabled on callback call log_file->write("test2"); EXPECT_CALL(*timer, enableTimer(timeout_40ms_)); - timer->callback_(); + timer->invokeCallback(); expected_writes++; { @@ -176,7 +176,7 @@ TEST_F(AccessLogManagerImplTest, reopenFile) { })); log_file->write("before"); - timer->callback_(); + timer->invokeCallback(); { Thread::LockGuard lock(file_->write_mutex_); @@ -205,7 +205,7 @@ TEST_F(AccessLogManagerImplTest, reopenFile) { log_file->reopen(); log_file->write("reopened"); - timer->callback_(); + timer->invokeCallback(); { Thread::LockGuard lock(file_->write_mutex_); @@ -237,7 +237,7 @@ TEST_F(AccessLogManagerImplTest, reopenThrows) { .WillOnce(Return(ByMove(Filesystem::resultFailure(false, 0)))); log_file->write("test write"); - timer->callback_(); + timer->invokeCallback(); { Thread::LockGuard lock(file_->write_mutex_); while (file_->num_writes_ != 1) { @@ -247,7 +247,7 @@ TEST_F(AccessLogManagerImplTest, reopenThrows) { log_file->reopen(); log_file->write("this is to force reopen"); - timer->callback_(); + timer->invokeCallback(); { Thread::LockGuard lock(file_->open_mutex_); @@ -258,7 +258,7 @@ TEST_F(AccessLogManagerImplTest, reopenThrows) { // write call should not cause any exceptions log_file->write("random data"); - timer->callback_(); + timer->invokeCallback(); } TEST_F(AccessLogManagerImplTest, bigDataChunkShouldBeFlushedWithoutTimer) { diff --git a/test/common/common/utility_speed_test.cc b/test/common/common/utility_speed_test.cc index 69ed1b41ff4d6..6e262c08bfdb6 100644 --- a/test/common/common/utility_speed_test.cc +++ b/test/common/common/utility_speed_test.cc @@ -206,6 +206,28 @@ static void BM_FindTokenValueNoSplit(benchmark::State& state) { } BENCHMARK(BM_FindTokenValueNoSplit); +static void BM_RemoveTokensLong(benchmark::State& state) { + auto size = state.range(0); + std::string input(size, ','); + std::vector to_remove; + StringUtil::CaseUnorderedSet to_remove_set; + for (decltype(size) i = 0; i < size; i++) { + to_remove.push_back(std::to_string(i)); + } + for (int i = 0; i < size; i++) { + if (i & 1) { + to_remove_set.insert(to_remove[i]); + } + input.append(","); + input.append(to_remove[i]); + } + for (auto _ : state) { + Envoy::StringUtil::removeTokens(input, ",", to_remove_set, ","); + state.SetBytesProcessed(static_cast(state.iterations()) * input.size()); + } +} +BENCHMARK(BM_RemoveTokensLong)->Range(8, 8 << 10); + static void BM_IntervalSetInsert17(benchmark::State& state) { for (auto _ : state) { Envoy::IntervalSetImpl interval_set; diff --git a/test/common/common/utility_test.cc b/test/common/common/utility_test.cc index 3ad89010ac49b..67d4a558a1a08 100644 --- a/test/common/common/utility_test.cc +++ b/test/common/common/utility_test.cc @@ -368,6 +368,28 @@ TEST(StringUtil, StringViewSplit) { } } +TEST(StringUtil, StringViewRemoveTokens) { + // Basic cases. + EXPECT_EQ(StringUtil::removeTokens("", ",", {"two"}, ","), ""); + EXPECT_EQ(StringUtil::removeTokens("one", ",", {"two"}, ","), "one"); + EXPECT_EQ(StringUtil::removeTokens("one,two ", ",", {"two"}, ","), "one"); + EXPECT_EQ(StringUtil::removeTokens("one,two ", ",", {"two", "one"}, ","), ""); + EXPECT_EQ(StringUtil::removeTokens("one,two ", ",", {"one"}, ","), "two"); + EXPECT_EQ(StringUtil::removeTokens("one,two,three ", ",", {"two"}, ","), "one,three"); + EXPECT_EQ(StringUtil::removeTokens(" one , two , three ", ",", {"two"}, ","), "one,three"); + EXPECT_EQ(StringUtil::removeTokens(" one , two , three ", ",", {"three"}, ","), "one,two"); + EXPECT_EQ(StringUtil::removeTokens(" one , two , three ", ",", {"three"}, ", "), "one, two"); + EXPECT_EQ(StringUtil::removeTokens("one,two,three", ",", {"two", "three"}, ","), "one"); + EXPECT_EQ(StringUtil::removeTokens("one,two,three,four", ",", {"two", "three"}, ","), "one,four"); + // Ignore case. + EXPECT_EQ(StringUtil::removeTokens("One,Two,Three,Four", ",", {"two", "three"}, ","), "One,Four"); + // Longer joiner. + EXPECT_EQ(StringUtil::removeTokens("one,two,three,four", ",", {"two", "three"}, " , "), + "one , four"); + // Delimiters. + EXPECT_EQ(StringUtil::removeTokens("one,two;three ", ",;", {"two"}, ","), "one,three"); +} + TEST(StringUtil, removeCharacters) { IntervalSetImpl removals; removals.insert(3, 5); diff --git a/test/common/config/BUILD b/test/common/config/BUILD index 509d423919a9a..60101fa4aa22b 100644 --- a/test/common/config/BUILD +++ b/test/common/config/BUILD @@ -274,6 +274,17 @@ envoy_cc_test( ], ) +envoy_cc_test( + name = "watch_map_test", + srcs = ["watch_map_test.cc"], + deps = [ + "//source/common/config:watch_map_lib", + "//test/mocks/config:config_mocks", + "//test/test_common:utility_lib", + "@envoy_api//envoy/api/v2:eds_cc", + ], +) + envoy_cc_test( name = "filter_json_test", srcs = ["filter_json_test.cc"], diff --git a/test/common/config/delta_subscription_test_harness.h b/test/common/config/delta_subscription_test_harness.h index aada398fd30cd..cae4cebbf2983 100644 --- a/test/common/config/delta_subscription_test_harness.h +++ b/test/common/config/delta_subscription_test_harness.h @@ -55,9 +55,10 @@ class DeltaSubscriptionTestHarness : public SubscriptionTestHarness { subscription_->start(cluster_names); } - void expectSendMessage(const std::set& cluster_names, - const std::string& version) override { + void expectSendMessage(const std::set& cluster_names, const std::string& version, + bool expect_node = false) override { UNREFERENCED_PARAMETER(version); + UNREFERENCED_PARAMETER(expect_node); expectSendMessage(cluster_names, {}, Grpc::Status::GrpcStatus::Ok, "", {}); } @@ -163,7 +164,7 @@ class DeltaSubscriptionTestHarness : public SubscriptionTestHarness { EXPECT_CALL(*init_timeout_timer_, disableTimer()); } - void callInitFetchTimeoutCb() override { init_timeout_timer_->callback_(); } + void callInitFetchTimeoutCb() override { init_timeout_timer_->invokeCallback(); } const Protobuf::MethodDescriptor* method_descriptor_; Grpc::MockAsyncClient* async_client_; diff --git a/test/common/config/filesystem_subscription_impl_test.cc b/test/common/config/filesystem_subscription_impl_test.cc index 840748a72800d..5249143464841 100644 --- a/test/common/config/filesystem_subscription_impl_test.cc +++ b/test/common/config/filesystem_subscription_impl_test.cc @@ -20,7 +20,7 @@ TEST_F(FilesystemSubscriptionImplTest, BadJsonRecovery) { startSubscription({"cluster0", "cluster1"}); EXPECT_TRUE(statsAre(1, 0, 0, 0, 0, 0)); EXPECT_CALL(callbacks_, - onConfigUpdateFailed(Envoy::Config::ConfigUpdateFailureReason::ConnectionFailure, _)); + onConfigUpdateFailed(Envoy::Config::ConfigUpdateFailureReason::UpdateRejected, _)); updateFile(";!@#badjso n"); EXPECT_TRUE(statsAre(2, 0, 0, 1, 0, 0)); deliverConfigUpdate({"cluster0", "cluster1"}, "0", true); diff --git a/test/common/config/filesystem_subscription_test_harness.h b/test/common/config/filesystem_subscription_test_harness.h index 88c18d85216a7..5bed6e9b19427 100644 --- a/test/common/config/filesystem_subscription_test_harness.h +++ b/test/common/config/filesystem_subscription_test_harness.h @@ -58,10 +58,11 @@ class FilesystemSubscriptionTestHarness : public SubscriptionTestHarness { } } - void expectSendMessage(const std::set& cluster_names, - const std::string& version) override { + void expectSendMessage(const std::set& cluster_names, const std::string& version, + bool expect_node) override { UNREFERENCED_PARAMETER(cluster_names); UNREFERENCED_PARAMETER(version); + UNREFERENCED_PARAMETER(expect_node); } void deliverConfigUpdate(const std::vector& cluster_names, diff --git a/test/common/config/grpc_mux_impl_test.cc b/test/common/config/grpc_mux_impl_test.cc index 05b8356ceec5e..72b556277a626 100644 --- a/test/common/config/grpc_mux_impl_test.cc +++ b/test/common/config/grpc_mux_impl_test.cc @@ -52,7 +52,7 @@ class GrpcMuxImplTestBase : public testing::Test { local_info_, std::unique_ptr(async_client_), dispatcher_, *Protobuf::DescriptorPool::generated_pool()->FindMethodByName( "envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources"), - random_, stats_, rate_limit_settings_); + random_, stats_, rate_limit_settings_, true); } void setup(const RateLimitSettings& custom_rate_limit_settings) { @@ -60,16 +60,18 @@ class GrpcMuxImplTestBase : public testing::Test { local_info_, std::unique_ptr(async_client_), dispatcher_, *Protobuf::DescriptorPool::generated_pool()->FindMethodByName( "envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources"), - random_, stats_, custom_rate_limit_settings); + random_, stats_, custom_rate_limit_settings, true); } void expectSendMessage(const std::string& type_url, const std::vector& resource_names, const std::string& version, - const std::string& nonce = "", + bool first = false, const std::string& nonce = "", const Protobuf::int32 error_code = Grpc::Status::GrpcStatus::Ok, const std::string& error_message = "") { envoy::api::v2::DiscoveryRequest expected_request; - expected_request.mutable_node()->CopyFrom(local_info_.node()); + if (first) { + expected_request.mutable_node()->CopyFrom(local_info_.node()); + } for (const auto& resource : resource_names) { expected_request.add_resource_names(resource); } @@ -111,7 +113,7 @@ TEST_F(GrpcMuxImplTest, MultipleTypeUrlStreams) { auto foo_sub = grpc_mux_->subscribe("foo", {"x", "y"}, callbacks_); auto bar_sub = grpc_mux_->subscribe("bar", {}, callbacks_); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage("foo", {"x", "y"}, ""); + expectSendMessage("foo", {"x", "y"}, "", true); expectSendMessage("bar", {}, ""); grpc_mux_->start(); EXPECT_EQ(1, control_plane_connected_state_.value()); @@ -142,7 +144,7 @@ TEST_F(GrpcMuxImplTest, ResetStream) { auto bar_sub = grpc_mux_->subscribe("bar", {}, callbacks_); auto baz_sub = grpc_mux_->subscribe("baz", {"z"}, callbacks_); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage("foo", {"x", "y"}, ""); + expectSendMessage("foo", {"x", "y"}, "", true); expectSendMessage("bar", {}, ""); expectSendMessage("baz", {"z"}, ""); grpc_mux_->start(); @@ -156,7 +158,7 @@ TEST_F(GrpcMuxImplTest, ResetStream) { grpc_mux_->grpcStreamForTest().onRemoteClose(Grpc::Status::GrpcStatus::Canceled, ""); EXPECT_EQ(0, control_plane_connected_state_.value()); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage("foo", {"x", "y"}, ""); + expectSendMessage("foo", {"x", "y"}, "", true); expectSendMessage("bar", {}, ""); expectSendMessage("baz", {"z"}, ""); timer_cb(); @@ -173,7 +175,7 @@ TEST_F(GrpcMuxImplTest, PauseResume) { grpc_mux_->pause("foo"); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); grpc_mux_->start(); - expectSendMessage("foo", {"x", "y"}, ""); + expectSendMessage("foo", {"x", "y"}, "", true); grpc_mux_->resume("foo"); grpc_mux_->pause("bar"); expectSendMessage("foo", {"z", "x", "y"}, ""); @@ -196,7 +198,7 @@ TEST_F(GrpcMuxImplTest, TypeUrlMismatch) { auto foo_sub = grpc_mux_->subscribe("foo", {"x", "y"}, callbacks_); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage("foo", {"x", "y"}, ""); + expectSendMessage("foo", {"x", "y"}, "", true); grpc_mux_->start(); { @@ -215,7 +217,7 @@ TEST_F(GrpcMuxImplTest, TypeUrlMismatch) { e->what())); })); - expectSendMessage("foo", {"x", "y"}, "", "", Grpc::Status::GrpcStatus::Internal, + expectSendMessage("foo", {"x", "y"}, "", false, "", Grpc::Status::GrpcStatus::Internal, fmt::format("bar does not match foo type URL in DiscoveryResponse {}", invalid_response->DebugString())); grpc_mux_->grpcStreamForTest().onReceiveMessage(std::move(invalid_response)); @@ -231,7 +233,7 @@ TEST_F(GrpcMuxImplTest, WildcardWatch) { const std::string& type_url = Config::TypeUrl::get().ClusterLoadAssignment; auto foo_sub = grpc_mux_->subscribe(type_url, {}, callbacks_); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage(type_url, {}, ""); + expectSendMessage(type_url, {}, "", true); grpc_mux_->start(); { @@ -267,7 +269,7 @@ TEST_F(GrpcMuxImplTest, WatchDemux) { auto bar_sub = grpc_mux_->subscribe(type_url, {"y", "z"}, bar_callbacks); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); // Should dedupe the "x" resource. - expectSendMessage(type_url, {"y", "z", "x"}, ""); + expectSendMessage(type_url, {"y", "z", "x"}, "", true); grpc_mux_->start(); { @@ -345,7 +347,7 @@ TEST_F(GrpcMuxImplTest, MultipleWatcherWithEmptyUpdates) { auto foo_sub = grpc_mux_->subscribe(type_url, {"x", "y"}, foo_callbacks); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage(type_url, {"x", "y"}, ""); + expectSendMessage(type_url, {"x", "y"}, "", true); grpc_mux_->start(); std::unique_ptr response( @@ -368,7 +370,7 @@ TEST_F(GrpcMuxImplTest, SingleWatcherWithEmptyUpdates) { auto foo_sub = grpc_mux_->subscribe(type_url, {}, foo_callbacks); EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage(type_url, {}, ""); + expectSendMessage(type_url, {}, "", true); grpc_mux_->start(); std::unique_ptr response( @@ -422,7 +424,7 @@ TEST_F(GrpcMuxImplTestWithMockTimeSystem, TooManyRequestsWithDefaultSettings) { }; auto foo_sub = grpc_mux_->subscribe("foo", {"x"}, callbacks_); - expectSendMessage("foo", {"x"}, ""); + expectSendMessage("foo", {"x"}, "", true); grpc_mux_->start(); // Exhausts the limit. @@ -475,7 +477,7 @@ TEST_F(GrpcMuxImplTestWithMockTimeSystem, TooManyRequestsWithEmptyRateLimitSetti }; auto foo_sub = grpc_mux_->subscribe("foo", {"x"}, callbacks_); - expectSendMessage("foo", {"x"}, ""); + expectSendMessage("foo", {"x"}, "", true); grpc_mux_->start(); // Validate that drain_request_timer is enabled when there are no tokens. @@ -531,7 +533,7 @@ TEST_F(GrpcMuxImplTest, TooManyRequestsWithCustomRateLimitSettings) { }; auto foo_sub = grpc_mux_->subscribe("foo", {"x"}, callbacks_); - expectSendMessage("foo", {"x"}, ""); + expectSendMessage("foo", {"x"}, "", true); grpc_mux_->start(); // Validate that rate limit is not enforced for 100 requests. @@ -565,7 +567,7 @@ TEST_F(GrpcMuxImplTest, UnwatchedTypeAcceptsEmptyResources) { grpc_mux_->start(); { // subscribe and unsubscribe to simulate a cluster added and removed - expectSendMessage(type_url, {"y"}, ""); + expectSendMessage(type_url, {"y"}, "", true); auto temp_sub = grpc_mux_->subscribe(type_url, {"y"}, callbacks_); expectSendMessage(type_url, {}, ""); } @@ -581,11 +583,11 @@ TEST_F(GrpcMuxImplTest, UnwatchedTypeAcceptsEmptyResources) { grpc_mux_->grpcStreamForTest().onReceiveMessage(std::move(response)); // when we add the new subscription version should be 1 and nonce should be bar - expectSendMessage(type_url, {"x"}, "1", "bar"); + expectSendMessage(type_url, {"x"}, "1", false, "bar"); // simulate a new cluster x is added. add CLA subscription for it. auto sub = grpc_mux_->subscribe(type_url, {"x"}, callbacks_); - expectSendMessage(type_url, {}, "1", "bar"); + expectSendMessage(type_url, {}, "1", false, "bar"); } // Verifies that a messsage with some resources is rejected when there are no watches. @@ -598,7 +600,7 @@ TEST_F(GrpcMuxImplTest, UnwatchedTypeRejectsResources) { grpc_mux_->start(); // subscribe and unsubscribe (by not keeping the return watch) so that the type is known to envoy - expectSendMessage(type_url, {"y"}, ""); + expectSendMessage(type_url, {"y"}, "", true); expectSendMessage(type_url, {}, ""); grpc_mux_->subscribe(type_url, {"y"}, callbacks_); @@ -615,7 +617,7 @@ TEST_F(GrpcMuxImplTest, UnwatchedTypeRejectsResources) { response->add_resources()->PackFrom(load_assignment); // The message should be rejected. - expectSendMessage(type_url, {}, "", "bar"); + expectSendMessage(type_url, {}, "", false, "bar"); EXPECT_LOG_CONTAINS("warning", "Ignoring unwatched type URL " + type_url, grpc_mux_->grpcStreamForTest().onReceiveMessage(std::move(response))); } @@ -627,7 +629,7 @@ TEST_F(GrpcMuxImplTest, BadLocalInfoEmptyClusterName) { local_info_, std::unique_ptr(async_client_), dispatcher_, *Protobuf::DescriptorPool::generated_pool()->FindMethodByName( "envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources"), - random_, stats_, rate_limit_settings_), + random_, stats_, rate_limit_settings_, true), EnvoyException, "ads: node 'id' and 'cluster' are required. Set it either in 'node' config or via " "--service-node and --service-cluster options."); @@ -640,12 +642,11 @@ TEST_F(GrpcMuxImplTest, BadLocalInfoEmptyNodeName) { local_info_, std::unique_ptr(async_client_), dispatcher_, *Protobuf::DescriptorPool::generated_pool()->FindMethodByName( "envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources"), - random_, stats_, rate_limit_settings_), + random_, stats_, rate_limit_settings_, true), EnvoyException, "ads: node 'id' and 'cluster' are required. Set it either in 'node' config or via " "--service-node and --service-cluster options."); } - } // namespace } // namespace Config } // namespace Envoy diff --git a/test/common/config/grpc_subscription_impl_test.cc b/test/common/config/grpc_subscription_impl_test.cc index 5234662912078..ea773b24f1f81 100644 --- a/test/common/config/grpc_subscription_impl_test.cc +++ b/test/common/config/grpc_subscription_impl_test.cc @@ -28,7 +28,7 @@ TEST_F(GrpcSubscriptionImplTest, StreamCreationFailure) { // Retry and succeed. EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage({"cluster2"}, ""); + expectSendMessage({"cluster2"}, "", true); timer_cb_(); EXPECT_TRUE(statsAre(3, 0, 0, 1, 0, 0)); verifyControlPlaneStats(1); @@ -49,7 +49,7 @@ TEST_F(GrpcSubscriptionImplTest, RemoteStreamClose) { // Retry and succeed. EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); - expectSendMessage({"cluster0", "cluster1"}, ""); + expectSendMessage({"cluster0", "cluster1"}, "", true); timer_cb_(); EXPECT_TRUE(statsAre(2, 0, 0, 1, 0, 0)); } diff --git a/test/common/config/grpc_subscription_test_harness.h b/test/common/config/grpc_subscription_test_harness.h index 96a9aae23b6e7..3031c2e947ef5 100644 --- a/test/common/config/grpc_subscription_test_harness.h +++ b/test/common/config/grpc_subscription_test_harness.h @@ -45,20 +45,24 @@ class GrpcSubscriptionTestHarness : public SubscriptionTestHarness { subscription_ = std::make_unique( local_info_, std::unique_ptr(async_client_), dispatcher_, random_, *method_descriptor_, Config::TypeUrl::get().ClusterLoadAssignment, callbacks_, stats_, - stats_store_, rate_limit_settings_, init_fetch_timeout); + stats_store_, rate_limit_settings_, init_fetch_timeout, true); } ~GrpcSubscriptionTestHarness() override { EXPECT_CALL(async_stream_, sendMessageRaw_(_, false)); } - void expectSendMessage(const std::set& cluster_names, - const std::string& version) override { - expectSendMessage(cluster_names, version, Grpc::Status::GrpcStatus::Ok, ""); + void expectSendMessage(const std::set& cluster_names, const std::string& version, + bool expect_node = false) override { + expectSendMessage(cluster_names, version, expect_node, Grpc::Status::GrpcStatus::Ok, ""); } void expectSendMessage(const std::set& cluster_names, const std::string& version, - const Protobuf::int32 error_code, const std::string& error_message) { + bool expect_node, const Protobuf::int32 error_code, + const std::string& error_message) { + UNREFERENCED_PARAMETER(expect_node); envoy::api::v2::DiscoveryRequest expected_request; - expected_request.mutable_node()->CopyFrom(node_); + if (expect_node) { + expected_request.mutable_node()->CopyFrom(node_); + } for (const auto& cluster : cluster_names) { expected_request.add_resource_names(cluster); } @@ -78,7 +82,7 @@ class GrpcSubscriptionTestHarness : public SubscriptionTestHarness { void startSubscription(const std::set& cluster_names) override { EXPECT_CALL(*async_client_, startRaw(_, _, _)).WillOnce(Return(&async_stream_)); last_cluster_names_ = cluster_names; - expectSendMessage(last_cluster_names_, ""); + expectSendMessage(last_cluster_names_, "", true); subscription_->start(cluster_names); } @@ -102,12 +106,12 @@ class GrpcSubscriptionTestHarness : public SubscriptionTestHarness { EXPECT_CALL(callbacks_, onConfigUpdate(RepeatedProtoEq(response->resources()), version)) .WillOnce(ThrowOnRejectedConfig(accept)); if (accept) { - expectSendMessage(last_cluster_names_, version); + expectSendMessage(last_cluster_names_, version, false); version_ = version; } else { EXPECT_CALL(callbacks_, onConfigUpdateFailed( Envoy::Config::ConfigUpdateFailureReason::UpdateRejected, _)); - expectSendMessage(last_cluster_names_, version_, Grpc::Status::GrpcStatus::Internal, + expectSendMessage(last_cluster_names_, version_, false, Grpc::Status::GrpcStatus::Internal, "bad config"); } subscription_->grpcMux().onDiscoveryResponse(std::move(response)); @@ -145,7 +149,7 @@ class GrpcSubscriptionTestHarness : public SubscriptionTestHarness { EXPECT_CALL(*init_timeout_timer_, disableTimer()); } - void callInitFetchTimeoutCb() override { init_timeout_timer_->callback_(); } + void callInitFetchTimeoutCb() override { init_timeout_timer_->invokeCallback(); } std::string version_; const Protobuf::MethodDescriptor* method_descriptor_; diff --git a/test/common/config/http_subscription_test_harness.h b/test/common/config/http_subscription_test_harness.h index 7c890973ab382..95d1123be5b52 100644 --- a/test/common/config/http_subscription_test_harness.h +++ b/test/common/config/http_subscription_test_harness.h @@ -58,8 +58,9 @@ class HttpSubscriptionTestHarness : public SubscriptionTestHarness { } } - void expectSendMessage(const std::set& cluster_names, - const std::string& version) override { + void expectSendMessage(const std::set& cluster_names, const std::string& version, + bool expect_node = false) override { + UNREFERENCED_PARAMETER(expect_node); EXPECT_CALL(cm_, httpAsyncClientForCluster("eds_cluster")); EXPECT_CALL(cm_.async_client_, send_(_, _, _)) .WillOnce(Invoke([this, cluster_names, version](Http::MessagePtr& request, @@ -165,7 +166,7 @@ class HttpSubscriptionTestHarness : public SubscriptionTestHarness { EXPECT_CALL(*init_timeout_timer_, disableTimer()); } - void callInitFetchTimeoutCb() override { init_timeout_timer_->callback_(); } + void callInitFetchTimeoutCb() override { init_timeout_timer_->invokeCallback(); } void timerTick() { expectSendMessage(cluster_names_, version_); diff --git a/test/common/config/subscription_impl_test.cc b/test/common/config/subscription_impl_test.cc index c284bfcda9a6d..622a268c90cb0 100644 --- a/test/common/config/subscription_impl_test.cc +++ b/test/common/config/subscription_impl_test.cc @@ -47,8 +47,9 @@ class SubscriptionImplTest : public testing::TestWithParam { test_harness_->updateResources(cluster_names); } - void expectSendMessage(const std::set& cluster_names, const std::string& version) { - test_harness_->expectSendMessage(cluster_names, version); + void expectSendMessage(const std::set& cluster_names, const std::string& version, + bool expect_node) { + test_harness_->expectSendMessage(cluster_names, version, expect_node); } AssertionResult statsAre(uint32_t attempt, uint32_t success, uint32_t rejected, uint32_t failure, diff --git a/test/common/config/subscription_test_harness.h b/test/common/config/subscription_test_harness.h index 09803354e151d..6a094116324d4 100644 --- a/test/common/config/subscription_test_harness.h +++ b/test/common/config/subscription_test_harness.h @@ -36,9 +36,10 @@ class SubscriptionTestHarness { * Expect that an update request is sent by the Subscription implementation. * @param cluster_names cluster names to expect in the request. * @param version version_info to expect in the request. + * @param expect_node whether the node information should be expected */ virtual void expectSendMessage(const std::set& cluster_names, - const std::string& version) PURE; + const std::string& version, bool expect_node) PURE; /** * Deliver a response to the Subscription implementation and validate. diff --git a/test/common/config/watch_map_test.cc b/test/common/config/watch_map_test.cc new file mode 100644 index 0000000000000..543298557fabf --- /dev/null +++ b/test/common/config/watch_map_test.cc @@ -0,0 +1,397 @@ +#include + +#include "envoy/api/v2/eds.pb.h" +#include "envoy/common/exception.h" +#include "envoy/stats/scope.h" + +#include "common/config/watch_map.h" + +#include "test/mocks/config/mocks.h" +#include "test/test_common/utility.h" + +#include "gmock/gmock.h" +#include "gtest/gtest.h" + +using ::testing::_; +using ::testing::Invoke; + +namespace Envoy { +namespace Config { +namespace { + +class NamedMockSubscriptionCallbacks + : public MockSubscriptionCallbacks { +public: + std::string resourceName(const ProtobufWkt::Any& resource) override { + return TestUtility::anyConvert(resource).cluster_name(); + } +}; + +// expectDeltaAndSotwUpdate() EXPECTs two birds with one function call: we want to cover both SotW +// and delta, which, while mechanically different, can behave identically for our testing purposes. +// Specifically, as a simplification for these tests, every still-present resource is updated in +// every update. Therefore, a resource can never show up in the SotW update but not the delta +// update. We can therefore use the same expected_resources for both. +void expectDeltaAndSotwUpdate( + NamedMockSubscriptionCallbacks& callbacks, + const std::vector& expected_resources, + const std::vector& expected_removals, const std::string& version) { + EXPECT_CALL(callbacks, onConfigUpdate(_, version)) + .WillOnce(Invoke( + [expected_resources](const Protobuf::RepeatedPtrField& gotten_resources, + const std::string&) { + EXPECT_EQ(expected_resources.size(), gotten_resources.size()); + for (size_t i = 0; i < expected_resources.size(); i++) { + envoy::api::v2::ClusterLoadAssignment cur_gotten_resource; + gotten_resources[i].UnpackTo(&cur_gotten_resource); + EXPECT_TRUE(TestUtility::protoEqual(cur_gotten_resource, expected_resources[i])); + } + })); + EXPECT_CALL(callbacks, onConfigUpdate(_, _, _)) + .WillOnce( + Invoke([expected_resources, expected_removals, version]( + const Protobuf::RepeatedPtrField& gotten_resources, + const Protobuf::RepeatedPtrField& removed_resources, + const std::string&) { + EXPECT_EQ(expected_resources.size(), gotten_resources.size()); + for (size_t i = 0; i < expected_resources.size(); i++) { + EXPECT_EQ(gotten_resources[i].version(), version); + envoy::api::v2::ClusterLoadAssignment cur_gotten_resource; + gotten_resources[i].resource().UnpackTo(&cur_gotten_resource); + EXPECT_TRUE(TestUtility::protoEqual(cur_gotten_resource, expected_resources[i])); + } + EXPECT_EQ(expected_removals.size(), removed_resources.size()); + for (size_t i = 0; i < expected_removals.size(); i++) { + EXPECT_EQ(expected_removals[i], removed_resources[i]); + } + })); +} + +// Sometimes we want to verify that a delta onConfigUpdate simply doesn't happen. However, for SotW, +// every update triggers all onConfigUpdate()s, so we should still expect empty calls for that. +void expectNoDeltaUpdate(NamedMockSubscriptionCallbacks& callbacks, const std::string& version) { + EXPECT_CALL(callbacks, onConfigUpdate(_, version)) + .WillOnce(Invoke([](const Protobuf::RepeatedPtrField& gotten_resources, + const std::string&) { EXPECT_EQ(0, gotten_resources.size()); })); + EXPECT_CALL(callbacks, onConfigUpdate(_, _, _)).Times(0); +} + +Protobuf::RepeatedPtrField +wrapInResource(const Protobuf::RepeatedPtrField& anys, + const std::string& version) { + Protobuf::RepeatedPtrField ret; + for (const auto& a : anys) { + envoy::api::v2::ClusterLoadAssignment cur_endpoint; + a.UnpackTo(&cur_endpoint); + auto* cur_resource = ret.Add(); + cur_resource->set_name(cur_endpoint.cluster_name()); + cur_resource->mutable_resource()->CopyFrom(a); + cur_resource->set_version(version); + } + return ret; +} + +// Similar to expectDeltaAndSotwUpdate(), but making the onConfigUpdate() happen, rather than +// EXPECTing it. +void doDeltaAndSotwUpdate(SubscriptionCallbacks& watch_map, + const Protobuf::RepeatedPtrField& sotw_resources, + const std::vector& removed_names, + const std::string& version) { + watch_map.onConfigUpdate(sotw_resources, version); + + Protobuf::RepeatedPtrField delta_resources = + wrapInResource(sotw_resources, version); + Protobuf::RepeatedPtrField removed_names_proto; + for (const auto& n : removed_names) { + *removed_names_proto.Add() = n; + } + watch_map.onConfigUpdate(delta_resources, removed_names_proto, "version1"); +} + +// Tests the simple case of a single watch. Checks that the watch will not be told of updates to +// resources it doesn't care about. Checks that the watch can later decide it does care about them, +// and then receive subsequent updates to them. +TEST(WatchMapTest, Basic) { + NamedMockSubscriptionCallbacks callbacks; + WatchMap watch_map; + Watch* watch = watch_map.addWatch(callbacks); + + { + // The watch is interested in Alice and Bob... + std::set update_to({"alice", "bob"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch, update_to); + EXPECT_EQ(update_to, added_removed.added_); + EXPECT_TRUE(added_removed.removed_.empty()); + + // ...the update is going to contain Bob and Carol... + Protobuf::RepeatedPtrField updated_resources; + envoy::api::v2::ClusterLoadAssignment bob; + bob.set_cluster_name("bob"); + updated_resources.Add()->PackFrom(bob); + envoy::api::v2::ClusterLoadAssignment carol; + carol.set_cluster_name("carol"); + updated_resources.Add()->PackFrom(carol); + + // ...so the watch should receive only Bob. + std::vector expected_resources; + expected_resources.push_back(bob); + + expectDeltaAndSotwUpdate(callbacks, expected_resources, {}, "version1"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version1"); + } + { + // The watch is now interested in Bob, Carol, Dave, Eve... + std::set update_to({"bob", "carol", "dave", "eve"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch, update_to); + EXPECT_EQ(std::set({"carol", "dave", "eve"}), added_removed.added_); + EXPECT_EQ(std::set({"alice"}), added_removed.removed_); + + // ...the update is going to contain Alice, Carol, Dave... + Protobuf::RepeatedPtrField updated_resources; + envoy::api::v2::ClusterLoadAssignment alice; + alice.set_cluster_name("alice"); + updated_resources.Add()->PackFrom(alice); + envoy::api::v2::ClusterLoadAssignment carol; + carol.set_cluster_name("carol"); + updated_resources.Add()->PackFrom(carol); + envoy::api::v2::ClusterLoadAssignment dave; + dave.set_cluster_name("dave"); + updated_resources.Add()->PackFrom(dave); + + // ...so the watch should receive only Carol and Dave. + std::vector expected_resources; + expected_resources.push_back(carol); + expected_resources.push_back(dave); + + expectDeltaAndSotwUpdate(callbacks, expected_resources, {"bob"}, "version2"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {"bob"}, "version2"); + } +} + +// Checks the following: +// First watch on a resource name ==> updateWatchInterest() returns "add it to subscription" +// Second watch on that name ==> updateWatchInterest() returns nothing about that name +// Original watch loses interest ==> nothing +// Second watch also loses interest ==> "remove it from subscription" +// NOTE: we need the resource name "dummy" to keep either watch from ever having no names watched, +// which is treated as interest in all names. +TEST(WatchMapTest, Overlap) { + NamedMockSubscriptionCallbacks callbacks1; + NamedMockSubscriptionCallbacks callbacks2; + WatchMap watch_map; + Watch* watch1 = watch_map.addWatch(callbacks1); + Watch* watch2 = watch_map.addWatch(callbacks2); + + Protobuf::RepeatedPtrField updated_resources; + envoy::api::v2::ClusterLoadAssignment alice; + alice.set_cluster_name("alice"); + updated_resources.Add()->PackFrom(alice); + + // First watch becomes interested. + { + std::set update_to({"alice", "dummy"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch1, update_to); + EXPECT_EQ(update_to, added_removed.added_); // add to subscription + EXPECT_TRUE(added_removed.removed_.empty()); + watch_map.updateWatchInterest(watch2, {"dummy"}); + + // First watch receives update. + expectDeltaAndSotwUpdate(callbacks1, {alice}, {}, "version1"); + expectNoDeltaUpdate(callbacks2, "version1"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version1"); + } + // Second watch becomes interested. + { + std::set update_to({"alice", "dummy"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch2, update_to); + EXPECT_TRUE(added_removed.added_.empty()); // nothing happens + EXPECT_TRUE(added_removed.removed_.empty()); + + // Both watches receive update. + expectDeltaAndSotwUpdate(callbacks1, {alice}, {}, "version2"); + expectDeltaAndSotwUpdate(callbacks2, {alice}, {}, "version2"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version2"); + } + // First watch loses interest. + { + AddedRemoved added_removed = watch_map.updateWatchInterest(watch1, {"dummy"}); + EXPECT_TRUE(added_removed.added_.empty()); // nothing happens + EXPECT_TRUE(added_removed.removed_.empty()); + + // *Only* second watch receives update. + expectNoDeltaUpdate(callbacks1, "version3"); + expectDeltaAndSotwUpdate(callbacks2, {alice}, {}, "version3"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version3"); + } + // Second watch loses interest. + { + AddedRemoved added_removed = watch_map.updateWatchInterest(watch2, {"dummy"}); + EXPECT_TRUE(added_removed.added_.empty()); + EXPECT_EQ(std::set({"alice"}), added_removed.removed_); // remove from subscription + } +} + +// Checks the following: +// First watch on a resource name ==> updateWatchInterest() returns "add it to subscription" +// Watch loses interest ==> "remove it from subscription" +// Second watch on that name ==> "add it to subscription" +// NOTE: we need the resource name "dummy" to keep either watch from ever having no names watched, +// which is treated as interest in all names. +TEST(WatchMapTest, AddRemoveAdd) { + NamedMockSubscriptionCallbacks callbacks1; + NamedMockSubscriptionCallbacks callbacks2; + WatchMap watch_map; + Watch* watch1 = watch_map.addWatch(callbacks1); + Watch* watch2 = watch_map.addWatch(callbacks2); + + Protobuf::RepeatedPtrField updated_resources; + envoy::api::v2::ClusterLoadAssignment alice; + alice.set_cluster_name("alice"); + updated_resources.Add()->PackFrom(alice); + + // First watch becomes interested. + { + std::set update_to({"alice", "dummy"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch1, update_to); + EXPECT_EQ(update_to, added_removed.added_); // add to subscription + EXPECT_TRUE(added_removed.removed_.empty()); + watch_map.updateWatchInterest(watch2, {"dummy"}); + + // First watch receives update. + expectDeltaAndSotwUpdate(callbacks1, {alice}, {}, "version1"); + expectNoDeltaUpdate(callbacks2, "version1"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version1"); + } + // First watch loses interest. + { + AddedRemoved added_removed = watch_map.updateWatchInterest(watch1, {"dummy"}); + EXPECT_TRUE(added_removed.added_.empty()); + EXPECT_EQ(std::set({"alice"}), added_removed.removed_); // remove from subscription + + // (The xDS client should have responded to updateWatchInterest()'s return value by removing + // Alice from the subscription, so onConfigUpdate() calls should be impossible right now.) + } + // Second watch becomes interested. + { + std::set update_to({"alice", "dummy"}); + AddedRemoved added_removed = watch_map.updateWatchInterest(watch2, update_to); + EXPECT_EQ(std::set({"alice"}), added_removed.added_); // add to subscription + EXPECT_TRUE(added_removed.removed_.empty()); + + // *Only* second watch receives update. + expectNoDeltaUpdate(callbacks1, "version2"); + expectDeltaAndSotwUpdate(callbacks2, {alice}, {}, "version2"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version2"); + } +} + +// Tests that nothing breaks if an update arrives that we entirely do not care about. +TEST(WatchMapTest, UninterestingUpdate) { + NamedMockSubscriptionCallbacks callbacks; + WatchMap watch_map; + Watch* watch = watch_map.addWatch(callbacks); + watch_map.updateWatchInterest(watch, {"alice"}); + + Protobuf::RepeatedPtrField alice_update; + envoy::api::v2::ClusterLoadAssignment alice; + alice.set_cluster_name("alice"); + alice_update.Add()->PackFrom(alice); + + Protobuf::RepeatedPtrField bob_update; + envoy::api::v2::ClusterLoadAssignment bob; + bob.set_cluster_name("bob"); + bob_update.Add()->PackFrom(bob); + + expectNoDeltaUpdate(callbacks, "version1"); + doDeltaAndSotwUpdate(watch_map, bob_update, {}, "version1"); + + expectDeltaAndSotwUpdate(callbacks, {alice}, {}, "version2"); + doDeltaAndSotwUpdate(watch_map, alice_update, {}, "version2"); + + expectNoDeltaUpdate(callbacks, "version3"); + doDeltaAndSotwUpdate(watch_map, bob_update, {}, "version3"); + + // Clean removal of the watch: first update to "interested in nothing", then remove. + watch_map.updateWatchInterest(watch, {}); + watch_map.removeWatch(watch); + + // Finally, test that calling onConfigUpdate on a map with no watches doesn't break. + doDeltaAndSotwUpdate(watch_map, bob_update, {}, "version4"); +} + +// Tests that a watch that specifies no particular resource interest is treated as interested in +// everything. +TEST(WatchMapTest, WatchingEverything) { + NamedMockSubscriptionCallbacks callbacks1; + NamedMockSubscriptionCallbacks callbacks2; + WatchMap watch_map; + /*Watch* watch1 = */ watch_map.addWatch(callbacks1); + Watch* watch2 = watch_map.addWatch(callbacks2); + // watch1 never specifies any names, and so is treated as interested in everything. + watch_map.updateWatchInterest(watch2, {"alice"}); + + Protobuf::RepeatedPtrField updated_resources; + envoy::api::v2::ClusterLoadAssignment alice; + alice.set_cluster_name("alice"); + updated_resources.Add()->PackFrom(alice); + envoy::api::v2::ClusterLoadAssignment bob; + bob.set_cluster_name("bob"); + updated_resources.Add()->PackFrom(bob); + + std::vector expected_resources1; + expected_resources1.push_back(alice); + expected_resources1.push_back(bob); + std::vector expected_resources2; + expected_resources2.push_back(alice); + + expectDeltaAndSotwUpdate(callbacks1, expected_resources1, {}, "version1"); + expectDeltaAndSotwUpdate(callbacks2, expected_resources2, {}, "version1"); + doDeltaAndSotwUpdate(watch_map, updated_resources, {}, "version1"); +} + +// Delta onConfigUpdate has some slightly subtle details with how it handles the three cases where a +// watch receives {only updates, updates+removals, only removals} to its resources. This test +// exercise those cases. Also, the removal-only case tests that SotW does call a watch's +// onConfigUpdate even if none of the watch's interested resources are among the updated resources. +// (Which ensures we deliver empty config updates when a resource is dropped.) +TEST(WatchMapTest, DeltaOnConfigUpdate) { + NamedMockSubscriptionCallbacks callbacks1; + NamedMockSubscriptionCallbacks callbacks2; + NamedMockSubscriptionCallbacks callbacks3; + WatchMap watch_map; + Watch* watch1 = watch_map.addWatch(callbacks1); + Watch* watch2 = watch_map.addWatch(callbacks2); + Watch* watch3 = watch_map.addWatch(callbacks3); + watch_map.updateWatchInterest(watch1, {"updated"}); + watch_map.updateWatchInterest(watch2, {"updated", "removed"}); + watch_map.updateWatchInterest(watch3, {"removed"}); + + Protobuf::RepeatedPtrField update; + envoy::api::v2::ClusterLoadAssignment updated; + updated.set_cluster_name("updated"); + update.Add()->PackFrom(updated); + + expectDeltaAndSotwUpdate(callbacks1, {updated}, {}, "version1"); // only update + expectDeltaAndSotwUpdate(callbacks2, {updated}, {"removed"}, "version1"); // update+remove + expectDeltaAndSotwUpdate(callbacks3, {}, {"removed"}, "version1"); // only remove + doDeltaAndSotwUpdate(watch_map, update, {"removed"}, "version1"); +} + +TEST(WatchMapTest, OnConfigUpdateFailed) { + WatchMap watch_map; + // calling on empty map doesn't break + watch_map.onConfigUpdateFailed(ConfigUpdateFailureReason::UpdateRejected, nullptr); + + NamedMockSubscriptionCallbacks callbacks1; + NamedMockSubscriptionCallbacks callbacks2; + watch_map.addWatch(callbacks1); + watch_map.addWatch(callbacks2); + + EXPECT_CALL(callbacks1, onConfigUpdateFailed(ConfigUpdateFailureReason::UpdateRejected, nullptr)); + EXPECT_CALL(callbacks2, onConfigUpdateFailed(ConfigUpdateFailureReason::UpdateRejected, nullptr)); + watch_map.onConfigUpdateFailed(ConfigUpdateFailureReason::UpdateRejected, nullptr); +} + +} // namespace +} // namespace Config +} // namespace Envoy diff --git a/test/common/http/async_client_impl_test.cc b/test/common/http/async_client_impl_test.cc index b1e30d65d5fd0..ae5b7cdbb6fb9 100644 --- a/test/common/http/async_client_impl_test.cc +++ b/test/common/http/async_client_impl_test.cc @@ -192,7 +192,7 @@ TEST_F(AsyncClientImplTest, Retry) { EXPECT_CALL(stream_encoder_, encodeHeaders(HeaderMapEqualRef(&message_copy->headers()), false)); EXPECT_CALL(stream_encoder_, encodeData(BufferEqual(&data), true)); - timer_->callback_(); + timer_->invokeCallback(); // Normal response. expectSuccess(200); @@ -240,7 +240,7 @@ TEST_F(AsyncClientImplTest, RetryWithStream) { EXPECT_CALL(stream_encoder_, encodeHeaders(HeaderMapEqualRef(&headers), false)); EXPECT_CALL(stream_encoder_, encodeData(BufferEqual(body.get()), true)); - timer_->callback_(); + timer_->invokeCallback(); // Normal response. expectResponseHeaders(stream_callbacks_, 200, true); @@ -731,7 +731,7 @@ TEST_F(AsyncClientImplTest, StreamTimeout) { AsyncClient::Stream* stream = client_.start( stream_callbacks_, AsyncClient::StreamOptions().setTimeout(std::chrono::milliseconds(40))); stream->sendHeaders(message_->headers(), true); - timer_->callback_(); + timer_->invokeCallback(); EXPECT_EQ(1UL, cm_.thread_local_cluster_.cluster_.info_->stats_store_.counter("upstream_rq_timeout") @@ -765,7 +765,7 @@ TEST_F(AsyncClientImplTest, StreamTimeoutHeadReply) { AsyncClient::Stream* stream = client_.start( stream_callbacks_, AsyncClient::StreamOptions().setTimeout(std::chrono::milliseconds(40))); stream->sendHeaders(message->headers(), true); - timer_->callback_(); + timer_->invokeCallback(); } TEST_F(AsyncClientImplTest, RequestTimeout) { @@ -783,7 +783,7 @@ TEST_F(AsyncClientImplTest, RequestTimeout) { EXPECT_CALL(stream_encoder_.stream_, resetStream(_)); client_.send(std::move(message_), callbacks_, AsyncClient::RequestOptions().setTimeout(std::chrono::milliseconds(40))); - timer_->callback_(); + timer_->invokeCallback(); EXPECT_EQ(1UL, cm_.thread_local_cluster_.cluster_.info_->stats_store_.counter("upstream_rq_timeout") diff --git a/test/common/http/codec_impl_fuzz_test.cc b/test/common/http/codec_impl_fuzz_test.cc index e25f56194efcf..70cd0327c0e80 100644 --- a/test/common/http/codec_impl_fuzz_test.cc +++ b/test/common/http/codec_impl_fuzz_test.cc @@ -350,31 +350,33 @@ void codecFuzz(const test::common::http::CodecImplFuzzTestCase& input, HttpVersi const Http2Settings client_http2settings{fromHttp2Settings(input.h2_settings().client())}; NiceMock client_callbacks; uint32_t max_request_headers_kb = Http::DEFAULT_MAX_REQUEST_HEADERS_KB; + uint32_t max_request_headers_count = Http::DEFAULT_MAX_HEADERS_COUNT; + uint32_t max_response_headers_count = Http::DEFAULT_MAX_HEADERS_COUNT; ClientConnectionPtr client; ServerConnectionPtr server; const bool http2 = http_version == HttpVersion::Http2; if (http2) { - client = std::make_unique(client_connection, client_callbacks, - stats_store, client_http2settings, - max_request_headers_kb); + client = std::make_unique( + client_connection, client_callbacks, stats_store, client_http2settings, + max_request_headers_kb, max_response_headers_count); } else { - client = std::make_unique(client_connection, stats_store, - client_callbacks); + client = std::make_unique( + client_connection, stats_store, client_callbacks, max_response_headers_count); } NiceMock server_connection; NiceMock server_callbacks; if (http2) { const Http2Settings server_http2settings{fromHttp2Settings(input.h2_settings().server())}; - server = std::make_unique(server_connection, server_callbacks, - stats_store, server_http2settings, - max_request_headers_kb); + server = std::make_unique( + server_connection, server_callbacks, stats_store, server_http2settings, + max_request_headers_kb, max_request_headers_count); } else { const Http1Settings server_http1settings{fromHttp1Settings(input.h1_settings().server())}; - server = std::make_unique(server_connection, stats_store, - server_callbacks, server_http1settings, - max_request_headers_kb); + server = std::make_unique( + server_connection, stats_store, server_callbacks, server_http1settings, + max_request_headers_kb, max_request_headers_count); } ReorderBuffer client_write_buf{*server}; diff --git a/test/common/http/conn_manager_impl_fuzz_test.cc b/test/common/http/conn_manager_impl_fuzz_test.cc index 5c2bf01fe1abf..1763d0d46ccbd 100644 --- a/test/common/http/conn_manager_impl_fuzz_test.cc +++ b/test/common/http/conn_manager_impl_fuzz_test.cc @@ -81,6 +81,7 @@ class FuzzConfig : public ConnectionManagerConfig { bool generateRequestId() override { return true; } bool preserveExternalRequestId() const override { return false; } uint32_t maxRequestHeadersKb() const override { return max_request_headers_kb_; } + uint32_t maxRequestHeadersCount() const override { return max_request_headers_count_; } absl::optional idleTimeout() const override { return idle_timeout_; } std::chrono::milliseconds streamIdleTimeout() const override { return stream_idle_timeout_; } std::chrono::milliseconds requestTimeout() const override { return request_timeout_; } @@ -128,6 +129,7 @@ class FuzzConfig : public ConnectionManagerConfig { ConnectionManagerTracingStats tracing_stats_; ConnectionManagerListenerStats listener_stats_; uint32_t max_request_headers_kb_{Http::DEFAULT_MAX_REQUEST_HEADERS_KB}; + uint32_t max_request_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; absl::optional idle_timeout_; std::chrono::milliseconds stream_idle_timeout_{}; std::chrono::milliseconds request_timeout_{}; diff --git a/test/common/http/conn_manager_impl_test.cc b/test/common/http/conn_manager_impl_test.cc index 2ae4d2483eeda..dbf50a5f54e79 100644 --- a/test/common/http/conn_manager_impl_test.cc +++ b/test/common/http/conn_manager_impl_test.cc @@ -252,6 +252,7 @@ class HttpConnectionManagerImplTest : public testing::Test, public ConnectionMan bool generateRequestId() override { return true; } bool preserveExternalRequestId() const override { return false; } uint32_t maxRequestHeadersKb() const override { return max_request_headers_kb_; } + uint32_t maxRequestHeadersCount() const override { return max_request_headers_count_; } absl::optional idleTimeout() const override { return idle_timeout_; } std::chrono::milliseconds streamIdleTimeout() const override { return stream_idle_timeout_; } std::chrono::milliseconds requestTimeout() const override { return request_timeout_; } @@ -308,6 +309,7 @@ class HttpConnectionManagerImplTest : public testing::Test, public ConnectionMan std::vector set_current_client_cert_details_; absl::optional user_agent_; uint32_t max_request_headers_kb_{Http::DEFAULT_MAX_REQUEST_HEADERS_KB}; + uint32_t max_request_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; absl::optional idle_timeout_; std::chrono::milliseconds stream_idle_timeout_{}; std::chrono::milliseconds request_timeout_{}; @@ -1410,7 +1412,7 @@ TEST_F(HttpConnectionManagerImplTest, PerStreamIdleTimeoutGlobal) { // encodeHeaders()/encodeData(). EXPECT_CALL(*idle_timer, enableTimer(_)).Times(2); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); })); // 408 direct response after timeout. @@ -1449,7 +1451,7 @@ TEST_F(HttpConnectionManagerImplTest, AccessEncoderRouteBeforeHeadersArriveOnIdl EXPECT_CALL(*idle_timer, enableTimer(_)).Times(2); EXPECT_CALL(*idle_timer, disableTimer()); // Simulate and idle timeout so that the filter chain gets created. - idle_timer->callback_(); + idle_timer->invokeCallback(); })); // This should not be called as we don't have request headers. @@ -1489,7 +1491,7 @@ TEST_F(HttpConnectionManagerImplTest, TestStreamIdleAccessLog) { // encodeHeaders()/encodeData(). EXPECT_CALL(*idle_timer, enableTimer(_)).Times(2); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); })); std::shared_ptr filter(new NiceMock()); @@ -1597,7 +1599,7 @@ TEST_F(HttpConnectionManagerImplTest, PerStreamIdleTimeoutAfterDownstreamHeaders // encodeHeaders()/encodeData(). EXPECT_CALL(*idle_timer, enableTimer(_)).Times(2); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); data.drain(4); })); @@ -1669,7 +1671,7 @@ TEST_F(HttpConnectionManagerImplTest, PerStreamIdleTimeoutAfterDownstreamHeaders // encodeHeaders()/encodeData(). EXPECT_CALL(*idle_timer, enableTimer(_)).Times(2); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); data.drain(4); })); @@ -1720,7 +1722,7 @@ TEST_F(HttpConnectionManagerImplTest, PerStreamIdleTimeoutAfterUpstreamHeaders) filter->callbacks_->encodeHeaders(std::move(response_headers), false); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); data.drain(4); })); @@ -1784,7 +1786,7 @@ TEST_F(HttpConnectionManagerImplTest, PerStreamIdleTimeoutAfterBidiData) { filter->callbacks_->encodeData(fake_response, false); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); data.drain(4); })); @@ -1865,7 +1867,7 @@ TEST_F(HttpConnectionManagerImplTest, RequestTimeoutCallbackDisarmsAndReturns408 EXPECT_CALL(response_encoder_, encodeData(_, true)).WillOnce(AddBufferToString(&response_body)); conn_manager_->newStream(response_encoder_); - request_timer->callback_(); + request_timer->invokeCallback(); })); Buffer::OwnedImpl fake_input("1234"); @@ -2148,7 +2150,7 @@ TEST_F(HttpConnectionManagerImplTest, DrainClose) { EXPECT_CALL(filter_callbacks_.connection_, close(Network::ConnectionCloseType::FlushWriteAndDelay)); EXPECT_CALL(*drain_timer, disableTimer()); - drain_timer->callback_(); + drain_timer->invokeCallback(); EXPECT_EQ(1U, stats_.named_.downstream_cx_drain_close_.value()); EXPECT_EQ(1U, stats_.named_.downstream_rq_3xx_.value()); @@ -2381,7 +2383,7 @@ TEST_F(HttpConnectionManagerImplTest, IdleTimeoutNoCodec) { EXPECT_CALL(filter_callbacks_.connection_, close(Network::ConnectionCloseType::FlushWrite)); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); EXPECT_EQ(1U, stats_.named_.downstream_cx_idle_timeout_.value()); } @@ -2426,14 +2428,14 @@ TEST_F(HttpConnectionManagerImplTest, IdleTimeout) { Event::MockTimer* drain_timer = setUpTimer(); EXPECT_CALL(*drain_timer, enableTimer(_)); - idle_timer->callback_(); + idle_timer->invokeCallback(); EXPECT_CALL(*codec_, goAway()); EXPECT_CALL(filter_callbacks_.connection_, close(Network::ConnectionCloseType::FlushWriteAndDelay)); EXPECT_CALL(*idle_timer, disableTimer()); EXPECT_CALL(*drain_timer, disableTimer()); - drain_timer->callback_(); + drain_timer->invokeCallback(); EXPECT_EQ(1U, stats_.named_.downstream_cx_idle_timeout_.value()); } @@ -4189,51 +4191,6 @@ TEST_F(HttpConnectionManagerImplTest, DisableKeepAliveWhenOverloaded) { EXPECT_EQ(1U, stats_.named_.downstream_cx_overload_disable_keepalive_.value()); } -TEST_F(HttpConnectionManagerImplTest, OverlyLongHeadersRejected) { - setup(false, ""); - - std::string response_code; - std::string response_body; - EXPECT_CALL(*codec_, dispatch(_)).Times(1).WillOnce(Invoke([&](Buffer::Instance&) -> void { - StreamDecoder* decoder = &conn_manager_->newStream(response_encoder_); - HeaderMapPtr headers{ - new TestHeaderMapImpl{{":authority", "host"}, {":path", "/"}, {":method", "GET"}}}; - headers->addCopy(LowerCaseString("Foo"), std::string(60 * 1024, 'a')); - - EXPECT_CALL(response_encoder_, encodeHeaders(_, true)) - .WillOnce(Invoke([&response_code](const HeaderMap& headers, bool) -> void { - response_code = std::string(headers.Status()->value().getStringView()); - })); - decoder->decodeHeaders(std::move(headers), true); - conn_manager_->newStream(response_encoder_); - })); - - Buffer::OwnedImpl fake_input("1234"); - conn_manager_->onData(fake_input, false); // kick off request - - EXPECT_EQ("431", response_code); - EXPECT_EQ("", response_body); -} - -TEST_F(HttpConnectionManagerImplTest, OverlyLongHeadersAcceptedIfConfigured) { - max_request_headers_kb_ = 62; - setup(false, ""); - - EXPECT_CALL(*codec_, dispatch(_)).Times(1).WillOnce(Invoke([&](Buffer::Instance&) -> void { - StreamDecoder* decoder = &conn_manager_->newStream(response_encoder_); - HeaderMapPtr headers{ - new TestHeaderMapImpl{{":authority", "host"}, {":path", "/"}, {":method", "GET"}}}; - headers->addCopy(LowerCaseString("Foo"), std::string(60 * 1024, 'a')); - - EXPECT_CALL(response_encoder_, encodeHeaders(_, _)).Times(0); - decoder->decodeHeaders(std::move(headers), true); - conn_manager_->newStream(response_encoder_); - })); - - Buffer::OwnedImpl fake_input("1234"); - conn_manager_->onData(fake_input, false); // kick off request -} - TEST_F(HttpConnectionManagerImplTest, TestStopAllIterationAndBufferOnDecodingPathFirstFilter) { setup(false, "envoy-custom-server", false); setUpEncoderAndDecoder(true, true); diff --git a/test/common/http/conn_manager_utility_test.cc b/test/common/http/conn_manager_utility_test.cc index c228f99e3c309..b2179a4d42e57 100644 --- a/test/common/http/conn_manager_utility_test.cc +++ b/test/common/http/conn_manager_utility_test.cc @@ -56,6 +56,7 @@ class MockConnectionManagerConfig : public ConnectionManagerConfig { MOCK_METHOD0(generateRequestId, bool()); MOCK_CONST_METHOD0(preserveExternalRequestId, bool()); MOCK_CONST_METHOD0(maxRequestHeadersKb, uint32_t()); + MOCK_CONST_METHOD0(maxRequestHeadersCount, uint32_t()); MOCK_CONST_METHOD0(idleTimeout, absl::optional()); MOCK_CONST_METHOD0(streamIdleTimeout, std::chrono::milliseconds()); MOCK_CONST_METHOD0(requestTimeout, std::chrono::milliseconds()); diff --git a/test/common/http/date_provider_impl_test.cc b/test/common/http/date_provider_impl_test.cc index ea037ee0f8d9f..619a5f9a96e3a 100644 --- a/test/common/http/date_provider_impl_test.cc +++ b/test/common/http/date_provider_impl_test.cc @@ -27,7 +27,7 @@ TEST(DateProviderImplTest, All) { EXPECT_NE(nullptr, headers.Date()); EXPECT_CALL(*timer, enableTimer(std::chrono::milliseconds(500))); - timer->callback_(); + timer->invokeCallback(); headers.removeDate(); provider.setDateHeader(headers); diff --git a/test/common/http/header_map_impl_speed_test.cc b/test/common/http/header_map_impl_speed_test.cc index b8b67b2c155f2..fa78cfc888397 100644 --- a/test/common/http/header_map_impl_speed_test.cc +++ b/test/common/http/header_map_impl_speed_test.cc @@ -104,7 +104,7 @@ static void HeaderMapImplGetByteSize(benchmark::State& state) { addDummyHeaders(headers, state.range(0)); uint64_t size = 0; for (auto _ : state) { - size += headers.byteSize(); + size += headers.byteSize().value(); } benchmark::DoNotOptimize(size); } diff --git a/test/common/http/header_map_impl_test.cc b/test/common/http/header_map_impl_test.cc index 5ec8f8ab5f281..443f710fdfa05 100644 --- a/test/common/http/header_map_impl_test.cc +++ b/test/common/http/header_map_impl_test.cc @@ -366,6 +366,7 @@ TEST(HeaderMapImplTest, InlineInsert) { HeaderMapImpl headers; EXPECT_TRUE(headers.empty()); EXPECT_EQ(0, headers.size()); + EXPECT_EQ(headers.byteSize().value(), 0); EXPECT_EQ(nullptr, headers.Host()); headers.insertHost().value(std::string("hello")); EXPECT_FALSE(headers.empty()); @@ -375,6 +376,19 @@ TEST(HeaderMapImplTest, InlineInsert) { EXPECT_EQ("hello", headers.get(Headers::get().Host)->value().getStringView()); } +// Utility function for testing byteSize() against a manual byte count. +uint64_t countBytesForTest(const HeaderMapImpl& headers) { + uint64_t byte_size = 0; + headers.iterate( + [](const Http::HeaderEntry& header, void* context) -> Http::HeaderMap::Iterate { + auto* byte_size = static_cast(context); + *byte_size += header.key().getStringView().size() + header.value().getStringView().size(); + return Http::HeaderMap::Iterate::Continue; + }, + &byte_size); + return byte_size; +} + TEST(HeaderMapImplTest, MoveIntoInline) { HeaderMapImpl headers; HeaderString key; @@ -392,6 +406,7 @@ TEST(HeaderMapImplTest, MoveIntoInline) { headers.addViaMove(std::move(key2), std::move(value2)); EXPECT_EQ("cache-control", headers.CacheControl()->key().getStringView()); EXPECT_EQ("hello,there", headers.CacheControl()->value().getStringView()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); } TEST(HeaderMapImplTest, Remove) { @@ -401,6 +416,7 @@ TEST(HeaderMapImplTest, Remove) { LowerCaseString static_key("hello"); std::string ref_value("value"); headers.addReference(static_key, ref_value); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("value", headers.get(static_key)->value().getStringView()); EXPECT_EQ(HeaderString::Type::Reference, headers.get(static_key)->value().type()); EXPECT_EQ(1UL, headers.size()); @@ -409,9 +425,11 @@ TEST(HeaderMapImplTest, Remove) { EXPECT_EQ(nullptr, headers.get(static_key)); EXPECT_EQ(0UL, headers.size()); EXPECT_TRUE(headers.empty()); + EXPECT_EQ(headers.refreshByteSize(), 0); // Add and remove by inline. headers.insertContentLength().value(5); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); EXPECT_EQ("5", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); EXPECT_FALSE(headers.empty()); @@ -419,16 +437,19 @@ TEST(HeaderMapImplTest, Remove) { EXPECT_EQ(nullptr, headers.ContentLength()); EXPECT_EQ(0UL, headers.size()); EXPECT_TRUE(headers.empty()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); // Add inline and remove by name. headers.insertContentLength().value(5); EXPECT_EQ("5", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); EXPECT_FALSE(headers.empty()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); headers.remove(Headers::get().ContentLength); EXPECT_EQ(nullptr, headers.ContentLength()); EXPECT_EQ(0UL, headers.size()); EXPECT_TRUE(headers.empty()); + EXPECT_EQ(headers.refreshByteSize(), 0); } TEST(HeaderMapImplTest, RemoveRegex) { @@ -446,9 +467,11 @@ TEST(HeaderMapImplTest, RemoveRegex) { headers.addReference(key3, "value"); headers.addReference(key4, "value"); headers.addReference(key5, "value"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); // Test removing the first header, middle headers, and the end header. headers.removePrefix(LowerCaseString("x-prefix-")); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ(nullptr, headers.get(key1)); EXPECT_NE(nullptr, headers.get(key2)); EXPECT_EQ(nullptr, headers.get(key3)); @@ -456,7 +479,9 @@ TEST(HeaderMapImplTest, RemoveRegex) { EXPECT_EQ(nullptr, headers.get(key5)); // Remove all headers. + headers.refreshByteSize(); headers.removePrefix(LowerCaseString("")); + EXPECT_EQ(headers.byteSize().value(), 0); EXPECT_EQ(nullptr, headers.get(key2)); EXPECT_EQ(nullptr, headers.get(key4)); @@ -465,8 +490,10 @@ TEST(HeaderMapImplTest, RemoveRegex) { EXPECT_EQ("5", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); EXPECT_FALSE(headers.empty()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); headers.removePrefix(LowerCaseString("content")); EXPECT_EQ(nullptr, headers.ContentLength()); + EXPECT_EQ(headers.refreshByteSize(), 0); } TEST(HeaderMapImplTest, SetRemovesAllValues) { @@ -484,6 +511,7 @@ TEST(HeaderMapImplTest, SetRemovesAllValues) { headers.addReference(key2, ref_value2); headers.addReference(key1, ref_value3); headers.addReference(key1, ref_value4); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); using MockCb = testing::MockFunction; @@ -531,6 +559,7 @@ TEST(HeaderMapImplTest, DoubleInlineAdd) { const std::string bar("bar"); headers.addReference(Headers::get().ContentLength, foo); headers.addReference(Headers::get().ContentLength, bar); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("foo,bar", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); } @@ -538,6 +567,7 @@ TEST(HeaderMapImplTest, DoubleInlineAdd) { HeaderMapImpl headers; headers.addReferenceKey(Headers::get().ContentLength, "foo"); headers.addReferenceKey(Headers::get().ContentLength, "bar"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("foo,bar", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); } @@ -545,6 +575,7 @@ TEST(HeaderMapImplTest, DoubleInlineAdd) { HeaderMapImpl headers; headers.addReferenceKey(Headers::get().ContentLength, 5); headers.addReferenceKey(Headers::get().ContentLength, 6); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("5,6", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); } @@ -553,6 +584,7 @@ TEST(HeaderMapImplTest, DoubleInlineAdd) { const std::string foo("foo"); headers.addReference(Headers::get().ContentLength, foo); headers.addReferenceKey(Headers::get().ContentLength, 6); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("foo,6", headers.ContentLength()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); } @@ -580,6 +612,7 @@ TEST(HeaderMapImplTest, DoubleInlineSet) { HeaderMapImpl headers; headers.setReferenceKey(Headers::get().ContentType, "blah"); headers.setReferenceKey(Headers::get().ContentType, "text/html"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("text/html", headers.ContentType()->value().getStringView()); EXPECT_EQ(1UL, headers.size()); } @@ -588,6 +621,7 @@ TEST(HeaderMapImplTest, AddReferenceKey) { HeaderMapImpl headers; LowerCaseString foo("hello"); headers.addReferenceKey(foo, "world"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_NE("world", headers.get(foo)->value().getStringView().data()); EXPECT_EQ("world", headers.get(foo)->value().getStringView()); } @@ -596,10 +630,13 @@ TEST(HeaderMapImplTest, SetReferenceKey) { HeaderMapImpl headers; LowerCaseString foo("hello"); headers.setReferenceKey(foo, "world"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_NE("world", headers.get(foo)->value().getStringView().data()); EXPECT_EQ("world", headers.get(foo)->value().getStringView()); + headers.refreshByteSize(); headers.setReferenceKey(foo, "monde"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_NE("monde", headers.get(foo)->value().getStringView().data()); EXPECT_EQ("monde", headers.get(foo)->value().getStringView()); } @@ -610,6 +647,7 @@ TEST(HeaderMapImplTest, AddCopy) { // Start with a string value. std::unique_ptr lcKeyPtr(new LowerCaseString("hello")); headers.addCopy(*lcKeyPtr, "world"); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); const HeaderString& value = headers.get(*lcKeyPtr)->value(); @@ -629,14 +667,19 @@ TEST(HeaderMapImplTest, AddCopy) { // // addReferenceKey and addCopy can both add multiple instances of a // given header, so we need to delete the old "hello" header. + // Test that removing will return 0 byte size. + headers.refreshByteSize(); headers.remove(LowerCaseString("hello")); + EXPECT_EQ(headers.byteSize().value(), 0); // Build "hello" with string concatenation to make it unlikely that the // compiler is just reusing the same string constant for everything. lcKeyPtr = std::make_unique(std::string("he") + "llo"); EXPECT_STREQ("hello", lcKeyPtr->get().c_str()); + headers.refreshByteSize(); headers.addCopy(*lcKeyPtr, 42); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); const HeaderString& value3 = headers.get(*lcKeyPtr)->value(); @@ -662,15 +705,20 @@ TEST(HeaderMapImplTest, AddCopy) { headers.addCopy(cache_control, "max-age=1345"); EXPECT_EQ("max-age=1345", headers.get(cache_control)->value().getStringView()); EXPECT_EQ("max-age=1345", headers.CacheControl()->value().getStringView()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); headers.addCopy(cache_control, "public"); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); EXPECT_EQ("max-age=1345,public", headers.get(cache_control)->value().getStringView()); headers.addCopy(cache_control, ""); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); EXPECT_EQ("max-age=1345,public", headers.get(cache_control)->value().getStringView()); headers.addCopy(cache_control, 123); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); EXPECT_EQ("max-age=1345,public,123", headers.get(cache_control)->value().getStringView()); headers.addCopy(cache_control, std::numeric_limits::max()); EXPECT_EQ("max-age=1345,public,123,18446744073709551615", headers.get(cache_control)->value().getStringView()); + EXPECT_EQ(headers.refreshByteSize(), countBytesForTest(headers)); } TEST(HeaderMapImplTest, Equality) { @@ -690,6 +738,7 @@ TEST(HeaderMapImplTest, LargeCharInHeader) { LowerCaseString static_key("\x90hello"); std::string ref_value("value"); headers.addReference(static_key, ref_value); + EXPECT_EQ(headers.byteSize().value(), countBytesForTest(headers)); EXPECT_EQ("value", headers.get(static_key)->value().getStringView()); } @@ -844,6 +893,7 @@ TEST(HeaderMapImplTest, PseudoHeaderOrder) { { LowerCaseString foo("hello"); Http::TestHeaderMapImpl headers{}; + EXPECT_EQ(headers.refreshByteSize(), 0); EXPECT_EQ(0UL, headers.size()); EXPECT_TRUE(headers.empty()); diff --git a/test/common/http/http1/codec_impl_test.cc b/test/common/http/http1/codec_impl_test.cc index f2b04b6e088ab..e96d0748fa96c 100644 --- a/test/common/http/http1/codec_impl_test.cc +++ b/test/common/http/http1/codec_impl_test.cc @@ -36,6 +36,17 @@ namespace Envoy { namespace Http { namespace Http1 { +namespace { +std::string createHeaderFragment(int num_headers) { + // Create a header field with num_headers headers. + std::string headers; + for (int i = 0; i < num_headers; i++) { + headers += "header" + std::to_string(i) + ": " + "\r\n"; + } + return headers; +} +} // namespace + class Http1ServerConnectionImplTest : public testing::Test { public: Http1ServerConnectionImplTest() : api_(Api::createApiForTest()) { @@ -50,8 +61,9 @@ class Http1ServerConnectionImplTest : public testing::Test { } void initialize() { - codec_ = std::make_unique(connection_, store_, callbacks_, - codec_settings_, max_request_headers_kb_); + codec_ = + std::make_unique(connection_, store_, callbacks_, codec_settings_, + max_request_headers_kb_, max_request_headers_count_); } NiceMock connection_; @@ -62,6 +74,8 @@ class Http1ServerConnectionImplTest : public testing::Test { void expectHeadersTest(Protocol p, bool allow_absolute_url, Buffer::OwnedImpl& buffer, TestHeaderMapImpl& expected_headers); void expect400(Protocol p, bool allow_absolute_url, Buffer::OwnedImpl& buffer); + void testRequestHeadersExceedLimit(std::string header_string); + void testRequestHeadersAccepted(std::string header_string); protected: uint32_t max_request_headers_kb_{Http::DEFAULT_MAX_REQUEST_HEADERS_KB}; @@ -74,6 +88,7 @@ class Http1ServerConnectionImplTest : public testing::Test { Init::MockManager init_manager_; NiceMock validation_visitor_; std::unique_ptr loader_; + uint32_t max_request_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; }; void Http1ServerConnectionImplTest::expect400(Protocol p, bool allow_absolute_url, @@ -85,8 +100,9 @@ void Http1ServerConnectionImplTest::expect400(Protocol p, bool allow_absolute_ur if (allow_absolute_url) { codec_settings_.allow_absolute_url_ = allow_absolute_url; - codec_ = std::make_unique(connection_, store_, callbacks_, - codec_settings_, max_request_headers_kb_); + codec_ = + std::make_unique(connection_, store_, callbacks_, codec_settings_, + max_request_headers_kb_, max_request_headers_count_); } Http::MockStreamDecoder decoder; @@ -105,8 +121,9 @@ void Http1ServerConnectionImplTest::expectHeadersTest(Protocol p, bool allow_abs // Make a new 'codec' with the right settings if (allow_absolute_url) { codec_settings_.allow_absolute_url_ = allow_absolute_url; - codec_ = std::make_unique(connection_, store_, callbacks_, - codec_settings_, max_request_headers_kb_); + codec_ = + std::make_unique(connection_, store_, callbacks_, codec_settings_, + max_request_headers_kb_, max_request_headers_count_); } Http::MockStreamDecoder decoder; @@ -118,6 +135,41 @@ void Http1ServerConnectionImplTest::expectHeadersTest(Protocol p, bool allow_abs EXPECT_EQ(p, codec_->protocol()); } +void Http1ServerConnectionImplTest::testRequestHeadersExceedLimit(std::string header_string) { + initialize(); + + std::string exception_reason; + NiceMock decoder; + Http::StreamEncoder* response_encoder = nullptr; + EXPECT_CALL(callbacks_, newStream(_, _)) + .WillOnce(Invoke([&](Http::StreamEncoder& encoder, bool) -> Http::StreamDecoder& { + response_encoder = &encoder; + return decoder; + })); + + Buffer::OwnedImpl buffer("GET / HTTP/1.1\r\n"); + codec_->dispatch(buffer); + buffer = Buffer::OwnedImpl(header_string + "\r\n"); + EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); +} + +void Http1ServerConnectionImplTest::testRequestHeadersAccepted(std::string header_string) { + initialize(); + + NiceMock decoder; + Http::StreamEncoder* response_encoder = nullptr; + EXPECT_CALL(callbacks_, newStream(_, _)) + .WillOnce(Invoke([&](Http::StreamEncoder& encoder, bool) -> Http::StreamDecoder& { + response_encoder = &encoder; + return decoder; + })); + + Buffer::OwnedImpl buffer("GET / HTTP/1.1\r\n"); + codec_->dispatch(buffer); + buffer = Buffer::OwnedImpl(header_string + "\r\n"); + codec_->dispatch(buffer); +} + TEST_F(Http1ServerConnectionImplTest, EmptyHeader) { initialize(); @@ -742,6 +794,43 @@ TEST_F(Http1ServerConnectionImplTest, RequestWithTrailers) { EXPECT_EQ(0U, buffer.length()); } +TEST_F(Http1ServerConnectionImplTest, IgnoreUpgradeH2c) { + initialize(); + + TestHeaderMapImpl expected_headers{ + {":authority", "www.somewhere.com"}, {":path", "/"}, {":method", "GET"}}; + Buffer::OwnedImpl buffer( + "GET http://www.somewhere.com/ HTTP/1.1\r\nConnection: " + "Upgrade, HTTP2-Settings\r\nUpgrade: h2c\r\nHTTP2-Settings: token64\r\nHost: bah\r\n\r\n"); + expectHeadersTest(Protocol::Http11, true, buffer, expected_headers); +} + +TEST_F(Http1ServerConnectionImplTest, IgnoreUpgradeH2cClose) { + initialize(); + + TestHeaderMapImpl expected_headers{{":authority", "www.somewhere.com"}, + {":path", "/"}, + {":method", "GET"}, + {"connection", "Close"}}; + Buffer::OwnedImpl buffer("GET http://www.somewhere.com/ HTTP/1.1\r\nConnection: " + "Upgrade, Close, HTTP2-Settings\r\nUpgrade: h2c\r\nHTTP2-Settings: " + "token64\r\nHost: bah\r\n\r\n"); + expectHeadersTest(Protocol::Http11, true, buffer, expected_headers); +} + +TEST_F(Http1ServerConnectionImplTest, IgnoreUpgradeH2cCloseEtc) { + initialize(); + + TestHeaderMapImpl expected_headers{{":authority", "www.somewhere.com"}, + {":path", "/"}, + {":method", "GET"}, + {"connection", "Close,Etc"}}; + Buffer::OwnedImpl buffer("GET http://www.somewhere.com/ HTTP/1.1\r\nConnection: " + "Upgrade, Close, HTTP2-Settings, Etc\r\nUpgrade: h2c\r\nHTTP2-Settings: " + "token64\r\nHost: bah\r\n\r\n"); + expectHeadersTest(Protocol::Http11, true, buffer, expected_headers); +} + TEST_F(Http1ServerConnectionImplTest, UpgradeRequest) { initialize(); @@ -861,7 +950,8 @@ class Http1ClientConnectionImplTest : public testing::Test { } void initialize() { - codec_ = std::make_unique(connection_, store_, callbacks_); + codec_ = std::make_unique(connection_, store_, callbacks_, + max_response_headers_count_); } NiceMock connection_; @@ -878,6 +968,7 @@ class Http1ClientConnectionImplTest : public testing::Test { Init::MockManager init_manager_; NiceMock validation_visitor_; std::unique_ptr loader_; + uint32_t max_response_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; }; TEST_F(Http1ClientConnectionImplTest, SimpleGet) { @@ -1218,27 +1309,19 @@ TEST_F(Http1ClientConnectionImplTest, HighwatermarkMultipleResponses) { static_cast(codec_.get()) ->onUnderlyingConnectionBelowWriteBufferLowWatermark(); } -TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersRejected) { +TEST_F(Http1ServerConnectionImplTest, LargeRequestHeadersRejected) { // Default limit of 60 KiB - initialize(); - - std::string exception_reason; - NiceMock decoder; - Http::StreamEncoder* response_encoder = nullptr; - EXPECT_CALL(callbacks_, newStream(_, _)) - .WillOnce(Invoke([&](Http::StreamEncoder& encoder, bool) -> Http::StreamDecoder& { - response_encoder = &encoder; - return decoder; - })); - - Buffer::OwnedImpl buffer("GET / HTTP/1.1\r\n"); - codec_->dispatch(buffer); std::string long_string = "big: " + std::string(60 * 1024, 'q') + "\r\n"; - buffer = Buffer::OwnedImpl(long_string); - EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); + testRequestHeadersExceedLimit(long_string); +} + +// Tests that the default limit for the number of request headers is 100. +TEST_F(Http1ServerConnectionImplTest, ManyRequestHeadersRejected) { + // Send a request with 101 headers. + testRequestHeadersExceedLimit(createHeaderFragment(101)); } -TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersSplitRejected) { +TEST_F(Http1ServerConnectionImplTest, LargeRequestHeadersSplitRejected) { // Default limit of 60 KiB initialize(); @@ -1263,10 +1346,13 @@ TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersSplitRejected) { EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); } -TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersAccepted) { - max_request_headers_kb_ = 65; +// Tests that the 101th request header causes overflow with the default max number of request +// headers. +TEST_F(Http1ServerConnectionImplTest, ManyRequestHeadersSplitRejected) { + // Default limit of 100. initialize(); + std::string exception_reason; NiceMock decoder; Http::StreamEncoder* response_encoder = nullptr; EXPECT_CALL(callbacks_, newStream(_, _)) @@ -1274,34 +1360,39 @@ TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersAccepted) { response_encoder = &encoder; return decoder; })); - Buffer::OwnedImpl buffer("GET / HTTP/1.1\r\n"); codec_->dispatch(buffer); - std::string long_string = "big: " + std::string(64 * 1024, 'q') + "\r\n"; - buffer = Buffer::OwnedImpl(long_string); + + // Dispatch 100 headers. + buffer = Buffer::OwnedImpl(createHeaderFragment(100)); codec_->dispatch(buffer); -} -TEST_F(Http1ServerConnectionImplTest, TestLargeRequestHeadersAcceptedMaxConfigurable) { - max_request_headers_kb_ = 96; - initialize(); + // The final 101th header should induce overflow. + buffer = Buffer::OwnedImpl("header101:\r\n\r\n"); + EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); +} - NiceMock decoder; - Http::StreamEncoder* response_encoder = nullptr; - EXPECT_CALL(callbacks_, newStream(_, _)) - .WillOnce(Invoke([&](Http::StreamEncoder& encoder, bool) -> Http::StreamDecoder& { - response_encoder = &encoder; - return decoder; - })); +TEST_F(Http1ServerConnectionImplTest, LargeRequestHeadersAccepted) { + max_request_headers_kb_ = 65; + std::string long_string = "big: " + std::string(64 * 1024, 'q') + "\r\n"; + testRequestHeadersAccepted(long_string); +} - Buffer::OwnedImpl buffer("GET / HTTP/1.1\r\n"); - codec_->dispatch(buffer); +TEST_F(Http1ServerConnectionImplTest, LargeRequestHeadersAcceptedMaxConfigurable) { + max_request_headers_kb_ = 96; std::string long_string = "big: " + std::string(95 * 1024, 'q') + "\r\n"; - buffer = Buffer::OwnedImpl(long_string); - codec_->dispatch(buffer); + testRequestHeadersAccepted(long_string); +} + +// Tests that the number of request headers is configurable. +TEST_F(Http1ServerConnectionImplTest, ManyRequestHeadersAccepted) { + max_request_headers_count_ = 150; + // Create a request with 150 headers. + testRequestHeadersAccepted(createHeaderFragment(150)); } -TEST_F(Http1ClientConnectionImplTest, TestLargeResponseHeadersRejected) { +// Tests that response headers of 80 kB fails. +TEST_F(Http1ClientConnectionImplTest, LargeResponseHeadersRejected) { initialize(); NiceMock response_decoder; @@ -1316,7 +1407,8 @@ TEST_F(Http1ClientConnectionImplTest, TestLargeResponseHeadersRejected) { EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); } -TEST_F(Http1ClientConnectionImplTest, TestLargeResponseHeadersAccepted) { +// Tests that the size of response headers for HTTP/1 must be under 80 kB. +TEST_F(Http1ClientConnectionImplTest, LargeResponseHeadersAccepted) { initialize(); NiceMock response_decoder; @@ -1331,6 +1423,39 @@ TEST_F(Http1ClientConnectionImplTest, TestLargeResponseHeadersAccepted) { codec_->dispatch(buffer); } +// Exception called when the number of response headers exceeds the default value of 100. +TEST_F(Http1ClientConnectionImplTest, ManyResponseHeadersRejected) { + initialize(); + + NiceMock response_decoder; + Http::StreamEncoder& request_encoder = codec_->newStream(response_decoder); + TestHeaderMapImpl headers{{":method", "GET"}, {":path", "/"}, {":authority", "host"}}; + request_encoder.encodeHeaders(headers, true); + + Buffer::OwnedImpl buffer("HTTP/1.1 200 OK\r\nContent-Length: 0\r\n"); + codec_->dispatch(buffer); + buffer = Buffer::OwnedImpl(createHeaderFragment(101) + "\r\n"); + EXPECT_THROW_WITH_MESSAGE(codec_->dispatch(buffer), EnvoyException, "headers size exceeds limit"); +} + +// Tests that the number of response headers is configurable. +TEST_F(Http1ClientConnectionImplTest, ManyResponseHeadersAccepted) { + max_response_headers_count_ = 152; + + initialize(); + + NiceMock response_decoder; + Http::StreamEncoder& request_encoder = codec_->newStream(response_decoder); + TestHeaderMapImpl headers{{":method", "GET"}, {":path", "/"}, {":authority", "host"}}; + request_encoder.encodeHeaders(headers, true); + + Buffer::OwnedImpl buffer("HTTP/1.1 200 OK\r\nContent-Length: 0\r\n"); + codec_->dispatch(buffer); + // Response already contains one header. + buffer = Buffer::OwnedImpl(createHeaderFragment(150) + "\r\n"); + codec_->dispatch(buffer); +} + } // namespace Http1 } // namespace Http } // namespace Envoy diff --git a/test/common/http/http1/conn_pool_test.cc b/test/common/http/http1/conn_pool_test.cc index adc3e10472f94..d91c9cd862a71 100644 --- a/test/common/http/http1/conn_pool_test.cc +++ b/test/common/http/http1/conn_pool_test.cc @@ -109,7 +109,7 @@ class ConnPoolImplForTest : public ConnPoolImpl { void expectAndRunUpstreamReady() { EXPECT_TRUE(upstream_ready_enabled_); - mock_upstream_ready_timer_->callback_(); + mock_upstream_ready_timer_->invokeCallback(); EXPECT_FALSE(upstream_ready_enabled_); } @@ -400,10 +400,10 @@ TEST_F(Http1ConnPoolImplTest, ConnectTimeout) { EXPECT_NE(nullptr, conn_pool_.newStream(outer_decoder2, callbacks2)); })); - conn_pool_.test_clients_[0].connect_timer_->callback_(); + conn_pool_.test_clients_[0].connect_timer_->invokeCallback(); EXPECT_CALL(callbacks2.pool_failure_, ready()); - conn_pool_.test_clients_[1].connect_timer_->callback_(); + conn_pool_.test_clients_[1].connect_timer_->invokeCallback(); EXPECT_CALL(conn_pool_, onClientDestroy()).Times(2); dispatcher_.clearDeferredDeleteList(); diff --git a/test/common/http/http2/codec_impl_test.cc b/test/common/http/http2/codec_impl_test.cc index e738c140aff01..e406cb3ef9283 100644 --- a/test/common/http/http2/codec_impl_test.cc +++ b/test/common/http/http2/codec_impl_test.cc @@ -64,12 +64,12 @@ class Http2CodecImplTestFixture { virtual void initialize() { Http2SettingsFromTuple(client_http2settings_, client_settings_); Http2SettingsFromTuple(server_http2settings_, server_settings_); - client_ = std::make_unique(client_connection_, client_callbacks_, - stats_store_, client_http2settings_, - max_request_headers_kb_); - server_ = std::make_unique(server_connection_, server_callbacks_, - stats_store_, server_http2settings_, - max_request_headers_kb_); + client_ = std::make_unique( + client_connection_, client_callbacks_, stats_store_, client_http2settings_, + max_request_headers_kb_, max_response_headers_count_); + server_ = std::make_unique( + server_connection_, server_callbacks_, stats_store_, server_http2settings_, + max_request_headers_kb_, max_request_headers_count_); request_encoder_ = &client_->newStream(response_decoder_); setupDefaultConnectionMocks(); @@ -155,6 +155,8 @@ class Http2CodecImplTestFixture { bool corrupt_metadata_frame_ = false; uint32_t max_request_headers_kb_ = Http::DEFAULT_MAX_REQUEST_HEADERS_KB; + uint32_t max_request_headers_count_ = Http::DEFAULT_MAX_HEADERS_COUNT; + uint32_t max_response_headers_count_ = Http::DEFAULT_MAX_HEADERS_COUNT; uint32_t max_outbound_frames_ = Http2Settings::DEFAULT_MAX_OUTBOUND_FRAMES; uint32_t max_outbound_control_frames_ = Http2Settings::DEFAULT_MAX_OUTBOUND_CONTROL_FRAMES; uint32_t max_consecutive_inbound_frames_with_empty_payload_ = @@ -964,12 +966,12 @@ class Http2CodecImplStreamLimitTest : public Http2CodecImplTest {}; TEST_P(Http2CodecImplStreamLimitTest, MaxClientStreams) { Http2SettingsFromTuple(client_http2settings_, ::testing::get<0>(GetParam())); Http2SettingsFromTuple(server_http2settings_, ::testing::get<1>(GetParam())); - client_ = std::make_unique(client_connection_, client_callbacks_, - stats_store_, client_http2settings_, - max_request_headers_kb_); - server_ = std::make_unique(server_connection_, server_callbacks_, - stats_store_, server_http2settings_, - max_request_headers_kb_); + client_ = std::make_unique( + client_connection_, client_callbacks_, stats_store_, client_http2settings_, + max_request_headers_kb_, max_response_headers_count_); + server_ = std::make_unique( + server_connection_, server_callbacks_, stats_store_, server_http2settings_, + max_request_headers_kb_, max_request_headers_count_); for (int i = 0; i < 101; ++i) { request_encoder_ = &client_->newStream(response_decoder_); @@ -1077,7 +1079,8 @@ TEST(Http2CodecUtility, reconstituteCrumbledCookies) { } } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersInvokeResetStream) { +// Tests request headers whose size is larger than the default limit of 60K. +TEST_P(Http2CodecImplTest, LargeRequestHeadersInvokeResetStream) { initialize(); TestHeaderMapImpl request_headers; @@ -1088,7 +1091,8 @@ TEST_P(Http2CodecImplTest, TestLargeRequestHeadersInvokeResetStream) { request_encoder_->encodeHeaders(request_headers, false); } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersAccepted) { +// Large request headers are accepted when max limit configured. +TEST_P(Http2CodecImplTest, LargeRequestHeadersAccepted) { max_request_headers_kb_ = 64; initialize(); @@ -1102,30 +1106,78 @@ TEST_P(Http2CodecImplTest, TestLargeRequestHeadersAccepted) { request_encoder_->encodeHeaders(request_headers, false); } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersAtLimitAccepted) { +// Tests stream reset when the number of request headers exceeds the default maximum of 100. +TEST_P(Http2CodecImplTest, ManyRequestHeadersInvokeResetStream) { + initialize(); + + TestHeaderMapImpl request_headers; + HttpTestUtility::addDefaultHeaders(request_headers); + for (int i = 0; i < 100; i++) { + request_headers.addCopy(std::to_string(i), ""); + } + EXPECT_CALL(server_stream_callbacks_, onResetStream(_, _)).Times(1); + request_encoder_->encodeHeaders(request_headers, false); +} + +// Tests that max number of request headers is configurable. +TEST_P(Http2CodecImplTest, ManyRequestHeadersAccepted) { + max_request_headers_count_ = 150; + initialize(); + + TestHeaderMapImpl request_headers; + HttpTestUtility::addDefaultHeaders(request_headers); + for (int i = 0; i < 145; i++) { + request_headers.addCopy(std::to_string(i), ""); + } + EXPECT_CALL(request_decoder_, decodeHeaders_(_, _)); + EXPECT_CALL(server_stream_callbacks_, onResetStream(_, _)).Times(0); + request_encoder_->encodeHeaders(request_headers, false); +} + +// Tests that max number of response headers is configurable. +TEST_P(Http2CodecImplTest, ManyResponseHeadersAccepted) { + max_response_headers_count_ = 110; + initialize(); + + TestHeaderMapImpl request_headers; + HttpTestUtility::addDefaultHeaders(request_headers); + EXPECT_CALL(request_decoder_, decodeHeaders_(_, false)); + request_encoder_->encodeHeaders(request_headers, false); + + TestHeaderMapImpl response_headers{{":status", "200"}, {"compression", "test"}}; + for (int i = 0; i < 105; i++) { + response_headers.addCopy(std::to_string(i), ""); + } + EXPECT_CALL(response_decoder_, decodeHeaders_(_, true)); + response_encoder_->encodeHeaders(response_headers, true); +} + +TEST_P(Http2CodecImplTest, LargeRequestHeadersAtLimitAccepted) { uint32_t codec_limit_kb = 64; max_request_headers_kb_ = codec_limit_kb; initialize(); TestHeaderMapImpl request_headers; HttpTestUtility::addDefaultHeaders(request_headers); + // Refresh byte size after adding default inline headers by reference. + request_headers.refreshByteSize(); std::string key = "big"; uint32_t head_room = 77; uint32_t long_string_length = - codec_limit_kb * 1024 - request_headers.byteSize() - key.length() - head_room; + codec_limit_kb * 1024 - request_headers.byteSize().value() - key.length() - head_room; std::string long_string = std::string(long_string_length, 'q'); request_headers.addCopy(key, long_string); // The amount of data sent to the codec is not equivalent to the size of the // request headers that Envoy computes, as the codec limits based on the // entire http2 frame. The exact head room needed (76) was found through iteration. - ASSERT_EQ(request_headers.byteSize() + head_room, codec_limit_kb * 1024); + ASSERT_EQ(request_headers.byteSize().value() + head_room, codec_limit_kb * 1024); EXPECT_CALL(request_decoder_, decodeHeaders_(_, _)); request_encoder_->encodeHeaders(request_headers, true); } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersOverDefaultCodecLibraryLimit) { +TEST_P(Http2CodecImplTest, LargeRequestHeadersOverDefaultCodecLibraryLimit) { max_request_headers_kb_ = 66; initialize(); @@ -1139,7 +1191,7 @@ TEST_P(Http2CodecImplTest, TestLargeRequestHeadersOverDefaultCodecLibraryLimit) request_encoder_->encodeHeaders(request_headers, true); } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersExceedPerHeaderLimit) { +TEST_P(Http2CodecImplTest, LargeRequestHeadersExceedPerHeaderLimit) { // The name-value pair max is set by NGHTTP2_HD_MAX_NV in lib/nghttp2_hd.h to 64KB, and // creates a per-request header limit for us in h2. Note that the nghttp2 // calculated byte size will differ from envoy due to H2 compression and frames. @@ -1159,7 +1211,7 @@ TEST_P(Http2CodecImplTest, TestLargeRequestHeadersExceedPerHeaderLimit) { request_encoder_->encodeHeaders(request_headers, true); } -TEST_P(Http2CodecImplTest, TestManyLargeRequestHeadersUnderPerHeaderLimit) { +TEST_P(Http2CodecImplTest, ManyLargeRequestHeadersUnderPerHeaderLimit) { max_request_headers_kb_ = 81; initialize(); @@ -1175,7 +1227,7 @@ TEST_P(Http2CodecImplTest, TestManyLargeRequestHeadersUnderPerHeaderLimit) { request_encoder_->encodeHeaders(request_headers, true); } -TEST_P(Http2CodecImplTest, TestLargeRequestHeadersAtMaxConfigurable) { +TEST_P(Http2CodecImplTest, LargeRequestHeadersAtMaxConfigurable) { // Raising the limit past this triggers some unexpected nghttp2 error. // Further debugging required to increase past ~96 KiB. max_request_headers_kb_ = 96; diff --git a/test/common/http/http2/codec_impl_test_util.h b/test/common/http/http2/codec_impl_test_util.h index 2c4652ee0f2f9..67521db0fec86 100644 --- a/test/common/http/http2/codec_impl_test_util.h +++ b/test/common/http/http2/codec_impl_test_util.h @@ -10,9 +10,9 @@ class TestServerConnectionImpl : public ServerConnectionImpl { public: TestServerConnectionImpl(Network::Connection& connection, ServerConnectionCallbacks& callbacks, Stats::Scope& scope, const Http2Settings& http2_settings, - uint32_t max_request_headers_kb) - : ServerConnectionImpl(connection, callbacks, scope, http2_settings, max_request_headers_kb) { - } + uint32_t max_request_headers_kb, uint32_t max_request_headers_count) + : ServerConnectionImpl(connection, callbacks, scope, http2_settings, max_request_headers_kb, + max_request_headers_count) {} nghttp2_session* session() { return session_; } using ServerConnectionImpl::getStream; }; @@ -21,9 +21,9 @@ class TestClientConnectionImpl : public ClientConnectionImpl { public: TestClientConnectionImpl(Network::Connection& connection, Http::ConnectionCallbacks& callbacks, Stats::Scope& scope, const Http2Settings& http2_settings, - uint32_t max_request_headers_kb) - : ClientConnectionImpl(connection, callbacks, scope, http2_settings, max_request_headers_kb) { - } + uint32_t max_request_headers_kb, uint32_t max_request_headers_count) + : ClientConnectionImpl(connection, callbacks, scope, http2_settings, max_request_headers_kb, + max_request_headers_count) {} nghttp2_session* session() { return session_; } using ClientConnectionImpl::getStream; using ConnectionImpl::sendPendingFrames; diff --git a/test/common/http/http2/conn_pool_test.cc b/test/common/http/http2/conn_pool_test.cc index 9a17581301c78..6490da7337e1b 100644 --- a/test/common/http/http2/conn_pool_test.cc +++ b/test/common/http/http2/conn_pool_test.cc @@ -622,7 +622,7 @@ TEST_F(Http2ConnPoolImplTest, ConnectTimeout) { expectClientCreate(); ActiveTestRequest r1(*this, 0, false); EXPECT_CALL(r1.callbacks_.pool_failure_, ready()); - test_clients_[0].connect_timer_->callback_(); + test_clients_[0].connect_timer_->invokeCallback(); EXPECT_CALL(*this, onClientDestroy()); dispatcher_.clearDeferredDeleteList(); diff --git a/test/common/http/http2/frame_replay.cc b/test/common/http/http2/frame_replay.cc index 7d2fe1cc7ae61..9bb17224048e3 100644 --- a/test/common/http/http2/frame_replay.cc +++ b/test/common/http/http2/frame_replay.cc @@ -67,9 +67,9 @@ CodecFrameInjector::CodecFrameInjector(const std::string& injector_name) } ClientCodecFrameInjector::ClientCodecFrameInjector() : CodecFrameInjector("server") { - auto client = std::make_unique(client_connection_, client_callbacks_, - stats_store_, settings_, - Http::DEFAULT_MAX_REQUEST_HEADERS_KB); + auto client = std::make_unique( + client_connection_, client_callbacks_, stats_store_, settings_, + Http::DEFAULT_MAX_REQUEST_HEADERS_KB, Http::DEFAULT_MAX_HEADERS_COUNT); request_encoder_ = &client->newStream(response_decoder_); connection_ = std::move(client); ON_CALL(client_connection_, write(_, _)) @@ -87,9 +87,9 @@ ClientCodecFrameInjector::ClientCodecFrameInjector() : CodecFrameInjector("serve } ServerCodecFrameInjector::ServerCodecFrameInjector() : CodecFrameInjector("client") { - connection_ = std::make_unique(server_connection_, server_callbacks_, - stats_store_, settings_, - Http::DEFAULT_MAX_REQUEST_HEADERS_KB); + connection_ = std::make_unique( + server_connection_, server_callbacks_, stats_store_, settings_, + Http::DEFAULT_MAX_REQUEST_HEADERS_KB, Http::DEFAULT_MAX_HEADERS_COUNT); EXPECT_CALL(server_callbacks_, newStream(_, _)) .WillRepeatedly(Invoke([&](StreamEncoder& encoder, bool) -> StreamDecoder& { encoder.getStream().addCallbacks(server_stream_callbacks_); diff --git a/test/common/json/config_schemas_test_data/test_access_log_schema.py b/test/common/json/config_schemas_test_data/test_access_log_schema.py index 9cf78f4e10591..09aae16580956 100644 --- a/test/common/json/config_schemas_test_data/test_access_log_schema.py +++ b/test/common/json/config_schemas_test_data/test_access_log_schema.py @@ -5,7 +5,7 @@ "access_log": [{ "filter": { "type": - "logical_and", + "logical_and", "filters": [{ "type": "not_healthcheck" }, { @@ -14,32 +14,30 @@ }] }, "path": "/var/log/envoy/access.log" - }, - { - "filter": { - "type": - "logical_or", - "filters": [{ - "runtime_key": "access_log.access_error.status", - "type": "status_code", - "value": 500, - "op": ">=" - }, { - "type": "status_code", - "value": 429, - "op": "=" - }, - { - "runtime_key": "access_log.access_error.duration", - "type": "duration", - "value": 1000, - "op": ">=" - }, { - "type": "traceable_request" - }] - }, - "path": "/var/log/envoy/access_error.log" - }] + }, { + "filter": { + "type": + "logical_or", + "filters": [{ + "runtime_key": "access_log.access_error.status", + "type": "status_code", + "value": 500, + "op": ">=" + }, { + "type": "status_code", + "value": 429, + "op": "=" + }, { + "runtime_key": "access_log.access_error.duration", + "type": "duration", + "value": 1000, + "op": ">=" + }, { + "type": "traceable_request" + }] + }, + "path": "/var/log/envoy/access_error.log" + }] } diff --git a/test/common/json/config_schemas_test_data/test_http_conn_network_filter_schema.py b/test/common/json/config_schemas_test_data/test_http_conn_network_filter_schema.py index 3c1fa0c6c8d1f..e7566cdfcf6a1 100644 --- a/test/common/json/config_schemas_test_data/test_http_conn_network_filter_schema.py +++ b/test/common/json/config_schemas_test_data/test_http_conn_network_filter_schema.py @@ -2,14 +2,10 @@ from util import true, false HTTP_CONN_NETWORK_FILTER_BLOB = { - "idle_timeout_s": - 300, - "stat_prefix": - "router", - "use_remote_address": - true, - "server_name": - "envoy-123", + "idle_timeout_s": 300, + "stat_prefix": "router", + "use_remote_address": true, + "server_name": "envoy-123", "access_log": [], "tracing": { "request_headers_for_tags": ["x-source"], @@ -26,10 +22,8 @@ "name": "router" }], "route_config": {}, - "add_user_agent": - true, - "codec_type": - "auto" + "add_user_agent": true, + "codec_type": "auto" } diff --git a/test/common/json/config_schemas_test_data/test_route_configuration_schema.py b/test/common/json/config_schemas_test_data/test_route_configuration_schema.py index 841fbb64805c5..fb492747e1fb8 100644 --- a/test/common/json/config_schemas_test_data/test_route_configuration_schema.py +++ b/test/common/json/config_schemas_test_data/test_route_configuration_schema.py @@ -5,12 +5,10 @@ "virtual_hosts": [{ "domains": ["production.example.com"], "require_ssl": "all", - "routes": [ - { - "host_redirect": "example.com", - "prefix": "/" - }, - ], + "routes": [{ + "host_redirect": "example.com", + "prefix": "/" + },], "name": "production_redirect" }], "internal_only_headers": ["x-role", "x-source"], diff --git a/test/common/network/connection_impl_test.cc b/test/common/network/connection_impl_test.cc index e4f280e96a176..734734f09bfcb 100644 --- a/test/common/network/connection_impl_test.cc +++ b/test/common/network/connection_impl_test.cc @@ -1247,7 +1247,7 @@ TEST_P(ConnectionImplTest, DelayedCloseTimerResetWithPendingWriteBufferFlushes) (*mocks.file_ready_cb_)(Event::FileReadyType::Write); // Force the delayed close timeout to trigger so the connection is cleaned up. - mocks.timer_->callback_(); + mocks.timer_->invokeCallback(); } // Test that tearing down the connection will disable the delayed close timer. @@ -1321,16 +1321,9 @@ TEST_P(ConnectionImplTest, DelayedCloseTimeoutNullStats) { EXPECT_CALL(*mocks.timer_, enableTimer(_)).Times(1); server_connection->close(ConnectionCloseType::FlushWriteAndDelay); EXPECT_CALL(*mocks.timer_, disableTimer()).Times(1); - // Copy the callback since mocks.timer will be freed when closeSocket() is called. - Event::TimerCb callback = mocks.timer_->callback_; // The following close() will call closeSocket() and reset internal data structures such as // stats. server_connection->close(ConnectionCloseType::NoFlush); - // Verify the onDelayedCloseTimeout() callback is resilient to the post closeSocket(), pre - // destruction state. This should not actually happen due to the timeout disablement in - // closeSocket(), but there is enough complexity in connection handling codepaths that being - // extra defensive is valuable. - callback(); } class FakeReadFilter : public Network::ReadFilter { diff --git a/test/common/network/socket_option_factory_test.cc b/test/common/network/socket_option_factory_test.cc index 6ec4767ab3728..ca5e25cc363f5 100644 --- a/test/common/network/socket_option_factory_test.cc +++ b/test/common/network/socket_option_factory_test.cc @@ -154,20 +154,21 @@ TEST_F(SocketOptionFactoryTest, TestBuildLiteralOptions) { EXPECT_TRUE(option_details.has_value()); EXPECT_EQ(SOL_SOCKET, option_details->name_.level()); EXPECT_EQ(SO_LINGER, option_details->name_.option()); - EXPECT_EQ(sizeof(struct linger), option_details->value_.size()); - const struct linger* linger_ptr = - reinterpret_cast(option_details->value_.data()); - EXPECT_EQ(1, linger_ptr->l_onoff); - EXPECT_EQ(3456, linger_ptr->l_linger); + struct linger expected_linger; + expected_linger.l_onoff = 1; + expected_linger.l_linger = 3456; + absl::string_view linger_bstr{reinterpret_cast(&expected_linger), + sizeof(struct linger)}; + EXPECT_EQ(linger_bstr, option_details->value_); option_details = socket_options->at(1)->getOptionDetails( socket_mock_, envoy::api::v2::core::SocketOption::STATE_PREBIND); EXPECT_TRUE(option_details.has_value()); EXPECT_EQ(SOL_SOCKET, option_details->name_.level()); EXPECT_EQ(SO_KEEPALIVE, option_details->name_.option()); - EXPECT_EQ(sizeof(int), option_details->value_.size()); - const int* flag_ptr = reinterpret_cast(option_details->value_.data()); - EXPECT_EQ(1, *flag_ptr); + int value = 1; + absl::string_view value_bstr{reinterpret_cast(&value), sizeof(int)}; + EXPECT_EQ(value_bstr, option_details->value_); } } // namespace diff --git a/test/common/network/socket_option_impl_test.cc b/test/common/network/socket_option_impl_test.cc index 8d9e55ae2d194..d979d8a01098b 100644 --- a/test/common/network/socket_option_impl_test.cc +++ b/test/common/network/socket_option_impl_test.cc @@ -8,7 +8,8 @@ class SocketOptionImplTest : public SocketOptionTest {}; TEST_F(SocketOptionImplTest, BadFd) { absl::string_view zero("\0\0\0\0", 4); - Api::SysCallIntResult result = SocketOptionImpl::setSocketOption(socket_, {}, zero); + Api::SysCallIntResult result = + SocketOptionImpl::setSocketOption(socket_, {}, zero.data(), zero.size()); EXPECT_EQ(-1, result.rc_); EXPECT_EQ(ENOTSUP, result.errno_); } diff --git a/test/common/network/utility_test.cc b/test/common/network/utility_test.cc index 335271422d671..3d92065481462 100644 --- a/test/common/network/utility_test.cc +++ b/test/common/network/utility_test.cc @@ -175,7 +175,7 @@ TEST(NetworkUtility, LocalConnection) { testing::NiceMock socket; - EXPECT_CALL(socket, remoteAddress()).WillRepeatedly(testing::ReturnRef(local_addr)); + EXPECT_CALL(socket, localAddress()).WillRepeatedly(testing::ReturnRef(local_addr)); EXPECT_CALL(socket, remoteAddress()).WillRepeatedly(testing::ReturnRef(remote_addr)); local_addr.reset(new Network::Address::Ipv4Instance("127.0.0.1")); @@ -197,6 +197,14 @@ TEST(NetworkUtility, LocalConnection) { remote_addr.reset(new Network::Address::Ipv4Instance("8.8.8.8")); EXPECT_FALSE(Utility::isLocalConnection(socket)); + local_addr.reset(new Network::Address::Ipv4Instance("4.4.4.4")); + remote_addr.reset(new Network::Address::Ipv4Instance("4.4.4.4")); + EXPECT_TRUE(Utility::isLocalConnection(socket)); + + local_addr.reset(new Network::Address::Ipv4Instance("4.4.4.4", 1234)); + remote_addr.reset(new Network::Address::Ipv4Instance("4.4.4.4", 4321)); + EXPECT_TRUE(Utility::isLocalConnection(socket)); + local_addr.reset(new Network::Address::Ipv6Instance("::1")); remote_addr.reset(new Network::Address::Ipv6Instance("::1")); EXPECT_TRUE(Utility::isLocalConnection(socket)); @@ -205,6 +213,16 @@ TEST(NetworkUtility, LocalConnection) { remote_addr.reset(new Network::Address::Ipv6Instance("::1")); EXPECT_TRUE(Utility::isLocalConnection(socket)); + remote_addr.reset(new Network::Address::Ipv6Instance("::3")); + EXPECT_FALSE(Utility::isLocalConnection(socket)); + + remote_addr.reset(new Network::Address::Ipv6Instance("::2")); + EXPECT_TRUE(Utility::isLocalConnection(socket)); + + remote_addr.reset(new Network::Address::Ipv6Instance("::2", 4321)); + local_addr.reset(new Network::Address::Ipv6Instance("::2", 1234)); + EXPECT_TRUE(Utility::isLocalConnection(socket)); + remote_addr.reset(new Network::Address::Ipv6Instance("fd00::")); EXPECT_FALSE(Utility::isLocalConnection(socket)); } diff --git a/test/common/protobuf/BUILD b/test/common/protobuf/BUILD index 94fbcced56c7a..81c30eb6a2413 100644 --- a/test/common/protobuf/BUILD +++ b/test/common/protobuf/BUILD @@ -9,6 +9,16 @@ load( envoy_package() +envoy_cc_test( + name = "message_validator_impl_test", + srcs = ["message_validator_impl_test.cc"], + deps = [ + "//source/common/protobuf:message_validator_lib", + "//test/test_common:logging_lib", + "//test/test_common:utility_lib", + ], +) + envoy_cc_test( name = "utility_test", srcs = ["utility_test.cc"], diff --git a/test/common/protobuf/message_validator_impl_test.cc b/test/common/protobuf/message_validator_impl_test.cc new file mode 100644 index 0000000000000..a2fa6f4b011a3 --- /dev/null +++ b/test/common/protobuf/message_validator_impl_test.cc @@ -0,0 +1,54 @@ +#include "envoy/common/exception.h" + +#include "common/protobuf/message_validator_impl.h" +#include "common/stats/isolated_store_impl.h" + +#include "test/test_common/logging.h" +#include "test/test_common/utility.h" + +#include "gtest/gtest.h" + +namespace Envoy { +namespace ProtobufMessage { +namespace { + +// The null validation visitor doesn't do anything on unknown fields. +TEST(NullValidationVisitorImpl, UnknownField) { + NullValidationVisitorImpl null_validation_visitor; + EXPECT_NO_THROW(null_validation_visitor.onUnknownField("foo")); +} + +// The warning validation visitor logs and bumps stats on unknown fields +TEST(WarningValidationVisitorImpl, UnknownField) { + Stats::IsolatedStoreImpl stats; + Stats::Counter& counter = stats.counter("counter"); + WarningValidationVisitorImpl warning_validation_visitor; + // First time around we should log. + EXPECT_LOG_CONTAINS("warn", "Unknown field: foo", + warning_validation_visitor.onUnknownField("foo")); + // Duplicate descriptions don't generate a log the second time around. + EXPECT_LOG_NOT_CONTAINS("warn", "Unknown field: foo", + warning_validation_visitor.onUnknownField("foo")); + // Unrelated variable increments. + EXPECT_LOG_CONTAINS("warn", "Unknown field: bar", + warning_validation_visitor.onUnknownField("bar")); + // When we set the stats counter, the above increments are transferred. + EXPECT_EQ(0, counter.value()); + warning_validation_visitor.setCounter(counter); + EXPECT_EQ(2, counter.value()); + // A third unknown field is tracked in stats post-initialization. + EXPECT_LOG_CONTAINS("warn", "Unknown field: baz", + warning_validation_visitor.onUnknownField("baz")); + EXPECT_EQ(3, counter.value()); +} + +// The strict validation visitor throws on unknown fields. +TEST(StrictValidationVisitorImpl, UnknownField) { + StrictValidationVisitorImpl strict_validation_visitor; + EXPECT_THROW_WITH_MESSAGE(strict_validation_visitor.onUnknownField("foo"), EnvoyException, + "Protobuf message (foo) has unknown fields"); +} + +} // namespace +} // namespace ProtobufMessage +} // namespace Envoy diff --git a/test/common/protobuf/utility_test.cc b/test/common/protobuf/utility_test.cc index 04fb200fc0757..319ba5b919431 100644 --- a/test/common/protobuf/utility_test.cc +++ b/test/common/protobuf/utility_test.cc @@ -3,6 +3,8 @@ #include "envoy/config/bootstrap/v2/bootstrap.pb.h" #include "envoy/config/bootstrap/v2/bootstrap.pb.validate.h" +#include "common/common/base64.h" +#include "common/protobuf/message_validator_impl.h" #include "common/protobuf/protobuf.h" #include "common/protobuf/utility.h" #include "common/runtime/runtime_impl.h" @@ -114,6 +116,26 @@ TEST_F(ProtobufUtilityTest, evaluateFractionalPercent) { } // namespace ProtobufPercentHelper +TEST_F(ProtobufUtilityTest, MessageUtilHash) { + ProtobufWkt::Struct s; + (*s.mutable_fields())["ab"].set_string_value("fgh"); + (*s.mutable_fields())["cde"].set_string_value("ij"); + + ProtobufWkt::Any a1; + a1.PackFrom(s); + // The two base64 encoded Struct to test map is identical to the struct above, this tests whether + // a map is deterministically serialized and hashed. + ProtobufWkt::Any a2 = a1; + a2.set_value(Base64::decode("CgsKA2NkZRIEGgJpagoLCgJhYhIFGgNmZ2g=")); + ProtobufWkt::Any a3 = a1; + a3.set_value(Base64::decode("CgsKAmFiEgUaA2ZnaAoLCgNjZGUSBBoCaWo=")); + + EXPECT_EQ(MessageUtil::hash(a1), MessageUtil::hash(a2)); + EXPECT_EQ(MessageUtil::hash(a2), MessageUtil::hash(a3)); + EXPECT_NE(0, MessageUtil::hash(a1)); + EXPECT_NE(MessageUtil::hash(s), MessageUtil::hash(a1)); +} + TEST_F(ProtobufUtilityTest, RepeatedPtrUtilDebugString) { Protobuf::RepeatedPtrField repeated; EXPECT_EQ("[]", RepeatedPtrUtil::debugString(repeated)); diff --git a/test/common/router/retry_state_impl_test.cc b/test/common/router/retry_state_impl_test.cc index 7650fd5a3e547..6120470db1cb9 100644 --- a/test/common/router/retry_state_impl_test.cc +++ b/test/common/router/retry_state_impl_test.cc @@ -77,7 +77,7 @@ TEST_F(RouterRetryStateImplTest, PolicyRefusedStream) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(remote_refused_stream_reset_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryReset(remote_refused_stream_reset_, callback_)); @@ -98,7 +98,7 @@ TEST_F(RouterRetryStateImplTest, Policy5xxRemoteReset) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(remote_reset_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryReset(remote_reset_, callback_)); } @@ -112,7 +112,7 @@ TEST_F(RouterRetryStateImplTest, Policy5xxRemote503) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -146,7 +146,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGatewayErrorRemote502) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -161,7 +161,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGatewayErrorRemote503) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -176,7 +176,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGatewayErrorRemote504) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -197,7 +197,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGatewayErrorRemoteReset) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(remote_reset_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryReset(remote_reset_, callback_)); } @@ -211,7 +211,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGrpcCancelled) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -226,7 +226,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGrpcDeadlineExceeded) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -241,7 +241,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGrpcResourceExhausted) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -256,7 +256,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGrpcUnavilable) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -271,7 +271,7 @@ TEST_F(RouterRetryStateImplTest, PolicyGrpcInternal) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryHeaders(response_headers, callback_)); @@ -314,7 +314,7 @@ TEST_F(RouterRetryStateImplTest, PolicyConnectFailureResetConnectFailure) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); } TEST_F(RouterRetryStateImplTest, PolicyRetriable4xxRetry) { @@ -326,7 +326,7 @@ TEST_F(RouterRetryStateImplTest, PolicyRetriable4xxRetry) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryHeaders(response_headers, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); } TEST_F(RouterRetryStateImplTest, PolicyRetriable4xxNoRetry) { @@ -420,7 +420,7 @@ TEST_F(RouterRetryStateImplTest, PolicyResetRemoteReset) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(remote_reset_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, state_->shouldRetryReset(remote_reset_, callback_)); } @@ -435,7 +435,7 @@ TEST_F(RouterRetryStateImplTest, RouteConfigNoHeaderConfig) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); } TEST_F(RouterRetryStateImplTest, NoAvailableRetries) { @@ -464,17 +464,17 @@ TEST_F(RouterRetryStateImplTest, MaxRetriesHeader) { expectTimerCreateAndEnable(); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(*retry_timer_, enableTimer(_)); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(*retry_timer_, enableTimer(_)); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_EQ(1UL, cluster_.circuit_breakers_stats_.rq_retry_open_.value()); EXPECT_EQ(RetryStatus::NoRetryLimitExceeded, @@ -496,19 +496,19 @@ TEST_F(RouterRetryStateImplTest, Backoff) { EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(24))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(149)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(74))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(349)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(174))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); Http::TestHeaderMapImpl response_headers{{":status", "200"}}; EXPECT_EQ(RetryStatus::No, state_->shouldRetryHeaders(response_headers, callback_)); @@ -533,25 +533,25 @@ TEST_F(RouterRetryStateImplTest, CustomBackOffInterval) { EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(49))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(350)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(50))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(751)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(51))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(1499)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(1200))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); } // Test the default maximum retry back-off interval. @@ -568,25 +568,25 @@ TEST_F(RouterRetryStateImplTest, CustomBackOffIntervalDefaultMax) { EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(49))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(350)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(50))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(751)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(51))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); EXPECT_CALL(random_, random()).WillOnce(Return(1499)); EXPECT_CALL(*retry_timer_, enableTimer(std::chrono::milliseconds(1000))); EXPECT_EQ(RetryStatus::Yes, state_->shouldRetryReset(connect_failure_, callback_)); EXPECT_CALL(callback_ready_, ready()); - retry_timer_->callback_(); + retry_timer_->invokeCallback(); } TEST_F(RouterRetryStateImplTest, HostSelectionAttempts) { diff --git a/test/common/router/router_test.cc b/test/common/router/router_test.cc index b4d39e2041400..770ce8bef6ae6 100644 --- a/test/common/router/router_test.cc +++ b/test/common/router/router_test.cc @@ -1142,7 +1142,7 @@ TEST_F(RouterTest, UpstreamTimeout) { EXPECT_CALL(*router_.retry_state_, shouldRetryReset(_, _)).Times(0); EXPECT_CALL(cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, _)); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_EQ(1U, cm_.thread_local_cluster_.cluster_.info_->stats_store_.counter("upstream_rq_timeout") @@ -1367,7 +1367,7 @@ TEST_F(RouterTest, UpstreamTimeoutWithAltResponse) { EXPECT_CALL( cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(204))); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_EQ(1U, cm_.thread_local_cluster_.cluster_.info_->stats_store_.counter("upstream_rq_timeout") @@ -1415,7 +1415,7 @@ TEST_F(RouterTest, UpstreamPerTryTimeout) { EXPECT_CALL( cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(504))); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_EQ(1U, cm_.thread_local_cluster_.cluster_.info_->stats_store_ .counter("upstream_rq_per_try_timeout") @@ -1466,7 +1466,7 @@ TEST_F(RouterTest, UpstreamPerTryTimeoutDelayedPoolReady) { EXPECT_CALL(callbacks_, encodeData(_, true)); EXPECT_CALL(cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, _)); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_EQ(1U, cm_.thread_local_cluster_.cluster_.info_->stats_store_ .counter("upstream_rq_per_try_timeout") @@ -1521,7 +1521,7 @@ TEST_F(RouterTest, UpstreamPerTryTimeoutExcludesNewStream) { {":status", "504"}, {"content-length", "24"}, {"content-type", "text/plain"}}; EXPECT_CALL(callbacks_, encodeHeaders_(HeaderMapEqualRef(&response_headers), false)); EXPECT_CALL(callbacks_, encodeData(_, true)); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_EQ(1U, cm_.thread_local_cluster_.cluster_.info_->stats_store_ .counter("upstream_rq_per_try_timeout") @@ -1564,7 +1564,7 @@ TEST_F(RouterTest, HedgedPerTryTimeoutFirstRequestSucceeds) { NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_CALL(cm_.conn_pool_, newStream(_, _)) .WillOnce(Invoke([&](Http::StreamDecoder& decoder, Http::ConnectionPool::Callbacks& callbacks) @@ -1637,7 +1637,7 @@ TEST_F(RouterTest, HedgedPerTryTimeoutResetsOnBadHeaders) { NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_CALL(cm_.conn_pool_, newStream(_, _)) .WillOnce(Invoke([&](Http::StreamDecoder& decoder, Http::ConnectionPool::Callbacks& callbacks) @@ -1750,7 +1750,7 @@ TEST_F(RouterTest, HedgedPerTryTimeoutThirdRequestSucceeds) { })); EXPECT_CALL(callbacks_, encodeHeaders_(_, _)).Times(0); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); expectPerTryTimerCreate(); router_.retry_state_->callback_(); EXPECT_TRUE(verifyHostUpstreamStats(0, 1)); @@ -1807,7 +1807,7 @@ TEST_F(RouterTest, RetryOnlyOnceForSameUpstreamRequest) { cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(504))); router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; @@ -1834,7 +1834,7 @@ TEST_F(RouterTest, RetryOnlyOnceForSameUpstreamRequest) { cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(504))); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); } // Sequence: upstream request hits soft per try timeout and is retried, and @@ -1871,7 +1871,7 @@ TEST_F(RouterTest, BadHeadersDroppedIfPreviousRetryScheduled) { cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(504))); router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); expectPerTryTimerCreate(); @@ -1969,7 +1969,7 @@ TEST_F(RouterTest, HedgedPerTryTimeoutGlobalTimeout) { EXPECT_CALL(encoder1.stream_, resetStream(_)).Times(0); EXPECT_CALL(callbacks_, encodeHeaders_(_, _)).Times(0); router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; @@ -1997,7 +1997,7 @@ TEST_F(RouterTest, HedgedPerTryTimeoutGlobalTimeout) { .WillOnce(Invoke([&](Http::HeaderMap& headers, bool) -> void { EXPECT_EQ(headers.Status()->value(), "504"); })); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_TRUE(verifyHostUpstreamStats(0, 2)); EXPECT_EQ(2, cm_.conn_pool_.host_->stats_store_.counter("rq_timeout").value()); // TODO: Verify hedge stats here once they are implemented. @@ -2035,7 +2035,7 @@ TEST_F(RouterTest, HedgingRetriesExhaustedBadResponse) { EXPECT_CALL(encoder1.stream_, resetStream(_)).Times(0); EXPECT_CALL(callbacks_, encodeHeaders_(_, _)).Times(0); router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; @@ -2119,7 +2119,7 @@ TEST_F(RouterTest, HedgingRetriesProceedAfterReset) { EXPECT_CALL(encoder1.stream_, resetStream(_)).Times(0); EXPECT_CALL(callbacks_, encodeHeaders_(_, _)).Times(0); router_.retry_state_->expectHedgedPerTryTimeoutRetry(); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); NiceMock encoder2; Http::StreamDecoder* response_decoder2 = nullptr; @@ -2199,7 +2199,7 @@ TEST_F(RouterTest, HedgingRetryImmediatelyReset) { putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, absl::optional(504))); EXPECT_CALL(encoder.stream_, resetStream(_)).Times(0); EXPECT_CALL(callbacks_, encodeHeaders_(_, _)).Times(0); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); NiceMock encoder2; EXPECT_CALL(cm_.conn_pool_, newStream(_, _)) @@ -2342,7 +2342,7 @@ TEST_F(RouterTest, RetryUpstreamPerTryTimeout) { router_.retry_state_->expectResetRetry(); EXPECT_CALL(cm_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, _)); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_TRUE(verifyHostUpstreamStats(0, 1)); // We expect this reset to kick off a new request. @@ -2438,7 +2438,7 @@ TEST_F(RouterTest, DontResetStartedResponseOnUpstreamPerTryTimeout) { Buffer::OwnedImpl body("test body"); EXPECT_CALL(cm_.conn_pool_.host_->outlier_detector_, putHttpResponseCode(200)); response_decoder->decodeHeaders(std::move(response_headers), false); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); EXPECT_CALL(callbacks_, encodeData(_, true)); response_decoder->decodeData(body, true); EXPECT_TRUE(verifyHostUpstreamStats(1, 0)); @@ -2586,7 +2586,7 @@ TEST_F(RouterTest, RetryTimeoutDuringRetryDelay) { {":status", "504"}, {"content-length", "24"}, {"content-type", "text/plain"}}; EXPECT_CALL(callbacks_, encodeHeaders_(HeaderMapEqualRef(&response_headers), false)); EXPECT_CALL(callbacks_, encodeData(_, true)); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_TRUE(verifyHostUpstreamStats(0, 1)); } @@ -2632,7 +2632,7 @@ TEST_F(RouterTest, RetryTimeoutDuringRetryDelayWithUpstreamRequestNoHost) { {":status", "504"}, {"content-length", "24"}, {"content-type", "text/plain"}}; EXPECT_CALL(callbacks_, encodeHeaders_(HeaderMapEqualRef(&response_headers), false)); EXPECT_CALL(callbacks_, encodeData(_, true)); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_TRUE(verifyHostUpstreamStats(0, 1)); } @@ -2679,7 +2679,7 @@ TEST_F(RouterTest, RetryTimeoutDuringRetryDelayWithUpstreamRequestNoHostAltRespo EXPECT_CALL(cm_.conn_pool_.host_->outlier_detector_, putResponseTime(_)).Times(0); Http::TestHeaderMapImpl response_headers{{":status", "204"}}; EXPECT_CALL(callbacks_, encodeHeaders_(HeaderMapEqualRef(&response_headers), true)); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_TRUE(verifyHostUpstreamStats(0, 1)); } @@ -3414,7 +3414,7 @@ TEST_F(RouterTest, UpstreamTimingTimeout) { response_decoder->decodeHeaders(std::move(response_headers), false); test_time_.sleep(std::chrono::milliseconds(99)); - response_timeout_->callback_(); + response_timeout_->invokeCallback(); EXPECT_TRUE(stream_info.firstUpstreamTxByteSent().has_value()); EXPECT_TRUE(stream_info.lastUpstreamTxByteSent().has_value()); diff --git a/test/common/router/router_upstream_log_test.cc b/test/common/router/router_upstream_log_test.cc index ce4574fe93583..581db1087f3cf 100644 --- a/test/common/router/router_upstream_log_test.cc +++ b/test/common/router/router_upstream_log_test.cc @@ -176,7 +176,7 @@ class RouterUpstreamLogTest : public testing::Test { router_->retry_state_->expectResetRetry(); EXPECT_CALL(context_.cluster_manager_.conn_pool_.host_->outlier_detector_, putResult(Upstream::Outlier::Result::LOCAL_ORIGIN_TIMEOUT, _)); - per_try_timeout_->callback_(); + per_try_timeout_->invokeCallback(); // We expect this reset to kick off a new request. NiceMock encoder2; diff --git a/test/common/secret/BUILD b/test/common/secret/BUILD index 19712797f54af..a2e85abcef8f1 100644 --- a/test/common/secret/BUILD +++ b/test/common/secret/BUILD @@ -24,6 +24,7 @@ envoy_cc_test( "//test/test_common:registry_lib", "//test/test_common:simulated_time_system_lib", "//test/test_common:utility_lib", + "@envoy_api//envoy/config/grpc_credential/v2alpha:file_based_metadata_cc", ], ) diff --git a/test/common/secret/secret_manager_impl_test.cc b/test/common/secret/secret_manager_impl_test.cc index b3a6105fb11f2..788254d124acf 100644 --- a/test/common/secret/secret_manager_impl_test.cc +++ b/test/common/secret/secret_manager_impl_test.cc @@ -3,7 +3,9 @@ #include "envoy/admin/v2alpha/config_dump.pb.h" #include "envoy/api/v2/auth/cert.pb.h" #include "envoy/common/exception.h" +#include "envoy/config/grpc_credential/v2alpha/file_based_metadata.pb.h" +#include "common/common/base64.h" #include "common/common/logger.h" #include "common/secret/sds_api.h" #include "common/secret/secret_manager_impl.h" @@ -165,6 +167,90 @@ name: "abc.com" "Secret type not implemented"); } +// Validate that secret manager deduplicates dynamic TLS certificate secret provider. +// Regression test of https://github.com/envoyproxy/envoy/issues/5744 +TEST_F(SecretManagerImplTest, DeduplicateDynamicTlsCertificateSecretProvider) { + Server::MockInstance server; + std::unique_ptr secret_manager(new SecretManagerImpl(config_tracker_)); + + NiceMock secret_context; + + NiceMock local_info; + NiceMock dispatcher; + NiceMock random; + Stats::IsolatedStoreImpl stats; + NiceMock init_manager; + NiceMock init_watcher; + Init::TargetHandlePtr init_target_handle; + EXPECT_CALL(init_manager, add(_)) + .WillRepeatedly(Invoke([&init_target_handle](const Init::Target& target) { + init_target_handle = target.createHandle("test"); + })); + EXPECT_CALL(secret_context, stats()).WillRepeatedly(ReturnRef(stats)); + EXPECT_CALL(secret_context, initManager()).WillRepeatedly(Return(&init_manager)); + EXPECT_CALL(secret_context, dispatcher()).WillRepeatedly(ReturnRef(dispatcher)); + EXPECT_CALL(secret_context, localInfo()).WillRepeatedly(ReturnRef(local_info)); + + envoy::api::v2::core::ConfigSource config_source; + TestUtility::loadFromYaml(R"( +api_config_source: + api_type: GRPC + grpc_services: + - google_grpc: + call_credentials: + - from_plugin: + name: envoy.grpc_credentials.file_based_metadata + typed_config: + "@type": type.googleapis.com/envoy.config.grpc_credential.v2alpha.FileBasedMetadataConfig + stat_prefix: sdsstat + credentials_factory_name: envoy.grpc_credentials.file_based_metadata + )", + config_source); + config_source.mutable_api_config_source() + ->mutable_grpc_services(0) + ->mutable_google_grpc() + ->mutable_call_credentials(0) + ->mutable_from_plugin() + ->mutable_typed_config() + ->set_value(Base64::decode("CjUKMy92YXIvcnVuL3NlY3JldHMva3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3Vud" + "C90b2tlbhILeC10b2tlbi1iaW4=")); + auto secret_provider1 = + secret_manager->findOrCreateTlsCertificateProvider(config_source, "abc.com", secret_context); + + // The base64 encoded proto binary is identical to the one above, but in different field order. + // It is also identical to the YAML below. + config_source.mutable_api_config_source() + ->mutable_grpc_services(0) + ->mutable_google_grpc() + ->mutable_call_credentials(0) + ->mutable_from_plugin() + ->mutable_typed_config() + ->set_value(Base64::decode("Egt4LXRva2VuLWJpbgo1CjMvdmFyL3J1bi9zZWNyZXRzL2t1YmVybmV0ZXMuaW8vc" + "2VydmljZWFjY291bnQvdG9rZW4=")); + auto secret_provider2 = + secret_manager->findOrCreateTlsCertificateProvider(config_source, "abc.com", secret_context); + + envoy::config::grpc_credential::v2alpha::FileBasedMetadataConfig file_based_metadata_config; + TestUtility::loadFromYaml(R"( +header_key: x-token-bin +secret_data: + filename: "/var/run/secrets/kubernetes.io/serviceaccount/token" + )", + file_based_metadata_config); + config_source.mutable_api_config_source() + ->mutable_grpc_services(0) + ->mutable_google_grpc() + ->mutable_call_credentials(0) + ->mutable_from_plugin() + ->mutable_typed_config() + ->PackFrom(file_based_metadata_config); + auto secret_provider3 = + secret_manager->findOrCreateTlsCertificateProvider(config_source, "abc.com", secret_context); + + EXPECT_EQ(secret_provider1, secret_provider2); + EXPECT_EQ(secret_provider2, secret_provider3); +} + TEST_F(SecretManagerImplTest, SdsDynamicSecretUpdateSuccess) { Server::MockInstance server; std::unique_ptr secret_manager(new SecretManagerImpl(config_tracker_)); diff --git a/test/common/tcp/conn_pool_test.cc b/test/common/tcp/conn_pool_test.cc index 5bcb19698b39a..ec42cf60e6029 100644 --- a/test/common/tcp/conn_pool_test.cc +++ b/test/common/tcp/conn_pool_test.cc @@ -116,7 +116,7 @@ class ConnPoolImplForTest : public ConnPoolImpl { void expectAndRunUpstreamReady() { EXPECT_TRUE(upstream_ready_enabled_); - mock_upstream_ready_timer_->callback_(); + mock_upstream_ready_timer_->invokeCallback(); EXPECT_FALSE(upstream_ready_enabled_); } @@ -576,10 +576,10 @@ TEST_F(TcpConnPoolImplTest, ConnectTimeout) { EXPECT_NE(nullptr, conn_pool_.newConnection(callbacks2)); })); - conn_pool_.test_conns_[0].connect_timer_->callback_(); + conn_pool_.test_conns_[0].connect_timer_->invokeCallback(); EXPECT_CALL(callbacks2.pool_failure_, ready()); - conn_pool_.test_conns_[1].connect_timer_->callback_(); + conn_pool_.test_conns_[1].connect_timer_->invokeCallback(); EXPECT_CALL(conn_pool_, onConnDestroyedForTest()).Times(2); dispatcher_.clearDeferredDeleteList(); diff --git a/test/common/tcp_proxy/tcp_proxy_test.cc b/test/common/tcp_proxy/tcp_proxy_test.cc index dbfb840d619cf..903249d9a06ec 100644 --- a/test/common/tcp_proxy/tcp_proxy_test.cc +++ b/test/common/tcp_proxy/tcp_proxy_test.cc @@ -841,7 +841,7 @@ TEST_F(TcpProxyTest, IdleTimeout) { EXPECT_CALL(*upstream_connections_.at(0), close(Network::ConnectionCloseType::NoFlush)); EXPECT_CALL(filter_callbacks_.connection_, close(Network::ConnectionCloseType::NoFlush)); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); } // Tests that the idle timer is disabled when the downstream connection is closed. @@ -918,7 +918,7 @@ TEST_F(TcpProxyTest, IdleTimeoutWithOutstandingDataFlushed) { EXPECT_CALL(filter_callbacks_.connection_, close(Network::ConnectionCloseType::NoFlush)); EXPECT_CALL(*idle_timer, disableTimer()); - idle_timer->callback_(); + idle_timer->invokeCallback(); } // Test that access log fields %UPSTREAM_HOST% and %UPSTREAM_CLUSTER% are correctly logged. @@ -1089,7 +1089,7 @@ TEST_F(TcpProxyTest, UpstreamFlushTimeoutExpired) { EXPECT_EQ(1U, config_->stats().upstream_flush_active_.value()); EXPECT_CALL(*upstream_connections_.at(0), close(Network::ConnectionCloseType::NoFlush)); - idle_timer->callback_(); + idle_timer->invokeCallback(); EXPECT_EQ(1U, config_->stats().upstream_flush_total_.value()); EXPECT_EQ(0U, config_->stats().upstream_flush_active_.value()); EXPECT_EQ(1U, config_->stats().idle_timeout_.value()); diff --git a/test/common/thread_local/thread_local_impl_test.cc b/test/common/thread_local/thread_local_impl_test.cc index 5a678c8393844..f189e2a2481bd 100644 --- a/test/common/thread_local/thread_local_impl_test.cc +++ b/test/common/thread_local/thread_local_impl_test.cc @@ -14,7 +14,6 @@ using testing::ReturnPointee; namespace Envoy { namespace ThreadLocal { -namespace { class TestThreadLocalObject : public ThreadLocalObject { public: @@ -46,8 +45,10 @@ class ThreadLocalInstanceImplTest : public testing::Test { object.reset(); return object_ref; } - + int deferredDeletesMapSize() { return tls_.deferred_deletes_.size(); } + int freeSlotIndexesListSize() { return tls_.free_slot_indexes_.size(); } InstanceImpl tls_; + Event::MockDispatcher main_dispatcher_; Event::MockDispatcher thread_dispatcher_; }; @@ -59,15 +60,20 @@ TEST_F(ThreadLocalInstanceImplTest, All) { EXPECT_CALL(thread_dispatcher_, post(_)); SlotPtr slot1 = tls_.allocateSlot(); slot1.reset(); + EXPECT_EQ(deferredDeletesMapSize(), 0); + EXPECT_EQ(freeSlotIndexesListSize(), 1); // Create a new slot which should take the place of the old slot. ReturnPointee() is used to // avoid "leaks" when using InSequence and shared_ptr. SlotPtr slot2 = tls_.allocateSlot(); TestThreadLocalObject& object_ref2 = setObject(*slot2); + EXPECT_EQ(freeSlotIndexesListSize(), 0); EXPECT_CALL(thread_dispatcher_, post(_)); EXPECT_CALL(object_ref2, onDestroy()); + EXPECT_EQ(freeSlotIndexesListSize(), 0); slot2.reset(); + EXPECT_EQ(freeSlotIndexesListSize(), 1); // Make two new slots, shutdown global threading, and delete them. We should not see any // cross-thread posts at this point. We should also see destruction in reverse order. @@ -79,12 +85,87 @@ TEST_F(ThreadLocalInstanceImplTest, All) { tls_.shutdownGlobalThreading(); slot3.reset(); slot4.reset(); + EXPECT_EQ(freeSlotIndexesListSize(), 0); + EXPECT_EQ(deferredDeletesMapSize(), 2); EXPECT_CALL(object_ref4, onDestroy()); EXPECT_CALL(object_ref3, onDestroy()); tls_.shutdownThread(); } +TEST_F(ThreadLocalInstanceImplTest, DeferredRecycle) { + InSequence s; + + // Free a slot without ever calling set. + EXPECT_CALL(thread_dispatcher_, post(_)); + SlotPtr slot1 = tls_.allocateSlot(); + slot1.reset(); + // Slot destructed directly, as there is no out-going callbacks. + EXPECT_EQ(deferredDeletesMapSize(), 0); + EXPECT_EQ(freeSlotIndexesListSize(), 1); + + // Allocate a slot and set value, hold the posted callback and the slot will only be returned + // after the held callback is destructed. + { + SlotPtr slot2 = tls_.allocateSlot(); + EXPECT_EQ(freeSlotIndexesListSize(), 0); + { + Event::PostCb holder; + EXPECT_CALL(thread_dispatcher_, post(_)).WillOnce(Invoke([&](Event::PostCb cb) { + // Holds the posted callback. + holder = cb; + })); + slot2->set( + [](Event::Dispatcher&) -> ThreadLocal::ThreadLocalObjectSharedPtr { return nullptr; }); + slot2.reset(); + // Not released yet, as holder has a copy of the ref_count_. + EXPECT_EQ(freeSlotIndexesListSize(), 0); + EXPECT_EQ(deferredDeletesMapSize(), 1); + // This post is called when the holder dies. + EXPECT_CALL(thread_dispatcher_, post(_)); + } + // Slot is deleted now that there holder destructs. + EXPECT_EQ(deferredDeletesMapSize(), 0); + EXPECT_EQ(freeSlotIndexesListSize(), 1); + } + + tls_.shutdownGlobalThreading(); +} + +// Test that the config passed into the update callback is the previous version stored in the slot. +TEST_F(ThreadLocalInstanceImplTest, UpdateCallback) { + InSequence s; + + SlotPtr slot = tls_.allocateSlot(); + + auto newer_version = std::make_shared(); + bool update_called = false; + + TestThreadLocalObject& object_ref = setObject(*slot); + auto update_cb = [&object_ref, &update_called, + newer_version](ThreadLocalObjectSharedPtr obj) -> ThreadLocalObjectSharedPtr { + // The unit test setup have two dispatchers registered, but only one thread, this lambda will be + // called twice in the same thread. + if (!update_called) { + EXPECT_EQ(obj.get(), &object_ref); + update_called = true; + } else { + EXPECT_EQ(obj.get(), newer_version.get()); + } + + return newer_version; + }; + EXPECT_CALL(thread_dispatcher_, post(_)); + EXPECT_CALL(object_ref, onDestroy()); + EXPECT_CALL(*newer_version, onDestroy()); + slot->runOnAllThreads(update_cb); + + EXPECT_EQ(newer_version.get(), &slot->getTyped()); + + tls_.shutdownGlobalThreading(); + tls_.shutdownThread(); +} + // TODO(ramaraochavali): Run this test with real threads. The current issue in the unit // testing environment is, the post to main_dispatcher is not working as expected. @@ -145,6 +226,5 @@ TEST(ThreadLocalInstanceImplDispatcherTest, Dispatcher) { tls.shutdownThread(); } -} // namespace } // namespace ThreadLocal } // namespace Envoy diff --git a/test/common/upstream/BUILD b/test/common/upstream/BUILD index 566e06cf6012c..4e5d8b4679bae 100644 --- a/test/common/upstream/BUILD +++ b/test/common/upstream/BUILD @@ -333,6 +333,7 @@ envoy_cc_binary( "benchmark", ], deps = [ + "//source/common/memory:stats_lib", "//source/common/upstream:maglev_lb_lib", "//source/common/upstream:ring_hash_lb_lib", "//source/common/upstream:upstream_lib", diff --git a/test/common/upstream/cluster_manager_impl_test.cc b/test/common/upstream/cluster_manager_impl_test.cc index 7e3fff828ad96..df35bf7e6a529 100644 --- a/test/common/upstream/cluster_manager_impl_test.cc +++ b/test/common/upstream/cluster_manager_impl_test.cc @@ -162,9 +162,10 @@ class TestClusterManagerImpl : public ClusterManagerImpl { Runtime::RandomGenerator& random, const LocalInfo::LocalInfo& local_info, AccessLog::AccessLogManager& log_manager, Event::Dispatcher& main_thread_dispatcher, Server::Admin& admin, - Api::Api& api, Http::Context& http_context) + ProtobufMessage::ValidationContext& validation_context, Api::Api& api, + Http::Context& http_context) : ClusterManagerImpl(bootstrap, factory, stats, tls, runtime, random, local_info, log_manager, - main_thread_dispatcher, admin, validation_visitor_, api, http_context) {} + main_thread_dispatcher, admin, validation_context, api, http_context) {} std::map> activeClusters() { std::map> clusters; @@ -173,8 +174,6 @@ class TestClusterManagerImpl : public ClusterManagerImpl { } return clusters; } - - NiceMock validation_visitor_; }; // Override postThreadLocalClusterUpdate so we can test that merged updates calls @@ -186,10 +185,12 @@ class MockedUpdatedClusterManagerImpl : public TestClusterManagerImpl { Stats::Store& stats, ThreadLocal::Instance& tls, Runtime::Loader& runtime, Runtime::RandomGenerator& random, const LocalInfo::LocalInfo& local_info, AccessLog::AccessLogManager& log_manager, Event::Dispatcher& main_thread_dispatcher, - Server::Admin& admin, Api::Api& api, MockLocalClusterUpdate& local_cluster_update, - MockLocalHostsRemoved& local_hosts_removed, Http::Context& http_context) + Server::Admin& admin, ProtobufMessage::ValidationContext& validation_context, Api::Api& api, + MockLocalClusterUpdate& local_cluster_update, MockLocalHostsRemoved& local_hosts_removed, + Http::Context& http_context) : TestClusterManagerImpl(bootstrap, factory, stats, tls, runtime, random, local_info, - log_manager, main_thread_dispatcher, admin, api, http_context), + log_manager, main_thread_dispatcher, admin, validation_context, api, + http_context), local_cluster_update_(local_cluster_update), local_hosts_removed_(local_hosts_removed) {} protected: @@ -225,7 +226,8 @@ class ClusterManagerImplTest : public testing::Test { void create(const envoy::config::bootstrap::v2::Bootstrap& bootstrap) { cluster_manager_ = std::make_unique( bootstrap, factory_, factory_.stats_, factory_.tls_, factory_.runtime_, factory_.random_, - factory_.local_info_, log_manager_, factory_.dispatcher_, admin_, *api_, http_context_); + factory_.local_info_, log_manager_, factory_.dispatcher_, admin_, validation_context_, + *api_, http_context_); } void createWithLocalClusterUpdate(const bool enable_merge_window = true) { @@ -259,8 +261,8 @@ class ClusterManagerImplTest : public testing::Test { cluster_manager_ = std::make_unique( bootstrap, factory_, factory_.stats_, factory_.tls_, factory_.runtime_, factory_.random_, - factory_.local_info_, log_manager_, factory_.dispatcher_, admin_, *api_, - local_cluster_update_, local_hosts_removed_, http_context_); + factory_.local_info_, log_manager_, factory_.dispatcher_, admin_, validation_context_, + *api_, local_cluster_update_, local_hosts_removed_, http_context_); } void checkStats(uint64_t added, uint64_t modified, uint64_t removed, uint64_t active, @@ -303,6 +305,7 @@ class ClusterManagerImplTest : public testing::Test { Event::SimulatedTimeSystem time_system_; Api::ApiPtr api_; NiceMock factory_; + NiceMock validation_context_; std::unique_ptr cluster_manager_; AccessLog::MockAccessLogManager log_manager_; NiceMock admin_; @@ -1229,6 +1232,78 @@ TEST_F(ClusterManagerImplTest, RemoveWarmingCluster) { EXPECT_TRUE(Mock::VerifyAndClearExpectations(cluster1.get())); } +TEST_F(ClusterManagerImplTest, ModifyWarmingCluster) { + time_system_.setSystemTime(std::chrono::milliseconds(1234567891234)); + create(defaultConfig()); + + InSequence s; + ReadyWatcher initialized; + EXPECT_CALL(initialized, ready()); + cluster_manager_->setInitializedCb([&]() -> void { initialized.ready(); }); + + // Add a "fake_cluster" in warming state. + std::shared_ptr cluster1 = + std::make_shared>(); + EXPECT_CALL(factory_, clusterFromProto_(_, _, _, _)) + .WillOnce(Return(std::make_pair(cluster1, nullptr))); + EXPECT_CALL(*cluster1, initializePhase()).Times(0); + EXPECT_CALL(*cluster1, initialize(_)); + EXPECT_TRUE( + cluster_manager_->addOrUpdateCluster(defaultStaticCluster("fake_cluster"), "version1")); + checkStats(1 /*added*/, 0 /*modified*/, 0 /*removed*/, 0 /*active*/, 1 /*warming*/); + EXPECT_EQ(nullptr, cluster_manager_->get("fake_cluster")); + checkConfigDump(R"EOF( + dynamic_warming_clusters: + - version_info: "version1" + cluster: + name: "fake_cluster" + type: STATIC + connect_timeout: 0.25s + hosts: + - socket_address: + address: "127.0.0.1" + port_value: 11001 + last_updated: + seconds: 1234567891 + nanos: 234000000 + )EOF"); + + // Update the warming cluster that was just added. + std::shared_ptr cluster2 = + std::make_shared>(); + EXPECT_CALL(factory_, clusterFromProto_(_, _, _, _)) + .WillOnce(Return(std::make_pair(cluster2, nullptr))); + EXPECT_CALL(*cluster2, initializePhase()).Times(0); + EXPECT_CALL(*cluster2, initialize(_)); + EXPECT_TRUE(cluster_manager_->addOrUpdateCluster( + parseClusterFromV2Json(fmt::sprintf(kDefaultStaticClusterTmpl, "fake_cluster", + R"EOF( +"socket_address": { + "address": "127.0.0.1", + "port_value": 11002 +})EOF")), + "version2")); + checkStats(1 /*added*/, 1 /*modified*/, 0 /*removed*/, 0 /*active*/, 1 /*warming*/); + checkConfigDump(R"EOF( + dynamic_warming_clusters: + - version_info: "version2" + cluster: + name: "fake_cluster" + type: STATIC + connect_timeout: 0.25s + hosts: + - socket_address: + address: "127.0.0.1" + port_value: 11002 + last_updated: + seconds: 1234567891 + nanos: 234000000 + )EOF"); + + EXPECT_TRUE(Mock::VerifyAndClearExpectations(cluster1.get())); + EXPECT_TRUE(Mock::VerifyAndClearExpectations(cluster2.get())); +} + // Verify that shutting down the cluster manager destroys warming clusters. TEST_F(ClusterManagerImplTest, ShutdownWithWarming) { create(defaultConfig()); @@ -1793,7 +1868,7 @@ TEST_F(ClusterManagerImplTest, DynamicHostRemove) { EXPECT_CALL(*tcp1_high, addDrainedCallback(_)).WillOnce(SaveArg<0>(&tcp_drained_cb_high)); // Remove the first host, this should lead to the first cp being drained. - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({"127.0.0.2"})); drained_cb(); drained_cb = nullptr; @@ -1826,7 +1901,7 @@ TEST_F(ClusterManagerImplTest, DynamicHostRemove) { // Now add and remove a host that we never have a conn pool to. This should not lead to any // drain callbacks, etc. - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.3"})); factory_.tls_.shutdownThread(); } @@ -2009,7 +2084,7 @@ TEST_F(ClusterManagerImplTest, DynamicHostRemoveWithTls) { EXPECT_CALL(*tcp1_ibm_com, addDrainedCallback(_)).WillOnce(SaveArg<0>(&tcp_drained_cb_ibm_com)); // Remove the first host, this should lead to the first cp being drained. - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({"127.0.0.2"})); drained_cb(); drained_cb = nullptr; @@ -2056,7 +2131,7 @@ TEST_F(ClusterManagerImplTest, DynamicHostRemoveWithTls) { // Now add and remove a host that we never have a conn pool to. This should not lead to any // drain callbacks, etc. - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.3"})); factory_.tls_.shutdownThread(); } @@ -2123,7 +2198,7 @@ TEST_F(ClusterManagerImplTest, DynamicHostRemoveDefaultPriority) { // Remove the first host, this should lead to the cp being drained, without // crash. - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({})); factory_.tls_.shutdownThread(); @@ -2199,7 +2274,7 @@ TEST_F(ClusterManagerImplTest, ConnPoolDestroyWithDraining) { EXPECT_CALL(*cp, addDrainedCallback(_)).WillOnce(SaveArg<0>(&drained_cb)); Tcp::ConnectionPool::Instance::DrainedCb tcp_drained_cb; EXPECT_CALL(*tcp, addDrainedCallback(_)).WillOnce(SaveArg<0>(&tcp_drained_cb)); - dns_timer_->callback_(); + dns_timer_->invokeCallback(); dns_callback(TestUtility::makeDnsResponse({})); // The drained callback might get called when the CP is being destroyed. @@ -2327,7 +2402,7 @@ TEST_F(ClusterManagerImplTest, MergedUpdates) { EXPECT_EQ(0, factory_.stats_.counter("cluster_manager.update_merge_cancelled").value()); // Ensure the merged updates were applied. - timer->callback_(); + timer->invokeCallback(); EXPECT_EQ(1, factory_.stats_.counter("cluster_manager.cluster_updated").value()); EXPECT_EQ(1, factory_.stats_.counter("cluster_manager.cluster_updated_via_merge").value()); EXPECT_EQ(0, factory_.stats_.counter("cluster_manager.update_merge_cancelled").value()); diff --git a/test/common/upstream/health_checker_impl_test.cc b/test/common/upstream/health_checker_impl_test.cc index f48d8d2286ca2..7c8d7cfb5701c 100644 --- a/test/common/upstream/health_checker_impl_test.cc +++ b/test/common/upstream/health_checker_impl_test.cc @@ -559,7 +559,7 @@ class HttpHealthCheckerImplTest : public testing::Test { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); @@ -572,7 +572,7 @@ class HttpHealthCheckerImplTest : public testing::Test { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); EXPECT_CALL(*event_logger_, logAddHealthy(_, _, false)); @@ -646,7 +646,7 @@ TEST_F(HttpHealthCheckerImplTest, Degraded) { expectStreamCreate(0); EXPECT_CALL(runtime_.snapshot_, getInteger("health_check.max_interval", _)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*event_logger_, logNoLongerDegraded(_, _)); respond(0, "200", false, false, true, false, {}, false); @@ -673,7 +673,7 @@ TEST_F(HttpHealthCheckerImplTest, SuccessIntervalJitter) { EXPECT_CALL(random_, random()).WillOnce(Return(i)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // the jitter is 1000ms here EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(5000 + i % 1000))); @@ -693,7 +693,7 @@ TEST_F(HttpHealthCheckerImplTest, InitialJitterNoTraffic) { EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); health_checker_->start(); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); @@ -704,7 +704,7 @@ TEST_F(HttpHealthCheckerImplTest, InitialJitterNoTraffic) { EXPECT_CALL(random_, random()).WillOnce(Return(i)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // the jitter is 40% of 5000, so should be 2000 EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(5000 + i % 2000))); @@ -733,7 +733,7 @@ TEST_F(HttpHealthCheckerImplTest, SuccessIntervalJitterPercentNoTraffic) { EXPECT_CALL(random_, random()).WillOnce(Return(i)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // the jitter is 40% of 5000, so should be 2000 EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(5000 + i % 2000))); @@ -763,7 +763,7 @@ TEST_F(HttpHealthCheckerImplTest, SuccessIntervalJitterPercent) { EXPECT_CALL(random_, random()).WillOnce(Return(i)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // the jitter is 40% of 1000, so should be 400 EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(1000 + i % 400))); @@ -1087,7 +1087,7 @@ TEST_F(HttpHealthCheckerImplTest, SuccessServiceCheckWithAdditionalHeaders) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); } TEST_F(HttpHealthCheckerImplTest, SuccessServiceCheckWithoutUserAgent) { @@ -1127,7 +1127,7 @@ TEST_F(HttpHealthCheckerImplTest, SuccessServiceCheckWithoutUserAgent) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); } TEST_F(HttpHealthCheckerImplTest, ServiceDoesNotMatchFail) { @@ -1339,7 +1339,7 @@ TEST_F(HttpHealthCheckerImplTest, HttpFail) { Host::ActiveHealthFailureType::UNHEALTHY); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); @@ -1352,7 +1352,7 @@ TEST_F(HttpHealthCheckerImplTest, HttpFail) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); EXPECT_CALL(*event_logger_, logAddHealthy(_, _, false)); @@ -1386,7 +1386,7 @@ TEST_F(HttpHealthCheckerImplTest, HttpFailLogError) { Host::ActiveHealthFailureType::UNHEALTHY); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // logUnhealthy is called with first_check == false EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1403,7 +1403,7 @@ TEST_F(HttpHealthCheckerImplTest, HttpFailLogError) { Host::ActiveHealthFailureType::UNHEALTHY); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); @@ -1416,7 +1416,7 @@ TEST_F(HttpHealthCheckerImplTest, HttpFailLogError) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); EXPECT_CALL(*event_logger_, logAddHealthy(_, _, false)); @@ -1446,7 +1446,7 @@ TEST_F(HttpHealthCheckerImplTest, Disconnect) { expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(cluster_->prioritySet().getMockHostSet(0)->hosts_[0], HealthTransition::Changed)); @@ -1475,7 +1475,7 @@ TEST_F(HttpHealthCheckerImplTest, Timeout) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, true)); EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_EQ(Host::Health::Unhealthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); @@ -1504,13 +1504,13 @@ TEST_F(HttpHealthCheckerImplTest, TimeoutThenSuccess) { EXPECT_CALL(*test_sessions_[0]->client_connection_, close(_)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_EQ(Host::Health::Healthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); @@ -1533,13 +1533,13 @@ TEST_F(HttpHealthCheckerImplTest, TimeoutThenRemoteClose) { EXPECT_CALL(*test_sessions_[0]->client_connection_, close(_)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_EQ(Host::Health::Healthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); @@ -1562,7 +1562,7 @@ TEST_F(HttpHealthCheckerImplTest, TimeoutAfterDisconnect) { expectSessionCreate(); expectStreamCreate(0); EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, true)); - EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); + EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)).Times(2); health_checker_->start(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)).Times(1); @@ -1576,7 +1576,8 @@ TEST_F(HttpHealthCheckerImplTest, TimeoutAfterDisconnect) { EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->enableTimer(std::chrono::seconds(10)); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_EQ(Host::Health::Unhealthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); } @@ -1618,7 +1619,7 @@ TEST_F(HttpHealthCheckerImplTest, ConnectionClose) { expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); } TEST_F(HttpHealthCheckerImplTest, ProxyConnectionClose) { @@ -1640,7 +1641,7 @@ TEST_F(HttpHealthCheckerImplTest, ProxyConnectionClose) { expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); } TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { @@ -1662,7 +1663,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Follow up successful checks should respect interval setting. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1673,7 +1674,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Follow up successful checks should respect interval setting. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1684,7 +1685,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // A logical failure is not considered a network failure, therefore the unhealthy threshold is // ignored and health state changes immediately. Since the threshold is ignored, next health @@ -1698,7 +1699,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1709,7 +1710,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1720,7 +1721,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // When transitioning to a successful state, checks should respect healthy_edge_interval. Health // state should be delayed pending healthy threshold. @@ -1732,7 +1733,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(4000))); @@ -1742,7 +1743,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // After the healthy threshold is reached, health state should change while checks should respect // the default interval. @@ -1755,7 +1756,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1766,7 +1767,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // First failed check after a run o successful ones should respect unhealthy_edge_interval. A // timeout, being a network type failure, should respect unhealthy threshold before changing the @@ -1774,26 +1775,26 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(3000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a network timeout. expectClientCreate(0); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(3000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a network timeout. expectClientCreate(0); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. As the unhealthy threshold is // reached, health state should also change. @@ -1801,27 +1802,27 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(2000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a network timeout. expectClientCreate(0); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Remaining failing checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(2000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a network timeout. expectClientCreate(0); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // When transitioning to a successful state, checks should respect healthy_edge_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); @@ -1832,7 +1833,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(4000))); @@ -1842,7 +1843,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // After the healthy threshold is reached, health state should change while checks should respect // the default interval. @@ -1855,7 +1856,7 @@ TEST_F(HttpHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -1885,7 +1886,7 @@ TEST_F(HttpHealthCheckerImplTest, RemoteCloseBetweenChecks) { expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); @@ -1916,7 +1917,7 @@ TEST_F(HttpHealthCheckerImplTest, DontReuseConnectionBetweenChecks) { expectClientCreate(0); expectStreamCreate(0); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(_)); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); @@ -2506,7 +2507,7 @@ TEST_F(TcpHealthCheckerImplTest, TimeoutThenRemoteClose) { EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, true)); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); EXPECT_EQ(cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->getActiveHealthFailureType(), Host::ActiveHealthFailureType::TIMEOUT); EXPECT_EQ(Host::Health::Healthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); @@ -2514,7 +2515,7 @@ TEST_F(TcpHealthCheckerImplTest, TimeoutThenRemoteClose) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2530,7 +2531,7 @@ TEST_F(TcpHealthCheckerImplTest, TimeoutThenRemoteClose) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2567,7 +2568,7 @@ TEST_F(TcpHealthCheckerImplTest, Timeout) { EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, true)); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); EXPECT_EQ(cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->getActiveHealthFailureType(), Host::ActiveHealthFailureType::TIMEOUT); EXPECT_EQ(Host::Health::Unhealthy, @@ -2600,7 +2601,7 @@ TEST_F(TcpHealthCheckerImplTest, DoubleTimeout) { EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, true)); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); EXPECT_EQ(cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->getActiveHealthFailureType(), Host::ActiveHealthFailureType::TIMEOUT); EXPECT_EQ(Host::Health::Healthy, cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->health()); @@ -2608,7 +2609,7 @@ TEST_F(TcpHealthCheckerImplTest, DoubleTimeout) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2616,7 +2617,7 @@ TEST_F(TcpHealthCheckerImplTest, DoubleTimeout) { EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); EXPECT_EQ(cluster_->prioritySet().getMockHostSet(0)->hosts_[0]->getActiveHealthFailureType(), Host::ActiveHealthFailureType::TIMEOUT); EXPECT_EQ(Host::Health::Unhealthy, @@ -2625,7 +2626,7 @@ TEST_F(TcpHealthCheckerImplTest, DoubleTimeout) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2666,7 +2667,7 @@ TEST_F(TcpHealthCheckerImplTest, TimeoutWithoutReusingConnection) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2687,7 +2688,7 @@ TEST_F(TcpHealthCheckerImplTest, TimeoutWithoutReusingConnection) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); connection_->raiseEvent(Network::ConnectionEvent::Connected); @@ -2726,7 +2727,7 @@ TEST_F(TcpHealthCheckerImplTest, NoData) { expectClientCreate(); EXPECT_CALL(*connection_, write(_, _)).Times(0); EXPECT_CALL(*timeout_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); } TEST_F(TcpHealthCheckerImplTest, PassiveFailure) { @@ -3389,7 +3390,7 @@ TEST_F(GrpcHealthCheckerImplTest, SuccessStartFailedFailFirst) { // Next successful healthcheck does not move host int healthy state (because we configured // healthchecker this way). expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Host still unhealthy, need yet another healthcheck. @@ -3399,7 +3400,7 @@ TEST_F(GrpcHealthCheckerImplTest, SuccessStartFailedFailFirst) { // 2nd successful healthcheck renders host healthy. expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); @@ -3428,7 +3429,7 @@ TEST_F(GrpcHealthCheckerImplTest, GrpcHealthFail) { // Next, we need 2 successful checks for host to become available again. expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Host still considered unhealthy. @@ -3437,7 +3438,7 @@ TEST_F(GrpcHealthCheckerImplTest, GrpcHealthFail) { expectHostHealthy(false); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Host should has become healthy. @@ -3466,7 +3467,7 @@ TEST_F(GrpcHealthCheckerImplTest, Disconnect) { expectClientCreate(0); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Now, host should be unhealthy. @@ -3490,7 +3491,7 @@ TEST_F(GrpcHealthCheckerImplTest, Timeout) { // Unhealthy threshold is 1 so first timeout causes unhealthy EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); expectHostHealthy(false); } @@ -3508,11 +3509,11 @@ TEST_F(GrpcHealthCheckerImplTest, DoubleTimeout) { expectHealthcheckStop(0); // Timeouts are considered network failures and make host unhealthy also after 2nd event. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); expectHostHealthy(true); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Changed)); @@ -3560,7 +3561,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Follow up successful checks should respect interval setting. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3571,7 +3572,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Follow up successful checks should respect interval setting. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3582,7 +3583,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // A logical failure is not considered a network failure, therefore the unhealthy threshold is // ignored and health state changes immediately. Since the threshold is ignored, next health @@ -3596,7 +3597,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3607,7 +3608,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3618,7 +3619,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // When transitioning to a successful state, checks should respect healthy_edge_interval. Health // state should be delayed pending healthy threshold. @@ -3630,7 +3631,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(4000))); @@ -3640,7 +3641,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // After the healthy threshold is reached, health state should change while checks should respect // the default interval. @@ -3653,7 +3654,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3664,7 +3665,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // First failed check after a run o successful ones should respect unhealthy_edge_interval. A // timeout, being a network type failure, should respect unhealthy threshold before changing the @@ -3672,22 +3673,22 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(3000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(3000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent failing checks should respect unhealthy_interval. As the unhealthy threshold is // reached, health state should also change. @@ -3695,23 +3696,23 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(2000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Remaining failing checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(2000))); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, disableTimer()); - test_sessions_[0]->timeout_timer_->callback_(); + test_sessions_[0]->timeout_timer_->invokeCallback(); EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // When transitioning to a successful state, checks should respect healthy_edge_interval. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); @@ -3722,7 +3723,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); EXPECT_CALL(*this, onHostStatus(_, HealthTransition::ChangePending)); EXPECT_CALL(*test_sessions_[0]->interval_timer_, enableTimer(std::chrono::milliseconds(4000))); @@ -3732,7 +3733,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // After the healthy threshold is reached, health state should change while checks should respect // the default interval. @@ -3745,7 +3746,7 @@ TEST_F(GrpcHealthCheckerImplTest, HealthCheckIntervals) { EXPECT_CALL(*test_sessions_[0]->timeout_timer_, enableTimer(_)); // Needed after a response is sent. expectStreamCreate(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); // Subsequent checks shouldn't change the state. EXPECT_CALL(*this, onHostStatus(_, HealthTransition::Unchanged)); @@ -3774,7 +3775,7 @@ TEST_F(GrpcHealthCheckerImplTest, RemoteCloseBetweenChecks) { expectClientCreate(0); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Test host state haven't changed. @@ -3803,7 +3804,7 @@ TEST_F(GrpcHealthCheckerImplTest, DontReuseConnectionBetweenChecks) { // closes the connection. expectClientCreate(0); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Test host state haven't changed. @@ -3863,7 +3864,7 @@ TEST_F(GrpcHealthCheckerImplTest, GoAwayBetweenChecks) { expectClientCreate(0); expectHealthcheckStart(0); - test_sessions_[0]->interval_timer_->callback_(); + test_sessions_[0]->interval_timer_->invokeCallback(); expectHealthcheckStop(0); // Test host state haven't changed. diff --git a/test/common/upstream/load_balancer_benchmark.cc b/test/common/upstream/load_balancer_benchmark.cc index 9bd79569b52fc..b1f736873346f 100644 --- a/test/common/upstream/load_balancer_benchmark.cc +++ b/test/common/upstream/load_balancer_benchmark.cc @@ -2,6 +2,7 @@ #include +#include "common/memory/stats.h" #include "common/runtime/runtime_impl.h" #include "common/upstream/maglev_lb.h" #include "common/upstream/ring_hash_lb.h" @@ -27,15 +28,18 @@ class BaseTester { hosts.push_back(makeTestHost(info_, fmt::format("tcp://10.0.{}.{}:6379", i / 256, i % 256), should_weight ? weight : 1)); } - HostVectorConstSharedPtr updated_hosts{new HostVector(hosts)}; - priority_set_.updateHosts( - 0, - updateHostsParams(updated_hosts, nullptr, - std::make_shared(*updated_hosts), nullptr), - {}, hosts, {}, absl::nullopt); + + HostVectorConstSharedPtr updated_hosts = std::make_shared(hosts); + HostsPerLocalityConstSharedPtr hosts_per_locality = makeHostsPerLocality({hosts}); + priority_set_.updateHosts(0, HostSetImpl::partitionHosts(updated_hosts, hosts_per_locality), {}, + hosts, {}, absl::nullopt); + local_priority_set_.updateHosts(0, + HostSetImpl::partitionHosts(updated_hosts, hosts_per_locality), + {}, hosts, {}, absl::nullopt); } PrioritySetImpl priority_set_; + PrioritySetImpl local_priority_set_; Stats::IsolatedStoreImpl stats_store_; ClusterStats stats_{ClusterInfoImpl::generateStats(stats_store_)}; NiceMock runtime_; @@ -44,6 +48,58 @@ class BaseTester { std::shared_ptr info_{new NiceMock()}; }; +class RoundRobinTester : public BaseTester { +public: + RoundRobinTester(uint64_t num_hosts, uint32_t weighted_subset_percent = 0, uint32_t weight = 0) + : BaseTester(num_hosts, weighted_subset_percent, weight) {} + + void initialize() { + lb_ = std::make_unique(priority_set_, &local_priority_set_, stats_, + runtime_, random_, common_config_); + } + + std::unique_ptr lb_; +}; + +void BM_RoundRobinLoadBalancerBuild(benchmark::State& state) { + for (auto _ : state) { + state.PauseTiming(); + const uint64_t num_hosts = state.range(0); + const uint64_t weighted_subset_percent = state.range(1); + const uint64_t weight = state.range(2); + + RoundRobinTester tester(num_hosts, weighted_subset_percent, weight); + const size_t start_mem = Memory::Stats::totalCurrentlyAllocated(); + + // We are only interested in timing the initial build. + state.ResumeTiming(); + tester.initialize(); + state.PauseTiming(); + const size_t end_mem = Memory::Stats::totalCurrentlyAllocated(); + state.counters["memory"] = end_mem - start_mem; + state.counters["memory_per_host"] = (end_mem - start_mem) / num_hosts; + state.ResumeTiming(); + } +} +BENCHMARK(BM_RoundRobinLoadBalancerBuild) + ->Args({1, 0, 1}) + ->Args({500, 0, 1}) + ->Args({500, 50, 50}) + ->Args({500, 100, 50}) + ->Args({2500, 0, 1}) + ->Args({2500, 50, 50}) + ->Args({2500, 100, 50}) + ->Args({10000, 0, 1}) + ->Args({10000, 50, 50}) + ->Args({10000, 100, 50}) + ->Args({25000, 0, 1}) + ->Args({25000, 50, 50}) + ->Args({25000, 100, 50}) + ->Args({50000, 0, 1}) + ->Args({50000, 50, 50}) + ->Args({50000, 100, 50}) + ->Unit(benchmark::kMillisecond); + class RingHashTester : public BaseTester { public: RingHashTester(uint64_t num_hosts, uint64_t min_ring_size) : BaseTester(num_hosts) { diff --git a/test/common/upstream/load_balancer_impl_test.cc b/test/common/upstream/load_balancer_impl_test.cc index 5a42f7bf5edf9..e29dd9b0dcd86 100644 --- a/test/common/upstream/load_balancer_impl_test.cc +++ b/test/common/upstream/load_balancer_impl_test.cc @@ -1229,7 +1229,7 @@ TEST_P(LeastRequestLoadBalancerTest, SingleHost) { // Host weight is 100. { - EXPECT_CALL(random_, random()).WillOnce(Return(0)); + EXPECT_CALL(random_, random()).WillOnce(Return(0)).WillOnce(Return(2)).WillOnce(Return(3)); stats_.max_host_weight_.set(100UL); EXPECT_EQ(hostSet().healthy_hosts_[0], lb_.chooseHost(nullptr)); } @@ -1237,7 +1237,7 @@ TEST_P(LeastRequestLoadBalancerTest, SingleHost) { HostVector empty; { hostSet().runCallbacks(empty, empty); - EXPECT_CALL(random_, random()).WillOnce(Return(0)); + EXPECT_CALL(random_, random()).WillOnce(Return(0)).WillOnce(Return(2)).WillOnce(Return(3)); EXPECT_EQ(hostSet().healthy_hosts_[0], lb_.chooseHost(nullptr)); } diff --git a/test/common/upstream/logical_dns_cluster_test.cc b/test/common/upstream/logical_dns_cluster_test.cc index 4433db2931f15..e09890e76ebed 100644 --- a/test/common/upstream/logical_dns_cluster_test.cc +++ b/test/common/upstream/logical_dns_cluster_test.cc @@ -101,7 +101,7 @@ class LogicalDnsClusterTest : public testing::Test { logical_host->outlierDetector().putHttpResponseCode(200); expectResolve(Network::DnsLookupFamily::V4Only, expected_address); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); // Should not cause any changes. EXPECT_CALL(*resolve_timer_, enableTimer(_)); @@ -133,7 +133,7 @@ class LogicalDnsClusterTest : public testing::Test { data.host_description_->healthChecker().setUnhealthy(); expectResolve(Network::DnsLookupFamily::V4Only, expected_address); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); // Should cause a change. EXPECT_CALL(*resolve_timer_, enableTimer(_)); @@ -151,7 +151,7 @@ class LogicalDnsClusterTest : public testing::Test { logical_host->createConnection(dispatcher_, nullptr, nullptr); expectResolve(Network::DnsLookupFamily::V4Only, expected_address); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); // Empty should not cause any change. EXPECT_CALL(*resolve_timer_, enableTimer(_)); @@ -167,7 +167,7 @@ class LogicalDnsClusterTest : public testing::Test { // Make sure we cancel. EXPECT_CALL(active_dns_query_, cancel()); expectResolve(Network::DnsLookupFamily::V4Only, expected_address); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); tls_.shutdownThread(); } diff --git a/test/common/upstream/original_dst_cluster_test.cc b/test/common/upstream/original_dst_cluster_test.cc index dd0a2c1babf36..eccedcc9437c0 100644 --- a/test/common/upstream/original_dst_cluster_test.cc +++ b/test/common/upstream/original_dst_cluster_test.cc @@ -290,7 +290,7 @@ TEST_F(OriginalDstClusterTest, Membership) { ASSERT_EQ(1UL, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts().size()); EXPECT_EQ(true, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()[0]->used()); EXPECT_CALL(*cleanup_timer_, enableTimer(_)); - cleanup_timer_->callback_(); + cleanup_timer_->invokeCallback(); EXPECT_EQ( cluster_hosts, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()); // hosts vector remains the same @@ -301,7 +301,7 @@ TEST_F(OriginalDstClusterTest, Membership) { EXPECT_CALL(*cleanup_timer_, enableTimer(_)); EXPECT_CALL(membership_updated_, ready()); - cleanup_timer_->callback_(); + cleanup_timer_->invokeCallback(); EXPECT_NE(cluster_hosts, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()); // hosts vector changes @@ -392,7 +392,7 @@ TEST_F(OriginalDstClusterTest, Membership2) { EXPECT_EQ(true, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()[0]->used()); EXPECT_EQ(true, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()[1]->used()); EXPECT_CALL(*cleanup_timer_, enableTimer(_)); - cleanup_timer_->callback_(); + cleanup_timer_->invokeCallback(); EXPECT_EQ( cluster_hosts, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()); // hosts vector remains the same @@ -404,7 +404,7 @@ TEST_F(OriginalDstClusterTest, Membership2) { EXPECT_CALL(*cleanup_timer_, enableTimer(_)); EXPECT_CALL(membership_updated_, ready()); - cleanup_timer_->callback_(); + cleanup_timer_->invokeCallback(); EXPECT_NE(cluster_hosts, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts()); // hosts vector changes diff --git a/test/common/upstream/outlier_detection_impl_test.cc b/test/common/upstream/outlier_detection_impl_test.cc index c585a55098552..6de146f062a76 100644 --- a/test/common/upstream/outlier_detection_impl_test.cc +++ b/test/common/upstream/outlier_detection_impl_test.cc @@ -232,7 +232,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlow5xxViaHttpCodes) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->outlierDetector().lastUnejectionTime()); // Interval that does bring the host back in. @@ -241,7 +241,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlow5xxViaHttpCodes) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_TRUE(hosts_[0]->outlierDetector().lastUnejectionTime()); @@ -359,7 +359,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlow5xxViaNonHttpCodes) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->outlierDetector().lastUnejectionTime()); // Interval that does bring the host back in. @@ -368,7 +368,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlow5xxViaNonHttpCodes) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_TRUE(hosts_[0]->outlierDetector().lastUnejectionTime()); @@ -450,7 +450,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowGatewayFailure) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->outlierDetector().lastUnejectionTime()); // Interval that does bring the host back in. @@ -459,7 +459,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowGatewayFailure) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_TRUE(hosts_[0]->outlierDetector().lastUnejectionTime()); @@ -537,7 +537,7 @@ TEST_F(OutlierDetectorImplTest, TimeoutWithHttpCode) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); // Report several LOCAL_ORIGIN_TIMEOUT with HTTP code other that 500. Node should not be ejected. @@ -611,7 +611,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowLocalOriginFailure) { // Wait short time - not enough to be unejected time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->outlierDetector().lastUnejectionTime()); // Interval that does bring the host back in. @@ -620,7 +620,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowLocalOriginFailure) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_TRUE(hosts_[0]->outlierDetector().lastUnejectionTime()); EXPECT_EQ(0UL, outlier_detection_ejections_active_.value()); @@ -699,7 +699,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowGatewayFailureAnd5xx) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->outlierDetector().lastUnejectionTime()); // Interval that does bring the host back in. @@ -708,7 +708,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowGatewayFailureAnd5xx) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[0]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[0]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_TRUE(hosts_[0]->outlierDetector().lastUnejectionTime()); @@ -848,7 +848,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateExternalOrigin) { EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); ON_CALL(runtime_.snapshot_, getInteger("outlier_detection.success_rate_stdev_factor", 1900)) .WillByDefault(Return(1900)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_EQ(50, hosts_[4]->outlierDetector().successRate( DetectorHostMonitor::SuccessRateMonitorType::ExternalOrigin)); EXPECT_EQ(90, detector->successRateAverage( @@ -868,7 +868,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateExternalOrigin) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(19999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_TRUE(hosts_[4]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_EQ(1UL, outlier_detection_ejections_active_.value()); @@ -878,7 +878,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateExternalOrigin) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[4]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[4]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_EQ(0UL, outlier_detection_ejections_active_.value()); @@ -901,7 +901,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateExternalOrigin) { time_system_.setMonotonicTime(std::chrono::milliseconds(60001)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_EQ(0UL, outlier_detection_ejections_active_.value()); EXPECT_EQ(-1, hosts_[4]->outlierDetector().successRate( DetectorHostMonitor::SuccessRateMonitorType::ExternalOrigin)); @@ -982,7 +982,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateLocalOrigin) { EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); ON_CALL(runtime_.snapshot_, getInteger("outlier_detection.success_rate_stdev_factor", 1900)) .WillByDefault(Return(1900)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_EQ(50, hosts_[4]->outlierDetector().successRate( DetectorHostMonitor::SuccessRateMonitorType::LocalOrigin)); EXPECT_EQ(90, @@ -1002,7 +1002,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateLocalOrigin) { // Interval that doesn't bring the host back in. time_system_.setMonotonicTime(std::chrono::milliseconds(19999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_TRUE(hosts_[4]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_EQ(1UL, outlier_detection_ejections_active_.value()); @@ -1012,7 +1012,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateLocalOrigin) { EXPECT_CALL(*event_logger_, logUneject(std::static_pointer_cast(hosts_[4]))); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_FALSE(hosts_[4]->healthFlagGet(Host::HealthFlag::FAILED_OUTLIER_CHECK)); EXPECT_EQ(0UL, outlier_detection_ejections_active_.value()); @@ -1031,7 +1031,7 @@ TEST_F(OutlierDetectorImplTest, BasicFlowSuccessRateLocalOrigin) { time_system_.setMonotonicTime(std::chrono::milliseconds(60001)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_EQ(0UL, outlier_detection_ejections_active_.value()); EXPECT_EQ(-1, hosts_[4]->outlierDetector().successRate( DetectorHostMonitor::SuccessRateMonitorType::LocalOrigin)); @@ -1053,7 +1053,7 @@ TEST_F(OutlierDetectorImplTest, EmptySuccessRate) { EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); ON_CALL(runtime_.snapshot_, getInteger("outlier_detection.success_rate_minimum_hosts", 5)) .WillByDefault(Return(0)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); } TEST_F(OutlierDetectorImplTest, RemoveWhileEjected) { @@ -1083,7 +1083,7 @@ TEST_F(OutlierDetectorImplTest, RemoveWhileEjected) { time_system_.setMonotonicTime(std::chrono::milliseconds(9999)); EXPECT_CALL(*interval_timer_, enableTimer(std::chrono::milliseconds(10000))); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); } TEST_F(OutlierDetectorImplTest, Overflow) { diff --git a/test/common/upstream/upstream_impl_test.cc b/test/common/upstream/upstream_impl_test.cc index eb0e898f28b5a..f55f2884097af 100644 --- a/test/common/upstream/upstream_impl_test.cc +++ b/test/common/upstream/upstream_impl_test.cc @@ -311,7 +311,7 @@ TEST_F(StrictDnsClusterImplTest, Basic) { EXPECT_EQ("localhost1", cluster.prioritySet().hostSetsPerPriority()[0]->hosts()[1]->hostname()); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( @@ -319,14 +319,14 @@ TEST_F(StrictDnsClusterImplTest, Basic) { ContainerEq(hostListToAddresses(cluster.prioritySet().hostSetsPerPriority()[0]->hosts()))); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( std::list({"127.0.0.1:11001", "127.0.0.2:11001"}), ContainerEq(hostListToAddresses(cluster.prioritySet().hostSetsPerPriority()[0]->hosts()))); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); EXPECT_CALL(membership_updated, ready()); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.3"})); @@ -353,9 +353,9 @@ TEST_F(StrictDnsClusterImplTest, Basic) { // Make sure we cancel. resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); resolver2.expectResolve(*dns_resolver_); - resolver2.timer_->callback_(); + resolver2.timer_->invokeCallback(); EXPECT_CALL(resolver1.active_dns_query_, cancel()); EXPECT_CALL(resolver2.active_dns_query_, cancel()); @@ -610,7 +610,7 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasic) { EXPECT_EQ(0UL, stats_.counter("cluster.name.update_no_rebuild").value()); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( @@ -622,7 +622,7 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasic) { EXPECT_EQ(1UL, stats_.counter("cluster.name.update_no_rebuild").value()); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( @@ -641,14 +641,14 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasic) { EXPECT_EQ(2UL, stats_.counter("cluster.name.update_no_rebuild").value()); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); // We again received the same set as before for localhost1. No rebuild this time. EXPECT_EQ(3UL, stats_.counter("cluster.name.update_no_rebuild").value()); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); EXPECT_CALL(membership_updated, ready()); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.3"})); @@ -717,11 +717,11 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasic) { // Make sure we cancel. resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); resolver2.expectResolve(*dns_resolver_); - resolver2.timer_->callback_(); + resolver2.timer_->invokeCallback(); resolver3.expectResolve(*dns_resolver_); - resolver3.timer_->callback_(); + resolver3.timer_->invokeCallback(); EXPECT_CALL(resolver1.active_dns_query_, cancel()); EXPECT_CALL(resolver2.active_dns_query_, cancel()); @@ -799,7 +799,7 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasicMultiplePriorities) { EXPECT_EQ("localhost1", cluster.prioritySet().hostSetsPerPriority()[0]->hosts()[1]->hostname()); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( @@ -807,14 +807,14 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasicMultiplePriorities) { ContainerEq(hostListToAddresses(cluster.prioritySet().hostSetsPerPriority()[0]->hosts()))); resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.2", "127.0.0.1"})); EXPECT_THAT( std::list({"127.0.0.1:11001", "127.0.0.2:11001"}), ContainerEq(hostListToAddresses(cluster.prioritySet().hostSetsPerPriority()[0]->hosts()))); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); EXPECT_CALL(*resolver1.timer_, enableTimer(std::chrono::milliseconds(4000))); EXPECT_CALL(membership_updated, ready()); resolver1.dns_callback_(TestUtility::makeDnsResponse({"127.0.0.3"})); @@ -850,11 +850,11 @@ TEST_F(StrictDnsClusterImplTest, LoadAssignmentBasicMultiplePriorities) { // Make sure we cancel. resolver1.expectResolve(*dns_resolver_); - resolver1.timer_->callback_(); + resolver1.timer_->invokeCallback(); resolver2.expectResolve(*dns_resolver_); - resolver2.timer_->callback_(); + resolver2.timer_->invokeCallback(); resolver3.expectResolve(*dns_resolver_); - resolver3.timer_->callback_(); + resolver3.timer_->invokeCallback(); EXPECT_CALL(resolver1.active_dns_query_, cancel()); EXPECT_CALL(resolver2.active_dns_query_, cancel()); diff --git a/test/common/upstream/utility.h b/test/common/upstream/utility.h index b5da2071d09b3..b41b9cbfd2801 100644 --- a/test/common/upstream/utility.h +++ b/test/common/upstream/utility.h @@ -15,8 +15,7 @@ namespace Envoy { namespace Upstream { namespace { -inline std::string defaultStaticClusterJson(const std::string& name) { - return fmt::sprintf(R"EOF( +constexpr static const char* kDefaultStaticClusterTmpl = R"EOF( { "name": "%s", "connect_timeout": "0.250s", @@ -24,15 +23,18 @@ inline std::string defaultStaticClusterJson(const std::string& name) { "lb_policy": "round_robin", "hosts": [ { - "socket_address": { - "address": "127.0.0.1", - "port_value": 11001 - } + %s, } ] } - )EOF", - name); + )EOF"; + +inline std::string defaultStaticClusterJson(const std::string& name) { + return fmt::sprintf(kDefaultStaticClusterTmpl, name, R"EOF( +"socket_address": { + "address": "127.0.0.1", + "port_value": 11001 +})EOF"); } inline envoy::config::bootstrap::v2::Bootstrap diff --git a/test/config/integration/BUILD b/test/config/integration/BUILD index d28d2d8011faf..a6c4442e3e0b1 100644 --- a/test/config/integration/BUILD +++ b/test/config/integration/BUILD @@ -16,9 +16,13 @@ filegroup( name = "server_xds_files", srcs = [ "server_xds.bootstrap.yaml", + "server_xds.cds.with_unknown_field.yaml", "server_xds.cds.yaml", + "server_xds.eds.with_unknown_field.yaml", "server_xds.eds.yaml", + "server_xds.lds.with_unknown_field.yaml", "server_xds.lds.yaml", + "server_xds.rds.with_unknown_field.yaml", "server_xds.rds.yaml", ], ) diff --git a/test/config/integration/server.yaml b/test/config/integration/server.yaml index 455a17bc05923..88d34049619bc 100644 --- a/test/config/integration/server.yaml +++ b/test/config/integration/server.yaml @@ -8,10 +8,10 @@ static_resources: - filters: - name: envoy.http_connection_manager config: - drain_timeout_ms: 5000 + drain_timeout: 5s route_config: virtual_hosts: - - require_ssl: all + - require_tls: all routes: - route: { cluster: cluster_1 } match: { prefix: "/" } @@ -22,9 +22,6 @@ static_resources: - match: { prefix: "/" } route: cluster: cluster_1 - runtime: - key: some_key - default: 0 - match: { prefix: "/test/long/url" } route: rate_limits: @@ -42,15 +39,11 @@ static_resources: name: integration codec_type: http1 stat_prefix: router - filters: - - name: health_check + http_filters: + - name: envoy.health_check config: - endpoint: "/healthcheck" pass_through_mode: false - - name: rate_limit - config: - domain: foo - - name: router + - name: envoy.router config: {} access_log: - name: envoy.file_access_log diff --git a/test/config/integration/server_unix_listener.yaml b/test/config/integration/server_unix_listener.yaml index 0ba01442cb6d7..bd0c6f090403b 100644 --- a/test/config/integration/server_unix_listener.yaml +++ b/test/config/integration/server_unix_listener.yaml @@ -7,12 +7,12 @@ static_resources: - filters: - name: envoy.http_connection_manager config: - filters: - - name: router + http_filters: + - name: envoy.router config: {} codec_type: auto stat_prefix: router - drain_timeout_ms: 5000 + drain_timeout: 5s route_config: virtual_hosts: - domains: diff --git a/test/config/integration/server_xds.cds.with_unknown_field.yaml b/test/config/integration/server_xds.cds.with_unknown_field.yaml new file mode 100644 index 0000000000000..01d794ab4032c --- /dev/null +++ b/test/config/integration/server_xds.cds.with_unknown_field.yaml @@ -0,0 +1,15 @@ +version_info: "0" +resources: +- "@type": type.googleapis.com/envoy.api.v2.Cluster + name: cluster_1 + connect_timeout: { seconds: 5 } + type: EDS + eds_cluster_config: + eds_config: { path: {{ eds_json_path }} } + lb_policy: ROUND_ROBIN + http2_protocol_options: {} + extension_protocol_options: + envoy.test.dynamic_validation: + stat_prefix: blah + cluster: blah + foo: bar diff --git a/test/config/integration/server_xds.eds.with_unknown_field.yaml b/test/config/integration/server_xds.eds.with_unknown_field.yaml new file mode 100644 index 0000000000000..912be177993db --- /dev/null +++ b/test/config/integration/server_xds.eds.with_unknown_field.yaml @@ -0,0 +1,12 @@ +version_info: "0" +resources: +- "@type": type.googleapis.com/envoy.api.v2.ClusterLoadAssignment + cluster_name: cluster_1 + foo: bar + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: {{ ntop_ip_loopback_address }} + port_value: {{ upstream_0 }} diff --git a/test/config/integration/server_xds.lds.with_unknown_field.yaml b/test/config/integration/server_xds.lds.with_unknown_field.yaml new file mode 100644 index 0000000000000..e1fe53b7127b8 --- /dev/null +++ b/test/config/integration/server_xds.lds.with_unknown_field.yaml @@ -0,0 +1,20 @@ +version_info: "0" +resources: +- "@type": type.googleapis.com/envoy.api.v2.Listener + name: listener_0 + address: + socket_address: + address: {{ ntop_ip_loopback_address }} + port_value: 0 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: HTTP2 + drain_timeout: 5s + stat_prefix: router + rds: + route_config_name: route_config_0 + config_source: { path: {{ rds_json_path }} } + http_filters: [{ name: envoy.router }] + foo: bar diff --git a/test/config/integration/server_xds.rds.with_unknown_field.yaml b/test/config/integration/server_xds.rds.with_unknown_field.yaml new file mode 100644 index 0000000000000..0fb40bd6a74af --- /dev/null +++ b/test/config/integration/server_xds.rds.with_unknown_field.yaml @@ -0,0 +1,11 @@ +version_info: "0" +resources: +- "@type": type.googleapis.com/envoy.api.v2.RouteConfiguration + name: route_config_0 + virtual_hosts: + - name: integration + domains: [ "*" ] + routes: + - match: { prefix: "/test/long/url" } + route: { cluster: cluster_1 } + foo: bar diff --git a/test/config/utility.cc b/test/config/utility.cc index b8d3276fa60c4..11efd7a79da71 100644 --- a/test/config/utility.cc +++ b/test/config/utility.cc @@ -172,6 +172,7 @@ std::string ConfigHelper::discoveredClustersBootstrap(const std::string& api_typ grpc_services: envoy_grpc: cluster_name: my_cds_cluster + set_node_on_first_message_only: true static_resources: clusters: - name: my_cds_cluster diff --git a/test/config_test/config_test.cc b/test/config_test/config_test.cc index b552cb9ec31b3..d7311ec8c160b 100644 --- a/test/config_test/config_test.cc +++ b/test/config_test/config_test.cc @@ -81,15 +81,15 @@ class ConfigTest { })); envoy::config::bootstrap::v2::Bootstrap bootstrap; - Server::InstanceUtil::loadBootstrapConfig(bootstrap, options_, - server_.messageValidationVisitor(), *api_); + Server::InstanceUtil::loadBootstrapConfig( + bootstrap, options_, server_.messageValidationContext().staticValidationVisitor(), *api_); Server::Configuration::InitialImpl initial_config(bootstrap); Server::Configuration::MainImpl main_config; cluster_manager_factory_ = std::make_unique( server_.admin(), server_.runtime(), server_.stats(), server_.threadLocal(), server_.random(), server_.dnsResolver(), ssl_context_manager_, server_.dispatcher(), - server_.localInfo(), server_.secretManager(), server_.messageValidationVisitor(), *api_, + server_.localInfo(), server_.secretManager(), server_.messageValidationContext(), *api_, server_.httpContext(), server_.accessLogManager(), server_.singletonManager(), time_system_); diff --git a/test/extensions/access_loggers/grpc/BUILD b/test/extensions/access_loggers/grpc/BUILD new file mode 100644 index 0000000000000..9e2c7b46240fd --- /dev/null +++ b/test/extensions/access_loggers/grpc/BUILD @@ -0,0 +1,79 @@ +licenses(["notice"]) # Apache 2 + +load( + "//bazel:envoy_build_system.bzl", + "envoy_package", +) +load( + "//test/extensions:extensions_build_system.bzl", + "envoy_extension_cc_test", +) + +envoy_package() + +envoy_extension_cc_test( + name = "grpc_access_log_impl_test", + srcs = ["grpc_access_log_impl_test.cc"], + extension_name = "envoy.access_loggers.http_grpc", + deps = [ + "//source/extensions/access_loggers/grpc:http_grpc_access_log_lib", + "//test/mocks/access_log:access_log_mocks", + "//test/mocks/grpc:grpc_mocks", + "//test/mocks/local_info:local_info_mocks", + "//test/mocks/ssl:ssl_mocks", + "//test/mocks/stream_info:stream_info_mocks", + "//test/mocks/thread_local:thread_local_mocks", + ], +) + +envoy_extension_cc_test( + name = "grpc_access_log_utils_test", + srcs = ["grpc_access_log_utils_test.cc"], + extension_name = "envoy.access_loggers.http_grpc", + deps = [ + "//source/extensions/access_loggers/grpc:grpc_access_log_utils", + "//test/mocks/local_info:local_info_mocks", + "//test/mocks/ssl:ssl_mocks", + "//test/mocks/stream_info:stream_info_mocks", + ], +) + +envoy_extension_cc_test( + name = "http_grpc_access_log_impl_test", + srcs = ["http_grpc_access_log_impl_test.cc"], + extension_name = "envoy.access_loggers.http_grpc", + deps = [ + "//source/extensions/access_loggers/grpc:http_grpc_access_log_lib", + "//test/mocks/access_log:access_log_mocks", + "//test/mocks/grpc:grpc_mocks", + "//test/mocks/local_info:local_info_mocks", + "//test/mocks/ssl:ssl_mocks", + "//test/mocks/stream_info:stream_info_mocks", + "//test/mocks/thread_local:thread_local_mocks", + ], +) + +envoy_extension_cc_test( + name = "http_config_test", + srcs = ["http_config_test.cc"], + extension_name = "envoy.access_loggers.http_grpc", + deps = [ + "//source/extensions/access_loggers/grpc:http_config", + "//test/mocks/server:server_mocks", + ], +) + +envoy_extension_cc_test( + name = "http_grpc_access_log_integration_test", + srcs = ["http_grpc_access_log_integration_test.cc"], + extension_name = "envoy.access_loggers.http_grpc", + deps = [ + "//source/common/buffer:zero_copy_input_stream_lib", + "//source/common/grpc:codec_lib", + "//source/common/grpc:common_lib", + "//source/extensions/access_loggers/grpc:http_config", + "//test/common/grpc:grpc_client_integration_lib", + "//test/integration:http_integration_lib", + "//test/test_common:utility_lib", + ], +) diff --git a/test/extensions/access_loggers/grpc/grpc_access_log_impl_test.cc b/test/extensions/access_loggers/grpc/grpc_access_log_impl_test.cc new file mode 100644 index 0000000000000..571d29fe48dde --- /dev/null +++ b/test/extensions/access_loggers/grpc/grpc_access_log_impl_test.cc @@ -0,0 +1,295 @@ +#include + +#include "common/buffer/zero_copy_input_stream_impl.h" +#include "common/network/address_impl.h" + +#include "extensions/access_loggers/grpc/http_grpc_access_log_impl.h" + +#include "test/mocks/access_log/mocks.h" +#include "test/mocks/grpc/mocks.h" +#include "test/mocks/local_info/mocks.h" +#include "test/mocks/ssl/mocks.h" +#include "test/mocks/stream_info/mocks.h" +#include "test/mocks/thread_local/mocks.h" + +using testing::_; +using testing::InSequence; +using testing::Invoke; +using testing::NiceMock; +using testing::Return; + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace GrpcCommon { +namespace { + +constexpr std::chrono::milliseconds FlushInterval(10); + +class GrpcAccessLoggerImplTest : public testing::Test { +public: + using MockAccessLogStream = Grpc::MockAsyncStream; + using AccessLogCallbacks = + Grpc::AsyncStreamCallbacks; + + void initLogger(std::chrono::milliseconds buffer_flush_interval_msec, size_t buffer_size_bytes) { + timer_ = new Event::MockTimer(&dispatcher_); + EXPECT_CALL(*timer_, enableTimer(buffer_flush_interval_msec)); + logger_ = std::make_unique(Grpc::RawAsyncClientPtr{async_client_}, + log_name_, buffer_flush_interval_msec, + buffer_size_bytes, dispatcher_, local_info_); + } + + void expectStreamStart(MockAccessLogStream& stream, AccessLogCallbacks** callbacks_to_set) { + EXPECT_CALL(*async_client_, startRaw(_, _, _)) + .WillOnce(Invoke([&stream, callbacks_to_set](absl::string_view, absl::string_view, + Grpc::RawAsyncStreamCallbacks& callbacks) { + *callbacks_to_set = dynamic_cast(&callbacks); + return &stream; + })); + } + + void expectStreamMessage(MockAccessLogStream& stream, const std::string& expected_message_yaml) { + envoy::service::accesslog::v2::StreamAccessLogsMessage expected_message; + TestUtility::loadFromYaml(expected_message_yaml, expected_message); + EXPECT_CALL(stream, sendMessageRaw_(_, false)) + .WillOnce(Invoke([expected_message](Buffer::InstancePtr& request, bool) { + envoy::service::accesslog::v2::StreamAccessLogsMessage message; + Buffer::ZeroCopyInputStreamImpl request_stream(std::move(request)); + EXPECT_TRUE(message.ParseFromZeroCopyStream(&request_stream)); + EXPECT_EQ(message.DebugString(), expected_message.DebugString()); + })); + } + + std::string log_name_ = "test_log_name"; + LocalInfo::MockLocalInfo local_info_; + Event::MockTimer* timer_ = nullptr; + Event::MockDispatcher dispatcher_; + Grpc::MockAsyncClient* async_client_{new Grpc::MockAsyncClient}; + std::unique_ptr logger_; +}; + +// Test basic stream logging flow. +TEST_F(GrpcAccessLoggerImplTest, BasicFlow) { + InSequence s; + initLogger(FlushInterval, 0); + + // Start a stream for the first log. + MockAccessLogStream stream; + AccessLogCallbacks* callbacks; + expectStreamStart(stream, &callbacks); + EXPECT_CALL(local_info_, node()); + expectStreamMessage(stream, R"EOF( +identifier: + node: + id: node_name + cluster: cluster_name + locality: + zone: zone_name + log_name: test_log_name +http_logs: + log_entry: + request: + path: /test/path1 +)EOF"); + envoy::data::accesslog::v2::HTTPAccessLogEntry entry; + entry.mutable_request()->set_path("/test/path1"); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + + expectStreamMessage(stream, R"EOF( +http_logs: + log_entry: + request: + path: /test/path2 +)EOF"); + entry.mutable_request()->set_path("/test/path2"); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + + // Verify that sending an empty response message doesn't do anything bad. + callbacks->onReceiveMessage( + std::make_unique()); + + // Close the stream and make sure we make a new one. + callbacks->onRemoteClose(Grpc::Status::Internal, "bad"); + expectStreamStart(stream, &callbacks); + EXPECT_CALL(local_info_, node()); + expectStreamMessage(stream, R"EOF( +identifier: + node: + id: node_name + cluster: cluster_name + locality: + zone: zone_name + log_name: test_log_name +http_logs: + log_entry: + request: + path: /test/path3 +)EOF"); + entry.mutable_request()->set_path("/test/path3"); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); +} + +// Test that stream failure is handled correctly. +TEST_F(GrpcAccessLoggerImplTest, StreamFailure) { + InSequence s; + initLogger(FlushInterval, 0); + + EXPECT_CALL(*async_client_, startRaw(_, _, _)) + .WillOnce(Invoke( + [](absl::string_view, absl::string_view, Grpc::RawAsyncStreamCallbacks& callbacks) { + callbacks.onRemoteClose(Grpc::Status::Internal, "bad"); + return nullptr; + })); + EXPECT_CALL(local_info_, node()); + envoy::data::accesslog::v2::HTTPAccessLogEntry entry; + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); +} + +// Test that log entries are batched. +TEST_F(GrpcAccessLoggerImplTest, Batching) { + InSequence s; + initLogger(FlushInterval, 100); + + MockAccessLogStream stream; + AccessLogCallbacks* callbacks; + expectStreamStart(stream, &callbacks); + EXPECT_CALL(local_info_, node()); + const std::string path1(30, '1'); + const std::string path2(30, '2'); + const std::string path3(80, '3'); + expectStreamMessage(stream, fmt::format(R"EOF( +identifier: + node: + id: node_name + cluster: cluster_name + locality: + zone: zone_name + log_name: test_log_name +http_logs: + log_entry: + - request: + path: "{}" + - request: + path: "{}" + - request: + path: "{}" +)EOF", + path1, path2, path3)); + envoy::data::accesslog::v2::HTTPAccessLogEntry entry; + entry.mutable_request()->set_path(path1); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + entry.mutable_request()->set_path(path2); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + entry.mutable_request()->set_path(path3); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + + const std::string path4(120, '4'); + expectStreamMessage(stream, fmt::format(R"EOF( +http_logs: + log_entry: + request: + path: "{}" +)EOF", + path4)); + entry.mutable_request()->set_path(path4); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); +} + +// Test that log entries are flushed periodically. +TEST_F(GrpcAccessLoggerImplTest, Flushing) { + InSequence s; + initLogger(FlushInterval, 100); + + // Nothing to do yet. + EXPECT_CALL(*timer_, enableTimer(FlushInterval)); + timer_->invokeCallback(); + + envoy::data::accesslog::v2::HTTPAccessLogEntry entry; + // Not enough data yet to trigger flush on batch size. + entry.mutable_request()->set_path("/test/path1"); + logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); + + MockAccessLogStream stream; + AccessLogCallbacks* callbacks; + expectStreamStart(stream, &callbacks); + EXPECT_CALL(local_info_, node()); + expectStreamMessage(stream, fmt::format(R"EOF( + identifier: + node: + id: node_name + cluster: cluster_name + locality: + zone: zone_name + log_name: test_log_name + http_logs: + log_entry: + - request: + path: /test/path1 + )EOF")); + EXPECT_CALL(*timer_, enableTimer(FlushInterval)); + timer_->invokeCallback(); + + // Flush on empty message does nothing. + EXPECT_CALL(*timer_, enableTimer(FlushInterval)); + timer_->invokeCallback(); +} + +class GrpcAccessLoggerCacheImplTest : public testing::Test { +public: + GrpcAccessLoggerCacheImplTest() { + logger_cache_ = std::make_unique(async_client_manager_, scope_, tls_, + local_info_); + } + + void expectClientCreation() { + factory_ = new Grpc::MockAsyncClientFactory; + async_client_ = new Grpc::MockAsyncClient; + EXPECT_CALL(async_client_manager_, factoryForGrpcService(_, _, false)) + .WillOnce(Invoke([this](const envoy::api::v2::core::GrpcService&, Stats::Scope&, bool) { + EXPECT_CALL(*factory_, create()).WillOnce(Invoke([this] { + return Grpc::RawAsyncClientPtr{async_client_}; + })); + return Grpc::AsyncClientFactoryPtr{factory_}; + })); + } + + LocalInfo::MockLocalInfo local_info_; + NiceMock tls_; + Grpc::MockAsyncClientManager async_client_manager_; + Grpc::MockAsyncClient* async_client_ = nullptr; + Grpc::MockAsyncClientFactory* factory_ = nullptr; + std::unique_ptr logger_cache_; + NiceMock scope_; +}; + +TEST_F(GrpcAccessLoggerCacheImplTest, Deduplication) { + InSequence s; + + ::envoy::config::accesslog::v2::CommonGrpcAccessLogConfig config; + config.set_log_name("log-1"); + config.mutable_grpc_service()->mutable_envoy_grpc()->set_cluster_name("cluster-1"); + + expectClientCreation(); + GrpcAccessLoggerSharedPtr logger1 = logger_cache_->getOrCreateLogger(config); + EXPECT_EQ(logger1, logger_cache_->getOrCreateLogger(config)); + + // Changing log name leads to another logger. + config.set_log_name("log-2"); + expectClientCreation(); + EXPECT_NE(logger1, logger_cache_->getOrCreateLogger(config)); + + config.set_log_name("log-1"); + EXPECT_EQ(logger1, logger_cache_->getOrCreateLogger(config)); + + // Changing cluster name leads to another logger. + config.mutable_grpc_service()->mutable_envoy_grpc()->set_cluster_name("cluster-2"); + expectClientCreation(); + EXPECT_NE(logger1, logger_cache_->getOrCreateLogger(config)); +} + +} // namespace +} // namespace GrpcCommon +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy diff --git a/test/extensions/access_loggers/grpc/grpc_access_log_utils_test.cc b/test/extensions/access_loggers/grpc/grpc_access_log_utils_test.cc new file mode 100644 index 0000000000000..a03e329f57053 --- /dev/null +++ b/test/extensions/access_loggers/grpc/grpc_access_log_utils_test.cc @@ -0,0 +1,51 @@ +#include "envoy/data/accesslog/v2/accesslog.pb.h" + +#include "extensions/access_loggers/grpc/grpc_access_log_utils.h" + +#include "test/mocks/stream_info/mocks.h" + +namespace Envoy { +namespace Extensions { +namespace AccessLoggers { +namespace GrpcCommon { +namespace { + +using testing::_; +using testing::Return; + +TEST(UtilityResponseFlagsToAccessLogResponseFlagsTest, All) { + NiceMock stream_info; + ON_CALL(stream_info, hasResponseFlag(_)).WillByDefault(Return(true)); + envoy::data::accesslog::v2::AccessLogCommon common_access_log; + Utility::responseFlagsToAccessLogResponseFlags(common_access_log, stream_info); + + envoy::data::accesslog::v2::AccessLogCommon common_access_log_expected; + common_access_log_expected.mutable_response_flags()->set_failed_local_healthcheck(true); + common_access_log_expected.mutable_response_flags()->set_no_healthy_upstream(true); + common_access_log_expected.mutable_response_flags()->set_upstream_request_timeout(true); + common_access_log_expected.mutable_response_flags()->set_local_reset(true); + common_access_log_expected.mutable_response_flags()->set_upstream_remote_reset(true); + common_access_log_expected.mutable_response_flags()->set_upstream_connection_failure(true); + common_access_log_expected.mutable_response_flags()->set_upstream_connection_termination(true); + common_access_log_expected.mutable_response_flags()->set_upstream_overflow(true); + common_access_log_expected.mutable_response_flags()->set_no_route_found(true); + common_access_log_expected.mutable_response_flags()->set_delay_injected(true); + common_access_log_expected.mutable_response_flags()->set_fault_injected(true); + common_access_log_expected.mutable_response_flags()->set_rate_limited(true); + common_access_log_expected.mutable_response_flags()->mutable_unauthorized_details()->set_reason( + envoy::data::accesslog::v2::ResponseFlags_Unauthorized_Reason:: + ResponseFlags_Unauthorized_Reason_EXTERNAL_SERVICE); + common_access_log_expected.mutable_response_flags()->set_rate_limit_service_error(true); + common_access_log_expected.mutable_response_flags()->set_downstream_connection_termination(true); + common_access_log_expected.mutable_response_flags()->set_upstream_retry_limit_exceeded(true); + common_access_log_expected.mutable_response_flags()->set_stream_idle_timeout(true); + common_access_log_expected.mutable_response_flags()->set_invalid_envoy_request_headers(true); + + EXPECT_EQ(common_access_log_expected.DebugString(), common_access_log.DebugString()); +} + +} // namespace +} // namespace GrpcCommon +} // namespace AccessLoggers +} // namespace Extensions +} // namespace Envoy diff --git a/test/extensions/access_loggers/http_grpc/config_test.cc b/test/extensions/access_loggers/grpc/http_config_test.cc similarity index 96% rename from test/extensions/access_loggers/http_grpc/config_test.cc rename to test/extensions/access_loggers/grpc/http_config_test.cc index 6cc54924f80a9..7cd5bbc00f97a 100644 --- a/test/extensions/access_loggers/http_grpc/config_test.cc +++ b/test/extensions/access_loggers/grpc/http_config_test.cc @@ -2,7 +2,7 @@ #include "envoy/server/access_log_config.h" #include "envoy/stats/scope.h" -#include "extensions/access_loggers/http_grpc/grpc_access_log_impl.h" +#include "extensions/access_loggers/grpc/http_grpc_access_log_impl.h" #include "extensions/access_loggers/well_known_names.h" #include "test/mocks/server/mocks.h" diff --git a/test/extensions/access_loggers/http_grpc/grpc_access_log_impl_test.cc b/test/extensions/access_loggers/grpc/http_grpc_access_log_impl_test.cc similarity index 61% rename from test/extensions/access_loggers/http_grpc/grpc_access_log_impl_test.cc rename to test/extensions/access_loggers/grpc/http_grpc_access_log_impl_test.cc index ecf1e048fd5d0..22e1f7cd59c0d 100644 --- a/test/extensions/access_loggers/http_grpc/grpc_access_log_impl_test.cc +++ b/test/extensions/access_loggers/grpc/http_grpc_access_log_impl_test.cc @@ -3,7 +3,7 @@ #include "common/buffer/zero_copy_input_stream_impl.h" #include "common/network/address_impl.h" -#include "extensions/access_loggers/http_grpc/grpc_access_log_impl.h" +#include "extensions/access_loggers/grpc/http_grpc_access_log_impl.h" #include "test/mocks/access_log/mocks.h" #include "test/mocks/grpc/mocks.h" @@ -25,281 +25,17 @@ namespace AccessLoggers { namespace HttpGrpc { namespace { -constexpr std::chrono::milliseconds FlushInterval(10); - -class GrpcAccessLoggerImplTest : public testing::Test { -public: - using MockAccessLogStream = Grpc::MockAsyncStream; - using AccessLogCallbacks = - Grpc::AsyncStreamCallbacks; - - void initLogger(std::chrono::milliseconds buffer_flush_interval_msec, size_t buffer_size_bytes) { - timer_ = new Event::MockTimer(&dispatcher_); - EXPECT_CALL(*timer_, enableTimer(buffer_flush_interval_msec)); - logger_ = std::make_unique(Grpc::RawAsyncClientPtr{async_client_}, - log_name_, buffer_flush_interval_msec, - buffer_size_bytes, dispatcher_, local_info_); - } - - void expectStreamStart(MockAccessLogStream& stream, AccessLogCallbacks** callbacks_to_set) { - EXPECT_CALL(*async_client_, startRaw(_, _, _)) - .WillOnce(Invoke([&stream, callbacks_to_set](absl::string_view, absl::string_view, - Grpc::RawAsyncStreamCallbacks& callbacks) { - *callbacks_to_set = dynamic_cast(&callbacks); - return &stream; - })); - } - - void expectStreamMessage(MockAccessLogStream& stream, const std::string& expected_message_yaml) { - envoy::service::accesslog::v2::StreamAccessLogsMessage expected_message; - TestUtility::loadFromYaml(expected_message_yaml, expected_message); - EXPECT_CALL(stream, sendMessageRaw_(_, false)) - .WillOnce(Invoke([expected_message](Buffer::InstancePtr& request, bool) { - envoy::service::accesslog::v2::StreamAccessLogsMessage message; - Buffer::ZeroCopyInputStreamImpl request_stream(std::move(request)); - EXPECT_TRUE(message.ParseFromZeroCopyStream(&request_stream)); - EXPECT_EQ(message.DebugString(), expected_message.DebugString()); - })); - } - - std::string log_name_ = "test_log_name"; - LocalInfo::MockLocalInfo local_info_; - Event::MockTimer* timer_ = nullptr; - Event::MockDispatcher dispatcher_; - Grpc::MockAsyncClient* async_client_{new Grpc::MockAsyncClient}; - std::unique_ptr logger_; -}; - -// Test basic stream logging flow. -TEST_F(GrpcAccessLoggerImplTest, BasicFlow) { - InSequence s; - initLogger(FlushInterval, 0); - - // Start a stream for the first log. - MockAccessLogStream stream; - AccessLogCallbacks* callbacks; - expectStreamStart(stream, &callbacks); - EXPECT_CALL(local_info_, node()); - expectStreamMessage(stream, R"EOF( -identifier: - node: - id: node_name - cluster: cluster_name - locality: - zone: zone_name - log_name: test_log_name -http_logs: - log_entry: - request: - path: /test/path1 -)EOF"); - envoy::data::accesslog::v2::HTTPAccessLogEntry entry; - entry.mutable_request()->set_path("/test/path1"); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - - expectStreamMessage(stream, R"EOF( -http_logs: - log_entry: - request: - path: /test/path2 -)EOF"); - entry.mutable_request()->set_path("/test/path2"); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - - // Verify that sending an empty response message doesn't do anything bad. - callbacks->onReceiveMessage( - std::make_unique()); - - // Close the stream and make sure we make a new one. - callbacks->onRemoteClose(Grpc::Status::Internal, "bad"); - expectStreamStart(stream, &callbacks); - EXPECT_CALL(local_info_, node()); - expectStreamMessage(stream, R"EOF( -identifier: - node: - id: node_name - cluster: cluster_name - locality: - zone: zone_name - log_name: test_log_name -http_logs: - log_entry: - request: - path: /test/path3 -)EOF"); - entry.mutable_request()->set_path("/test/path3"); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); -} - -// Test that stream failure is handled correctly. -TEST_F(GrpcAccessLoggerImplTest, StreamFailure) { - InSequence s; - initLogger(FlushInterval, 0); - - EXPECT_CALL(*async_client_, startRaw(_, _, _)) - .WillOnce(Invoke( - [](absl::string_view, absl::string_view, Grpc::RawAsyncStreamCallbacks& callbacks) { - callbacks.onRemoteClose(Grpc::Status::Internal, "bad"); - return nullptr; - })); - EXPECT_CALL(local_info_, node()); - envoy::data::accesslog::v2::HTTPAccessLogEntry entry; - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); -} - -// Test that log entries are batched. -TEST_F(GrpcAccessLoggerImplTest, Batching) { - InSequence s; - initLogger(FlushInterval, 100); - - MockAccessLogStream stream; - AccessLogCallbacks* callbacks; - expectStreamStart(stream, &callbacks); - EXPECT_CALL(local_info_, node()); - const std::string path1(30, '1'); - const std::string path2(30, '2'); - const std::string path3(80, '3'); - expectStreamMessage(stream, fmt::format(R"EOF( -identifier: - node: - id: node_name - cluster: cluster_name - locality: - zone: zone_name - log_name: test_log_name -http_logs: - log_entry: - - request: - path: "{}" - - request: - path: "{}" - - request: - path: "{}" -)EOF", - path1, path2, path3)); - envoy::data::accesslog::v2::HTTPAccessLogEntry entry; - entry.mutable_request()->set_path(path1); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - entry.mutable_request()->set_path(path2); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - entry.mutable_request()->set_path(path3); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - - const std::string path4(120, '4'); - expectStreamMessage(stream, fmt::format(R"EOF( -http_logs: - log_entry: - request: - path: "{}" -)EOF", - path4)); - entry.mutable_request()->set_path(path4); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); -} - -// Test that log entries are flushed periodically. -TEST_F(GrpcAccessLoggerImplTest, Flushing) { - InSequence s; - initLogger(FlushInterval, 100); - - // Nothing to do yet. - EXPECT_CALL(*timer_, enableTimer(FlushInterval)); - timer_->invokeCallback(); - - envoy::data::accesslog::v2::HTTPAccessLogEntry entry; - // Not enough data yet to trigger flush on batch size. - entry.mutable_request()->set_path("/test/path1"); - logger_->log(envoy::data::accesslog::v2::HTTPAccessLogEntry(entry)); - - MockAccessLogStream stream; - AccessLogCallbacks* callbacks; - expectStreamStart(stream, &callbacks); - EXPECT_CALL(local_info_, node()); - expectStreamMessage(stream, fmt::format(R"EOF( - identifier: - node: - id: node_name - cluster: cluster_name - locality: - zone: zone_name - log_name: test_log_name - http_logs: - log_entry: - - request: - path: /test/path1 - )EOF")); - EXPECT_CALL(*timer_, enableTimer(FlushInterval)); - timer_->invokeCallback(); - - // Flush on empty message does nothing. - EXPECT_CALL(*timer_, enableTimer(FlushInterval)); - timer_->invokeCallback(); -} - -class GrpcAccessLoggerCacheImplTest : public testing::Test { -public: - GrpcAccessLoggerCacheImplTest() { - logger_cache_ = std::make_unique(async_client_manager_, scope_, tls_, - local_info_); - } - - void expectClientCreation() { - factory_ = new Grpc::MockAsyncClientFactory; - async_client_ = new Grpc::MockAsyncClient; - EXPECT_CALL(async_client_manager_, factoryForGrpcService(_, _, false)) - .WillOnce(Invoke([this](const envoy::api::v2::core::GrpcService&, Stats::Scope&, bool) { - EXPECT_CALL(*factory_, create()).WillOnce(Invoke([this] { - return Grpc::RawAsyncClientPtr{async_client_}; - })); - return Grpc::AsyncClientFactoryPtr{factory_}; - })); - } - - LocalInfo::MockLocalInfo local_info_; - NiceMock tls_; - Grpc::MockAsyncClientManager async_client_manager_; - Grpc::MockAsyncClient* async_client_ = nullptr; - Grpc::MockAsyncClientFactory* factory_ = nullptr; - std::unique_ptr logger_cache_; - NiceMock scope_; -}; - -TEST_F(GrpcAccessLoggerCacheImplTest, Deduplication) { - InSequence s; - - ::envoy::config::accesslog::v2::CommonGrpcAccessLogConfig config; - config.set_log_name("log-1"); - config.mutable_grpc_service()->mutable_envoy_grpc()->set_cluster_name("cluster-1"); - - expectClientCreation(); - GrpcAccessLoggerSharedPtr logger1 = logger_cache_->getOrCreateLogger(config); - EXPECT_EQ(logger1, logger_cache_->getOrCreateLogger(config)); - - // Changing log name leads to another logger. - config.set_log_name("log-2"); - expectClientCreation(); - EXPECT_NE(logger1, logger_cache_->getOrCreateLogger(config)); - - config.set_log_name("log-1"); - EXPECT_EQ(logger1, logger_cache_->getOrCreateLogger(config)); - - // Changing cluster name leads to another logger. - config.mutable_grpc_service()->mutable_envoy_grpc()->set_cluster_name("cluster-2"); - expectClientCreation(); - EXPECT_NE(logger1, logger_cache_->getOrCreateLogger(config)); -} - -class MockGrpcAccessLogger : public GrpcAccessLogger { +class MockGrpcAccessLogger : public GrpcCommon::GrpcAccessLogger { public: // GrpcAccessLogger MOCK_METHOD1(log, void(envoy::data::accesslog::v2::HTTPAccessLogEntry&& entry)); }; -class MockGrpcAccessLoggerCache : public GrpcAccessLoggerCache { +class MockGrpcAccessLoggerCache : public GrpcCommon::GrpcAccessLoggerCache { public: // GrpcAccessLoggerCache MOCK_METHOD1(getOrCreateLogger, - GrpcAccessLoggerSharedPtr( + GrpcCommon::GrpcAccessLoggerSharedPtr( const ::envoy::config::accesslog::v2::CommonGrpcAccessLogConfig& config)); }; @@ -863,37 +599,6 @@ TEST_F(HttpGrpcAccessLogTest, MarshallingAdditionalHeaders) { } } -TEST(responseFlagsToAccessLogResponseFlagsTest, All) { - NiceMock stream_info; - ON_CALL(stream_info, hasResponseFlag(_)).WillByDefault(Return(true)); - envoy::data::accesslog::v2::AccessLogCommon common_access_log; - HttpGrpcAccessLog::responseFlagsToAccessLogResponseFlags(common_access_log, stream_info); - - envoy::data::accesslog::v2::AccessLogCommon common_access_log_expected; - common_access_log_expected.mutable_response_flags()->set_failed_local_healthcheck(true); - common_access_log_expected.mutable_response_flags()->set_no_healthy_upstream(true); - common_access_log_expected.mutable_response_flags()->set_upstream_request_timeout(true); - common_access_log_expected.mutable_response_flags()->set_local_reset(true); - common_access_log_expected.mutable_response_flags()->set_upstream_remote_reset(true); - common_access_log_expected.mutable_response_flags()->set_upstream_connection_failure(true); - common_access_log_expected.mutable_response_flags()->set_upstream_connection_termination(true); - common_access_log_expected.mutable_response_flags()->set_upstream_overflow(true); - common_access_log_expected.mutable_response_flags()->set_no_route_found(true); - common_access_log_expected.mutable_response_flags()->set_delay_injected(true); - common_access_log_expected.mutable_response_flags()->set_fault_injected(true); - common_access_log_expected.mutable_response_flags()->set_rate_limited(true); - common_access_log_expected.mutable_response_flags()->mutable_unauthorized_details()->set_reason( - envoy::data::accesslog::v2::ResponseFlags_Unauthorized_Reason:: - ResponseFlags_Unauthorized_Reason_EXTERNAL_SERVICE); - common_access_log_expected.mutable_response_flags()->set_rate_limit_service_error(true); - common_access_log_expected.mutable_response_flags()->set_downstream_connection_termination(true); - common_access_log_expected.mutable_response_flags()->set_upstream_retry_limit_exceeded(true); - common_access_log_expected.mutable_response_flags()->set_stream_idle_timeout(true); - common_access_log_expected.mutable_response_flags()->set_invalid_envoy_request_headers(true); - - EXPECT_EQ(common_access_log_expected.DebugString(), common_access_log.DebugString()); -} - TEST_F(HttpGrpcAccessLogTest, LogWithRequestMethod) { InSequence s; expectLogRequestMethod("GET"); diff --git a/test/extensions/access_loggers/http_grpc/grpc_access_log_integration_test.cc b/test/extensions/access_loggers/grpc/http_grpc_access_log_integration_test.cc similarity index 100% rename from test/extensions/access_loggers/http_grpc/grpc_access_log_integration_test.cc rename to test/extensions/access_loggers/grpc/http_grpc_access_log_integration_test.cc diff --git a/test/extensions/access_loggers/http_grpc/BUILD b/test/extensions/access_loggers/http_grpc/BUILD deleted file mode 100644 index cc3cb25cb2e8d..0000000000000 --- a/test/extensions/access_loggers/http_grpc/BUILD +++ /dev/null @@ -1,52 +0,0 @@ -licenses(["notice"]) # Apache 2 - -load( - "//bazel:envoy_build_system.bzl", - "envoy_package", -) -load( - "//test/extensions:extensions_build_system.bzl", - "envoy_extension_cc_test", -) - -envoy_package() - -envoy_extension_cc_test( - name = "grpc_access_log_impl_test", - srcs = ["grpc_access_log_impl_test.cc"], - extension_name = "envoy.access_loggers.http_grpc", - deps = [ - "//source/extensions/access_loggers/http_grpc:grpc_access_log_lib", - "//test/mocks/access_log:access_log_mocks", - "//test/mocks/grpc:grpc_mocks", - "//test/mocks/local_info:local_info_mocks", - "//test/mocks/ssl:ssl_mocks", - "//test/mocks/stream_info:stream_info_mocks", - "//test/mocks/thread_local:thread_local_mocks", - ], -) - -envoy_extension_cc_test( - name = "config_test", - srcs = ["config_test.cc"], - extension_name = "envoy.access_loggers.http_grpc", - deps = [ - "//source/extensions/access_loggers/http_grpc:config", - "//test/mocks/server:server_mocks", - ], -) - -envoy_extension_cc_test( - name = "grpc_access_log_integration_test", - srcs = ["grpc_access_log_integration_test.cc"], - extension_name = "envoy.access_loggers.http_grpc", - deps = [ - "//source/common/buffer:zero_copy_input_stream_lib", - "//source/common/grpc:codec_lib", - "//source/common/grpc:common_lib", - "//source/extensions/access_loggers/http_grpc:config", - "//test/common/grpc:grpc_client_integration_lib", - "//test/integration:http_integration_lib", - "//test/test_common:utility_lib", - ], -) diff --git a/test/extensions/access_loggers/wasm/test_data/logging.wasm b/test/extensions/access_loggers/wasm/test_data/logging.wasm index 8ce416143c4b1..75dc0b5cdeb41 100644 Binary files a/test/extensions/access_loggers/wasm/test_data/logging.wasm and b/test/extensions/access_loggers/wasm/test_data/logging.wasm differ diff --git a/test/extensions/access_loggers/wasm/test_data/logging.wat b/test/extensions/access_loggers/wasm/test_data/logging.wat index d35decbd32d58..13be8bf98cd1b 100644 --- a/test/extensions/access_loggers/wasm/test_data/logging.wat +++ b/test/extensions/access_loggers/wasm/test_data/logging.wat @@ -20,16 +20,19 @@ (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,19 +44,20 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 439 439 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -106,46 +110,72 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 16960)) - (global $31 (mut i32) (i32.const 5259840)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 26432)) + (global $33 (mut i32) (i32.const 5269312)) + (elem $34 $28 (global.get $30) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv - $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close - $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $b2 + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN14ExampleContext13onRequestBodyEmb $__ZN7Context14onResponseBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN7Context14onResponseBodyEmb - $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv + $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContext6onDoneEv $__ZN14ExampleContext5onLogEv $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev - $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev - $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv - $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv - $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 - $b8 $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE - $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double + $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev + $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev + $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv + $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "\db*\00\00\e0*\00\00\e8*\00\00\ee*") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "\c89\00\00\cd9\00\00\d59\00\00\db9") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -175,228 +205,384 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00$\1a\00\00b\1b\00\00L\1a\00\00Y\1b\00\00p\11\00\00\00\00\00\00L" - "\1a\00\00H\1b\00\00x\11\00\00\00\00\00\00$\1a\00\00\e9\1b\00\00L\1a\00\00p\1b\00\00\98\11\00\00\00\00\00\00$\1a\00\00K\1c\00\00$\1a\00\00P\1c\00\00\b8\1a\00\00R\1d\00\00\00" - "\00\00\00\01\00\00\00\d8\11\00\00\00\00\00\00$\1a\00\00\91\1d\00\00L\1a\00\00t'\00\00\a0\12\00\00\00\00\00\00L\1a\00\00V&\00\00\00\12\00\00\00\00\00\00L\1a\00\00\13 \00\00\10" - "\12\00\00\00\00\00\00L\1a\00\00C \00\00 \12\00\00\00\00\00\00L\1a\00\00\09!\00\00\a0\12\00\00\00\00\00\00L\1a\00\00#&\00\00\a0\12\00\00\00\00\00\00\b8\1a\00\00\e1$\00\00\00" - "\00\00\00\01\00\00\00X\12\00\00\00\00\00\00$\1a\00\00N%\00\00L\1a\00\00=&\00\00\a0\12\00\00\00\00\00\00L\1a\00\00\a7'\00\00p\11\00\00\00\00\00\00L\1a\00\00\d6'\00\00\90" - "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4768) - "$\1a\00\00\d7,\00\00L\1a\00\00\a80\00\00\c8\12\00\00\00\00\00\00L\1a\00\00d1\00\00\c8\12\00\00\00\00\00\00$\1a\00\0002\00\00\05") - (data $52 $27 (i32.const 4828) - "/") - (data $53 $27 (i32.const 4852) - "\09\00\00\00\01\00\00\00k=") - (data $54 $27 (i32.const 4876) - "\02") - (data $55 $27 (i32.const 4891) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 4960) - "\05") - (data $57 $27 (i32.const 4972) - "/") - (data $58 $27 (i32.const 4996) - "\n\00\00\00\01\00\00\00x5\00\00\00\04") - (data $59 $27 (i32.const 5020) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00<\1e\00\00(+\00\00d\1e\00\00\1f+\00\00p\11\00\00\00\00\00\00d" + "\1e\00\00\0e+\00\00x\11\00\00\00\00\00\00<\1e\00\006+\00\00<\1e\00\00;+\00\00\80*\00\00=,\00\00\00\00\00\00\01\00\00\00\c0\11\00\00\00\00\00\00<\1e\00\00|,\00\00d" + "\1e\00\00a6\00\00\88\12\00\00\00\00\00\00d\1e\00\00C5\00\00\e8\11\00\00\00\00\00\00d\1e\00\00\00/\00\00\f8\11\00\00\00\00\00\00d\1e\00\000/\00\00\08\12\00\00\00\00\00\00d" + "\1e\00\00\f6/\00\00\88\12\00\00\00\00\00\00d\1e\00\00\105\00\00\88\12\00\00\00\00\00\00\80*\00\00\ce3\00\00\00\00\00\00\01\00\00\00@\12\00\00\00\00\00\00<\1e\00\00;4\00\00d" + "\1e\00\00*5\00\00\88\12\00\00\00\00\00\00d\1e\00\00\946\00\00p\11\00\00\00\00\00\00d\1e\00\00\c36\00\00x\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4744) + "<\1e\00\00\c4;\00\00d\1e\00\00\95?\00\00\b0\12\00\00\00\00\00\00d\1e\00\00Q@\00\00\b0\12\00\00\00\00\00\00<\1e\00\00\1dA\00\00\05") + (data $54 $29 (i32.const 4804) + "-") + (data $55 $29 (i32.const 4828) + "\09\00\00\00\01\00\00\00xZ\00\00\00\04") + (data $56 $29 (i32.const 4852) "\01") - (data $60 $27 (i32.const 5035) + (data $57 $29 (i32.const 4867) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5140) + (data $58 $29 (i32.const 4936) + "\05") + (data $59 $29 (i32.const 4948) + "-") + (data $60 $29 (i32.const 4972) + "\n\00\00\00\01\00\00\00fb") + (data $61 $29 (i32.const 4996) + "\02") + (data $62 $29 (i32.const 5011) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5116) "\0b") - (data $62 $27 (i32.const 5179) + (data $64 $29 (i32.const 5155) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5248) - "L\1a\00\00\a92\00\00\90\14\00\00\00\00\00\00$\1a\00\00k3\00\00L\1a\00\00\cb3\00\00\a8\14\00\00\00\00\00\00L\1a\00\00x3\00\00\b8\14\00\00\00\00\00\00$\1a\00\00\993\00\00" - "L\1a\00\00\a63\00\00\98\14\00\00\00\00\00\00L\1a\00\00\ad4\00\00\90\14\00\00\00\00\00\00L\1a\00\00\bd4\00\00\d0\14\00\00\00\00\00\00L\1a\00\00\f24\00\00\a8\14\00\00\00\00\00\00" - "L\1a\00\00\ce4\00\00\f0\14\00\00\00\00\00\00L\1a\00\00\145\00\00\a8\14\00\00\00\00\00\00\9c\1a\00\00<5\00\00\9c\1a\00\00>5\00\00L\1a\00\00@5\00\00\98\14") - (data $64 $27 (i32.const 5444) + (data $65 $29 (i32.const 5224) + "d\1e\00\00\94A\00\00x\14\00\00\00\00\00\00<\1e\00\00VB\00\00d\1e\00\00\b6B\00\00\90\14\00\00\00\00\00\00d\1e\00\00cB\00\00\a0\14\00\00\00\00\00\00<\1e\00\00\84B\00\00" + "d\1e\00\00\91B\00\00\80\14\00\00\00\00\00\00d\1e\00\00FD\00\00\c8\14\00\00\00\00\00\00<\1e\00\00uD\00\00d\1e\00\00)E\00\00\c8\14\00\00\00\00\00\00d\1e\00\00lE\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\b9E\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\ffE\00\00\c8\14\00\00\00\00\00\00d\1e\00\00/F\00\00\c8\14\00\00\00\00\00\00d\1e\00\00mF\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\9eF\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\eeF\00\00\c8\14\00\00\00\00\00\00d\1e\00\00'G\00\00\c8\14\00\00\00\00\00\00d\1e\00\00bG\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\9eG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\e1G\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\0fH\00\00\c8\14\00\00\00\00\00\00d\1e\00\00BH\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\feH\00\00\c8\14\00\00\00\00\00\00d\1e\00\00+I\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\\I\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9aI\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\12J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\d7I\00\00\c8\14\00\00\00\00\00\00d\1e\00\00YJ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\a2J\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\fdJ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00(K\00\00\c8\14\00\00\00\00\00\00d\1e\00\00bK\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\96K\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\e6K\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\15L\00\00\c8\14\00\00\00\00\00\00d\1e\00\00NL\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\87L\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\acN\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\faN\00\00\c8\14\00\00\00\00\00\00d\1e\00\005O\00\00\c8\14\00\00\00\00\00\00d\1e\00\00aO\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\abO\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\e0O\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\13P\00\00\c8\14\00\00\00\00\00\00d\1e\00\00JP\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\7fP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\15Q\00\00\c8\14\00\00\00\00\00\00d\1e\00\00GQ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00yQ\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\d1Q\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\19R\00\00\c8\14\00\00\00\00\00\00d\1e\00\00QR\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9fR\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\deR\00\00\c8\14\00\00\00\00\00\00d\1e\00\00!S\00\00\c8\14\00\00\00\00\00\00d\1e\00\00RS\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8cT\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\ccT\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\ffT\00\00\c8\14\00\00\00\00\00\00d\1e\00\009U\00\00\c8\14\00\00\00\00\00\00d\1e\00\00rU\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\afU\00\00\c8\14\00\00\00\00\00\00d\1e\00\00,V\00\00\c8\14\00\00\00\00\00\00d\1e\00\00XV\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8eV\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\e2V\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\1aW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00]W\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8eW\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\beW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\f9W\00\00\c8\14\00\00\00\00\00\00d\1e\00\00;X\00\00\c8\14\00\00\00\00\00\00d\1e\00\00*Y\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\b5Y\00\00x\14\00\00\00\00\00\00d\1e\00\00\c5Y\00\00\f0\18\00\00\00\00\00\00d\1e\00\00\d6Y\00\00\90\14\00\00\00\00\00\00d\1e\00\00\f8Y\00\00" + "\10\19\00\00\00\00\00\00d\1e\00\00\1cZ\00\00\90\14\00\00\00\00\00\00d*\00\00DZ\00\00d*\00\00FZ\00\00d*\00\00HZ\00\00d\1e\00\00JZ\00\00\80\14") + (data $66 $29 (i32.const 6508) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" - "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\a0\11\00\00\08\00\00\00\09\00\00\00\0b\00\00\00" - "\01\00\00\00\n\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $65 $27 (i32.const 5617) - "\12\00\00\0c\00\00\00\0d\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12" - "\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00`\12\00\00\0f\00\00\00\10\00\00\00\06\00\00\00\16\00\00\00\07\00\00\00\17\00\00\00\18\00\00\00\11\00\00\00\19\00\00\00\03" - "\00\00\00\07\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00\06\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\e0\11\00\00\12\00\00\00\13\00\00\00\09\00\00\00\1c\00\00\00\09\00\00\00\1d" - "\00\00\00\1e\00\00\00\14\00\00\00\1f\00\00\00\03\00\00\00\n\00\00\00\n\00\00\00 \00\00\00\0b\00\00\00\06\00\00\00!\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\0c\00\00\00\15" - "\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13" - "\00\00\00\"\00\00\00#\00\00\00\00\00\00\000\12\00\00\16\00\00\00\17\00\00\00\0c\00\00\00$\00\00\00\0b\00\00\00%\00\00\00&\00\00\00\18\00\00\00'\00\00\00\03\00\00\00\0d\00\00\00\0c" - "\00\00\00(\00\00\00\0e\00\00\00\06\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00 \12\00\00\0c\00\00\00\19\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e" - "\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\1a\00\00\00\1b" - "\00\00\00*\00\00\00+\00\00\00\01\00\00\00\02\00\00\00\0f\00\00\00\10\00\00\00\1c\00\00\00\11\00\00\00\01\00\00\00\12\00\00\00\13\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00x" - "\11\00\00\01\00\00\00\1d\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00,\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\1e" - "\00\00\00\1f\00\00\00\06\00\00\00\00\00\00\00\80\12\00\00 \00\00\00!\00\00\00-\00\00\00\00\00\00\00\a8\12\00\00\"\00\00\00#\00\00\00\06\00\00\00\15\00\00\00\01\00\00\00\07\00\00\00." - "\00\00\00\00\00\00\00\b8\12\00\00\"\00\00\00$\00\00\00\08\00\00\00\16\00\00\00\02\00\00\00\07\00\00\00.") - (data $66 $27 (i32.const 6365) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\\=\00\00a=\00\00\10\0d\00\00\d0\12\00\00`\13") - (data $67 $27 (i32.const 6604) - "\ec:") - (data $68 $27 (i32.const 6664) - "\80\14\00\00%\00\00\00&\00\00\000\00\00\00\02\00\00\00\00\00\00\00\98\14\00\00'\00\00\00(\00\00\00)\00\00\00*\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00" - "\c0\14\00\00'\00\00\00+\00\00\00)\00\00\00*\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\00\00\00\00\d0\14\00\00,\00\00\00-\00\00\001\00\00\00\00\00\00\00\e0\14\00\00" - ",\00\00\00.\00\00\001\00\00\00\00\00\00\00\10\15\00\00'\00\00\00/\00\00\00)\00\00\00*\00\00\00\0d\00\00\00\00\00\00\000\15\00\00'\00\00\000\00\00\00)\00\00\00*\00\00\00" - "\0c\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00onRequestHeaders \00:path\00header path \00newheader\00n" - "ewheadervalue\00server\00envoy-wasm\00onRequestBody \00onLog \00 \00onDone \00" - "14ExampleContext\007Context\0011ContextBase\00NSt3__210__function6__fu" - "ncI3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_" - "deleteIS6_EEEEjP11RootContextEEE\00NSt3__210__function6__baseIFNS_" - "10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextE" - "EE\003$_0\00N6google8protobuf8internal29InternalMetadataWithArenaBas" - "eINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEE" - "EENS1_29InternalMetadataWithArenaLiteEE9ContainerE\00/usr/local/in" - "clude/google/protobuf/arenastring.h\00CHECK failed: initial_value " - "!= NULL: \00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocat" - "orIcEEEE\00NSt3__221__basic_string_commonILb1EEE\00/home/jplev_googl" - "e_com/envoy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/go" - "ogle/protobuf/repeated_field.h\00CHECK failed: (index) >= (0): \00CH" - "ECK failed: (index) < (current_size_): \00/usr/local/include/googl" - "e/protobuf/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHEC" - "K failed: m_->index_of_first_non_null_ == m_->num_buckets_ || m_" - "->table_[m_->index_of_first_non_null_] != NULL: \00CHECK failed: !" - "tree->empty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00goog" - "le.protobuf.Value.string_value\00google.protobuf.Struct.FieldsEntr" - "y.key\00CHECK failed: (&from) != (this): \00CHECK failed: (&other) !" - "= (this): \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6goo" - "gle8protobuf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_DoN" - "otUseENSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocator" - "IcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE" - "\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEnt" - "ry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_" - "traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9F" - "ieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHECK" - " failed: TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntryI" - "sTree(b): \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK fai" - "led: index_of_first_non_null_ == num_buckets_ || table_[index_of" - "_first_non_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodePt" - "r(node)) == end(): \00CHECK failed: (count) <= (kMaxLength): \00CHEC" - "K failed: (result.bucket_index_) == (b & ~static_cast" - "(1)): \00CHECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK fail" - "ed: !TableEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK fai" - "led: (count) == (tree->size()): \00CHECK failed: (new_num_buckets)" - " >= (kMinTableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK f" - "ailed: (n & (n - 1)) == (0): \00CHECK failed: table_[b] == table_[" - "b + 1] && (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_st" - "ringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8Inne" - "rMapE\00N6google8protobuf4hashINSt3__212basic_stringIcNS2_11char_t" - "raitsIcEENS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f)" - " != NULL\00/usr/local/include/google/protobuf/stubs/casts.h\00down_c" - "ast\00google.protobuf.Struct\00N6google8protobuf6StructE\00N6google8pr" - "otobuf5ValueE\00N6google8protobuf8internal12MapEntryImplINS0_27Str" - "uct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_string" - "IcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14Wir" - "eFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK fai" - "led: (n) >= (0): \00google.protobuf.ListValue\00N6google8protobuf9Li" - "stValueE\00google.protobuf.Value\0011RootContext\00no context factory " - "for root_id: \00N6google8protobuf14FatalExceptionE\00google/protobuf" - "/stubs/common.cc\00This program requires version \00%d.%d.%d\00 of the" - " Protocol Buffer runtime library, but the installed version is \00" - ". Please update your library. If you compiled the program your" - "self, make sure that your headers are from the same version of P" - "rotocol Buffers as your link-time library. (Version verificatio" - "n failed in \"\00\".)\00This program was compiled against version \00 of" - " the Protocol Buffer runtime library, which is not compatible wi" - "th the installed version (\00). Contact the program author for an" - " update. If you compiled the program yourself, make sure that y" - "our headers are from the same version of Protocol Buffers as you" - "r link-time library. (Version verification failed in \"\00[libprot" - "obuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::alloca" - "te(size_t n) 'n' exceeds maximum supported size\00%d\00google/protob" - "uf/arena.cc\00CHECK failed: (min_bytes) <= (std::numeric_limits::max() - kBlockHeaderSize): \00google/protobuf/generated_mes" - "sage_util.cc\00Not implemented field number \00 with type \00CHECK fai" - "led: (scc->visit_status.load(std::memory_order_relaxed)) == (SCC" - "InfoBase::kRunning): \00google/protobuf/message_lite.cc\00CHECK fail" - "ed: !coded_out.HadError(): \00(cannot determine missing fields for" - " lite message)\00N6google8protobuf11MessageLiteE\00google/protobuf/r" - "epeated_field.cc\00CHECK failed: (new_size) <= ((std::numeric_limi" - "ts::max() - kRepHeaderSize) / sizeof(old_rep->elements[0" - "])): \00Requested size is too large to fit into size_t.\00google/pro" - "tobuf/wire_format_lite.cc\00CHECK failed: (value.size()) <= (kint3" - "2max): \00serializing\00parsing\00 '%s'\00String field\00 contains invalid" - " \00UTF-8 data when \00 a protocol \00buffer. Use the 'bytes' type if " - "you intend to send raw \00bytes. \00google/protobuf/io/coded_stream." - "cc\00CHECK failed: (buffer_size) >= (0): \00A protocol message was r" - "ejected because it was too big (more than \00 bytes). To increase" - " the limit (or to disable these warnings), see CodedInputStream:" - ":SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.\00goog" - "le/protobuf/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (coun" - "t) >= (0): \00CHECK failed: (last_returned_size_) > (0): \00BackUp()" - " can only be called after a successful Next().\00CHECK failed: (co" - "unt) <= (last_returned_size_): \00N6google8protobuf2io17ArrayOutpu" - "tStreamE\00CHECK failed: target_ != NULL: \00CHECK failed: (count) <" - "= (target_->size()): \00Cannot allocate buffer larger than kint32m" - "ax for \00StringOutputStream.\00N6google8protobuf2io18StringOutputSt" - "reamE\00google/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutput" - "Stream doesn't support aliasing. Reaching here usually means a Z" - "eroCopyOutputStream implementation bug.\00N6google8protobuf2io20Ze" - "roCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00" - "nan\00NAN\00.\00std::bad_function_call\00NSt3__217bad_function_callE\00mut" - "ex lock failed\00%u\00terminating with %s exception of type %s: %s\00t" - "erminating with %s exception of type %s\00terminating with %s fore" - "ign exception\00terminating\00uncaught\00St9exception\00N10__cxxabiv116_" - "_shim_type_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_inf" - "oE\00N10__cxxabiv117__class_type_infoE\00pthread_once failure in __c" - "xa_get_globals_fast()\00cannot create pthread key for __cxa_get_gl" - "obals()\00cannot zero out thread value for __cxa_get_globals()\00ter" - "minate_handler unexpectedly returned\00St11logic_error\00St12length_" - "error\00N10__cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase" - "_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00c\00h\00N10__cxx" - "abiv121__vmi_class_type_infoE") + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02") + (data $67 $29 (i32.const 6624) + "\01\00\00\00@\19") + (data $68 $29 (i32.const 6644) + "\98\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6668) + "\e8\11\00\00\08\00\00\00\09\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00H\12\00\00\0b\00\00\00\0c\00\00\00\05\00\00\00\14\00\00\00\06\00\00\00\15\00\00\00\16\00\00\00\0d\00\00\00\17\00\00\00" + "\02\00\00\00\06\00\00\00\07\00\00\00\18\00\00\00\07\00\00\00\05\00\00\00\19\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\c8\11\00\00\0e\00\00\00\0f\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00" + "\1b\00\00\00\1c\00\00\00\10\00\00\00\1d\00\00\00\02\00\00\00\09\00\00\00\09\00\00\00\1e\00\00\00\n\00\00\00\05\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\d8\11\00\00\08\00\00\00" + "\11\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00" + "\11\00\00\00 \00\00\00!\00\00\00\00\00\00\00\18\12\00\00\12\00\00\00\13\00\00\00\0b\00\00\00\"\00\00\00\n\00\00\00#\00\00\00$\00\00\00\14\00\00\00%\00\00\00\02\00\00\00\0c\00\00\00" + "\0b\00\00\00&\00\00\00\0d\00\00\00\05\00\00\00'\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\08\12\00\00\08\00\00\00\15\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00" + "\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00X\12\00\00\16\00\00\00" + "\17\00\00\00(\00\00\00)\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\10\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00\19\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\1a\00\00\00\1b\00\00\00\06\00\00\00\00\00\00\00h\12\00\00\1c\00\00\00\1d\00\00\00+\00\00\00\00\00\00\00\90\12\00\00\1e\00\00\00\1f\00\00\00\06\00\00\00\14\00\00\00\01\00\00\00\07\00\00\00" + ",\00\00\00\00\00\00\00\a0\12\00\00\1e\00\00\00 \00\00\00\08\00\00\00\15\00\00\00\02\00\00\00\07\00\00\00,") + (data $70 $29 (i32.const 7417) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00Xb\00\00fb\00\00\10\0d\00\00\b8\12\00\00H\13") + (data $71 $29 (i32.const 7656) + "\ec_") + (data $72 $29 (i32.const 7716) + "h\14\00\00!\00\00\00\"\00\00\00.\00\00\00\00\00\00\00\80\14\00\00#\00\00\00$\00\00\00%\00\00\00&\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\a8\14\00\00" + "#\00\00\00'\00\00\00%\00\00\00&\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\b8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00(\00\00\00)\00\00\00\00\00\00\00\c8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00(\00\00\00*\00\00\00\00\00\00\00\d0\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00(\00\00\00+\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00(\00\00\00,\00\00\00\00\00\00\00\f0\14\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00(\00\00\00-") + (data $73 $29 (i32.const 8037) + "\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00(\00\00\00.\00\00\00\00\00\00\00\10\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00 " + "\00\00\00\17\00\00\00!\00\00\00(\00\00\00/\00\00\00\00\00\00\00 \15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00(\00\00\000\00\00\00\00" + "\00\00\000\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00(\00\00\001\00\00\00\00\00\00\00@\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00%\00\00\00\17\00\00\00\18\00\00\00(\00\00\002\00\00\00\00\00\00\00P\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00(\00\00\003" + "\00\00\00\00\00\00\00`\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00(\00\00\004\00\00\00\00\00\00\00p\15\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00(\00\00\005\00\00\00\00\00\00\00\80\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\006\00\00\00\00\00\00\00\90\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00(\00\00\007\00\00\00\00\00\00\00\a0\15\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00(\00\00\008\00\00\00\00\00\00\00\b0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\009\00\00\00\00\00\00\00\c0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00(\00\00\00:\00\00\00\00\00\00\00\d0\15\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00(\00\00\00;\00\00\00\00\00\00\00\e0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00\17" + "\00\00\00\18\00\00\00(\00\00\00<\00\00\00\00\00\00\00\f0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00(\00\00\00=") + (data $74 $29 (i32.const 8741) + "\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00(\00\00\00>\00\00\00\00\00\00\00\10\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\002" + "\00\00\00\17\00\00\00\18\00\00\00(\00\00\00?\00\00\00\00\00\00\00 \16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00(\00\00\00@\00\00\00\00" + "\00\00\000\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00(\00\00\00A\00\00\00\00\00\00\00@\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\005\00\00\00\17\00\00\00\18\00\00\00(\00\00\00B\00\00\00\00\00\00\00P\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00(\00\00\00C" + "\00\00\00\00\00\00\00`\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00(\00\00\00D\00\00\00\00\00\00\00p\16\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00(\00\00\00E\00\00\00\00\00\00\00\80\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\00F\00\00\00\00\00\00\00\90\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00(\00\00\00G\00\00\00\00\00\00\00\a0\16\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00(\00\00\00H\00\00\00\00\00\00\00\b0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00I\00\00\00\00\00\00\00\c0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00(\00\00\00J\00\00\00\00\00\00\00\d0\16\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00(\00\00\00K\00\00\00\00\00\00\00\e0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00\17" + "\00\00\00B\00\00\00(\00\00\00L\00\00\00\00\00\00\00\f0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00(\00\00\00M") + (data $75 $29 (i32.const 9445) + "\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00(\00\00\00N\00\00\00\00\00\00\00\10\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00E" + "\00\00\00\17\00\00\00\18\00\00\00(\00\00\00O\00\00\00\00\00\00\00 \17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00(\00\00\00P\00\00\00\00" + "\00\00\000\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00(\00\00\00Q\00\00\00\00\00\00\00@\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00H\00\00\00\17\00\00\00\18\00\00\00(\00\00\00R\00\00\00\00\00\00\00P\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00(\00\00\00S" + "\00\00\00\00\00\00\00`\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00(\00\00\00T\00\00\00\00\00\00\00p\17\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00(\00\00\00U\00\00\00\00\00\00\00\80\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00(" + "\00\00\00V\00\00\00\00\00\00\00\90\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00(\00\00\00W\00\00\00\00\00\00\00\a0\17\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00(\00\00\00X\00\00\00\00\00\00\00\b0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00Y\00\00\00\00\00\00\00\c0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00(\00\00\00Z\00\00\00\00\00\00\00\d0\17\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00(\00\00\00[\00\00\00\00\00\00\00\e0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00\17" + "\00\00\00U\00\00\00(\00\00\00\\\00\00\00\00\00\00\00\f0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00(\00\00\00]") + (data $76 $29 (i32.const 10149) + "\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00(\00\00\00^\00\00\00\00\00\00\00\10\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00Z" + "\00\00\00[\00\00\00\18\00\00\00(\00\00\00_\00\00\00\00\00\00\00 \18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00(\00\00\00`\00\00\00\00" + "\00\00\000\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00(\00\00\00a\00\00\00\00\00\00\00@\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00\0f" + "\00\00\00^\00\00\00_\00\00\00\18\00\00\00(\00\00\00b\00\00\00\00\00\00\00P\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00(\00\00\00c" + "\00\00\00\00\00\00\00`\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00(\00\00\00d\00\00\00\00\00\00\00p\18\00\00 \00\00\00\0d\00\00\00!" + "\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00(\00\00\00e\00\00\00\00\00\00\00\80\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\00f\00\00\00\00\00\00\00\90\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00(\00\00\00g\00\00\00\00\00\00\00\a0\18\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00(\00\00\00h\00\00\00\00\00\00\00\b0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00i\00\00\00\00\00\00\00\c0\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00(\00\00\00j\00\00\00\00\00\00\00\d0\18\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00(\00\00\00k\00\00\00\00\00\00\00\e0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00\17" + "\00\00\00\18\00\00\00(\00\00\00l\00\00\00\00\00\00\00\f0\18\00\00m\00\00\00n\00\00\00/") + (data $77 $29 (i32.const 10829) + "\19\00\00m\00\00\00o\00\00\00/\00\00\00\00\00\00\000\19\00\00#\00\00\00p\00\00\00%\00\00\00&\00\00\00\0d\00\00\00\00\00\00\00X\19\00\00#\00\00\00q\00\00\00%\00\00\00&" + "\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00onRequestHeaders \00:path\00header path \00newheade" + "r\00newheadervalue\00server\00envoy-wasm\00onRequestBody \00onLog \00onDone " + "\0014ExampleContext\007Context\0011ContextBase\003$_0\00N6google8protobuf8" + "internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcN" + "S3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWi" + "thArenaLiteEE9ContainerE\00/usr/local/include/google/protobuf/aren" + "astring.h\00CHECK failed: initial_value != NULL: \00NSt3__212basic_s" + "tringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221__basic_" + "string_commonILb1EEE\00/home/piotrsikora/Google/envoy/api/wasm/cpp" + "/struct_lite.pb.cc\00/usr/local/include/google/protobuf/repeated_f" + "ield.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index) < (c" + "urrent_size_): \00/usr/local/include/google/protobuf/map.h\00CHECK f" + "ailed: (bucket_index_ & 1) == (0): \00CHECK failed: m_->index_of_f" + "irst_non_null_ == m_->num_buckets_ || m_->table_[m_->index_of_fi" + "rst_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHECK fa" + "iled: node_ != NULL && m_ != NULL: \00google.protobuf.Value.string" + "_value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed: (&fr" + "om) != (this): \00CHECK failed: (&other) != (this): \00N6google8prot" + "obuf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8internal12M" + "apEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_str" + "ingIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14" + "WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8inter" + "nal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11Messag" + "eLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocator" + "IcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE" + "\00CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntryIsNon" + "EmptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK failed:" + " GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_first_non_" + "null_ == num_buckets_ || table_[index_of_first_non_null_] != NUL" + "L: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHEC" + "K failed: (count) <= (kMaxLength): \00CHECK failed: (result.bucket" + "_index_) == (b & ~static_cast(1)): \00CHECK failed: (ta" + "ble_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b)" + " && !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->s" + "ize()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize): \00CH" + "ECK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == " + "(0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) == 0: " + "\00N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsI" + "cEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4" + "hashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorI" + "cEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local/incl" + "ude/google/protobuf/stubs/casts.h\00down_cast\00google.protobuf.Stru" + "ct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6google8p" + "rotobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUse" + "ENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEEN" + "S5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9E" + "LSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google" + ".protobuf.ListValue\00N6google8protobuf9ListValueE\00google.protobuf" + ".Value\0011RootContext\00no context factory for root_id: \00N6google8p" + "rotobuf14FatalExceptionE\00google/protobuf/stubs/common.cc\00This pr" + "ogram requires version \00%d.%d.%d\00 of the Protocol Buffer runtime" + " library, but the installed version is \00. Please update your li" + "brary. If you compiled the program yourself, make sure that you" + "r headers are from the same version of Protocol Buffers as your " + "link-time library. (Version verification failed in \"\00\".)\00This p" + "rogram was compiled against version \00 of the Protocol Buffer run" + "time library, which is not compatible with the installed version" + " (\00). Contact the program author for an update. If you compile" + "d the program yourself, make sure that your headers are from the" + " same version of Protocol Buffers as your link-time library. (V" + "ersion verification failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00" + "WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exceeds" + " maximum supported size\00%d\00google/protobuf/arena.cc\00CHECK failed" + ": (min_bytes) <= (std::numeric_limits::max() - kBlockHea" + "derSize): \00google/protobuf/generated_message_util.cc\00Not impleme" + "nted field number \00 with type \00CHECK failed: (scc->visit_status." + "load(std::memory_order_relaxed)) == (SCCInfoBase::kRunning): \00go" + "ogle/protobuf/message_lite.cc\00CHECK failed: !coded_out.HadError(" + "): \00(cannot determine missing fields for lite message)\00N6google8" + "protobuf11MessageLiteE\00google/protobuf/repeated_field.cc\00CHECK f" + "ailed: (new_size) <= ((std::numeric_limits::max() - kRep" + "HeaderSize) / sizeof(old_rep->elements[0])): \00Requested size is " + "too large to fit into size_t.\00google/protobuf/wire_format_lite.c" + "c\00CHECK failed: (value.size()) <= (kint32max): \00serializing\00pars" + "ing\00 '%s'\00String field\00 contains invalid \00UTF-8 data when \00 a pr" + "otocol \00buffer. Use the 'bytes' type if you intend to send raw \00" + "bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed: (buffer" + "_size) >= (0): \00A protocol message was rejected because it was t" + "oo big (more than \00 bytes). To increase the limit (or to disabl" + "e these warnings), see CodedInputStream::SetTotalBytesLimit() in" + " google/protobuf/io/coded_stream.h.\00google/protobuf/io/zero_copy" + "_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK failed" + ": (last_returned_size_) > (0): \00BackUp() can only be called afte" + "r a successful Next().\00CHECK failed: (count) <= (last_returned_s" + "ize_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK failed: t" + "arget_ != NULL: \00CHECK failed: (count) <= (target_->size()): \00Ca" + "nnot allocate buffer larger than kint32max for \00StringOutputStre" + "am.\00N6google8protobuf2io18StringOutputStreamE\00google/protobuf/io" + "/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't support a" + "liasing. Reaching here usually means a ZeroCopyOutputStream impl" + "ementation bug.\00N6google8protobuf2io20ZeroCopyOutputStreamE\00-+ " + " 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad_functio" + "n_call\00NSt3__217bad_function_callE\00mutex lock failed\00%u\00terminat" + "ing with %s exception of type %s: %s\00terminating with %s excepti" + "on of type %s\00terminating with %s foreign exception\00terminating\00" + "uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9type_i" + "nfo\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__class_" + "type_infoE\00terminate_handler unexpectedly returned\00_Z\00___Z\00_bloc" + "k_invoke\00invocation function for block in \00void\00bool\00char\00signed" + " char\00unsigned char\00short\00unsigned short\00int\00unsigned int\00long\00u" + "nsigned long\00long long\00__int128\00unsigned __int128\00float\00long dou" + "ble\00__float128\00...\00decimal64\00decimal128\00decimal32\00decimal16\00char" + "32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr_t\00[abi:\00]\00N12_GLO" + "BAL__N_116itanium_demangle10AbiTagAttrE\00N12_GLOBAL__N_116itanium" + "_demangle4NodeE\00allocator\00basic_string\00string\00istream\00ostream\00io" + "stream\00std::allocator\00std::basic_string\00std::string\00std::istream" + "\00std::ostream\00std::iostream\00N12_GLOBAL__N_116itanium_demangle19S" + "pecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_116itanium_demangle" + "20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_116ita" + "nium_demangle13ReferenceTypeE\00objc_object\00*\00id<\00>\00N12_GLOBAL__N_" + "116itanium_demangle11PointerTypeE\00N12_GLOBAL__N_116itanium_deman" + "gle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116itanium_demangl" + "e12TemplateArgsE\00N12_GLOBAL__N_116itanium_demangle13ParameterPac" + "kE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_demang" + "le15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116itanium_demangle16Flo" + "atLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_demangle16FloatLit" + "eralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_demangle16FloatLiteral" + "ImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_demangle8BoolExprE\00" + "-\00N12_GLOBAL__N_116itanium_demangle14IntegerLiteralE\00N12_GLOBAL_" + "_N_116itanium_demangle20TemplateArgumentPackE\00gs\00&=\00=\00alignof (\00" + ",\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00+\00+=\00" + "++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00N12_GLOBAL__N_1" + "16itanium_demangle9ThrowExprE\00N12_GLOBAL__N_116itanium_demangle1" + "2InitListExprE\00N12_GLOBAL__N_116itanium_demangle13NodeArrayNodeE" + "\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle13EnclosingExprE\00s" + "izeof...(\00N12_GLOBAL__N_116itanium_demangle22ParameterPackExpans" + "ionE\00N12_GLOBAL__N_116itanium_demangle19SizeofParamPackExprE\00sta" + "tic_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8CastExprE\00reinterp" + "ret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_demangle15Conditio" + "nalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL__N_11" + "6itanium_demangle7NewExprE\00N12_GLOBAL__N_116itanium_demangle11Po" + "stfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_demangle15BracedRa" + "ngeExprE\00N12_GLOBAL__N_116itanium_demangle10BracedExprE\00_GLOBAL_" + "_N\00(anonymous namespace)\00N12_GLOBAL__N_116itanium_demangle8NameT" + "ypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprE\00." + "\00N12_GLOBAL__N_116itanium_demangle10MemberExprE\00srN\00sr\00::\00N12_GL" + "OBAL__N_116itanium_demangle19GlobalQualifiedNameE\00dn\00on\00operator" + "&&\00operator&\00operator&=\00operator=\00operator()\00operator,\00operator~" + "\00operator delete[]\00operator*\00operator/\00operator/=\00operator^\00oper" + "ator^=\00operator==\00operator>=\00operator>\00operator[]\00operator<=\00ope" + "rator<<\00operator<<=\00operator<\00operator-\00operator-=\00operator*=\00op" + "erator--\00operator new[]\00operator!=\00operator!\00operator new\00operat" + "or||\00operator|\00operator|=\00operator->*\00operator+\00operator+=\00opera" + "tor++\00operator->\00operator?\00operator%\00operator%=\00operator>>\00opera" + "tor>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_116itanium_demangle" + "15LiteralOperatorE\00operator delete\00operator \00N12_GLOBAL__N_116it" + "anium_demangle22ConversionOperatorTypeE\00N12_GLOBAL__N_116itanium" + "_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_demangle13Qualified" + "NameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_116itanium_demangle1" + "0DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_demangle14Conversion" + "ExprE\00N12_GLOBAL__N_116itanium_demangle8CallExprE\00const_cast\00N12" + "_GLOBAL__N_116itanium_demangle10PrefixExprE\00) \00 (\00N12_GLOBAL__N_" + "116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo\00eO\00e" + "q\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00rS\00.." + ". \00 ...\00N12_GLOBAL__N_116itanium_demangle8FoldExprE\00fp\00fL\00N12_GL" + "OBAL__N_116itanium_demangle13FunctionParamE\00N12_GLOBAL__N_116ita" + "nium_demangle24ForwardTemplateReferenceE\00Ts\00struct\00Tu\00union\00Te\00e" + "num\00N12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeE\00S" + "tL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle16StdQualifiedNameE" + "\00DC\00N12_GLOBAL__N_116itanium_demangle21StructuredBindingNameE\00Ut" + "\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_demangle15ClosureType" + "NameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_demangle15UnnamedTypeN" + "ameE\00string literal\00N12_GLOBAL__N_116itanium_demangle9LocalNameE" + "\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDtorNameE\00basic_istr" + "eam\00basic_ostream\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_istream >\00std::basic_ostream >\00std::basic_iostream >\00N" + "12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitutionE\00N" + "12_GLOBAL__N_116itanium_demangle10NestedNameE\00::*\00N12_GLOBAL__N_" + "116itanium_demangle19PointerToMemberTypeE\00[\00N12_GLOBAL__N_116ita" + "nium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itanium_de" + "mangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__N_116itanium_deman" + "gle15PixelVectorTypeE\00decltype(\00double\00unsigned long long\00objcpr" + "oto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_116itanium_demangle" + "8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeE" + "\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoNameE\00Do\00noexcept\00D" + "O\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_demangle12Function" + "TypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle20DynamicException" + "SpecE\00noexcept(\00N12_GLOBAL__N_116itanium_demangle12NoexceptSpecE" + "\00N12_GLOBAL__N_116itanium_demangle11SpecialNameE\00N12_GLOBAL__N_1" + "16itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_116ita" + "nium_demangle16FunctionEncodingE\00 [enable_if:\00N12_GLOBAL__N_116i" + "tanium_demangle12EnableIfAttrE\00thread-local wrapper routine for " + "\00reference temporary for \00guard variable for \00non-virtual thunk " + "to \00virtual thunk to \00thread-local initialization routine for \00c" + "onstruction vtable for \00-in-\00N12_GLOBAL__N_116itanium_demangle21" + "CtorVtableSpecialNameE\00covariant return thunk to \00typeinfo name " + "for \00typeinfo for \00VTT for \00vtable for \00St11logic_error\00St12leng" + "th_error\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__poin" + "ter_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00v\00c\00h\00N10" + "__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_logging_cc - i32.const 14904 + i32.const 24376 i64.const 0 i64.store align=4 - i32.const 14912 + i32.const 24384 i64.const 0 i64.store align=4 - i32.const 14920 + i32.const 24392 i32.const 1065353216 i32.store - i32.const 14924 + i32.const 24396 i64.const 0 i64.store align=4 - i32.const 14932 + i32.const 24404 i64.const 0 i64.store align=4 - i32.const 14940 + i32.const 24412 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -406,39 +592,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $4) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $1) @@ -451,77 +637,79 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $5 + global.get $32 i32.const 48 i32.add - global.set $30 - local.get $7 + global.set $32 + local.get $5 i32.const 24 i32.add - local.set $3 - local.get $7 - local.tee $2 + local.set $1 + local.get $5 i32.const 12 i32.add - local.tee $4 + local.set $2 + local.get $5 + i32.const 36 + i32.add + local.tee $3 i32.const 32 call $__Znwm - local.tee $1 + local.tee $4 i32.store - local.get $4 + local.get $3 i32.const -2147483616 i32.store offset=8 - local.get $4 + local.get $3 i32.const 17 i32.store offset=4 - local.get $1 - i32.const 6872 + local.get $4 + i32.const 10912 i64.load align=1 i64.store align=1 - local.get $1 - i32.const 6880 + local.get $4 + i32.const 10920 i64.load align=1 i64.store offset=8 align=1 - local.get $1 - i32.const 6888 + local.get $4 + i32.const 10928 i32.load8_s i32.store8 offset=16 - local.get $1 + local.get $4 i32.const 0 i32.store8 offset=17 - local.get $2 + local.get $1 local.get $0 i32.const -64 i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $3 - local.get $4 local.get $2 + local.get $3 + local.get $1 i32.load - local.get $2 - local.get $2 + local.get $1 + local.get $1 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $4 select - local.get $2 + local.get $1 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $4 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $3 + local.get $2 local.get $0 i32.load offset=8 i32.store offset=8 @@ -532,112 +720,114 @@ i32.const 0 i32.store offset=8 i32.const 1 - local.get $3 + local.get $2 i32.load - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $4 select - local.get $3 + local.get $2 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $4 select call $_proxy_log - local.get $3 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $3 + local.get $2 i32.load call $_free end ;; $if - local.get $2 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $2 + local.get $1 i32.load call $_free end ;; $if_0 - local.get $4 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $4 + local.get $3 i32.load call $_free end ;; $if_1 local.get $3 i32.const 0 i32.store - local.get $4 + local.get $1 i32.const 0 i32.store i32.const 0 - i32.const 6890 + i32.const 10930 i32.const 5 local.get $3 - local.get $4 + local.get $1 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm - local.set $5 - local.get $4 + local.set $4 + local.get $1 i32.load - local.set $1 - local.get $5 + local.set $2 + local.get $4 local.get $3 i32.load - local.tee $8 + local.tee $7 i32.store - local.get $5 - local.get $1 - i32.store offset=4 local.get $4 + local.get $2 + i32.store offset=4 + local.get $3 i64.const 0 i64.store align=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $4 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $3 i32.const 12 i32.store offset=4 local.get $0 - i32.const 6896 + i32.const 10936 i64.load align=1 i64.store align=1 local.get $0 - i32.const 6904 + i32.const 10944 i32.load align=1 i32.store offset=8 align=1 local.get $0 i32.const 0 i32.store8 offset=12 - local.get $2 + local.get $1 i64.const 0 i64.store align=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 i32.const -17 i32.gt_u if $if_2 @@ -645,27 +835,27 @@ end ;; $if_2 block $block block $block_0 - local.get $1 + local.get $2 i32.const 11 i32.lt_u if $if_3 (result i32) - local.get $2 + local.get $1 i32.const 11 i32.add local.tee $6 - local.get $1 + local.get $2 i32.store8 - local.get $1 + local.get $2 if $if_4 (result i32) - local.get $2 + local.get $1 local.set $0 br $block_0 else - local.get $2 + local.get $1 end ;; $if_4 else - local.get $2 local.get $1 + local.get $2 i32.const 16 i32.add i32.const -16 @@ -674,15 +864,15 @@ call $__Znwm local.tee $0 i32.store - local.get $2 + local.get $1 local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $2 local.get $1 - i32.store offset=4 local.get $2 + i32.store offset=4 + local.get $1 i32.const 11 i32.add local.set $6 @@ -692,40 +882,40 @@ br $block end ;; $block_0 local.get $0 - local.get $8 - local.get $1 + local.get $7 + local.get $2 call $_memcpy drop end ;; $block local.get $0 - local.get $1 + local.get $2 i32.add i32.const 0 i32.store8 + local.get $5 local.get $3 - local.get $4 - local.get $2 + local.get $1 i32.load - local.get $2 + local.get $1 local.get $6 i32.load8_s local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 select - local.get $2 + local.get $1 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $2 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $3 + local.get $5 local.get $0 i32.load offset=8 i32.store offset=8 @@ -736,30 +926,31 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $3 + local.get $5 i32.load - local.get $3 - local.get $3 + local.get $5 + local.get $5 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $1 + local.tee $2 select - local.get $3 + local.get $5 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $1 + local.get $2 select call $_proxy_log - local.get $3 + drop + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $3 + local.get $5 i32.load call $_free end ;; $if_5 @@ -768,59 +959,63 @@ i32.const 0 i32.lt_s if $if_6 - local.get $2 + local.get $1 i32.load call $_free end ;; $if_6 - local.get $4 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.ge_s if $if_7 i32.const 0 - i32.const 6909 + i32.const 10949 i32.const 9 - i32.const 6919 + i32.const 10959 i32.const 14 call $_proxy_addHeaderMapValue + drop i32.const 0 - i32.const 6934 + i32.const 10974 i32.const 6 - i32.const 6941 + i32.const 10981 i32.const 10 call $_proxy_replaceHeaderMapValue - local.get $5 + drop + local.get $4 i32.load call $_free - local.get $5 + local.get $4 call $_free - local.get $7 - global.set $30 + local.get $5 + global.set $32 i32.const 0 return end ;; $if_7 - local.get $4 + local.get $3 i32.load call $_free i32.const 0 - i32.const 6909 + i32.const 10949 i32.const 9 - i32.const 6919 + i32.const 10959 i32.const 14 call $_proxy_addHeaderMapValue + drop i32.const 0 - i32.const 6934 + i32.const 10974 i32.const 6 - i32.const 6941 + i32.const 10981 i32.const 10 call $_proxy_replaceHeaderMapValue - local.get $5 + drop + local.get $4 i32.load call $_free - local.get $5 + local.get $4 call $_free - local.get $7 - global.set $30 + local.get $5 + global.set $32 i32.const 0 ) @@ -834,41 +1029,40 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $4 + global.get $32 i32.const 48 i32.add - global.set $30 - local.get $7 - local.tee $2 + global.set $32 + local.get $4 i32.const 24 i32.add - local.tee $4 + local.tee $5 i32.const 0 i32.store - local.get $2 + local.get $4 i32.const 12 i32.add - local.tee $5 + local.tee $2 i32.const 0 i32.store i32.const 0 local.get $1 - local.get $4 local.get $5 + local.get $2 call $_proxy_getRequestBodyBufferBytes + drop i32.const 8 call $__Znwm local.set $6 - local.get $5 + local.get $2 i32.load local.set $3 local.get $6 - local.get $4 + local.get $5 i32.load - local.tee $8 + local.tee $7 i32.store local.get $6 local.get $3 @@ -891,15 +1085,15 @@ i32.const 14 i32.store offset=4 local.get $0 - i32.const 6952 + i32.const 10992 i64.load align=1 i64.store align=1 local.get $0 - i32.const 6960 + i32.const 11000 i32.load align=1 i32.store offset=8 align=1 local.get $0 - i32.const 6964 + i32.const 11004 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $0 @@ -966,7 +1160,7 @@ br $block end ;; $block_0 local.get $0 - local.get $8 + local.get $7 local.get $3 call $_memcpy drop @@ -1028,6 +1222,7 @@ local.get $3 select call $_proxy_log + drop local.get $4 i32.load8_s offset=11 i32.const 0 @@ -1056,8 +1251,8 @@ call $_free local.get $6 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 return end ;; $if_4 @@ -1069,8 +1264,8 @@ call $_free local.get $6 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 ) @@ -1086,47 +1281,48 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $7 + global.get $32 i32.const -64 i32.sub - global.set $30 - local.get $6 + global.set $32 + local.get $7 i32.const 24 i32.add - local.set $7 - local.get $6 + local.set $3 + local.get $7 i32.const 12 i32.add local.set $9 - local.get $6 + local.get $7 local.tee $1 i32.const 48 i32.add - local.tee $3 + local.tee $5 i32.const 0 i32.store local.get $1 i32.const 36 i32.add - local.tee $5 + local.tee $6 i32.const 0 i32.store i32.const 0 - i32.const 6890 + i32.const 10930 i32.const 5 - local.get $3 local.get $5 + local.get $6 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm local.set $4 - local.get $5 + local.get $6 i32.load local.set $2 local.get $4 - local.get $3 + local.get $5 i32.load i32.store local.get $4 @@ -1138,14 +1334,14 @@ i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $7 + local.get $6 local.get $9 - i32.const 6967 + i32.const 11007 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 i64.store align=4 - local.get $7 + local.get $6 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1156,8 +1352,8 @@ i32.const 0 i32.store offset=8 local.get $5 - local.get $7 - i32.const 6974 + local.get $6 + i32.const 17840 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 i64.load align=4 @@ -1301,6 +1497,7 @@ local.get $2 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 @@ -1328,12 +1525,12 @@ i32.load call $_free end ;; $if_4 - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_5 @@ -1347,8 +1544,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 return end ;; $if_6 local.get $9 @@ -1359,8 +1556,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 ) (func $__ZN14ExampleContext6onDoneEv (type $0) @@ -1368,17 +1565,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $2 + global.set $32 + local.get $1 i32.const 12 i32.add - local.set $1 - local.get $2 + local.tee $2 local.get $0 i32.const -64 i32.sub @@ -1386,7 +1582,7 @@ call $__ZNSt3__29to_stringEj local.get $1 local.get $2 - i32.const 6976 + i32.const 11014 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 @@ -1420,6 +1616,7 @@ local.get $3 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -1434,15 +1631,15 @@ i32.const 0 i32.ge_s if $if_0 - local.get $2 - global.set $30 + local.get $1 + global.set $32 return end ;; $if_0 local.get $2 i32.load call $_free - local.get $2 - global.set $30 + local.get $1 + global.set $32 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -1450,7 +1647,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5528 + i32.const 6592 i32.store local.get $0 i32.load offset=52 @@ -1633,42 +1830,11 @@ i32.const 0 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $1) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5560 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $4) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5560 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -1707,32 +1873,27 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5448 + i32.const 6512 i32.store local.get $0 local.get $1 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $3) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $5) (param $0 i32) (param $1 i32) - (result i32) - local.get $0 + (param $2 i32) + (param $3 i32) i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7243 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $1) - (param $0 i32) - (result i32) - i32.const 4528 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7720 + i32.store + local.get $0 + i32.const 5224 + i32.const 33 + call $___cxa_throw ) (func $__GLOBAL__sub_I_logging_cc (type $8) @@ -1740,115 +1901,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $1 + global.get $32 + local.set $0 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5560 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 15713 - i32.store offset=48 + i32.const 6632 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 local.get $1 + i32.const 6616 + i32.store offset=12 + local.get $0 + i32.const 25190 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $30 + if $if_0 + local.get $0 + global.set $32 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 63 + i32.load + local.get $1 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 + call_indirect $28 (type $0) + local.get $0 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $1) @@ -1863,7 +1990,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $1) @@ -1915,17 +2042,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4536 + i32.const 4512 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 49 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -1963,12 +2090,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $2 i32.eqz if $if @@ -1976,7 +2103,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7419 + i32.const 11238 i32.store offset=4 local.get $3 i32.const 370 @@ -1988,7 +2115,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7468 + i32.const 11287 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -2006,7 +2133,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -2015,17 +2142,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4544 + i32.const 4520 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 50 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -2034,73 +2161,73 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $0 - global.set $30 - i32.const 14732 + global.set $32 + i32.const 24204 i32.const 0 i32.store - i32.const 14724 - i32.const 14872 + i32.const 24196 + i32.const 24344 i32.store - i32.const 14728 + i32.const 24200 i32.const 0 i32.store - i32.const 14736 + i32.const 24208 i32.const 0 i32.store - i32.const 14720 - i32.const 5620 + i32.const 24192 + i32.const 6672 i32.store - i32.const 14744 + i32.const 24216 call $__ZN6google8protobuf6StructC2Ev - i32.const 51 - i32.const 14744 + i32.const 116 + i32.const 24216 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14776 - i32.const 5708 + i32.const 24248 + i32.const 6760 i32.store - i32.const 14780 + i32.const 24252 i32.const 0 i32.store - i32.const 14792 + i32.const 24264 i32.const 0 i32.store - i32.const 5596 + i32.const 6648 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 14796 + i32.const 24268 i32.const 0 i32.store - i32.const 51 - i32.const 14776 + i32.const 116 + i32.const 24248 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14832 + i32.const 24304 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 51 - i32.const 14832 + i32.const 116 + i32.const 24304 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14728 - i32.const 14776 + i32.const 24200 + i32.const 24248 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i64.const 0 @@ -2118,7 +2245,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -2130,7 +2257,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.const 4 @@ -2144,7 +2271,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -2160,14 +2287,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.load offset=4 @@ -2189,7 +2316,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $2 i32.const 915 @@ -2201,7 +2328,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8787 + i32.const 12608 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -2238,11 +2365,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -2296,14 +2423,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -2335,19 +2462,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10074 + i32.const 13895 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10082 + i32.const 13903 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10090 + i32.const 13911 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10098 + i32.const 13919 i32.load8_s i32.store8 offset=24 local.get $1 @@ -2451,18 +2578,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4576 + i32.const 4744 + i32.const 4552 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13461 + i32.const 13502 i32.const 92 - i32.const 9730 + i32.const 13551 call $___assert_fail end ;; $if ) @@ -2479,12 +2606,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 40 i32.add @@ -2541,7 +2668,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6332 + i32.const 7384 i32.store local.get $3 local.get $5 @@ -2851,7 +2978,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_8 @@ -2859,7 +2986,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -2876,7 +3003,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $1 i32.const 1 i32.and @@ -2985,7 +3112,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $2 i32.const 1 i32.and @@ -3004,7 +3131,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $0 i32.const 1 i32.and @@ -3043,12 +3170,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -3061,7 +3188,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7667 + i32.const 11488 i32.store offset=4 local.get $3 i32.const 1505 @@ -3073,7 +3200,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7719 + i32.const 11540 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3095,7 +3222,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -3103,7 +3230,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7667 + i32.const 11488 i32.store offset=4 local.get $2 i32.const 1506 @@ -3115,7 +3242,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7750 + i32.const 11571 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3131,7 +3258,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -3150,7 +3277,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $1 i32.const 1 i32.and @@ -3301,7 +3428,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $1 i32.const 1 i32.and @@ -3411,18 +3538,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $1 i32.const 1 i32.and @@ -3494,7 +3621,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $4 @@ -3517,12 +3644,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -3539,13 +3666,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 5868 + i32.const 6920 i32.store local.get $1 local.get $7 @@ -3568,11 +3695,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $2 i32.const 16 i32.add @@ -3601,7 +3728,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -3643,7 +3770,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -3704,22 +3831,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return end ;; $block @@ -3727,7 +3854,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -3739,12 +3866,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -3773,7 +3900,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $3 i32.const 418 @@ -3785,7 +3912,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7876 + i32.const 11697 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3808,7 +3935,7 @@ i32.le_u if $if_1 local.get $2 - global.set $30 + global.set $32 return end ;; $if_1 local.get $5 @@ -3842,7 +3969,7 @@ br $block end ;; $block_0 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $1 @@ -3860,7 +3987,7 @@ local.get $3 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $3 @@ -3871,7 +3998,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 427 @@ -3883,7 +4010,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7993 + i32.const 11814 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3895,7 +4022,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -3907,12 +4034,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load i32.load offset=16 @@ -3922,7 +4049,7 @@ local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -3954,7 +4081,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 451 @@ -3966,7 +4093,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7833 + i32.const 11654 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4054,7 +4181,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $3) @@ -4069,12 +4196,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -4102,7 +4229,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $3 i32.const 476 @@ -4114,7 +4241,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8024 + i32.const 11845 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4223,12 +4350,12 @@ i32.ne local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $block_1 local.get $3 - global.set $30 + global.set $32 i32.const 1 ) @@ -4246,12 +4373,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $10 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.load local.get $2 @@ -4437,7 +4564,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block_0 end ;; $if_2 @@ -4557,7 +4684,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block else @@ -4577,7 +4704,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $2) @@ -4761,7 +4888,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4771,7 +4898,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24344 i32.eq local.get $1 i32.eqz @@ -4801,18 +4928,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4824,7 +4951,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24344 i32.eq local.get $1 i32.eqz @@ -4856,11 +4983,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 call $_free ) @@ -4885,7 +5012,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $0 i32.const 0 @@ -4894,7 +5021,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -4921,7 +5048,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24344 i32.ne if $if local.get $1 @@ -4996,18 +5123,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4608 + i32.const 4744 + i32.const 4584 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 9640 - i32.const 9681 + i32.const 13461 + i32.const 13502 i32.const 92 - i32.const 9730 + i32.const 13551 call $___assert_fail end ;; $if ) @@ -5021,12 +5148,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $4 local.get $0 @@ -5097,13 +5224,13 @@ local.get $5 i32.load local.tee $2 - i32.const 14872 + i32.const 24344 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 14872 + i32.const 24344 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -5253,7 +5380,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -5264,12 +5391,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -5293,7 +5420,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5346,7 +5473,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -5379,7 +5506,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -5390,7 +5517,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -5415,7 +5542,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5468,7 +5595,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.load offset=16 local.tee $0 i32.const 1 @@ -5504,7 +5631,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.const 10 @@ -5523,7 +5650,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $2 i32.const 18 @@ -5582,9 +5709,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $1) @@ -5606,19 +5733,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4704 + i32.const 4680 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 local.get $0 @@ -5626,7 +5753,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5637,7 +5764,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 i32.const 0 @@ -5645,7 +5772,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5670,12 +5797,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -5732,7 +5859,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6332 + i32.const 7384 i32.store local.get $5 local.get $6 @@ -5937,7 +6064,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 14872 + i32.const 24344 i32.store end ;; $if_5 local.get $0 @@ -5959,12 +6086,12 @@ local.get $5 i32.load local.tee $3 - i32.const 14872 + i32.const 24344 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 14872 + i32.const 24344 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -5985,9 +6112,9 @@ i32.load local.tee $2 else - i32.const 14872 + i32.const 24344 local.set $2 - i32.const 14872 + i32.const 24344 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -6004,9 +6131,9 @@ i32.load local.tee $3 else - i32.const 14872 + i32.const 24344 local.set $3 - i32.const 14872 + i32.const 24344 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -6021,7 +6148,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8068 + i32.const 11889 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -6371,7 +6498,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_18 @@ -6379,7 +6506,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -6418,7 +6545,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 14872 + i32.const 24344 i32.eq local.get $1 i32.eqz @@ -6467,11 +6594,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $block local.get $0 i32.const 0 @@ -6498,12 +6625,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4656 + i32.const 4632 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -6529,12 +6656,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 72 i32.add @@ -6595,7 +6722,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6332 + i32.const 7384 i32.store local.get $7 local.get $4 @@ -6761,7 +6888,7 @@ local.get $6 select i32.const 0 - i32.const 8103 + i32.const 11924 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -6782,11 +6909,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -6889,7 +7016,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $30 + global.set $32 local.get $1 return end ;; $if_11 @@ -6897,7 +7024,7 @@ i32.load call $_free local.get $2 - global.set $30 + global.set $32 local.get $1 ) @@ -6921,12 +7048,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4576 + i32.const 4552 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -6942,7 +7069,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 local.get $1 @@ -6956,7 +7083,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -6975,12 +7102,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -7004,12 +7131,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if @@ -7032,14 +7159,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -7048,7 +7175,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -7067,7 +7194,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -7082,12 +7209,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -7096,7 +7223,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -7155,7 +7282,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_3 @@ -7165,7 +7292,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if_7 @@ -7173,10 +7300,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_2 @@ -7194,46 +7321,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -7242,7 +7382,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -7253,7 +7393,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $2 i32.const 0 @@ -7262,9 +7402,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -7272,22 +7412,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -7297,22 +7435,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 14872 + i32.load + local.tee $5 + i32.const 24344 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 14872 + i32.const 24344 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -7327,13 +7465,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7345,7 +7483,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -7365,8 +7503,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7375,12 +7514,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7391,19 +7528,19 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -7414,12 +7551,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $4 @@ -7453,7 +7590,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $30 + global.set $32 local.get $2 i32.const 16 i32.add @@ -7466,7 +7603,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 16 i32.add @@ -7479,12 +7616,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 32 i32.add @@ -7506,7 +7643,7 @@ i32.eqz if $if local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -7557,7 +7694,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $3) @@ -7571,9 +7708,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -7583,7 +7720,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $2 i32.const 0 @@ -7592,7 +7729,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store end ;; $if local.get $0 @@ -7603,17 +7740,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -7649,7 +7784,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -7659,28 +7794,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 14872 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 14872 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24344 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24344 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -7689,6 +7826,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -7698,20 +7847,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -7719,34 +7865,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -7761,8 +7907,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7771,28 +7918,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -7811,12 +7956,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4608 + i32.const 4584 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -7835,7 +7980,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $0 i32.const 0 @@ -7844,7 +7989,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -7860,12 +8005,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 local.get $1 @@ -8159,17 +8304,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $4) @@ -8181,12 +8326,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8195,7 +8340,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $4 i32.const 796 @@ -8207,7 +8352,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8142 + i32.const 11963 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -8336,7 +8481,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 14872 + i32.const 24344 i32.store end ;; $if_4 local.get $2 @@ -8356,7 +8501,7 @@ local.get $0 i32.load local.tee $2 - i32.const 14872 + i32.const 24344 i32.eq if $if_6 local.get $0 @@ -8369,7 +8514,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $30 + global.set $32 return end ;; $block_3 local.get $1 @@ -8432,7 +8577,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 14744 + i32.const 24216 end ;; $if_8 br $block_7 end ;; $block_8 @@ -8486,7 +8631,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 14832 + i32.const 24304 end ;; $if_10 br $block_9 end ;; $block_10 @@ -8500,11 +8645,11 @@ br $block end ;; $block_0 local.get $4 - global.set $30 + global.set $32 return end ;; $block local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $4) @@ -8515,12 +8660,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8529,7 +8674,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $3 i32.const 341 @@ -8541,7 +8686,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8142 + i32.const 11963 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -8631,7 +8776,7 @@ i32.eqz if $if_2 local.get $3 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 @@ -8700,7 +8845,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $4) @@ -8710,12 +8855,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8724,7 +8869,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $2 i32.const 1040 @@ -8736,7 +8881,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8142 + i32.const 11963 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8757,7 +8902,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -8807,7 +8952,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $4) @@ -8819,12 +8964,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8833,7 +8978,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7667 + i32.const 11488 i32.store offset=4 local.get $2 i32.const 1586 @@ -8845,7 +8990,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8176 + i32.const 11997 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8857,7 +9002,7 @@ i32.eqz if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -8965,14 +9110,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $4) @@ -8991,7 +9136,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -9054,12 +9199,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -9073,7 +9218,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 601 @@ -9085,7 +9230,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8673 + i32.const 12494 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -9147,7 +9292,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 607 @@ -9159,7 +9304,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8707 + i32.const 12528 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -9202,7 +9347,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $3 i32.const 612 @@ -9214,7 +9359,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8751 + i32.const 12572 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -9306,7 +9451,7 @@ i32.ne if $if_5 local.get $3 - global.set $30 + global.set $32 return end ;; $if_5 local.get $1 @@ -9316,7 +9461,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $30 + global.set $32 return end ;; $if_6 local.get $0 @@ -9344,7 +9489,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $2) @@ -10257,12 +10402,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -10283,7 +10428,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $1 i32.const 495 @@ -10295,7 +10440,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8787 + i32.const 12608 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -10306,13 +10451,13 @@ i32.eqz if $if_1 local.get $1 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -10325,12 +10470,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 16 i32.add @@ -10361,7 +10506,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 return end ;; $if block $block @@ -10483,12 +10628,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -10528,7 +10673,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $3) @@ -10548,7 +10693,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $0 i32.const 0 @@ -10556,7 +10701,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10573,12 +10718,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -10604,7 +10749,7 @@ i32.load local.set $0 local.get $2 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $2 local.get $0 @@ -10612,7 +10757,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10638,12 +10783,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 7 i32.le_u @@ -10652,7 +10797,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 765 @@ -10664,7 +10809,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9257 + i32.const 13078 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10804,13 +10949,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $30 + global.set $32 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -10823,12 +10968,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 48 i32.add @@ -10853,7 +10998,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $4 i32.const 672 @@ -10865,7 +11010,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8831 + i32.const 12652 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -10891,7 +11036,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $4 i32.const 678 @@ -10903,7 +11048,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8932 + i32.const 12753 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -10937,7 +11082,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $30 + global.set $32 return end ;; $if_3 i32.const 0 @@ -10977,7 +11122,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 return end ;; $if_5 else @@ -10985,7 +11130,7 @@ i32.const 3 i32.store local.get $6 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $6 i32.const 878 @@ -10997,7 +11142,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 8988 + i32.const 12809 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -11029,7 +11174,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $5 i32.const 685 @@ -11041,7 +11186,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9028 + i32.const 12849 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -11077,7 +11222,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $4) @@ -11093,12 +11238,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 72 i32.add @@ -11158,7 +11303,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 837 @@ -11170,7 +11315,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9150 + i32.const 12971 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11186,12 +11331,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11434,7 +11579,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 return end ;; $if_11 local.get $11 @@ -11442,7 +11587,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 848 @@ -11454,7 +11599,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9215 + i32.const 13036 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11476,7 +11621,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -11487,12 +11632,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=16 local.tee $6 @@ -11516,7 +11661,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $4 i32.const 713 @@ -11528,7 +11673,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9103 + i32.const 12924 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11574,7 +11719,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -11584,12 +11729,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $4 local.get $2 @@ -11605,7 +11750,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $1 @@ -11618,12 +11763,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11683,7 +11828,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $2) @@ -12273,12 +12418,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 local.get $1 i32.load @@ -12304,7 +12449,7 @@ i32.load if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -12317,12 +12462,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -12374,7 +12519,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) @@ -12795,12 +12940,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -12813,7 +12958,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $2 i32.const 926 @@ -12825,7 +12970,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9310 + i32.const 13131 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12841,7 +12986,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $3 i32.const 927 @@ -12853,7 +12998,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9345 + i32.const 13166 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12876,7 +13021,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -12892,13 +13037,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5416 + i32.const 6480 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -12910,7 +13055,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -12924,12 +13069,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 2 i32.shl @@ -13057,13 +13202,13 @@ local.get $0 if $if_4 local.get $4 - global.set $30 + global.set $32 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $4) @@ -13071,7 +13216,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 local.get $1 @@ -13096,7 +13241,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -13152,17 +13297,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4672 + i32.const 4648 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 52 + i32.const 117 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -13232,12 +13377,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 28 i32.add @@ -13259,7 +13404,7 @@ i32.eqz if $if local.get $1 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -13316,7 +13461,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -13331,12 +13476,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 i32.eqz @@ -13348,7 +13493,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -13434,7 +13579,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7792 + i32.const 11613 i32.store offset=4 local.get $5 i32.const 527 @@ -13446,7 +13591,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9382 + i32.const 13203 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -13653,7 +13798,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -13681,14 +13826,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i32.load offset=4 @@ -13710,7 +13855,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7607 + i32.const 11426 i32.store offset=4 local.get $1 i32.const 150 @@ -13722,7 +13867,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8787 + i32.const 12608 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -13765,14 +13910,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -13804,19 +13949,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 9740 + i32.const 13561 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9748 + i32.const 13569 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9756 + i32.const 13577 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 9760 + i32.const 13581 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -13886,18 +14031,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4656 + i32.const 4744 + i32.const 4632 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13461 + i32.const 13502 i32.const 92 - i32.const 9730 + i32.const 13551 call $___assert_fail end ;; $if ) @@ -13914,12 +14059,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 12 i32.add @@ -13984,12 +14129,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -14006,13 +14151,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $7 @@ -14031,11 +14176,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -14049,7 +14194,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $5 @@ -14076,7 +14221,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8103 + i32.const 11924 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -14093,11 +14238,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) br $block end ;; $if_0 i32.const -1 @@ -14193,12 +14338,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -14215,13 +14360,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 14872 + i32.const 24344 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $4 @@ -14240,11 +14385,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -14258,7 +14403,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $10 @@ -14284,7 +14429,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8103 + i32.const 11924 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -14301,11 +14446,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -14317,7 +14462,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $2 i32.const 1 i32.and @@ -14336,7 +14481,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $0 i32.const 1 i32.and @@ -14361,7 +14506,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -17377,13 +17522,13 @@ i32.add local.tee $2 i32.load - i32.const 14872 + i32.const 24344 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 14872 + i32.const 24344 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -17394,12 +17539,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 14872 + i32.const 24344 i32.eq if $if_2 local.get $2 @@ -17447,7 +17592,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 local.get $0 i32.load offset=8 @@ -17467,7 +17612,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 14728 + i32.const 24200 i32.load local.get $0 select @@ -17481,12 +17626,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -17497,7 +17642,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7667 + i32.const 11488 i32.store offset=4 local.get $1 i32.const 1567 @@ -17509,20 +17654,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10047 + i32.const 13868 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -17588,7 +17733,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -17596,7 +17741,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17648,7 +17793,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17713,19 +17858,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10129 + i32.const 13950 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10137 + i32.const 13958 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10145 + i32.const 13966 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10149 + i32.const 13970 i32.load8_s i32.store8 offset=20 local.get $1 @@ -17793,18 +17938,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4704 + i32.const 4744 + i32.const 4680 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13461 + i32.const 13502 i32.const 92 - i32.const 9730 + i32.const 13551 call $___assert_fail end ;; $if ) @@ -17867,7 +18012,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8068 + i32.const 11889 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -17878,7 +18023,7 @@ local.get $0 i32.load offset=8 else - i32.const 14872 + i32.const 24344 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -17928,7 +18073,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $2 i32.const 1 i32.and @@ -17947,7 +18092,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24344 local.get $0 i32.const 1 i32.and @@ -17987,12 +18132,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -18013,11 +18158,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load local.set $0 @@ -18028,7 +18173,7 @@ i32.eqz if $if local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18037,7 +18182,7 @@ local.get $0 call $_free local.get $3 - global.set $30 + global.set $32 ) (func $_proxy_onCreate (type $4) @@ -18052,221 +18197,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24380 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24376 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24392 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 24388 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24380 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24376 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24384 + i32.load + i32.store + i32.const 24384 + local.get $4 + i32.store + local.get $11 + i32.const 24384 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24376 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24388 + i32.const 24388 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 14948 + i32.const 24420 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -18274,103 +18681,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 + local.get $1 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $5 + call_indirect $28 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 + call_indirect $28 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_10 + call_indirect $28 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -18408,71 +18800,71 @@ local.get $0 i32.store local.get $1 - i32.const 6196 + i32.const 7248 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -18482,20 +18874,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 ) (func $_proxy_onDelete (type $0) @@ -18503,12 +18895,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__Z10getContextj local.tee $2 @@ -18517,18 +18909,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $30 + global.set $32 ) (func $_proxy_onDone (type $0) @@ -18542,11 +18934,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -18558,12 +18950,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -18588,9 +18980,9 @@ local.get $7 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $5 i32.load local.set $0 @@ -18601,7 +18993,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18610,7 +19002,7 @@ local.get $0 call $_free local.get $5 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcCreateInitialMetadata (type $4) @@ -18626,11 +19018,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceive (type $5) @@ -18641,12 +19033,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -18670,9 +19062,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $4 i32.load local.set $0 @@ -18683,7 +19075,7 @@ i32.eqz if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18692,7 +19084,7 @@ local.get $0 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $4) @@ -18708,11 +19100,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $4) @@ -18728,11 +19120,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onHttpCallResponse (type $17) @@ -18749,12 +19141,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $8 i32.const 8 i32.add @@ -18810,9 +19202,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $8 i32.load local.set $0 @@ -18851,7 +19243,7 @@ i32.eqz if $if_1 local.get $8 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 @@ -18860,7 +19252,7 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 ) (func $_proxy_onLog (type $0) @@ -18876,11 +19268,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onQueueReady (type $4) @@ -18896,11 +19288,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onRequestBody (type $2) @@ -18923,9 +19315,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onRequestHeaders (type $1) @@ -18942,7 +19334,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestMetadata (type $1) @@ -18959,7 +19351,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestTrailers (type $1) @@ -18976,7 +19368,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseBody (type $2) @@ -18999,9 +19391,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onResponseHeaders (type $1) @@ -19018,7 +19410,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseMetadata (type $1) @@ -19035,7 +19427,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseTrailers (type $1) @@ -19052,7 +19444,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onStart (type $7) @@ -19071,29 +19463,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -19103,27 +19490,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 14908 + i32.const 24380 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 14904 + i32.const 24376 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -19142,7 +19529,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -19156,7 +19543,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -19164,16 +19551,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -19194,7 +19581,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -19203,22 +19590,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -19243,11 +19630,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 br $block end ;; $block_0 - i32.const 14944 + i32.const 24416 i32.load i32.eqz if $if_7 @@ -19286,7 +19673,7 @@ local.get $0 i32.store local.get $5 - i32.const 6124 + i32.const 7176 i32.store local.get $5 i32.const 68 @@ -19321,12 +19708,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -19338,7 +19725,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19384,10 +19771,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19401,20 +19788,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -19429,19 +19816,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -19451,12 +19838,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -19465,7 +19852,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19475,53 +19862,36 @@ i32.add i32.const 0 i32.store8 - i32.const 14944 + i32.const 24416 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6668 - i32.store - local.get $2 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $11 + call_indirect $28 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -19531,22 +19901,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -19556,40 +19926,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_17 + call_indirect $28 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -19628,7 +19998,7 @@ local.get $0 i32.store local.get $2 - i32.const 6124 + i32.const 7176 i32.store local.get $2 i32.const 68 @@ -19642,15 +20012,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -19663,12 +20033,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -19676,11 +20046,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -19726,10 +20096,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19738,29 +20108,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_20 + call_indirect $28 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -19774,35 +20144,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $12 + call_indirect $28 (type $4) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -19813,8 +20183,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 ) (func $_proxy_onTick (type $0) @@ -19828,11 +20198,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZL14getRootContextj (type $1) @@ -19843,7 +20213,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14908 + i32.const 24380 i32.load local.tee $1 i32.eqz @@ -19851,7 +20221,7 @@ i32.const 0 return end ;; $if - i32.const 14904 + i32.const 24376 i32.load local.get $1 local.get $1 @@ -19986,7 +20356,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -20002,7 +20372,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $1) @@ -20019,7 +20389,7 @@ local.get $0 i32.load local.set $4 - i32.const 14908 + i32.const 24380 i32.load local.tee $2 i32.eqz @@ -20028,7 +20398,7 @@ i32.const 0 local.set $0 else - i32.const 14904 + i32.const 24376 i32.load local.get $2 local.get $2 @@ -20167,13 +20537,13 @@ i32.const 0 i32.store local.get $6 - i32.const 14920 + i32.const 24392 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 14916 + i32.const 24388 i32.load i32.const 1 i32.add @@ -20233,7 +20603,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 14908 + i32.const 24380 i32.load local.tee $1 i32.const -1 @@ -20270,7 +20640,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 14904 + i32.const 24376 i32.load local.get $0 i32.const 2 @@ -20287,14 +20657,14 @@ br $block_4 else local.get $3 - i32.const 14912 + i32.const 24384 i32.load i32.store - i32.const 14912 + i32.const 24384 local.get $3 i32.store local.get $2 - i32.const 14912 + i32.const 24384 i32.store local.get $3 i32.load @@ -20303,7 +20673,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 14904 + i32.const 24376 i32.load local.get $1 local.get $1 @@ -20345,8 +20715,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 14916 - i32.const 14916 + i32.const 24388 + i32.const 24388 i32.load i32.const 1 i32.add @@ -20922,7 +21292,7 @@ i32.xor local.set $6 block $block_3 - i32.const 14928 + i32.const 24400 i32.load local.tee $2 i32.eqz @@ -20931,7 +21301,7 @@ i32.const 0 local.set $5 else - i32.const 14924 + i32.const 24396 i32.load local.get $2 local.get $2 @@ -21279,13 +21649,13 @@ i32.const 0 i32.store local.get $12 - i32.const 14940 + i32.const 24412 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 14936 + i32.const 24408 i32.load i32.const 1 i32.add @@ -21345,7 +21715,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 14928 + i32.const 24400 i32.load local.tee $0 i32.const -1 @@ -21382,7 +21752,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 14924 + i32.const 24396 i32.load local.get $5 i32.const 2 @@ -21401,14 +21771,14 @@ br $block_13 else local.get $4 - i32.const 14932 + i32.const 24404 i32.load i32.store - i32.const 14932 + i32.const 24404 local.get $4 i32.store local.get $2 - i32.const 14932 + i32.const 24404 i32.store local.get $4 i32.load @@ -21417,7 +21787,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 14924 + i32.const 24396 i32.load local.get $0 local.get $0 @@ -21459,8 +21829,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 14936 - i32.const 14936 + i32.const 24408 + i32.const 24408 i32.load i32.const 1 i32.add @@ -21500,7 +21870,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14928 + i32.const 24400 i32.load local.tee $0 i32.gt_u @@ -21526,10 +21896,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14936 + i32.const 24408 i32.load f32.convert_i32_u - i32.const 14940 + i32.const 24412 f32.load f32.div f32.ceil @@ -21611,10 +21981,10 @@ local.get $0 i32.eqz if $if - i32.const 14924 + i32.const 24396 i32.load local.set $0 - i32.const 14924 + i32.const 24396 i32.const 0 i32.store local.get $0 @@ -21622,7 +21992,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14928 + i32.const 24400 i32.const 0 i32.store return @@ -21636,11 +22006,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 44 + i32.const 6400 + i32.const 109 call $___cxa_throw end ;; $if_1 local.get $0 @@ -21648,10 +22018,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14924 + i32.const 24396 i32.load local.set $1 - i32.const 14924 + i32.const 24396 local.get $2 i32.store local.get $1 @@ -21659,13 +22029,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14928 + i32.const 24400 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14924 + i32.const 24396 i32.load local.get $1 i32.const 2 @@ -21681,7 +22051,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14932 + i32.const 24404 i32.load local.tee $6 i32.eqz @@ -21691,7 +22061,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 14924 + i32.const 24396 i32.load local.get $0 local.get $0 @@ -21726,7 +22096,7 @@ i32.const 2 i32.shl i32.add - i32.const 14932 + i32.const 24404 i32.store local.get $6 i32.load @@ -21768,7 +22138,7 @@ local.get $4 else block $block (result i32) - i32.const 14924 + i32.const 24396 i32.load local.get $8 i32.const 2 @@ -21996,7 +22366,7 @@ i32.load i32.store local.get $1 - i32.const 14924 + i32.const 24396 i32.load local.get $8 i32.const 2 @@ -22005,7 +22375,7 @@ i32.load i32.load i32.store - i32.const 14924 + i32.const 24396 i32.load local.get $8 i32.const 2 @@ -22053,7 +22423,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14908 + i32.const 24380 i32.load local.tee $0 i32.gt_u @@ -22079,10 +22449,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14916 + i32.const 24388 i32.load f32.convert_i32_u - i32.const 14920 + i32.const 24392 f32.load f32.div f32.ceil @@ -22158,10 +22528,10 @@ local.get $0 i32.eqz if $if - i32.const 14904 + i32.const 24376 i32.load local.set $0 - i32.const 14904 + i32.const 24376 i32.const 0 i32.store local.get $0 @@ -22169,7 +22539,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14908 + i32.const 24380 i32.const 0 i32.store return @@ -22183,11 +22553,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 44 + i32.const 6400 + i32.const 109 call $___cxa_throw end ;; $if_1 local.get $0 @@ -22195,10 +22565,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14904 + i32.const 24376 i32.load local.set $1 - i32.const 14904 + i32.const 24376 local.get $2 i32.store local.get $1 @@ -22206,13 +22576,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14908 + i32.const 24380 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14904 + i32.const 24376 i32.load local.get $1 i32.const 2 @@ -22228,7 +22598,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14912 + i32.const 24384 i32.load local.tee $4 i32.eqz @@ -22238,7 +22608,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 14904 + i32.const 24376 i32.load local.get $0 local.get $0 @@ -22273,7 +22643,7 @@ i32.const 2 i32.shl i32.add - i32.const 14912 + i32.const 24384 i32.store local.get $4 i32.load @@ -22300,7 +22670,7 @@ local.get $0 else block $block (result i32) - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22359,7 +22729,7 @@ i32.load i32.store local.get $1 - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22368,7 +22738,7 @@ i32.load i32.load i32.store - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22415,7 +22785,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22474,7 +22844,7 @@ i32.load i32.store local.get $2 - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22483,7 +22853,7 @@ i32.load i32.load i32.store - i32.const 14904 + i32.const 24376 i32.load local.get $3 i32.const 2 @@ -22508,7 +22878,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 6124 + i32.const 7176 i32.store local.get $0 i32.load offset=148 @@ -22517,30 +22887,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -22564,30 +22934,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -22611,46 +22981,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 + call_indirect $28 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -22660,59 +23013,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $28 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -22720,19 +23056,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -22768,19 +23104,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $32 block $block local.get $0 i32.load offset=84 @@ -22788,10 +23117,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -22799,7 +23125,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -22821,55 +23147,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -22877,13 +23203,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -22903,124 +23229,437 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $32 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $6 + call_indirect $28 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 + local.get $0 + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block + local.get $0 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add i32.load - local.set $0 - local.get $8 + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $4) @@ -23164,11 +23803,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) return end ;; $block end ;; $if_4 @@ -23311,11 +23950,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $4) @@ -23462,11 +24101,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $4) @@ -23613,11 +24252,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -23633,68 +24272,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $32 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -23707,24 +24337,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -23745,7 +24375,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -23754,22 +24384,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -23786,197 +24416,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $6) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $1 if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw + i32.load + call $_free + local.get $1 + call $_free end ;; $if_10 + local.get $10 + i32.load + local.set $2 local.get $0 - local.get $8 - local.get $7 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block local.get $0 - i32.load - i32.load offset=24 - i32.const 1 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 208 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $26 (type $6) - local.get $7 i32.load - local.set $0 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 end ;; $if_3 end ;; $if - local.get $6 + local.get $8 i32.const 4 i32.add - local.set $7 + local.set $6 local.get $0 i32.const 120 i32.add - local.set $8 + local.set $7 local.get $0 i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 + local.tee $4 + if $if_37 + local.get $7 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $11 + if $if_38 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else - local.get $3 - if $if_15 (result i32) + local.get $4 + if $if_40 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -23985,82 +24926,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $7 + call_indirect $28 (type $4) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -24074,82 +25015,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -24158,44 +25099,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $6 + call_indirect $28 (type $4) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $30 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -24212,17 +25153,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $8 + global.get $32 i32.const 16 i32.add - local.set $10 + global.set $32 local.get $8 i32.const 8 i32.add @@ -24230,31 +25166,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -24278,42 +25210,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -24322,39 +25254,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -24365,59 +25297,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -24430,133 +25673,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -24564,12 +25807,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -24577,9 +25820,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load local.set $0 @@ -24587,58 +25830,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -24651,82 +25894,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -24758,378 +26001,11 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 return end ;; $block local.get $8 - global.set $30 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $32 ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $4) @@ -25476,11 +26352,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $1 call $_free @@ -25496,12 +26372,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $3 @@ -25530,9 +26406,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $5 i32.load local.set $1 @@ -25670,7 +26546,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $30 + global.set $32 return end ;; $block_0 local.get $0 @@ -25687,11 +26563,11 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $30 + global.set $32 return end ;; $block local.get $5 - global.set $30 + global.set $32 ) (func $__Z10getContextj (type $1) @@ -25702,7 +26578,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14908 + i32.const 24380 i32.load local.tee $1 i32.eqz @@ -25710,7 +26586,7 @@ i32.const 0 return end ;; $if - i32.const 14904 + i32.const 24376 i32.load local.get $1 local.get $1 @@ -25845,7 +26721,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -25861,7 +26737,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -25877,14 +26753,14 @@ local.get $0 i32.load local.set $3 - i32.const 14908 + i32.const 24380 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 14904 + i32.const 24376 i32.load local.tee $4 local.get $2 @@ -26052,7 +26928,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 14912 + i32.const 24384 i32.eq br_if $block_2 local.get $3 @@ -26162,7 +27038,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 14904 + i32.const 24376 i32.load local.get $2 i32.const 2 @@ -26182,8 +27058,8 @@ local.get $8 i32.const 0 i32.store - i32.const 14916 - i32.const 14916 + i32.const 24388 + i32.const 24388 i32.load i32.const -1 i32.add @@ -26205,349 +27081,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 14908 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 14904 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 14920 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 14916 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 14908 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 14904 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 14912 - i32.load - i32.store - i32.const 14912 - local.get $1 - i32.store - i32.const 14904 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 14912 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 14904 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 14916 - i32.const 14916 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) @@ -26559,15 +27102,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 + global.get $32 + local.set $8 + global.get $32 + i32.const 16 i32.add - global.set $30 - i32.const 14944 + global.set $32 + i32.const 24416 i32.load i32.eqz if $if @@ -26582,7 +27123,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14944 + i32.const 24416 local.get $3 i32.store i32.const 20 @@ -26596,27 +27137,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14948 + i32.const 24420 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 14948 + i32.const 24420 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -26624,25 +27157,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -26652,7 +27187,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -26667,7 +27202,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -26675,127 +27210,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $28 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 return - end ;; $if_9 - i32.const 14944 + end ;; $if_7 + i32.const 24416 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -26803,31 +27304,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -26835,12 +27338,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -26848,12 +27351,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -26865,97 +27368,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $28 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $30 + end ;; $if_13 + local.get $8 + global.set $32 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) @@ -27441,7 +27918,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -27458,8 +27935,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -27657,345 +28137,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -28008,794 +28162,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6792 - i32.store - local.get $2 - i32.const 5344 - i32.const 44 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 6 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 14952 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 14956 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6276 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4736 - i32.const 32 - call $___cxa_throw - else local.get $1 - global.set $30 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 14956 - local.get $0 - i32.store - i32.const 54 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $30 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6408 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 14956 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 14956 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 14864 - i32.load8_s i32.eqz - if $if - i32.const 14864 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 14864 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 14960 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 14960 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $30 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -28806,236 +28988,440 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10832 + i32.store + local.get $2 + i32.const 6400 + i32.const 109 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6792 - i32.store - local.get $3 - i32.const 5344 - i32.const 44 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 + i32.const -1 + i32.add + local.tee $14 i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 11064 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 13015 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 + i32.const 7328 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s @@ -29047,930 +29433,1111 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 14964 - i64.const 0 - i64.store align=4 - i32.const 14972 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 15713 + i32.const 7328 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 14980 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 15713 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 14996 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $30 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 + global.set $32 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $30 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24424 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24428 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $30 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7328 i32.store + local.get $1 local.get $3 - i32.const 11067 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11092 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4712 + i32.const 28 + call $___cxa_throw + else + local.get $1 + global.set $32 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 24428 local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 119 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=8 - local.get $3 - global.set $30 - local.get $2 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $32 + return + end ;; $if + i32.const 7464 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24428 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24428 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24336 + i32.load8_s + i32.eqz + if $if + i32.const 24336 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24432 + local.get $2 + i32.store + i32.const 24336 + i32.const 0 + i32.store + i32.const 24336 + i32.const 24336 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24432 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 local.get $0 - i32.load offset=24 - local.set $3 - local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 local.get $2 i32.load offset=4 + i32.const 8 i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 + i32.store offset=4 + else local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4752 - i64.load + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $0 - i64.load offset=16 - i64.eq + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10832 + i32.store + local.get $3 + i32.const 6400 + i32.const 109 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 4752 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4752 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 4760 - local.get $3 - i32.store - i32.const 4752 - local.get $0 - i64.load offset=16 - i64.store local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 - i32.store offset=4 - local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block - end ;; $if - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.store + local.get $2 + i32.const 128 + i32.const 14885 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4760 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - drop - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $0 - i32.load offset=28 + i32.store + local.get $2 + i32.const 128 + i32.const 16834 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24436 + i64.const 0 + i64.store align=4 + i32.const 24444 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 25190 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add local.tee $1 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 - local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24452 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25190 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24468 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $32 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $32 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 + if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 11 + i32.add + local.set $0 + br $block_0 + end ;; $if_0 + br $block + end ;; $block_0 local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select + else + local.get $0 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 local.get $3 + i32.const 3 i32.store - local.get $1 - local.get $2 + local.get $3 + i32.const 14888 i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 14913 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $0 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $32 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 local.get $0 - local.get $1 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $6 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 i32.const 8 i32.add + local.tee $4 i32.store offset=28 - end ;; $if_2 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 local.get $3 + i32.const 16 + i32.add + i32.store offset=28 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -29981,33 +30548,453 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 local.get $0 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm return end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4728 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4736 + local.get $3 + i32.store + i32.const 4728 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4736 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else local.get $1 - i32.const 50 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 50 + i32.const 115 i32.store offset=4 local.get $2 local.get $0 @@ -30021,13 +31008,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -30038,7 +31025,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 @@ -30056,14 +31043,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 50 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 50 + i32.const 115 i32.store offset=4 local.get $2 local.get $0 @@ -30082,11 +31069,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) @@ -30111,12 +31098,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $6 local.get $4 i32.store @@ -30134,7 +31121,7 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -34696,9 +35683,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_190 local.tee $4 i32.store @@ -34842,9 +35829,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_196 local.tee $4 i32.store @@ -35007,9 +35994,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_202 local.tee $4 i32.store @@ -35177,9 +36164,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_208 local.tee $4 i32.store @@ -35380,7 +36367,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35439,9 +36426,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_214 br $block @@ -35581,7 +36568,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35640,9 +36627,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_222 br $block @@ -35801,7 +36788,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35859,9 +36846,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_230 i32.store local.get $9 @@ -36024,7 +37011,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -36083,9 +37070,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_238 br $block @@ -40112,7 +41099,7 @@ i32.load local.set $4 local.get $11 - i32.const 6296 + i32.const 7348 i32.store local.get $11 local.get $4 @@ -40159,9 +41146,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -40180,7 +41167,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11179 + i32.const 15000 i32.store offset=4 local.get $11 i32.const 571 @@ -40192,7 +41179,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11221 + i32.const 15042 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -40212,24 +41199,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11179 + i32.const 15000 i32.store offset=4 local.get $1 i32.const 534 @@ -40241,12 +41228,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11221 + i32.const 15042 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11251 + i32.const 15072 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -40255,50 +41242,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 14896 + global.set $32 + i32.const 24368 i32.load8_s i32.eqz if $if - i32.const 14896 + i32.const 24368 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 14896 + i32.const 24368 + i32.const 0 + i32.store + i32.const 24368 + i32.const 24368 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15040 + i32.const 24512 i32.load - i32.const 6416 + i32.const 7468 call $_pthread_equal if $if_1 - i32.const 5596 + i32.const 6648 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11179 + i32.const 15000 i32.store offset=4 local.get $0 i32.const 801 @@ -40310,53 +41305,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11263 + i32.const 15084 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 14888 + i32.const 24360 i32.load8_s i32.eqz if $if_3 - i32.const 14888 + i32.const 24360 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 14888 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 14872 + i32.xor + if $if_4 + i32.const 24344 i64.const 0 i64.store - i32.const 14880 + i32.const 24352 i32.const 0 i32.store - i32.const 55 - i32.const 14872 + i32.const 120 + i32.const 24344 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24360 + i32.const 0 + i32.store + i32.const 24360 + i32.const 24360 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15040 - i32.const 6416 + i32.const 24512 + i32.const 7468 i32.store - i32.const 5596 + i32.const 6648 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15040 + i32.const 24512 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -40415,9 +41413,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -40444,31 +41442,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11428 + i32.const 15249 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11436 + i32.const 15257 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11444 + i32.const 15265 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11452 + i32.const 15273 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11460 + i32.const 15281 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11468 + i32.const 15289 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11476 + i32.const 15297 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -40488,7 +41486,7 @@ i32.load local.set $2 local.get $0 - i32.const 15714 + i32.const 25181 i32.load8_s i32.const 1 i32.and @@ -40498,9 +41496,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $2) @@ -40513,19 +41511,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 if $if local.get $0 @@ -40542,7 +41540,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -40552,7 +41550,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $6 local.set $5 local.get $4 @@ -40560,7 +41558,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6296 + i32.const 7348 i32.store local.get $3 local.get $2 @@ -40593,11 +41591,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load8_s offset=16 if $if_0 @@ -40605,7 +41603,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11358 + i32.const 15179 i32.store offset=4 local.get $4 i32.const 373 @@ -40617,7 +41615,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11390 + i32.const 15211 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -40630,7 +41628,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -40643,12 +41641,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -40664,7 +41662,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -40700,7 +41698,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11511 + i32.const 15332 i32.store offset=4 local.get $3 i32.const 59 @@ -40712,9 +41710,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11545 + i32.const 15366 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11662 + i32.const 15483 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -40746,13 +41744,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5408 + i32.const 6472 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -40816,7 +41814,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -40829,12 +41827,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -40883,7 +41881,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -40921,7 +41919,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -41000,7 +41998,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -41086,7 +42084,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -41130,17 +42128,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -41304,12 +42302,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -41448,7 +42446,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -41518,7 +42516,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -42074,17 +43072,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -42342,12 +43340,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42397,7 +43395,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11710 + i32.const 15531 i32.store offset=4 local.get $4 i32.const 507 @@ -42409,7 +43407,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11746 + i32.const 15567 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42461,7 +43459,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -42543,7 +43541,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) @@ -42554,12 +43552,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42609,7 +43607,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11710 + i32.const 15531 i32.store offset=4 local.get $4 i32.const 516 @@ -42621,7 +43619,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11746 + i32.const 15567 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42747,7 +43745,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -42840,7 +43838,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 local.get $2 i32.load offset=8 @@ -42857,11 +43855,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) return end ;; $if_2 local.get $2 @@ -42930,11 +43928,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $4) @@ -42986,7 +43984,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $1 i32.load offset=8 @@ -43100,9 +44098,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop return end ;; $if_4 @@ -43112,11 +44110,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $3) @@ -43232,18 +44230,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -43300,13 +44298,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 11792 + i32.const 15613 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 11804 + i32.const 15625 local.get $2 select local.set $3 @@ -43318,7 +44316,7 @@ i32.const 2 i32.store local.get $1 - i32.const 11710 + i32.const 15531 i32.store offset=4 local.get $1 i32.const 626 @@ -43330,21 +44328,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11818 + i32.const 15639 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 11831 + i32.const 15652 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11850 + i32.const 15671 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11867 + i32.const 15688 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11880 + i32.const 15701 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11936 + i32.const 15757 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -43359,7 +44357,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -43470,12 +44468,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -43518,7 +44516,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -43641,7 +44639,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -43669,7 +44667,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -44040,12 +45038,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -44085,9 +45083,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $4 @@ -44114,7 +45112,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11944 + i32.const 15765 i32.store offset=4 local.get $2 i32.const 591 @@ -44126,7 +45124,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11979 + i32.const 15800 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -44219,7 +45217,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -44235,7 +45233,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -44245,31 +45243,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 11944 + i32.const 15765 i32.store offset=4 local.get $1 i32.const 190 @@ -44281,18 +45279,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12016 + i32.const 15837 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12083 + i32.const 15904 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $3) @@ -44428,11 +45426,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) drop i32.const 0 return @@ -44446,11 +45444,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) if $if_2 (result i32) local.get $0 local.get $0 @@ -44471,9 +45469,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -44720,12 +45718,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44798,7 +45796,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44811,7 +45809,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44825,12 +45823,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44903,7 +45901,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44916,7 +45914,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44931,12 +45929,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -44984,7 +45982,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -45154,7 +46152,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -45217,7 +46215,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -45225,7 +46223,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -45239,12 +46237,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -45342,7 +46340,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -45383,7 +46381,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -45542,12 +46540,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -45556,12 +46554,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45590,9 +46588,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) if $if local.get $0 local.get $2 @@ -45620,19 +46618,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45649,7 +46647,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -45674,11 +46672,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 local.get $0 i32.load offset=12 @@ -45703,12 +46701,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -45746,9 +46744,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -45788,7 +46786,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -45810,7 +46808,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -45859,11 +46857,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 i32.const 12 i32.add @@ -45913,9 +46911,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.xor i32.const 1 @@ -45936,12 +46934,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -45968,7 +46966,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -46010,9 +47008,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46052,7 +47050,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -46073,7 +47071,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -46087,12 +47085,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -46119,7 +47117,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -46159,9 +47157,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46201,7 +47199,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -46222,7 +47220,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $4) @@ -46234,12 +47232,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -46327,9 +47325,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46369,7 +47367,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -46394,7 +47392,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -46408,12 +47406,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -46505,9 +47503,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46547,7 +47545,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -46569,7 +47567,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $3) @@ -46663,6 +47661,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) @@ -46724,12 +47728,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46744,7 +47748,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $2 i32.const 132 @@ -46756,9 +47760,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12308 + i32.const 16129 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12352 + i32.const 16173 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46779,7 +47783,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $2 i32.const 134 @@ -46791,7 +47795,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12407 + i32.const 16228 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46811,14 +47815,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $3 i32.const 135 @@ -46830,7 +47834,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12277 + i32.const 16098 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46845,7 +47849,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -46866,12 +47870,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -46886,7 +47890,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $3 i32.const 151 @@ -46898,7 +47902,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12497 + i32.const 16318 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46972,7 +47976,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $5 i32.const 164 @@ -46984,15 +47988,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12574 + i32.const 16395 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12624 + i32.const 16445 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -47033,7 +48037,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -47043,12 +48047,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -47061,7 +48065,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $2 i32.const 182 @@ -47073,7 +48077,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12277 + i32.const 16098 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -47094,7 +48098,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $2 i32.const 183 @@ -47106,7 +48110,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12497 + i32.const 16318 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -47136,7 +48140,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $3 i32.const 184 @@ -47148,7 +48152,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12529 + i32.const 16350 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -47184,7 +48188,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -47193,12 +48197,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -47209,7 +48213,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12228 + i32.const 16049 i32.store offset=4 local.get $1 i32.const 189 @@ -47221,7 +48225,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12497 + i32.const 16318 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -47242,11 +48246,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -47261,12 +48265,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -47276,7 +48280,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 11812 + i32.const 15633 local.get $2 call $_vsnprintf local.tee $4 @@ -47288,7 +48292,7 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -47309,7 +48313,7 @@ i32.store local.get $3 local.get $5 - i32.const 11812 + i32.const 15633 local.get $2 call $_vsnprintf local.tee $1 @@ -47331,19 +48335,19 @@ call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -47357,7 +48361,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $2) @@ -47386,7 +48390,7 @@ i32.const 241 return end ;; $if - i32.const 6376 + i32.const 7428 i32.load local.set $13 local.get $0 @@ -47396,18 +48400,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6404 + i32.const 7456 i32.load local.set $4 - i32.const 6384 + i32.const 7436 i32.load local.set $11 - i32.const 6388 + i32.const 7440 i32.load local.set $12 - i32.const 6392 + i32.const 7444 i32.load - i32.const 6360 + i32.const 7412 i32.load i32.add local.tee $8 @@ -47620,7 +48624,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.ge_u if $if_7 @@ -47652,7 +48656,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.lt_u if $if_9 (result i32) @@ -47700,17 +48704,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -47833,7 +48837,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -47846,17 +48850,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 12686 + i32.const 16507 i32.store offset=4 local.get $0 i32.const 47 @@ -47868,13 +48872,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 12725 + i32.const 16546 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -47882,12 +48886,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -47899,7 +48903,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15108 + i32.const 24580 i32.const 0 local.get $0 i32.sub @@ -47908,217 +48912,63 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 local.get $0 ) - (func $___stdio_write (type $2) + (func $___stdout_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $3 + global.get $32 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $32 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15108 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15108 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 10 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $30 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 + local.get $0 ) (func $___stdio_seek (type $12) @@ -48128,12 +48978,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 8 i32.add @@ -48162,7 +49012,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15108 + i32.const 24580 i32.const 0 local.get $0 i32.sub @@ -48184,68 +49034,303 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $30 + global.set $32 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15108 + i32.const 24580 ) - (func $___stdout_write (type $2) + (func $___stdio_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $6 i32.const 32 i32.add - global.set $30 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 9 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24580 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24580 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $32 + local.get $2 + ) + + (func $_strlen (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $2) @@ -48299,6 +49384,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $3) (param $0 i32) (param $1 i32) @@ -48421,6 +49633,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -48429,18 +49668,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5104 + i32.const 5080 i32.const 144 call $_memcpy drop @@ -48454,7 +49693,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15108 + i32.const 24580 i32.const 75 i32.store i32.const -1 @@ -48519,7 +49758,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -48565,12 +49804,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -48602,13 +49841,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 12909 + i32.const 16730 local.set $18 i32.const 1 else - i32.const 12912 - i32.const 12915 - i32.const 12910 + i32.const 16733 + i32.const 16736 + i32.const 16731 local.get $4 i32.const 1 i32.and @@ -48631,8 +49870,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 12936 - i32.const 12940 + i32.const 16757 + i32.const 16761 local.get $5 i32.const 32 i32.and @@ -48640,8 +49879,8 @@ i32.ne local.tee $3 select - i32.const 12928 - i32.const 12932 + i32.const 16749 + i32.const 16753 local.get $3 select local.get $1 @@ -48659,15 +49898,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48675,7 +49914,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -48933,11 +50172,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -48945,14 +50184,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -48965,11 +50204,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48977,7 +50216,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -49884,11 +51123,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -49896,7 +51135,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -49965,7 +51204,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -49989,9 +51228,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 12944 + i32.const 19532 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -50038,7 +51277,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -50068,7 +51307,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -50136,7 +51375,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -50148,9 +51387,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 12944 + i32.const 19532 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -50187,7 +51426,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -50211,13 +51450,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -50226,13 +51465,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -50275,12 +51514,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -50391,9 +51630,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $1 i32.const -1 @@ -50436,7 +51675,7 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -50468,12 +51707,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -50522,7 +51761,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15108 + i32.const 24580 i32.const 75 i32.store i32.const -1 @@ -50612,7 +51851,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -50825,7 +52064,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -50861,7 +52100,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -51051,7 +52290,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -51238,7 +52477,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16713 local.set $8 br $block_14 end ;; $block_25 @@ -51254,13 +52493,13 @@ i64.sub local.tee $25 i64.store - i32.const 12892 + i32.const 16713 local.set $8 i32.const 1 else - i32.const 12893 - i32.const 12894 - i32.const 12892 + i32.const 16714 + i32.const 16715 + i32.const 16713 local.get $7 i32.const 1 i32.and @@ -51284,7 +52523,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16713 local.set $8 br $block_16 end ;; $block_23 @@ -51300,7 +52539,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16713 local.set $8 local.get $18 local.set $1 @@ -51309,7 +52548,7 @@ local.get $10 i32.load local.tee $5 - i32.const 12902 + i32.const 16723 local.get $5 select local.tee $6 @@ -51329,7 +52568,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16713 local.set $8 local.get $1 local.get $6 @@ -51365,7 +52604,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -51380,7 +52619,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -51390,7 +52629,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16713 local.set $8 local.get $18 local.set $1 @@ -51418,11 +52657,11 @@ local.tee $8 select local.set $12 - i32.const 12892 + i32.const 16713 local.get $6 i32.const 4 i32.shr_u - i32.const 12892 + i32.const 16713 i32.add local.get $8 select @@ -51488,7 +52727,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -51519,7 +52758,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -51582,7 +52821,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -51615,11 +52854,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -51627,17 +52866,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -51645,7 +52884,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -51677,7 +52916,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -51718,11 +52957,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51739,7 +52978,7 @@ end ;; $if ) - (func $_getint_280 (type $1) + (func $_getint (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -51781,7 +53020,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -52005,13 +53244,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 199 - call_indirect $26 (type $4) + i32.const 396 + call_indirect $28 (type $4) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -52047,7 +53286,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -52079,7 +53318,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -52152,19 +53391,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -52203,7 +53442,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -52220,10 +53459,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $3) @@ -52257,7 +53496,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6604 + i32.const 7656 i32.load i32.load i32.eqz @@ -52274,7 +53513,7 @@ i32.const 1 br $block else - i32.const 15108 + i32.const 24580 i32.const 84 i32.store i32.const -1 @@ -52379,7 +53618,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15108 + i32.const 24580 i32.const 84 i32.store i32.const -1 @@ -52429,9 +53668,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop br $block end ;; $if_0 @@ -52476,9 +53715,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $3 i32.lt_u br_if $block @@ -52559,76 +53798,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $2) (param $0 i32) (param $1 i32) @@ -52663,176 +53832,26 @@ local.get $2 ) - (func $_strlen (type $1) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $16) + (func $_fprintf (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 14765 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -52840,12 +53859,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -52895,9 +53914,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.eq if $if_2 (result i32) @@ -52909,29 +53928,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 10944 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $1) @@ -52955,10 +53952,10 @@ end ;; $block local.set $0 else - i32.const 6412 + i32.const 7460 i32.load if $if_1 (result i32) - i32.const 6412 + i32.const 7460 i32.load call $_fflush else @@ -52966,9 +53963,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15112 + i32.const 24584 call $___lock - i32.const 15120 + i32.const 24592 i32.load local.tee $1 end ;; $block_0 @@ -53002,7 +53999,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15112 + i32.const 24584 call $___unlock end ;; $if local.get $0 @@ -53031,9 +54028,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $0 i32.load offset=20 @@ -53061,9 +54058,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -53085,6 +54082,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $1) (param $0 i32) (result i32) @@ -53110,17 +54171,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15124 + i32.const 24596 i32.load local.tee $6 i32.const 16 @@ -53152,7 +54213,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.tee $3 i32.load offset=8 @@ -53165,7 +54226,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15124 + i32.const 24596 local.get $6 i32.const 1 local.get $0 @@ -53175,7 +54236,7 @@ i32.and i32.store else - i32.const 15140 + i32.const 24612 i32.load local.get $4 i32.gt_u @@ -53215,12 +54276,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15132 + i32.const 24604 i32.load local.tee $13 i32.gt_u @@ -53299,7 +54360,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.tee $1 i32.load offset=8 @@ -53312,7 +54373,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15124 + i32.const 24596 local.get $6 i32.const 1 local.get $0 @@ -53323,7 +54384,7 @@ local.tee $8 i32.store else - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.gt_u @@ -53373,7 +54434,7 @@ i32.store local.get $13 if $if_9 - i32.const 15144 + i32.const 24616 i32.load local.set $10 local.get $13 @@ -53382,7 +54443,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $2 local.get $8 @@ -53392,7 +54453,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.const 8 @@ -53410,7 +54471,7 @@ local.set $4 end ;; $if_11 else - i32.const 15124 + i32.const 24596 local.get $0 local.get $8 i32.or @@ -53435,18 +54496,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15132 + i32.const 24604 local.get $6 i32.store - i32.const 15144 + i32.const 24616 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 15128 + i32.const 24600 i32.load local.tee $11 if $if_12 (result i32) @@ -53509,7 +54570,7 @@ i32.add i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add i32.load local.tee $0 @@ -53559,7 +54620,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15140 + i32.const 24612 i32.load local.tee $7 local.get $9 @@ -53683,7 +54744,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.tee $0 i32.load @@ -53696,7 +54757,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15128 + i32.const 24600 local.get $11 i32.const 1 local.get $1 @@ -53708,7 +54769,7 @@ br $block_2 end ;; $if_25 else - i32.const 15140 + i32.const 24612 i32.load local.get $18 i32.gt_u @@ -53733,7 +54794,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $3 @@ -53766,7 +54827,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15140 + i32.const 24612 i32.load local.get $0 i32.gt_u @@ -53822,7 +54883,7 @@ i32.store local.get $13 if $if_33 - i32.const 15144 + i32.const 24616 i32.load local.set $4 local.get $13 @@ -53831,7 +54892,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $3 local.get $6 @@ -53841,7 +54902,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15140 + i32.const 24612 i32.load local.get $3 i32.const 8 @@ -53859,7 +54920,7 @@ local.set $12 end ;; $if_35 else - i32.const 15124 + i32.const 24596 local.get $0 local.get $6 i32.or @@ -53884,15 +54945,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15132 + i32.const 24604 local.get $10 i32.store - i32.const 15144 + i32.const 24616 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -53918,7 +54979,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15128 + i32.const 24600 i32.load local.tee $4 if $if_37 (result i32) @@ -53998,7 +55059,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add i32.load local.tee $0 @@ -54163,7 +55224,7 @@ i32.add i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add i32.load local.set $0 @@ -54226,13 +55287,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15132 + i32.const 24604 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15140 + i32.const 24612 i32.load local.tee $12 local.get $2 @@ -54356,7 +55417,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.tee $0 i32.load @@ -54369,7 +55430,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15128 + i32.const 24600 local.get $4 i32.const 1 local.get $3 @@ -54382,7 +55443,7 @@ br $block_9 end ;; $if_60 else - i32.const 15140 + i32.const 24612 i32.load local.get $8 i32.gt_u @@ -54411,7 +55472,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $13 @@ -54444,7 +55505,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15140 + i32.const 24612 i32.load local.get $0 i32.gt_u @@ -54518,10 +55579,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $3 - i32.const 15124 + i32.const 24596 i32.load local.tee $1 i32.const 1 @@ -54530,7 +55591,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15140 + i32.const 24612 i32.load local.get $3 i32.const 8 @@ -54548,7 +55609,7 @@ local.set $11 end ;; $if_71 else - i32.const 15124 + i32.const 24596 local.get $0 local.get $1 i32.or @@ -54644,7 +55705,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.set $3 local.get $5 @@ -54664,7 +55725,7 @@ i32.and i32.eqz if $if_74 - i32.const 15128 + i32.const 24600 local.get $0 local.get $1 i32.or @@ -54745,7 +55806,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15140 + i32.const 24612 i32.load local.get $4 i32.gt_u @@ -54768,7 +55829,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $6 @@ -54801,7 +55862,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -54821,13 +55882,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15132 + i32.const 24604 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15144 + i32.const 24616 i32.load local.set $0 local.get $3 @@ -54837,13 +55898,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15144 + i32.const 24616 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15132 + i32.const 24604 local.get $2 i32.store local.get $1 @@ -54862,10 +55923,10 @@ i32.or i32.store offset=4 else - i32.const 15132 + i32.const 24604 i32.const 0 i32.store - i32.const 15144 + i32.const 24616 i32.const 0 i32.store local.get $0 @@ -54886,13 +55947,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15136 + i32.const 24608 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15136 + i32.const 24608 local.get $12 local.get $11 i32.sub @@ -54900,31 +55961,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 15596 + i32.const 25068 i32.load if $if_83 (result i32) - i32.const 15604 + i32.const 25076 i32.load else - i32.const 15604 + i32.const 25076 i32.const 4096 i32.store - i32.const 15600 + i32.const 25072 i32.const 4096 i32.store - i32.const 15608 + i32.const 25080 i32.const -1 i32.store - i32.const 15612 + i32.const 25084 i32.const -1 i32.store - i32.const 15616 + i32.const 25088 i32.const 0 i32.store - i32.const 15568 + i32.const 25040 i32.const 0 i32.store - i32.const 15596 + i32.const 25068 local.get $17 i32.const -16 i32.and @@ -54951,11 +56012,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15564 + i32.const 25036 i32.load local.tee $2 if $if_85 - i32.const 15556 + i32.const 25028 i32.load local.tee $1 local.get $8 @@ -54977,7 +56038,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 15568 + i32.const 25040 i32.load i32.const 4 i32.and @@ -54988,12 +56049,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15148 + i32.const 24620 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 15572 + i32.const 25044 local.set $2 loop $loop_5 block $block_20 @@ -55056,11 +56117,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15556 + i32.const 25028 i32.load local.tee $4 local.get $0 - i32.const 15600 + i32.const 25072 i32.load local.tee $2 i32.const -1 @@ -55091,7 +56152,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15564 + i32.const 25036 i32.load local.tee $1 if $if_92 @@ -55149,7 +56210,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 15604 + i32.const 25076 i32.load local.tee $1 local.get $6 @@ -55186,8 +56247,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 15568 - i32.const 15568 + i32.const 25040 + i32.const 25040 i32.load i32.const 4 i32.or @@ -55242,28 +56303,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15556 - i32.const 15556 + i32.const 25028 + i32.const 25028 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15560 + i32.const 25032 i32.load i32.gt_u if $if_98 - i32.const 15560 + i32.const 25032 local.get $1 i32.store end ;; $if_98 - i32.const 15148 + i32.const 24620 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 15572 + i32.const 25044 local.set $2 block $block_22 block $block_23 @@ -55321,7 +56382,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15136 + i32.const 24608 i32.load local.get $3 i32.add @@ -55329,10 +56390,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15148 + i32.const 24620 local.get $2 i32.store - i32.const 15136 + i32.const 24608 local.get $1 i32.store local.get $2 @@ -55345,8 +56406,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24624 + i32.const 25084 i32.load i32.store br $block_21 @@ -55354,12 +56415,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15140 + i32.const 24612 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15140 + i32.const 24612 local.get $0 i32.store local.get $0 @@ -55369,7 +56430,7 @@ local.get $3 i32.add local.set $1 - i32.const 15572 + i32.const 25044 local.set $8 block $block_24 block $block_25 @@ -55450,14 +56511,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15136 - i32.const 15136 + i32.const 24608 + i32.const 24608 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15148 + i32.const 24620 local.get $5 i32.store local.get $5 @@ -55467,19 +56528,19 @@ i32.store offset=4 else block $block_26 - i32.const 15144 + i32.const 24616 i32.load local.get $3 i32.eq if $if_105 - i32.const 15132 - i32.const 15132 + i32.const 24604 + i32.const 24604 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15144 + i32.const 24616 local.get $5 i32.store local.get $5 @@ -55524,7 +56585,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.tee $0 i32.ne @@ -55548,8 +56609,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15124 - i32.const 15124 + i32.const 24596 + i32.const 24596 i32.load i32.const 1 local.get $1 @@ -55707,7 +56768,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.tee $0 i32.load @@ -55720,8 +56781,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15128 - i32.const 15128 + i32.const 24600 + i32.const 24600 i32.load i32.const 1 local.get $1 @@ -55733,7 +56794,7 @@ br $block_27 end ;; $block_32 else - i32.const 15140 + i32.const 24612 i32.load local.get $8 i32.gt_u @@ -55758,7 +56819,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $16 @@ -55792,7 +56853,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15140 + i32.const 24612 i32.load local.get $0 i32.gt_u @@ -55844,10 +56905,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $2 - i32.const 15124 + i32.const 24596 i32.load local.tee $1 i32.const 1 @@ -55857,7 +56918,7 @@ i32.and if $if_128 block $block_33 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.const 8 @@ -55876,7 +56937,7 @@ call $_abort end ;; $block_33 else - i32.const 15124 + i32.const 24596 local.get $0 local.get $1 i32.or @@ -55972,7 +57033,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.set $2 local.get $5 @@ -55984,7 +57045,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24600 i32.load local.tee $1 i32.const 1 @@ -55994,7 +57055,7 @@ i32.and i32.eqz if $if_132 - i32.const 15128 + i32.const 24600 local.get $0 local.get $1 i32.or @@ -56075,7 +57136,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.gt_u @@ -56098,7 +57159,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $9 @@ -56131,14 +57192,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $30 + global.set $32 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 15572 + i32.const 25044 local.set $2 loop $loop_10 block $block_35 @@ -56163,7 +57224,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15148 + i32.const 24620 i32.const 0 local.get $0 i32.const 8 @@ -56182,7 +57243,7 @@ i32.add local.tee $4 i32.store - i32.const 15136 + i32.const 24608 local.get $3 i32.const -40 i32.add @@ -56201,8 +57262,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24624 + i32.const 25084 i32.load i32.store local.get $6 @@ -56235,23 +57296,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 15572 + i32.const 25044 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 15580 + i32.const 25052 i64.load align=4 i64.store offset=16 align=4 - i32.const 15572 + i32.const 25044 local.get $0 i32.store - i32.const 15576 + i32.const 25048 local.get $3 i32.store - i32.const 15584 + i32.const 25056 i32.const 0 i32.store - i32.const 15580 + i32.const 25052 local.get $2 i32.const 8 i32.add @@ -56310,10 +57371,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $2 - i32.const 15124 + i32.const 24596 i32.load local.tee $1 i32.const 1 @@ -56322,7 +57383,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.const 8 @@ -56340,7 +57401,7 @@ local.set $5 end ;; $if_143 else - i32.const 15124 + i32.const 24596 local.get $0 local.get $1 i32.or @@ -56436,7 +57497,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.set $2 local.get $6 @@ -56448,7 +57509,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24600 i32.load local.tee $1 i32.const 1 @@ -56458,7 +57519,7 @@ i32.and i32.eqz if $if_146 - i32.const 15128 + i32.const 24600 local.get $0 local.get $1 i32.or @@ -56539,7 +57600,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15140 + i32.const 24612 i32.load local.get $3 i32.gt_u @@ -56562,7 +57623,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $10 @@ -56595,7 +57656,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15140 + i32.const 24612 i32.load local.tee $1 i32.eqz @@ -56604,219 +57665,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15140 + i32.const 24612 local.get $0 i32.store end ;; $if_152 - i32.const 15572 + i32.const 25044 local.get $0 i32.store - i32.const 15576 + i32.const 25048 local.get $3 i32.store - i32.const 15584 + i32.const 25056 i32.const 0 i32.store - i32.const 15160 - i32.const 15596 + i32.const 24632 + i32.const 25068 i32.load i32.store - i32.const 15156 + i32.const 24628 i32.const -1 i32.store - i32.const 15176 - i32.const 15164 + i32.const 24648 + i32.const 24636 i32.store - i32.const 15172 - i32.const 15164 + i32.const 24644 + i32.const 24636 i32.store - i32.const 15184 - i32.const 15172 + i32.const 24656 + i32.const 24644 i32.store - i32.const 15180 - i32.const 15172 + i32.const 24652 + i32.const 24644 i32.store - i32.const 15192 - i32.const 15180 + i32.const 24664 + i32.const 24652 i32.store - i32.const 15188 - i32.const 15180 + i32.const 24660 + i32.const 24652 i32.store - i32.const 15200 - i32.const 15188 + i32.const 24672 + i32.const 24660 i32.store - i32.const 15196 - i32.const 15188 + i32.const 24668 + i32.const 24660 i32.store - i32.const 15208 - i32.const 15196 + i32.const 24680 + i32.const 24668 i32.store - i32.const 15204 - i32.const 15196 + i32.const 24676 + i32.const 24668 i32.store - i32.const 15216 - i32.const 15204 + i32.const 24688 + i32.const 24676 i32.store - i32.const 15212 - i32.const 15204 + i32.const 24684 + i32.const 24676 i32.store - i32.const 15224 - i32.const 15212 + i32.const 24696 + i32.const 24684 i32.store - i32.const 15220 - i32.const 15212 + i32.const 24692 + i32.const 24684 i32.store - i32.const 15232 - i32.const 15220 + i32.const 24704 + i32.const 24692 i32.store - i32.const 15228 - i32.const 15220 + i32.const 24700 + i32.const 24692 i32.store - i32.const 15240 - i32.const 15228 + i32.const 24712 + i32.const 24700 i32.store - i32.const 15236 - i32.const 15228 + i32.const 24708 + i32.const 24700 i32.store - i32.const 15248 - i32.const 15236 + i32.const 24720 + i32.const 24708 i32.store - i32.const 15244 - i32.const 15236 + i32.const 24716 + i32.const 24708 i32.store - i32.const 15256 - i32.const 15244 + i32.const 24728 + i32.const 24716 i32.store - i32.const 15252 - i32.const 15244 + i32.const 24724 + i32.const 24716 i32.store - i32.const 15264 - i32.const 15252 + i32.const 24736 + i32.const 24724 i32.store - i32.const 15260 - i32.const 15252 + i32.const 24732 + i32.const 24724 i32.store - i32.const 15272 - i32.const 15260 + i32.const 24744 + i32.const 24732 i32.store - i32.const 15268 - i32.const 15260 + i32.const 24740 + i32.const 24732 i32.store - i32.const 15280 - i32.const 15268 + i32.const 24752 + i32.const 24740 i32.store - i32.const 15276 - i32.const 15268 + i32.const 24748 + i32.const 24740 i32.store - i32.const 15288 - i32.const 15276 + i32.const 24760 + i32.const 24748 i32.store - i32.const 15284 - i32.const 15276 + i32.const 24756 + i32.const 24748 i32.store - i32.const 15296 - i32.const 15284 + i32.const 24768 + i32.const 24756 i32.store - i32.const 15292 - i32.const 15284 + i32.const 24764 + i32.const 24756 i32.store - i32.const 15304 - i32.const 15292 + i32.const 24776 + i32.const 24764 i32.store - i32.const 15300 - i32.const 15292 + i32.const 24772 + i32.const 24764 i32.store - i32.const 15312 - i32.const 15300 + i32.const 24784 + i32.const 24772 i32.store - i32.const 15308 - i32.const 15300 + i32.const 24780 + i32.const 24772 i32.store - i32.const 15320 - i32.const 15308 + i32.const 24792 + i32.const 24780 i32.store - i32.const 15316 - i32.const 15308 + i32.const 24788 + i32.const 24780 i32.store - i32.const 15328 - i32.const 15316 + i32.const 24800 + i32.const 24788 i32.store - i32.const 15324 - i32.const 15316 + i32.const 24796 + i32.const 24788 i32.store - i32.const 15336 - i32.const 15324 + i32.const 24808 + i32.const 24796 i32.store - i32.const 15332 - i32.const 15324 + i32.const 24804 + i32.const 24796 i32.store - i32.const 15344 - i32.const 15332 + i32.const 24816 + i32.const 24804 i32.store - i32.const 15340 - i32.const 15332 + i32.const 24812 + i32.const 24804 i32.store - i32.const 15352 - i32.const 15340 + i32.const 24824 + i32.const 24812 i32.store - i32.const 15348 - i32.const 15340 + i32.const 24820 + i32.const 24812 i32.store - i32.const 15360 - i32.const 15348 + i32.const 24832 + i32.const 24820 i32.store - i32.const 15356 - i32.const 15348 + i32.const 24828 + i32.const 24820 i32.store - i32.const 15368 - i32.const 15356 + i32.const 24840 + i32.const 24828 i32.store - i32.const 15364 - i32.const 15356 + i32.const 24836 + i32.const 24828 i32.store - i32.const 15376 - i32.const 15364 + i32.const 24848 + i32.const 24836 i32.store - i32.const 15372 - i32.const 15364 + i32.const 24844 + i32.const 24836 i32.store - i32.const 15384 - i32.const 15372 + i32.const 24856 + i32.const 24844 i32.store - i32.const 15380 - i32.const 15372 + i32.const 24852 + i32.const 24844 i32.store - i32.const 15392 - i32.const 15380 + i32.const 24864 + i32.const 24852 i32.store - i32.const 15388 - i32.const 15380 + i32.const 24860 + i32.const 24852 i32.store - i32.const 15400 - i32.const 15388 + i32.const 24872 + i32.const 24860 i32.store - i32.const 15396 - i32.const 15388 + i32.const 24868 + i32.const 24860 i32.store - i32.const 15408 - i32.const 15396 + i32.const 24880 + i32.const 24868 i32.store - i32.const 15404 - i32.const 15396 + i32.const 24876 + i32.const 24868 i32.store - i32.const 15416 - i32.const 15404 + i32.const 24888 + i32.const 24876 i32.store - i32.const 15412 - i32.const 15404 + i32.const 24884 + i32.const 24876 i32.store - i32.const 15424 - i32.const 15412 + i32.const 24896 + i32.const 24884 i32.store - i32.const 15420 - i32.const 15412 + i32.const 24892 + i32.const 24884 i32.store - i32.const 15148 + i32.const 24620 i32.const 0 local.get $0 i32.const 8 @@ -56835,7 +57896,7 @@ i32.add local.tee $4 i32.store - i32.const 15136 + i32.const 24608 local.get $3 i32.const -40 i32.add @@ -56854,18 +57915,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24624 + i32.const 25084 i32.load i32.store end ;; $if_99 - i32.const 15136 + i32.const 24608 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15136 + i32.const 24608 local.get $0 local.get $11 i32.sub @@ -56874,13 +57935,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15108 + i32.const 24580 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15148 - i32.const 15148 + i32.const 24620 + i32.const 24620 i32.load local.tee $0 local.get $11 @@ -56899,14 +57960,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $30 + global.set $32 i32.const 0 ) @@ -56938,7 +57999,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15140 + i32.const 24612 i32.load local.tee $11 i32.lt_u @@ -56997,7 +58058,7 @@ local.get $10 i32.add local.set $5 - i32.const 15144 + i32.const 24616 i32.load local.get $0 i32.eq @@ -57017,7 +58078,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15132 + i32.const 24604 local.get $5 i32.store local.get $7 @@ -57054,7 +58115,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.tee $4 i32.ne @@ -57077,8 +58138,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15124 - i32.const 15124 + i32.const 24596 + i32.const 24596 i32.load i32.const 1 local.get $2 @@ -57244,7 +58305,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.tee $6 i32.load @@ -57257,8 +58318,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15128 - i32.const 15128 + i32.const 24600 + i32.const 24600 i32.load i32.const 1 local.get $2 @@ -57275,7 +58336,7 @@ br $block end ;; $if_24 else - i32.const 15140 + i32.const 24612 i32.load local.get $13 i32.gt_u @@ -57308,7 +58369,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15140 + i32.const 24612 i32.load local.tee $6 local.get $8 @@ -57341,7 +58402,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.gt_u @@ -57411,19 +58472,19 @@ local.get $1 i32.store else - i32.const 15148 + i32.const 24620 i32.load local.get $7 i32.eq if $if_35 - i32.const 15136 - i32.const 15136 + i32.const 24608 + i32.const 24608 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15148 + i32.const 24620 local.get $3 i32.store local.get $3 @@ -57432,33 +58493,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15144 + i32.const 24616 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15144 + i32.const 24616 i32.const 0 i32.store - i32.const 15132 + i32.const 24604 i32.const 0 i32.store return end ;; $if_35 - i32.const 15144 + i32.const 24616 i32.load local.get $7 i32.eq if $if_37 - i32.const 15132 - i32.const 15132 + i32.const 24604 + i32.const 24604 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15144 + i32.const 24616 local.get $4 i32.store local.get $3 @@ -57497,12 +58558,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.gt_u @@ -57521,8 +58582,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15124 - i32.const 15124 + i32.const 24596 + i32.const 24596 i32.load i32.const 1 local.get $6 @@ -57542,7 +58603,7 @@ i32.add local.set $16 else - i32.const 15140 + i32.const 24612 i32.load local.get $1 i32.gt_u @@ -57625,7 +58686,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15140 + i32.const 24612 i32.load local.get $1 i32.gt_u @@ -57640,7 +58701,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15140 + i32.const 24612 i32.load local.get $7 i32.load offset=8 @@ -57680,7 +58741,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.tee $1 i32.load @@ -57693,8 +58754,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15128 - i32.const 15128 + i32.const 24600 + i32.const 24600 i32.load i32.const 1 local.get $0 @@ -57706,7 +58767,7 @@ br $block_2 end ;; $if_55 else - i32.const 15140 + i32.const 24612 i32.load local.get $8 i32.gt_u @@ -57732,7 +58793,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15140 + i32.const 24612 i32.load local.tee $1 local.get $9 @@ -57765,7 +58826,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15140 + i32.const 24612 i32.load local.get $0 i32.gt_u @@ -57793,12 +58854,12 @@ i32.add local.get $5 i32.store - i32.const 15144 + i32.const 24616 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15132 + i32.const 24604 local.get $5 i32.store return @@ -57818,10 +58879,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15164 + i32.const 24636 i32.add local.set $0 - i32.const 15124 + i32.const 24596 i32.load local.tee $1 i32.const 1 @@ -57830,7 +58891,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15140 + i32.const 24612 i32.load local.get $0 i32.const 8 @@ -57848,7 +58909,7 @@ local.set $15 end ;; $if_65 else - i32.const 15124 + i32.const 24596 local.get $1 local.get $4 i32.or @@ -57945,7 +59006,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15428 + i32.const 24900 i32.add local.set $0 local.get $3 @@ -57957,7 +59018,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24600 i32.load local.tee $5 i32.const 1 @@ -58029,7 +59090,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15140 + i32.const 24612 i32.load local.get $2 i32.gt_u @@ -58052,7 +59113,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15140 + i32.const 24612 i32.load local.tee $0 local.get $14 @@ -58084,7 +59145,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15128 + i32.const 24600 local.get $2 local.get $5 i32.or @@ -58102,8 +59163,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15156 - i32.const 15156 + i32.const 24628 + i32.const 24628 i32.load i32.const -1 i32.add @@ -58113,7 +59174,7 @@ if $if_74 return end ;; $if_74 - i32.const 15580 + i32.const 25052 local.set $0 loop $loop_2 local.get $0 @@ -58125,30 +59186,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15156 + i32.const 24628 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (func $_realloc (type $3) (param $0 i32) + (param $1 i32) (result i32) - i32.const 12946 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24580 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $1) + (func $_try_realloc_chunk (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -58158,542 +59285,2311 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24612 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25076 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24620 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24608 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24620 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24608 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24616 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24604 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop - block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load - local.get $4 - i32.add + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24604 + local.get $3 + i32.store + i32.const 24616 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24636 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24596 + i32.const 24596 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 + block $block_1 + local.get $4 + i32.const 16 + i32.add + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 - local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_6 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - local.get $4 - i32.const 12 - i32.add - local.tee $2 - local.tee $1 - if $if_7 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_7 - local.tee $1 - local.get $2 - i32.lt_u - if $if_8 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_9 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - local.get $4 - i32.const 16 - i32.add - local.tee $2 - local.tee $1 - if $if_10 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_10 - local.tee $1 - local.get $2 - i32.lt_u - if $if_11 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_12 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - local.get $4 - i32.const 18 - i32.add - local.tee $2 - local.tee $1 - if $if_13 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_13 - local.tee $1 - local.get $2 - i32.lt_u - if $if_14 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_15 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - local.get $4 - i32.const 22 - i32.add - local.tee $2 - local.tee $1 - if $if_16 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_16 - local.tee $1 - local.get $2 - i32.lt_u - if $if_17 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_18 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - local.get $4 - i32.const 28 - i32.add - local.tee $2 - local.tee $1 - if $if_19 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_19 - local.tee $1 - local.get $2 - i32.lt_u - if $if_20 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_21 (result i32) - i32.const 9 - local.set $1 - local.get $2 - else - block $block_5 (result i32) - local.get $4 - i32.const 30 - i32.add - local.tee $2 - local.tee $1 - if $if_22 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_22 - local.tee $1 - local.get $2 - i32.lt_u - if $if_23 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_23 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_24 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_24 - local.get $4 - i32.const 36 - i32.add - local.tee $2 - local.tee $1 - if $if_25 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_25 - local.tee $1 - local.get $2 - i32.lt_u - if $if_26 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_26 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_27 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_27 - local.get $4 - i32.const 40 - i32.add - local.tee $2 - local.tee $1 - if $if_28 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_28 - local.tee $1 - local.get $2 - i32.lt_u - if $if_29 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_29 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_30 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_30 - local.get $4 - i32.const 42 - i32.add - local.tee $2 - local.tee $1 - if $if_31 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_31 - local.tee $1 - local.get $2 - i32.lt_u - if $if_32 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_32 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_33 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_33 - local.get $4 - i32.const 46 - i32.add - local.tee $2 - local.tee $1 - if $if_34 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_34 - local.tee $1 - local.get $2 - i32.lt_u - if $if_35 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_35 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_36 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_36 - local.get $4 - i32.const 52 - i32.add - local.tee $2 - local.tee $1 - if $if_37 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_37 - local.tee $1 - local.get $2 - i32.lt_u - if $if_38 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_38 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_39 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_39 - local.get $4 - i32.const 58 - i32.add - local.tee $2 - local.tee $1 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24900 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24600 + i32.const 24600 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24612 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24612 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24612 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24612 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24616 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24604 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24636 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24596 + i32.const 24596 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 + local.set $4 + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24900 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24600 + i32.const 24600 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24612 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24612 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24612 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24612 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24620 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24608 + i32.const 24608 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24620 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24616 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24616 + i32.const 0 + i32.store + i32.const 24604 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24616 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24604 + i32.const 24604 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24616 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24636 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24596 + i32.const 24596 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 24900 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24600 + i32.const 24600 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24612 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24612 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24612 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24616 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24604 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24636 + i32.add + local.set $0 + i32.const 24596 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24612 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24596 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 24900 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24600 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24600 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24612 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24612 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (param $0 i32) + (result i32) + i32.const 16765 + ) + + (func $__ZNSt3__212__next_primeEm (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_6 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + local.get $4 + i32.const 12 + i32.add + local.tee $2 + local.tee $1 + if $if_7 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_7 + local.tee $1 + local.get $2 + i32.lt_u + if $if_8 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_9 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + local.get $4 + i32.const 16 + i32.add + local.tee $2 + local.tee $1 + if $if_10 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_10 + local.tee $1 + local.get $2 + i32.lt_u + if $if_11 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_12 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + local.get $4 + i32.const 18 + i32.add + local.tee $2 + local.tee $1 + if $if_13 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_13 + local.tee $1 + local.get $2 + i32.lt_u + if $if_14 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_15 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + local.get $4 + i32.const 22 + i32.add + local.tee $2 + local.tee $1 + if $if_16 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_16 + local.tee $1 + local.get $2 + i32.lt_u + if $if_17 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_18 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + local.get $4 + i32.const 28 + i32.add + local.tee $2 + local.tee $1 + if $if_19 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_19 + local.tee $1 + local.get $2 + i32.lt_u + if $if_20 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_21 (result i32) + i32.const 9 + local.set $1 + local.get $2 + else + block $block_5 (result i32) + local.get $4 + i32.const 30 + i32.add + local.tee $2 + local.tee $1 + if $if_22 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_22 + local.tee $1 + local.get $2 + i32.lt_u + if $if_23 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_23 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_24 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_24 + local.get $4 + i32.const 36 + i32.add + local.tee $2 + local.tee $1 + if $if_25 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_25 + local.tee $1 + local.get $2 + i32.lt_u + if $if_26 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_26 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_27 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_27 + local.get $4 + i32.const 40 + i32.add + local.tee $2 + local.tee $1 + if $if_28 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_28 + local.tee $1 + local.get $2 + i32.lt_u + if $if_29 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_29 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_30 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_30 + local.get $4 + i32.const 42 + i32.add + local.tee $2 + local.tee $1 + if $if_31 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_31 + local.tee $1 + local.get $2 + i32.lt_u + if $if_32 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_32 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_33 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_33 + local.get $4 + i32.const 46 + i32.add + local.tee $2 + local.tee $1 + if $if_34 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_34 + local.tee $1 + local.get $2 + i32.lt_u + if $if_35 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_35 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_36 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_36 + local.get $4 + i32.const 52 + i32.add + local.tee $2 + local.tee $1 + if $if_37 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_37 + local.tee $1 + local.get $2 + i32.lt_u + if $if_38 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_38 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_39 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_39 + local.get $4 + i32.const 58 + i32.add + local.tee $2 + local.tee $1 if $if_40 (result i32) local.get $3 local.get $1 @@ -59096,3496 +61992,28990 @@ local.set $1 local.get $2 br $block_5 - end ;; $if_75 + end ;; $if_75 + local.get $4 + i32.const 108 + i32.add + local.tee $2 + local.tee $1 + if $if_76 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_76 + local.tee $1 + local.get $2 + i32.lt_u + if $if_77 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_77 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_78 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_78 + local.get $4 + i32.const 112 + i32.add + local.tee $2 + local.tee $1 + if $if_79 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_79 + local.tee $1 + local.get $2 + i32.lt_u + if $if_80 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_80 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_81 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_81 + local.get $4 + i32.const 120 + i32.add + local.tee $2 + local.tee $1 + if $if_82 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_82 + local.tee $1 + local.get $2 + i32.lt_u + if $if_83 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_83 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_84 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_84 + local.get $4 + i32.const 126 + i32.add + local.tee $2 + local.tee $1 + if $if_85 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_85 + local.tee $1 + local.get $2 + i32.lt_u + if $if_86 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_86 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_87 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_87 + local.get $4 + i32.const 130 + i32.add + local.tee $2 + local.tee $1 + if $if_88 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_88 + local.tee $1 + local.get $2 + i32.lt_u + if $if_89 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_89 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_90 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_90 + local.get $4 + i32.const 136 + i32.add + local.tee $2 + local.tee $1 + if $if_91 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_91 + local.tee $1 + local.get $2 + i32.lt_u + if $if_92 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_92 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_93 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_93 + local.get $4 + i32.const 138 + i32.add + local.tee $2 + local.tee $1 + if $if_94 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_94 + local.tee $1 + local.get $2 + i32.lt_u + if $if_95 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_95 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_96 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_96 local.get $4 - i32.const 108 + i32.const 142 i32.add local.tee $2 local.tee $1 - if $if_76 (result i32) + if $if_97 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_76 + end ;; $if_97 local.tee $1 local.get $2 i32.lt_u - if $if_77 + if $if_98 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_77 + end ;; $if_98 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_78 + if $if_99 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_78 + end ;; $if_99 local.get $4 - i32.const 112 + i32.const 148 i32.add local.tee $2 local.tee $1 - if $if_79 (result i32) + if $if_100 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_79 + end ;; $if_100 local.tee $1 local.get $2 i32.lt_u - if $if_80 + if $if_101 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_80 + end ;; $if_101 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_81 + if $if_102 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_81 + end ;; $if_102 local.get $4 - i32.const 120 + i32.const 150 i32.add local.tee $2 local.tee $1 - if $if_82 (result i32) + if $if_103 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_82 + end ;; $if_103 local.tee $1 local.get $2 i32.lt_u - if $if_83 + if $if_104 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_83 + end ;; $if_104 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_84 + if $if_105 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_84 + end ;; $if_105 local.get $4 - i32.const 126 + i32.const 156 i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_106 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_106 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_107 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_107 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_108 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_108 local.get $4 - i32.const 130 + i32.const 162 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_109 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_109 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_110 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_110 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_111 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_111 local.get $4 - i32.const 136 + i32.const 166 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_112 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_112 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_113 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_113 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_114 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_114 local.get $4 - i32.const 138 + i32.const 168 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_115 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_115 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_116 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_116 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_117 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_117 local.get $4 - i32.const 142 + i32.const 172 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_118 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_118 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_119 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_119 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_120 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_120 local.get $4 - i32.const 148 + i32.const 178 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_123 local.get $4 - i32.const 150 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_104 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_104 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_105 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_105 + end ;; $if_126 local.get $4 - i32.const 156 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_106 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_106 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_107 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_107 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_108 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_108 + end ;; $if_129 local.get $4 - i32.const 162 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_109 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_109 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_110 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_110 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_111 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_111 + end ;; $if_132 local.get $4 - i32.const 166 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_112 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_112 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_113 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_113 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_114 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_114 + end ;; $if_135 local.get $4 - i32.const 168 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_115 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_115 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_116 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_116 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_117 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_117 + end ;; $if_138 local.get $4 - i32.const 172 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_118 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_118 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_119 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_119 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_120 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_120 + end ;; $if_141 local.get $4 - i32.const 178 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_121 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_121 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_122 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24424 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25120 + i32.const 25092 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24424 + i32.load + i32.eqz + if $if_0 + i32.const 24424 + i32.const 1 + i32.store + local.get $0 + i32.const 278 + call_indirect $28 (type $0) + i32.const 24424 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $1) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 14817 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 14817 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10812 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $5 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $5 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_2 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + i32.const 0 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_3 + local.get $5 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $5 + local.set $4 + local.get $3 + if $if_5 + local.get $1 + local.get $2 + i32.add + local.get $1 + local.get $4 + local.get $1 + i32.le_u + local.get $3 + local.get $5 + i32.add + local.get $1 + i32.gt_u + i32.and + select + local.set $1 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $3 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $4 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $6 + i32.const 0 + i32.store8 + local.get $1 + local.get $5 + i32.add + local.get $6 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 13986 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 13986 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEj (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 16834 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25168 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 16973 + i32.store + i32.const 16923 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5240 + local.get $0 + local.get $5 + i32.const 5240 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $2) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + local.get $4 + i32.const 16973 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 16837 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 16973 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 16882 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 16961 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7464 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5264 + i32.const 5248 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17152 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17160 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17174 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25168 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 17112 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22507 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17208 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17213 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17218 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17223 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17235 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17249 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17255 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17270 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17274 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17287 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17292 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17306 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 + i32.store + local.get $0 + i32.const 17316 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17325 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17343 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17349 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17361 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17372 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17376 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17386 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17397 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17407 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17417 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17426 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17435 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17440 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17455 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22208 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22211 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22220 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22223 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22226 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22229 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22232 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 21987 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 21862 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 20918 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 20921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 20928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 20931 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 20937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 20940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17435 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7820 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $4 + i32.const 17470 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7908 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17635 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17653 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17665 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17691 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17565 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17588 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17595 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17603 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17611 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7952 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17829 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7996 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 17846 + i32.const 17844 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8040 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 17913 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 17911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 17899 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8084 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8128 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8172 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 17844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + i32.store + local.get $8 + i32.const 17844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18558 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18561 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18563 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18563 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_139 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 + i32.add local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop + i32.const 0 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18573 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 17911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18577 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18580 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18585 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18593 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18596 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18606 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 17911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18609 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18612 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18612 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18615 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18618 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18623 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18625 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18628 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18637 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18640 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18643 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18655 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18655 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18664 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18664 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18673 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18128 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18136 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18140 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17223 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17249 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25190 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18144 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18146 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18148 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18151 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18154 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17316 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17325 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17152 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8216 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8260 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18210 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8304 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18271 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8348 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18330 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8392 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18395 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8436 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8480 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 20801 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 20804 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20654 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20657 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 17844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20660 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18558 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20663 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18561 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20666 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18573 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20669 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18577 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18580 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20675 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18585 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20681 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18593 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20690 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20693 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18596 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20696 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20699 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20702 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20705 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20708 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18606 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20711 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 17911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20714 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18609 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20717 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18615 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20720 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20723 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18623 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20726 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18625 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 20729 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 20732 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 20735 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18643 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 20738 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 20741 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 20744 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20442 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19581 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19585 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19169 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19172 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19175 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8524 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18679 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8568 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8612 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 18830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8656 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8700 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 18892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8744 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17372 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19018 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8788 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $5 + i32.const 19030 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $6 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19077 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8832 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19100 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19158 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8876 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19178 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19190 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19194 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8920 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8964 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19288 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19294 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9008 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19294 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19408 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9052 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9096 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19474 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19532 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9140 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19647 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9184 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19588 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19653 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19664 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19674 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19685 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19695 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19706 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19716 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19726 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19744 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19754 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19764 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19775 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19785 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19796 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19807 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19818 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19828 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19839 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19850 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19861 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19873 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19893 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19744 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19904 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19915 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19926 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19941 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19952 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19962 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19975 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19986 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19996 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20007 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20019 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20029 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20040 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20019 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20051 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20062 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20072 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20082 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20093 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9228 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20128 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9272 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20208 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9316 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9360 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19588 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20371 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9404 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19588 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20384 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20391 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9448 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9492 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20543 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9536 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9580 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20601 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20604 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9624 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 20747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 20752 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9668 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20801 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9712 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9756 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21008 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21326 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21266 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21004 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21008 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21070 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9800 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21011 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21131 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21134 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21137 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9844 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9888 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21140 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21148 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9932 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21203 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21212 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17635 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21422 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21543 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21593 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17565 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21379 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21393 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21407 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10152 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21755 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 21815 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21865 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $30 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10284 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 21921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 21997 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22004 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18128 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) (local $4 i32) (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10328 + i32.store + local.get $0 local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 i32.load - local.set $4 + i32.load offset=16 + local.set $3 + local.get $2 local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if + local.get $4 + i32.const 22033 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) - loop $loop - i32.const 14952 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 15648 - i32.const 15620 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 14952 + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load - i32.eqz - if $if_0 - i32.const 14952 - i32.const 1 - i32.store - local.get $0 - i32.const 165 - call_indirect $26 (type $0) - i32.const 14952 - i32.const -1 - i32.store - end ;; $if_0 + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__Znwm (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 local.get $0 i32.const 1 + i32.store8 offset=5 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 15704 - i32.const 15704 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10372 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 10996 - call $_strlen - local.tee $2 - i32.const 13 + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__Znwm - local.tee $1 + global.set $32 local.get $2 - i32.store - local.get $1 + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.store offset=4 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 0 - i32.store offset=8 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 12 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 i32.add - local.tee $1 - i32.const 10996 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10416 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $_memcpy - drop + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 - i32.const 6772 - i32.store + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7864 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 local.get $0 i32.const 0 - i32.store offset=8 - local.get $1 - i32.load8_s offset=11 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store8 offset=7 + local.get $0 + i32.const 10460 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $32 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 local.get $0 local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) - (param $0 i32) - (param $1 i32) - (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $30 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22033 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 + i32.load offset=20 + local.set $4 end ;; $if - local.tee $5 - local.get $2 - i32.lt_u + local.get $4 + i32.const 2 + i32.and if $if_0 - local.get $0 - local.get $5 + local.get $7 + i32.const 22040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 - local.get $4 - global.set $30 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10504 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub + global.set $32 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22291 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $0 - local.get $2 + i32.const 7864 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 16 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10548 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u + global.get $32 local.set $2 - i32.const 10 - local.get $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 + local.set $3 + local.get $2 + i32.const 8 i32.add + local.tee $4 + i32.const 22355 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - select - local.tee $7 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - global.set $30 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10592 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + i32.load + local.set $1 local.get $3 + local.get $2 + i64.load align=4 + i64.store local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10636 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20604 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22636 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) local.get $0 - local.get $1 - i32.store offset=4 - else + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $4) (param $0 i32) (param $1 i32) - (result i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if + i32.const 332 + i32.add local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 - local.get $3 - i32.sub + local.tee $2 + i32.load offset=4 local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) - local.get $0 - i32.load - else + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 local.get $4 - local.get $1 - i32.le_u + i32.ge_u + br_if $block_0 local.get $3 - local.get $5 + i32.load + local.get $0 + i32.const 2 + i32.shl i32.add - local.get $1 - i32.gt_u - i32.and - select - local.set $1 + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 - i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 10165 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $30 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7864 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10165 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEj (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 10680 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 17840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13015 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13154 - i32.store - i32.const 13104 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5264 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5264 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $2) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.set $0 - local.get $1 - i32.const 13154 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13018 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13154 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13063 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) end ;; $if - i32.const 13142 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 15696 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 15696 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13293 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22033 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 15700 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10724 i32.store - i32.const 6408 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5288 - i32.const 5272 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $1) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22670 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22715 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22737 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22755 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22796 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22821 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 15700 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13342 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22930 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22944 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 15700 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13392 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22953 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6772 + i32.const 10812 i32.store local.get $0 i32.const 4 @@ -62617,9 +91007,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -62634,7 +91022,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62648,10 +91037,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62661,20 +91053,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -62691,72 +91083,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -62770,10 +91232,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -62795,7 +91258,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -62935,145 +91400,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -63085,10 +91555,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -63153,20 +91624,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -63188,9 +91663,9 @@ local.get $6 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -63242,9 +91717,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -63294,9 +91769,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $2) @@ -63306,12 +91781,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -63326,9 +91801,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.tee $0 if $if local.get $2 @@ -63337,7 +91812,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -63349,8 +91824,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5288 - i32.const 5376 + i32.const 5264 + i32.const 6432 call $___dynamic_cast i32.const 0 i32.ne @@ -63812,7 +92287,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -63850,7 +92325,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -63864,10 +92339,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -63887,7 +92362,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $2) @@ -63898,11 +92373,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_iiii (type $16) @@ -63917,9 +92392,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_vi (type $4) @@ -63927,11 +92402,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $6) @@ -63941,11 +92416,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $dynCall_viii (type $5) @@ -63959,9 +92434,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $dynCall_viiii (type $7) @@ -63977,9 +92452,9 @@ local.get $0 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $dynCall_viiiii (type $13) @@ -63997,12 +92472,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64019,9 +92494,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $1) @@ -64155,9 +92630,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -64187,9 +92662,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -64214,9 +92689,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\c0\84\c1\02\a0\84\01\b0\84\01" + ;; "\00\02\00\04\00\80\02\b7\03\80\08\c0\ce\c1\02\a0\ce\01\b0\ce\01" ) \ No newline at end of file diff --git a/test/extensions/clusters/redis/BUILD b/test/extensions/clusters/redis/BUILD index b990f1df93fef..25495a9d7d956 100644 --- a/test/extensions/clusters/redis/BUILD +++ b/test/extensions/clusters/redis/BUILD @@ -49,6 +49,7 @@ envoy_extension_cc_test( srcs = ["redis_cluster_lb_test.cc"], extension_name = "envoy.clusters.redis", deps = [ + "//include/envoy/upstream:cluster_manager_interface", "//source/common/event:dispatcher_lib", "//source/common/network:utility_lib", "//source/common/upstream:cluster_factory_lib", @@ -56,6 +57,9 @@ envoy_extension_cc_test( "//source/common/upstream:upstream_lib", "//source/extensions/clusters/redis:redis_cluster", "//source/extensions/clusters/redis:redis_cluster_lb", + "//source/extensions/filters/network/common/redis:client_interface", + "//source/extensions/filters/network/common/redis:codec_lib", + "//source/extensions/filters/network/common/redis:supported_commands_lib", "//source/extensions/transport_sockets/raw_buffer:config", "//source/server:transport_socket_config_lib", "//test/common/upstream:utility_lib", diff --git a/test/extensions/clusters/redis/mocks.cc b/test/extensions/clusters/redis/mocks.cc index e10eb27053333..b66ddd7c05050 100644 --- a/test/extensions/clusters/redis/mocks.cc +++ b/test/extensions/clusters/redis/mocks.cc @@ -12,13 +12,7 @@ namespace Clusters { namespace Redis { MockClusterSlotUpdateCallBack::MockClusterSlotUpdateCallBack() { - ON_CALL(*this, onClusterSlotUpdate(_, _)) - .WillByDefault( - Invoke([&](const std::vector& slots, Upstream::HostMap all_hosts) -> bool { - EXPECT_FALSE(slots.empty()); - EXPECT_FALSE(all_hosts.empty()); - return true; - })); + ON_CALL(*this, onClusterSlotUpdate(_, _)).WillByDefault(Return(true)); } } // namespace Redis diff --git a/test/extensions/clusters/redis/mocks.h b/test/extensions/clusters/redis/mocks.h index 7269548b1b2cd..c9cdb9841aa95 100644 --- a/test/extensions/clusters/redis/mocks.h +++ b/test/extensions/clusters/redis/mocks.h @@ -17,7 +17,8 @@ class MockClusterSlotUpdateCallBack : public ClusterSlotUpdateCallBack { MockClusterSlotUpdateCallBack(); ~MockClusterSlotUpdateCallBack() override = default; - MOCK_METHOD2(onClusterSlotUpdate, bool(const std::vector&, Upstream::HostMap)); + MOCK_METHOD2(onClusterSlotUpdate, bool(ClusterSlotsPtr&&, Upstream::HostMap)); + MOCK_METHOD0(onHostHealthUpdate, void()); }; } // namespace Redis diff --git a/test/extensions/clusters/redis/redis_cluster_integration_test.cc b/test/extensions/clusters/redis/redis_cluster_integration_test.cc index 077dc3c9d92e9..91aecc412a3da 100644 --- a/test/extensions/clusters/redis/redis_cluster_integration_test.cc +++ b/test/extensions/clusters/redis/redis_cluster_integration_test.cc @@ -217,13 +217,13 @@ class RedisClusterIntegrationTest : public testing::TestWithParamaddressAsString(), master->port()) - << makeIp(slave->addressAsString(), slave->port()); + << makeIp(replica->addressAsString(), replica->port()); return resp.str(); } @@ -286,16 +286,16 @@ INSTANTIATE_TEST_SUITE_P(IpVersions, RedisClusterWithAuthIntegrationTest, // This test sends a simple "get foo" command from a fake // downstream client through the proxy to a fake upstream -// Redis cluster with a single slot with master and slave. +// Redis cluster with a single slot with master and replica. // The fake server sends a valid response back to the client. // The request and response should make it through the envoy // proxy server code unchanged. -TEST_P(RedisClusterIntegrationTest, SingleSlotMasterSlave) { +TEST_P(RedisClusterIntegrationTest, SingleSlotMasterReplica) { random_index_ = 0; on_server_init_function_ = [this]() { - std::string cluster_slot_response = singleSlotMasterSlave( + std::string cluster_slot_response = singleSlotMasterReplica( fake_upstreams_[0]->localAddress()->ip(), fake_upstreams_[1]->localAddress()->ip()); expectCallClusterSlot(random_index_, cluster_slot_response); }; @@ -333,7 +333,7 @@ TEST_P(RedisClusterIntegrationTest, TwoSlot) { // This test sends a simple "get foo" command from a fake // downstream client through the proxy to a fake upstream -// Redis cluster with a single slot with master and slave. +// Redis cluster with a single slot with master and replica. // The fake server sends a valid response back to the client. // The request and response should make it through the envoy // proxy server code unchanged. @@ -343,11 +343,11 @@ TEST_P(RedisClusterIntegrationTest, TwoSlot) { // "cluster slots" command), and one to authenticate the connection // that carries the "get foo" request. -TEST_P(RedisClusterWithAuthIntegrationTest, SingleSlotMasterSlave) { +TEST_P(RedisClusterWithAuthIntegrationTest, SingleSlotMasterReplica) { random_index_ = 0; on_server_init_function_ = [this]() { - std::string cluster_slot_response = singleSlotMasterSlave( + std::string cluster_slot_response = singleSlotMasterReplica( fake_upstreams_[0]->localAddress()->ip(), fake_upstreams_[1]->localAddress()->ip()); expectCallClusterSlot(0, cluster_slot_response, "somepassword"); }; diff --git a/test/extensions/clusters/redis/redis_cluster_lb_test.cc b/test/extensions/clusters/redis/redis_cluster_lb_test.cc index 5fe696a10491b..dedcf8e51ec8e 100644 --- a/test/extensions/clusters/redis/redis_cluster_lb_test.cc +++ b/test/extensions/clusters/redis/redis_cluster_lb_test.cc @@ -2,24 +2,38 @@ #include "source/extensions/clusters/redis/redis_cluster_lb.h" +#include "extensions/filters/network/common/redis/client.h" + #include "test/common/upstream/utility.h" #include "test/mocks/upstream/mocks.h" +using testing::Return; + namespace Envoy { namespace Extensions { namespace Clusters { namespace Redis { -class TestLoadBalancerContext : public Upstream::LoadBalancerContextBase { +class TestLoadBalancerContext : public RedisLoadBalancerContext, + public Upstream::LoadBalancerContextBase { public: - TestLoadBalancerContext(uint64_t hash_key) : hash_key_(hash_key) {} + TestLoadBalancerContext(uint64_t hash_key, bool is_read, + NetworkFilters::Common::Redis::Client::ReadPolicy read_policy) + : hash_key_(hash_key), is_read_(is_read), read_policy_(read_policy) {} TestLoadBalancerContext(absl::optional hash) : hash_key_(hash) {} // Upstream::LoadBalancerContext absl::optional computeHashKey() override { return hash_key_; } + bool isReadCommand() const override { return is_read_; }; + NetworkFilters::Common::Redis::Client::ReadPolicy readPolicy() const override { + return read_policy_; + }; + absl::optional hash_key_; + bool is_read_; + NetworkFilters::Common::Redis::Client::ReadPolicy read_policy_; }; class RedisClusterLoadBalancerTest : public testing::Test { @@ -27,28 +41,44 @@ class RedisClusterLoadBalancerTest : public testing::Test { RedisClusterLoadBalancerTest() = default; void init() { - factory_ = std::make_shared(); + factory_ = std::make_shared(random_); lb_ = std::make_unique(factory_); lb_->initialize(); } void validateAssignment(Upstream::HostVector& hosts, - const std::vector> expected_assignments) { + const std::vector>& expected_assignments, + bool read_command = false, + NetworkFilters::Common::Redis::Client::ReadPolicy read_policy = + NetworkFilters::Common::Redis::Client::ReadPolicy::Master) { Upstream::LoadBalancerPtr lb = lb_->factory()->create(); for (auto& assignment : expected_assignments) { - TestLoadBalancerContext context(assignment.first); - EXPECT_EQ(hosts[assignment.second]->address()->asString(), - lb->chooseHost(&context)->address()->asString()); + TestLoadBalancerContext context(assignment.first, read_command, read_policy); + auto host = lb->chooseHost(&context); + EXPECT_FALSE(host == nullptr); + EXPECT_EQ(hosts[assignment.second]->address()->asString(), host->address()->asString()); } } + static std::pair makePair(Upstream::HostSharedPtr host) { + return std::make_pair(host->address()->asString(), std::move(host)); + } + + Upstream::HostMap generateHostMap(Upstream::HostVector& hosts) { + Upstream::HostMap map; + std::transform(hosts.begin(), hosts.end(), std::inserter(map, map.end()), makePair); + return map; + } + std::shared_ptr factory_; - SlotArraySharedPtr slot_array_; std::unique_ptr lb_; std::shared_ptr info_{new NiceMock()}; + NiceMock random_; }; +class RedisLoadBalancerContextImplTest : public testing::Test {}; + // Works correctly without any hosts. TEST_F(RedisClusterLoadBalancerTest, NoHost) { init(); @@ -61,18 +91,18 @@ TEST_F(RedisClusterLoadBalancerTest, NoHash) { Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), Upstream::makeTestHost(info_, "tcp://127.0.0.1:92")}; - const std::vector slots{ + ClusterSlotsPtr slots = std::make_unique>(std::vector{ ClusterSlot(0, 1000, hosts[0]->address()), ClusterSlot(1001, 2000, hosts[1]->address()), ClusterSlot(2001, 16383, hosts[2]->address()), - }; + }); Upstream::HostMap all_hosts{ {hosts[0]->address()->asString(), hosts[0]}, {hosts[1]->address()->asString(), hosts[1]}, {hosts[2]->address()->asString(), hosts[2]}, }; init(); - factory_->onClusterSlotUpdate(slots, all_hosts); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); TestLoadBalancerContext context(absl::nullopt); EXPECT_EQ(nullptr, lb_->factory()->create()->chooseHost(&context)); }; @@ -82,18 +112,18 @@ TEST_F(RedisClusterLoadBalancerTest, Basic) { Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), Upstream::makeTestHost(info_, "tcp://127.0.0.1:92")}; - const std::vector slots{ + ClusterSlotsPtr slots = std::make_unique>(std::vector{ ClusterSlot(0, 1000, hosts[0]->address()), ClusterSlot(1001, 2000, hosts[1]->address()), ClusterSlot(2001, 16383, hosts[2]->address()), - }; + }); Upstream::HostMap all_hosts{ {hosts[0]->address()->asString(), hosts[0]}, {hosts[1]->address()->asString(), hosts[1]}, {hosts[2]->address()->asString(), hosts[2]}, }; init(); - factory_->onClusterSlotUpdate(slots, all_hosts); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); // A list of (hash: host_index) pair const std::vector> expected_assignments = { @@ -102,15 +132,183 @@ TEST_F(RedisClusterLoadBalancerTest, Basic) { validateAssignment(hosts, expected_assignments); } +TEST_F(RedisClusterLoadBalancerTest, ReadStrategiesHealthy) { + Upstream::HostVector hosts{ + Upstream::makeTestHost(info_, "tcp://127.0.0.1:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:91"), + }; + + ClusterSlotsPtr slots = std::make_unique>(std::vector{ + ClusterSlot(0, 2000, hosts[0]->address()), + ClusterSlot(2001, 16383, hosts[1]->address()), + }); + slots->at(0).addReplica(hosts[2]->address()); + slots->at(1).addReplica(hosts[3]->address()); + Upstream::HostMap all_hosts; + std::transform(hosts.begin(), hosts.end(), std::inserter(all_hosts, all_hosts.end()), makePair); + init(); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); + + // A list of (hash: host_index) pair + const std::vector> replica_assignments = { + {0, 2}, {1100, 2}, {2000, 2}, {18382, 2}, {2001, 3}, {2100, 3}, {16383, 3}, {19382, 3}}; + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Replica); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferReplica); + + const std::vector> master_assignments = { + {0, 0}, {1100, 0}, {2000, 0}, {18382, 0}, {2001, 1}, {2100, 1}, {16383, 1}, {19382, 1}}; + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferMaster); + + ON_CALL(random_, random()).WillByDefault(Return(0)); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); + ON_CALL(random_, random()).WillByDefault(Return(1)); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); +} + +TEST_F(RedisClusterLoadBalancerTest, ReadStrategiesUnhealthyMaster) { + Upstream::HostVector hosts{ + Upstream::makeTestHost(info_, "tcp://127.0.0.1:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:91"), + }; + + ClusterSlotsPtr slots = std::make_unique>(std::vector{ + ClusterSlot(0, 2000, hosts[0]->address()), + ClusterSlot(2001, 16383, hosts[1]->address()), + }); + slots->at(0).addReplica(hosts[2]->address()); + slots->at(1).addReplica(hosts[3]->address()); + Upstream::HostMap all_hosts; + std::transform(hosts.begin(), hosts.end(), std::inserter(all_hosts, all_hosts.end()), makePair); + init(); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); + + hosts[0]->healthFlagSet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + hosts[1]->healthFlagSet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + + factory_->onHostHealthUpdate(); + + // A list of (hash: host_index) pair + const std::vector> replica_assignments = { + {0, 2}, {1100, 2}, {2000, 2}, {18382, 2}, {2001, 3}, {2100, 3}, {16383, 3}, {19382, 3}}; + const std::vector> master_assignments = { + {0, 0}, {1100, 0}, {2000, 0}, {18382, 0}, {2001, 1}, {2100, 1}, {16383, 1}, {19382, 1}}; + + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Replica); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferReplica); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferMaster); + + ON_CALL(random_, random()).WillByDefault(Return(0)); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); + ON_CALL(random_, random()).WillByDefault(Return(1)); + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); +} + +TEST_F(RedisClusterLoadBalancerTest, ReadStrategiesUnhealthyReplica) { + Upstream::HostVector hosts{ + Upstream::makeTestHost(info_, "tcp://127.0.0.1:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.2:91"), + }; + + ClusterSlotsPtr slots = std::make_unique>(std::vector{ + ClusterSlot(0, 2000, hosts[0]->address()), + ClusterSlot(2001, 16383, hosts[1]->address()), + }); + slots->at(0).addReplica(hosts[2]->address()); + slots->at(1).addReplica(hosts[3]->address()); + Upstream::HostMap all_hosts; + std::transform(hosts.begin(), hosts.end(), std::inserter(all_hosts, all_hosts.end()), makePair); + init(); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); + + hosts[2]->healthFlagSet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + hosts[3]->healthFlagSet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + + factory_->onHostHealthUpdate(); + + // A list of (hash: host_index) pair + const std::vector> replica_assignments = { + {0, 2}, {1100, 2}, {2000, 2}, {18382, 2}, {2001, 3}, {2100, 3}, {16383, 3}, {19382, 3}}; + const std::vector> master_assignments = { + {0, 0}, {1100, 0}, {2000, 0}, {18382, 0}, {2001, 1}, {2100, 1}, {16383, 1}, {19382, 1}}; + + validateAssignment(hosts, replica_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Replica); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferReplica); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferMaster); + + ON_CALL(random_, random()).WillByDefault(Return(0)); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); + ON_CALL(random_, random()).WillByDefault(Return(1)); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); +} + +TEST_F(RedisClusterLoadBalancerTest, ReadStrategiesNoReplica) { + Upstream::HostVector hosts{Upstream::makeTestHost(info_, "tcp://127.0.0.1:90"), + Upstream::makeTestHost(info_, "tcp://127.0.0.1:91")}; + + ClusterSlotsPtr slots = std::make_unique>(std::vector{ + ClusterSlot(0, 2000, hosts[0]->address()), + ClusterSlot(2001, 16383, hosts[1]->address()), + }); + Upstream::HostMap all_hosts; + std::transform(hosts.begin(), hosts.end(), std::inserter(all_hosts, all_hosts.end()), makePair); + init(); + factory_->onClusterSlotUpdate(std::move(slots), all_hosts); + + // A list of (hash: host_index) pair + const std::vector> master_assignments = { + {0, 0}, {1100, 0}, {2000, 0}, {18382, 0}, {2001, 1}, {2100, 1}, {16383, 1}, {19382, 1}}; + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferMaster); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Any); + validateAssignment(hosts, master_assignments, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::PreferReplica); + + Upstream::LoadBalancerPtr lb = lb_->factory()->create(); + TestLoadBalancerContext context(1100, true, + NetworkFilters::Common::Redis::Client::ReadPolicy::Replica); + auto host = lb->chooseHost(&context); + EXPECT_TRUE(host == nullptr); +} + TEST_F(RedisClusterLoadBalancerTest, ClusterSlotUpdate) { Upstream::HostVector hosts{Upstream::makeTestHost(info_, "tcp://127.0.0.1:90"), Upstream::makeTestHost(info_, "tcp://127.0.0.1:91")}; - const std::vector slots{ClusterSlot(0, 1000, hosts[0]->address()), - ClusterSlot(1001, 16383, hosts[1]->address())}; + ClusterSlotsPtr slots = std::make_unique>(std::vector{ + ClusterSlot(0, 1000, hosts[0]->address()), ClusterSlot(1001, 16383, hosts[1]->address())}); Upstream::HostMap all_hosts{{hosts[0]->address()->asString(), hosts[0]}, {hosts[1]->address()->asString(), hosts[1]}}; init(); - EXPECT_EQ(true, factory_->onClusterSlotUpdate(slots, all_hosts)); + EXPECT_EQ(true, factory_->onClusterSlotUpdate(std::move(slots), all_hosts)); // A list of initial (hash: host_index) pair const std::vector> original_assignments = { @@ -124,7 +322,8 @@ TEST_F(RedisClusterLoadBalancerTest, ClusterSlotUpdate) { ClusterSlot(1001, 2000, hosts[1]->address()), ClusterSlot(2001, 16383, hosts[0]->address()), }; - EXPECT_EQ(true, factory_->onClusterSlotUpdate(updated_slot, all_hosts)); + EXPECT_EQ(true, factory_->onClusterSlotUpdate( + std::make_unique>(updated_slot), all_hosts)); // A list of updated (hash: host_index) pair. const std::vector> updated_assignments = { @@ -137,11 +336,11 @@ TEST_F(RedisClusterLoadBalancerTest, ClusterSlotNoUpdate) { Upstream::makeTestHost(info_, "tcp://127.0.0.1:91"), Upstream::makeTestHost(info_, "tcp://127.0.0.1:92")}; - const std::vector slots{ + ClusterSlotsPtr slots = std::make_unique>(std::vector{ ClusterSlot(0, 1000, hosts[0]->address()), ClusterSlot(1001, 2000, hosts[1]->address()), ClusterSlot(2001, 16383, hosts[2]->address()), - }; + }); Upstream::HostMap all_hosts{ {hosts[0]->address()->asString(), hosts[0]}, {hosts[1]->address()->asString(), hosts[1]}, @@ -153,7 +352,7 @@ TEST_F(RedisClusterLoadBalancerTest, ClusterSlotNoUpdate) { {100, 0}, {1100, 1}, {2100, 2}}; init(); - EXPECT_EQ(true, factory_->onClusterSlotUpdate(slots, all_hosts)); + EXPECT_EQ(true, factory_->onClusterSlotUpdate(std::move(slots), all_hosts)); validateAssignment(hosts, expected_assignments); // Calling cluster slot update without change should not change assignment. @@ -162,10 +361,67 @@ TEST_F(RedisClusterLoadBalancerTest, ClusterSlotNoUpdate) { ClusterSlot(1001, 2000, hosts[1]->address()), ClusterSlot(2001, 16383, hosts[2]->address()), }; - EXPECT_EQ(false, factory_->onClusterSlotUpdate(updated_slot, all_hosts)); + EXPECT_EQ(false, factory_->onClusterSlotUpdate( + std::make_unique>(updated_slot), all_hosts)); validateAssignment(hosts, expected_assignments); } +TEST_F(RedisLoadBalancerContextImplTest, Basic) { + // Simple read command + std::vector get_foo(2); + get_foo[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + get_foo[0].asString() = "get"; + get_foo[1].type(NetworkFilters::Common::Redis::RespType::BulkString); + get_foo[1].asString() = "foo"; + + NetworkFilters::Common::Redis::RespValue get_request; + get_request.type(NetworkFilters::Common::Redis::RespType::Array); + get_request.asArray().swap(get_foo); + + RedisLoadBalancerContextImpl context1("foo", true, true, get_request, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + + EXPECT_EQ(absl::optional(44950), context1.computeHashKey()); + EXPECT_EQ(true, context1.isReadCommand()); + EXPECT_EQ(NetworkFilters::Common::Redis::Client::ReadPolicy::Master, context1.readPolicy()); + + // Simple write command + std::vector set_foo(3); + set_foo[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + set_foo[0].asString() = "set"; + set_foo[1].type(NetworkFilters::Common::Redis::RespType::BulkString); + set_foo[1].asString() = "foo"; + set_foo[2].type(NetworkFilters::Common::Redis::RespType::BulkString); + set_foo[2].asString() = "bar"; + + NetworkFilters::Common::Redis::RespValue set_request; + set_request.type(NetworkFilters::Common::Redis::RespType::Array); + set_request.asArray().swap(set_foo); + + RedisLoadBalancerContextImpl context2("foo", true, true, set_request, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + + EXPECT_EQ(absl::optional(44950), context2.computeHashKey()); + EXPECT_EQ(false, context2.isReadCommand()); + EXPECT_EQ(NetworkFilters::Common::Redis::Client::ReadPolicy::Master, context2.readPolicy()); +} + +TEST_F(RedisLoadBalancerContextImplTest, UnsupportedCommand) { + std::vector unknown(1); + unknown[0].type(NetworkFilters::Common::Redis::RespType::Integer); + unknown[0].asInteger() = 1; + NetworkFilters::Common::Redis::RespValue unknown_request; + unknown_request.type(NetworkFilters::Common::Redis::RespType::Array); + unknown_request.asArray().swap(unknown); + + RedisLoadBalancerContextImpl context3("foo", true, true, unknown_request, + NetworkFilters::Common::Redis::Client::ReadPolicy::Master); + + EXPECT_EQ(absl::optional(44950), context3.computeHashKey()); + EXPECT_EQ(false, context3.isReadCommand()); + EXPECT_EQ(NetworkFilters::Common::Redis::Client::ReadPolicy::Master, context3.readPolicy()); +} + } // namespace Redis } // namespace Clusters } // namespace Extensions diff --git a/test/extensions/clusters/redis/redis_cluster_test.cc b/test/extensions/clusters/redis/redis_cluster_test.cc index 4d60412503ff2..7d6a4967cc8ab 100644 --- a/test/extensions/clusters/redis/redis_cluster_test.cc +++ b/test/extensions/clusters/redis/redis_cluster_test.cc @@ -177,19 +177,20 @@ class RedisClusterTest : public testing::Test, pool_callbacks_->onFailure(); } - NetworkFilters::Common::Redis::RespValuePtr - singleSlotMasterSlave(const std::string& master, const std::string& slave, int64_t port) const { + NetworkFilters::Common::Redis::RespValuePtr singleSlotMasterReplica(const std::string& master, + const std::string& replica, + int64_t port) const { std::vector master_1(2); master_1[0].type(NetworkFilters::Common::Redis::RespType::BulkString); master_1[0].asString() = master; master_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); master_1[1].asInteger() = port; - std::vector slave_1(2); - slave_1[0].type(NetworkFilters::Common::Redis::RespType::BulkString); - slave_1[0].asString() = slave; - slave_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); - slave_1[1].asInteger() = port; + std::vector replica_1(2); + replica_1[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + replica_1[0].asString() = replica; + replica_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); + replica_1[1].asInteger() = port; std::vector slot_1(4); slot_1[0].type(NetworkFilters::Common::Redis::RespType::Integer); @@ -199,7 +200,7 @@ class RedisClusterTest : public testing::Test, slot_1[2].type(NetworkFilters::Common::Redis::RespType::Array); slot_1[2].asArray().swap(master_1); slot_1[3].type(NetworkFilters::Common::Redis::RespType::Array); - slot_1[3].asArray().swap(slave_1); + slot_1[3].asArray().swap(replica_1); std::vector slots(1); slots[0].type(NetworkFilters::Common::Redis::RespType::Array); @@ -254,6 +255,64 @@ class RedisClusterTest : public testing::Test, return response; } + NetworkFilters::Common::Redis::RespValuePtr twoSlotsMastersWithReplica() const { + std::vector master_1(2); + master_1[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + master_1[0].asString() = "127.0.0.1"; + master_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); + master_1[1].asInteger() = 22120; + + std::vector master_2(2); + master_2[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + master_2[0].asString() = "127.0.0.2"; + master_2[1].type(NetworkFilters::Common::Redis::RespType::Integer); + master_2[1].asInteger() = 22120; + + std::vector replica_1(2); + replica_1[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + replica_1[0].asString() = "127.0.0.3"; + replica_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); + replica_1[1].asInteger() = 22120; + + std::vector replica_2(2); + replica_2[0].type(NetworkFilters::Common::Redis::RespType::BulkString); + replica_2[0].asString() = "127.0.0.4"; + replica_2[1].type(NetworkFilters::Common::Redis::RespType::Integer); + replica_2[1].asInteger() = 22120; + + std::vector slot_1(4); + slot_1[0].type(NetworkFilters::Common::Redis::RespType::Integer); + slot_1[0].asInteger() = 0; + slot_1[1].type(NetworkFilters::Common::Redis::RespType::Integer); + slot_1[1].asInteger() = 9999; + slot_1[2].type(NetworkFilters::Common::Redis::RespType::Array); + slot_1[2].asArray().swap(master_1); + slot_1[3].type(NetworkFilters::Common::Redis::RespType::Array); + slot_1[3].asArray().swap(replica_1); + + std::vector slot_2(4); + slot_2[0].type(NetworkFilters::Common::Redis::RespType::Integer); + slot_2[0].asInteger() = 10000; + slot_2[1].type(NetworkFilters::Common::Redis::RespType::Integer); + slot_2[1].asInteger() = 16383; + slot_2[2].type(NetworkFilters::Common::Redis::RespType::Array); + slot_2[2].asArray().swap(master_2); + slot_2[3].type(NetworkFilters::Common::Redis::RespType::Array); + slot_2[3].asArray().swap(replica_2); + + std::vector slots(2); + slots[0].type(NetworkFilters::Common::Redis::RespType::Array); + slots[0].asArray().swap(slot_1); + slots[1].type(NetworkFilters::Common::Redis::RespType::Array); + slots[1].asArray().swap(slot_2); + + NetworkFilters::Common::Redis::RespValuePtr response( + new NetworkFilters::Common::Redis::RespValue()); + response->type(NetworkFilters::Common::Redis::RespType::Array); + response->asArray().swap(slots); + return response; + } + NetworkFilters::Common::Redis::RespValue createStringField(bool is_correct_type, const std::string& correct_value) const { NetworkFilters::Common::Redis::RespValue respValue; @@ -296,7 +355,8 @@ class RedisClusterTest : public testing::Test, // Create a redis cluster slot response. If a bit is set in the bitset, then that part of // of the response is correct, otherwise it's incorrect. - NetworkFilters::Common::Redis::RespValuePtr createResponse(std::bitset<10> flags) const { + NetworkFilters::Common::Redis::RespValuePtr createResponse(std::bitset<10> flags, + std::bitset<3> replica_flags) const { int64_t idx(0); int64_t slots_type = idx++; int64_t slots_size = idx++; @@ -308,6 +368,10 @@ class RedisClusterTest : public testing::Test, int64_t master_size = idx++; int64_t master_ip_type = idx++; int64_t master_port_type = idx++; + idx = 0; + int64_t replica_size = idx++; + int64_t replica_ip_type = idx++; + int64_t replica_port_type = idx++; std::vector master_1_array; if (flags.test(master_size)) { @@ -317,11 +381,23 @@ class RedisClusterTest : public testing::Test, master_1_array.push_back(createIntegerField(flags.test(master_port_type), 22120)); } + std::vector replica_1_array; + if (replica_flags.any()) { + // Ip field. + replica_1_array.push_back( + createStringField(replica_flags.test(replica_ip_type), "127.0.0.2")); + // Port field. + replica_1_array.push_back(createIntegerField(replica_flags.test(replica_port_type), 22120)); + } + std::vector slot_1_array; if (flags.test(slot1_size)) { slot_1_array.push_back(createIntegerField(flags.test(slot1_range_start_type), 0)); slot_1_array.push_back(createIntegerField(flags.test(slot1_range_end_type), 16383)); slot_1_array.push_back(createArrayField(flags.test(master_type), master_1_array)); + if (replica_flags.any()) { + slot_1_array.push_back(createArrayField(replica_flags.test(replica_size), replica_1_array)); + } } std::vector slots_array; @@ -368,32 +444,48 @@ class RedisClusterTest : public testing::Test, cluster_->initialize([&]() -> void { initialized_.ready(); }); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); - expectClusterSlotResponse(singleSlotMasterSlave("127.0.0.1", "127.0.0.2", 22120)); - // TODO(hyang): this will change once we register slaves as well - expectHealthyHosts(std::list({"127.0.0.1:22120"})); + expectClusterSlotResponse(singleSlotMasterReplica("127.0.0.1", "127.0.0.2", 22120)); + expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); - // Add new host. + // Promote replica to master expectRedisResolve(); EXPECT_CALL(membership_updated_, ready()); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); expectClusterSlotResponse(twoSlotsMasters()); expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); // No change. expectRedisResolve(); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1).WillOnce(Return(false)); expectClusterSlotResponse(twoSlotsMasters()); expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); - // Remove host. + // Add replicas to masters expectRedisResolve(); EXPECT_CALL(membership_updated_, ready()); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); - expectClusterSlotResponse(singleSlotMasterSlave("127.0.0.1", "127.0.0.2", 22120)); - expectHealthyHosts(std::list({"127.0.0.1:22120"})); + expectClusterSlotResponse(twoSlotsMastersWithReplica()); + expectHealthyHosts(std::list( + {"127.0.0.1:22120", "127.0.0.3:22120", "127.0.0.2:22120", "127.0.0.4:22120"})); + + // No change. + expectRedisResolve(); + resolve_timer_->invokeCallback(); + EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1).WillOnce(Return(false)); + expectClusterSlotResponse(twoSlotsMastersWithReplica()); + expectHealthyHosts(std::list( + {"127.0.0.1:22120", "127.0.0.3:22120", "127.0.0.2:22120", "127.0.0.4:22120"})); + + // Remove 2nd shard. + expectRedisResolve(); + EXPECT_CALL(membership_updated_, ready()); + resolve_timer_->invokeCallback(); + EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); + expectClusterSlotResponse(singleSlotMasterReplica("127.0.0.1", "127.0.0.2", 22120)); + expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); } void exerciseStubs() { @@ -461,28 +553,28 @@ std::vector generateRedisDnsParams() { std::string family_yaml(""); Network::DnsLookupFamily family(Network::DnsLookupFamily::Auto); std::list dns_response{"127.0.0.1", "127.0.0.2"}; - std::list resolved_host{"127.0.0.1:22120"}; + std::list resolved_host{"127.0.0.1:22120", "127.0.0.2:22120"}; dns_config.push_back(std::make_tuple(family_yaml, family, dns_response, resolved_host)); } { std::string family_yaml(R"EOF(dns_lookup_family: V4_ONLY)EOF"); Network::DnsLookupFamily family(Network::DnsLookupFamily::V4Only); std::list dns_response{"127.0.0.1", "127.0.0.2"}; - std::list resolved_host{"127.0.0.1:22120"}; + std::list resolved_host{"127.0.0.1:22120", "127.0.0.2:22120"}; dns_config.push_back(std::make_tuple(family_yaml, family, dns_response, resolved_host)); } { std::string family_yaml(R"EOF(dns_lookup_family: V6_ONLY)EOF"); Network::DnsLookupFamily family(Network::DnsLookupFamily::V6Only); - std::list dns_response{"::1", "::2"}; - std::list resolved_host{"[::1]:22120"}; + std::list dns_response{"::1", "2001:0db8:85a3:0000:0000:8a2e:0370:7334"}; + std::list resolved_host{"[::1]:22120", "[2001:db8:85a3::8a2e:370:7334]:22120"}; dns_config.push_back(std::make_tuple(family_yaml, family, dns_response, resolved_host)); } { std::string family_yaml(R"EOF(dns_lookup_family: AUTO)EOF"); Network::DnsLookupFamily family(Network::DnsLookupFamily::Auto); - std::list dns_response{"::1", "::2"}; - std::list resolved_host{"[::1]:22120"}; + std::list dns_response{"::1", "2001:0db8:85a3:0000:0000:8a2e:0370:7334"}; + std::list resolved_host{"[::1]:22120", "[2001:db8:85a3::8a2e:370:7334]:22120"}; dns_config.push_back(std::make_tuple(family_yaml, family, dns_response, resolved_host)); } return dns_config; @@ -525,7 +617,7 @@ TEST_P(RedisDnsParamTest, ImmediateResolveDns) { cb(TestUtility::makeDnsResponse(address_pair)); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); expectClusterSlotResponse( - singleSlotMasterSlave(address_pair.front(), address_pair.back(), 22120)); + singleSlotMasterReplica(address_pair.front(), address_pair.back(), 22120)); return nullptr; })); @@ -607,18 +699,18 @@ TEST_F(RedisClusterTest, RedisResolveFailure) { EXPECT_EQ(1U, cluster_->info()->stats().update_failure_.value()); expectRedisResolve(true); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); EXPECT_CALL(membership_updated_, ready()); EXPECT_CALL(initialized_, ready()); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); - expectClusterSlotResponse(singleSlotMasterSlave("127.0.0.1", "127.0.0.2", 22120)); - expectHealthyHosts(std::list({"127.0.0.1:22120"})); + expectClusterSlotResponse(singleSlotMasterReplica("127.0.0.1", "127.0.0.2", 22120)); + expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); // Expect no change if resolve failed. expectRedisResolve(); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); expectClusterSlotFailure(); - expectHealthyHosts(std::list({"127.0.0.1:22120"})); + expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); EXPECT_EQ(3U, cluster_->info()->stats().update_attempt_.value()); EXPECT_EQ(2U, cluster_->info()->stats().update_failure_.value()); } @@ -675,11 +767,13 @@ TEST_F(RedisClusterTest, RedisErrorResponse) { EXPECT_EQ(1U, cluster_->info()->stats().update_failure_.value()); expectRedisResolve(); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); EXPECT_CALL(membership_updated_, ready()); EXPECT_CALL(initialized_, ready()); EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); - expectClusterSlotResponse(singleSlotMasterSlave("127.0.0.1", "127.0.0.2", 22120)); + std::bitset<10> single_slot_master(0x7ff); + std::bitset<3> no_replica(0); + expectClusterSlotResponse(createResponse(single_slot_master, no_replica)); expectHealthyHosts(std::list({"127.0.0.1:22120"})); // Expect no change if resolve failed. @@ -689,11 +783,11 @@ TEST_F(RedisClusterTest, RedisErrorResponse) { for (uint64_t i = 0; i < (1 << 10); i++) { std::bitset<10> flags(i); expectRedisResolve(); - resolve_timer_->callback_(); + resolve_timer_->invokeCallback(); if (flags.all()) { EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1).WillOnce(Return(false)); } - expectClusterSlotResponse(createResponse(flags)); + expectClusterSlotResponse(createResponse(flags, no_replica)); expectHealthyHosts(std::list({"127.0.0.1:22120"})); EXPECT_EQ(++update_attempt, cluster_->info()->stats().update_attempt_.value()); if (!flags.all()) { @@ -702,6 +796,43 @@ TEST_F(RedisClusterTest, RedisErrorResponse) { } } +TEST_F(RedisClusterTest, RedisReplicaErrorResponse) { + setupFromV2Yaml(BasicConfig); + const std::list resolved_addresses{"127.0.0.1", "127.0.0.2"}; + expectResolveDiscovery(Network::DnsLookupFamily::V4Only, "foo.bar.com", resolved_addresses); + expectRedisResolve(true); + + cluster_->initialize([&]() -> void { initialized_.ready(); }); + + EXPECT_CALL(membership_updated_, ready()); + EXPECT_CALL(initialized_, ready()); + EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); + std::bitset<10> single_slot_master(0x7ff); + std::bitset<3> no_replica(0); + expectClusterSlotResponse(createResponse(single_slot_master, no_replica)); + expectHealthyHosts(std::list({"127.0.0.1:22120"})); + + // Expect no change if resolve failed. + uint64_t update_attempt = 1; + uint64_t update_failure = 0; + // Test every combination the replica error response. + for (uint64_t i = 1; i < (1 << 3); i++) { + std::bitset<3> replica_flags(i); + expectRedisResolve(); + resolve_timer_->invokeCallback(); + if (replica_flags.all()) { + EXPECT_CALL(membership_updated_, ready()); + EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1).WillOnce(Return(false)); + } + expectHealthyHosts(std::list({"127.0.0.1:22120"})); + expectClusterSlotResponse(createResponse(single_slot_master, replica_flags)); + EXPECT_EQ(++update_attempt, cluster_->info()->stats().update_attempt_.value()); + if (!(replica_flags.all() || replica_flags.none())) { + EXPECT_EQ(++update_failure, cluster_->info()->stats().update_failure_.value()); + } + } +} + TEST_F(RedisClusterTest, DnsDiscoveryResolverBasic) { setupFromV2Yaml(BasicConfig); testDnsResolve("foo.bar.com", 22120); @@ -756,6 +887,52 @@ TEST_F(RedisClusterTest, MultipleDnsDiscovery) { EXPECT_CALL(pool_request_, cancel()); } +TEST_F(RedisClusterTest, HostRemovalAfterHcFail) { + setupFromV2Yaml(BasicConfig); + auto health_checker = std::make_shared(); + EXPECT_CALL(*health_checker, start()); + EXPECT_CALL(*health_checker, addHostCheckCompleteCb(_)).Times(2); + cluster_->setHealthChecker(health_checker); + + const std::list resolved_addresses{"127.0.0.1", "127.0.0.2"}; + expectResolveDiscovery(Network::DnsLookupFamily::V4Only, "foo.bar.com", resolved_addresses); + expectRedisResolve(true); + + EXPECT_CALL(membership_updated_, ready()); + EXPECT_CALL(initialized_, ready()); + cluster_->initialize([&]() -> void { initialized_.ready(); }); + + EXPECT_CALL(*cluster_callback_, onClusterSlotUpdate(_, _)).Times(1); + expectClusterSlotResponse(singleSlotMasterReplica("127.0.0.1", "127.0.0.2", 22120)); + + // Verify that both hosts are initially marked with FAILED_ACTIVE_HC, then + // clear the flag to simulate that these hosts have been successfully health + // checked. + { + EXPECT_CALL(membership_updated_, ready()); + const auto& hosts = cluster_->prioritySet().hostSetsPerPriority()[0]->hosts(); + EXPECT_EQ(2UL, hosts.size()); + + for (size_t i = 0; i < 2; ++i) { + EXPECT_TRUE(hosts[i]->healthFlagGet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC)); + hosts[i]->healthFlagClear(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + hosts[i]->healthFlagClear(Upstream::Host::HealthFlag::PENDING_ACTIVE_HC); + health_checker->runCallbacks(hosts[i], Upstream::HealthTransition::Changed); + } + expectHealthyHosts(std::list({"127.0.0.1:22120", "127.0.0.2:22120"})); + } + + // Failed HC + EXPECT_CALL(membership_updated_, ready()); + EXPECT_CALL(*cluster_callback_, onHostHealthUpdate()); + const auto& hosts = cluster_->prioritySet().hostSetsPerPriority()[0]->hosts(); + hosts[1]->healthFlagSet(Upstream::Host::HealthFlag::FAILED_ACTIVE_HC); + health_checker->runCallbacks(hosts[1], Upstream::HealthTransition::Changed); + + EXPECT_THAT(2U, cluster_->prioritySet().hostSetsPerPriority()[0]->hosts().size()); + EXPECT_THAT(1U, cluster_->prioritySet().hostSetsPerPriority()[0]->healthyHosts().size()); +} + } // namespace Redis } // namespace Clusters } // namespace Extensions diff --git a/test/extensions/filters/common/expr/BUILD b/test/extensions/filters/common/expr/BUILD new file mode 100644 index 0000000000000..8ce5555328bf0 --- /dev/null +++ b/test/extensions/filters/common/expr/BUILD @@ -0,0 +1,25 @@ +licenses(["notice"]) # Apache 2 + +load( + "//bazel:envoy_build_system.bzl", + "envoy_package", +) +load( + "//test/extensions:extensions_build_system.bzl", + "envoy_extension_cc_test", +) + +envoy_package() + +envoy_extension_cc_test( + name = "context_test", + srcs = ["context_test.cc"], + extension_name = "envoy.filters.http.rbac", + deps = [ + "//source/extensions/filters/common/expr:context_lib", + "//test/mocks/ssl:ssl_mocks", + "//test/mocks/stream_info:stream_info_mocks", + "//test/mocks/upstream:upstream_mocks", + "//test/test_common:utility_lib", + ], +) diff --git a/test/extensions/filters/common/expr/context_test.cc b/test/extensions/filters/common/expr/context_test.cc new file mode 100644 index 0000000000000..0e79abe362ecd --- /dev/null +++ b/test/extensions/filters/common/expr/context_test.cc @@ -0,0 +1,363 @@ +#include "common/network/utility.h" + +#include "extensions/filters/common/expr/context.h" + +#include "test/mocks/ssl/mocks.h" +#include "test/mocks/stream_info/mocks.h" +#include "test/mocks/upstream/mocks.h" + +#include "absl/time/time.h" +#include "gmock/gmock.h" +#include "gtest/gtest.h" + +using testing::_; +using testing::Const; +using testing::Return; +using testing::ReturnRef; + +namespace Envoy { +namespace Extensions { +namespace Filters { +namespace Common { +namespace Expr { +namespace { + +constexpr absl::string_view Undefined = "undefined"; + +TEST(Context, EmptyHeadersAttributes) { + HeadersWrapper headers(nullptr); + auto header = headers[CelValue::CreateString(Referer)]; + EXPECT_FALSE(header.has_value()); + EXPECT_EQ(0, headers.size()); + EXPECT_TRUE(headers.empty()); +} + +TEST(Context, RequestAttributes) { + NiceMock info; + Http::TestHeaderMapImpl header_map{ + {":method", "POST"}, {":scheme", "http"}, {":path", "/meow?yes=1"}, + {":authority", "kittens.com"}, {"referer", "dogs.com"}, {"user-agent", "envoy-mobile"}, + {"content-length", "10"}, {"x-request-id", "blah"}, + }; + RequestWrapper request(&header_map, info); + + EXPECT_CALL(info, bytesReceived()).WillRepeatedly(Return(10)); + // "2018-04-03T23:06:09.123Z". + const SystemTime start_time(std::chrono::milliseconds(1522796769123)); + EXPECT_CALL(info, startTime()).WillRepeatedly(Return(start_time)); + absl::optional dur = std::chrono::nanoseconds(15000000); + EXPECT_CALL(info, requestComplete()).WillRepeatedly(Return(dur)); + + // stub methods + EXPECT_EQ(0, request.size()); + EXPECT_FALSE(request.empty()); + + { + auto value = request[CelValue::CreateString(Undefined)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = request[CelValue::CreateInt64(13)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = request[CelValue::CreateString(Scheme)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("http", value.value().StringOrDie().value()); + } + { + auto value = request[CelValue::CreateString(Host)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("kittens.com", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(Path)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("/meow?yes=1", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(UrlPath)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("/meow", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(Method)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("POST", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(Referer)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("dogs.com", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(UserAgent)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("envoy-mobile", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(ID)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("blah", value.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(Size)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(10, value.value().Int64OrDie()); + } + + { + auto value = request[CelValue::CreateString(TotalSize)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + // this includes the headers size + EXPECT_EQ(138, value.value().Int64OrDie()); + } + + { + auto value = request[CelValue::CreateString(Time)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsTimestamp()); + EXPECT_EQ("2018-04-03T23:06:09.123+00:00", absl::FormatTime(value.value().TimestampOrDie())); + } + + { + auto value = request[CelValue::CreateString(Headers)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsMap()); + auto& map = *value.value().MapOrDie(); + EXPECT_FALSE(map.empty()); + EXPECT_EQ(8, map.size()); + + auto header = map[CelValue::CreateString(Referer)]; + EXPECT_TRUE(header.has_value()); + ASSERT_TRUE(header.value().IsString()); + EXPECT_EQ("dogs.com", header.value().StringOrDie().value()); + } + + { + auto value = request[CelValue::CreateString(Duration)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsDuration()); + EXPECT_EQ("15ms", absl::FormatDuration(value.value().DurationOrDie())); + } +} + +TEST(Context, RequestFallbackAttributes) { + NiceMock info; + Http::TestHeaderMapImpl header_map{ + {":method", "POST"}, + {":scheme", "http"}, + {":path", "/meow?yes=1"}, + }; + RequestWrapper request(&header_map, info); + + EXPECT_CALL(info, bytesReceived()).WillRepeatedly(Return(10)); + + { + auto value = request[CelValue::CreateString(Size)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(10, value.value().Int64OrDie()); + } + + { + auto value = request[CelValue::CreateString(UrlPath)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("/meow", value.value().StringOrDie().value()); + } +} + +TEST(Context, ResponseAttributes) { + NiceMock info; + const std::string header_name = "test-header"; + const std::string trailer_name = "test-trailer"; + Http::TestHeaderMapImpl header_map{{header_name, "a"}}; + Http::TestHeaderMapImpl trailer_map{{trailer_name, "b"}}; + ResponseWrapper response(&header_map, &trailer_map, info); + + EXPECT_CALL(info, responseCode()).WillRepeatedly(Return(404)); + EXPECT_CALL(info, bytesSent()).WillRepeatedly(Return(123)); + + { + auto value = response[CelValue::CreateString(Undefined)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = response[CelValue::CreateInt64(13)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = response[CelValue::CreateString(Size)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(123, value.value().Int64OrDie()); + } + + { + auto value = response[CelValue::CreateString(Code)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(404, value.value().Int64OrDie()); + } + + { + auto value = response[CelValue::CreateString(Headers)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsMap()); + auto& map = *value.value().MapOrDie(); + EXPECT_FALSE(map.empty()); + EXPECT_EQ(1, map.size()); + + auto header = map[CelValue::CreateString(header_name)]; + EXPECT_TRUE(header.has_value()); + ASSERT_TRUE(header.value().IsString()); + EXPECT_EQ("a", header.value().StringOrDie().value()); + + auto missing = map[CelValue::CreateString(Undefined)]; + EXPECT_FALSE(missing.has_value()); + } + + { + auto value = response[CelValue::CreateString(Trailers)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsMap()); + auto& map = *value.value().MapOrDie(); + EXPECT_FALSE(map.empty()); + EXPECT_EQ(1, map.size()); + + auto header = map[CelValue::CreateString(trailer_name)]; + EXPECT_TRUE(header.has_value()); + ASSERT_TRUE(header.value().IsString()); + EXPECT_EQ("b", header.value().StringOrDie().value()); + } +} + +TEST(Context, ConnectionAttributes) { + NiceMock info; + std::shared_ptr> host( + new NiceMock()); + NiceMock connection_info; + ConnectionWrapper connection(info); + PeerWrapper source(info, false); + PeerWrapper destination(info, true); + + Network::Address::InstanceConstSharedPtr local = + Network::Utility::parseInternetAddress("1.2.3.4", 123, false); + Network::Address::InstanceConstSharedPtr remote = + Network::Utility::parseInternetAddress("10.20.30.40", 456, false); + Network::Address::InstanceConstSharedPtr upstream = + Network::Utility::parseInternetAddress("10.1.2.3", 679, false); + const std::string sni_name = "kittens.com"; + EXPECT_CALL(info, downstreamLocalAddress()).WillRepeatedly(ReturnRef(local)); + EXPECT_CALL(info, downstreamRemoteAddress()).WillRepeatedly(ReturnRef(remote)); + EXPECT_CALL(info, downstreamSslConnection()).WillRepeatedly(Return(&connection_info)); + EXPECT_CALL(info, upstreamHost()).WillRepeatedly(Return(host)); + EXPECT_CALL(info, requestedServerName()).WillRepeatedly(ReturnRef(sni_name)); + EXPECT_CALL(connection_info, peerCertificatePresented()).WillRepeatedly(Return(true)); + EXPECT_CALL(*host, address()).WillRepeatedly(Return(upstream)); + + { + auto value = connection[CelValue::CreateString(Undefined)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = connection[CelValue::CreateInt64(13)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = source[CelValue::CreateString(Undefined)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = source[CelValue::CreateInt64(13)]; + EXPECT_FALSE(value.has_value()); + } + + { + auto value = destination[CelValue::CreateString(Address)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("1.2.3.4:123", value.value().StringOrDie().value()); + } + + { + auto value = destination[CelValue::CreateString(Port)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(123, value.value().Int64OrDie()); + } + + { + auto value = source[CelValue::CreateString(Address)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("10.20.30.40:456", value.value().StringOrDie().value()); + } + + { + auto value = source[CelValue::CreateString(Port)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(456, value.value().Int64OrDie()); + } + + { + auto value = connection[CelValue::CreateString(UpstreamAddress)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ("10.1.2.3:679", value.value().StringOrDie().value()); + } + + { + auto value = connection[CelValue::CreateString(UpstreamPort)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsInt64()); + EXPECT_EQ(679, value.value().Int64OrDie()); + } + + { + auto value = connection[CelValue::CreateString(MTLS)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsBool()); + EXPECT_TRUE(value.value().BoolOrDie()); + } + + { + auto value = connection[CelValue::CreateString(RequestedServerName)]; + EXPECT_TRUE(value.has_value()); + ASSERT_TRUE(value.value().IsString()); + EXPECT_EQ(sni_name, value.value().StringOrDie().value()); + } +} + +} // namespace +} // namespace Expr +} // namespace Common +} // namespace Filters +} // namespace Extensions +} // namespace Envoy diff --git a/test/extensions/filters/common/rbac/BUILD b/test/extensions/filters/common/rbac/BUILD index d9b47acebf6ae..1b0671adbcbc5 100644 --- a/test/extensions/filters/common/rbac/BUILD +++ b/test/extensions/filters/common/rbac/BUILD @@ -32,6 +32,7 @@ envoy_extension_cc_test( "//source/extensions/filters/common/rbac:engine_lib", "//test/mocks/network:network_mocks", "//test/mocks/ssl:ssl_mocks", + "//test/mocks/stream_info:stream_info_mocks", "//test/test_common:utility_lib", ], ) diff --git a/test/extensions/filters/common/rbac/engine_impl_test.cc b/test/extensions/filters/common/rbac/engine_impl_test.cc index bdca0c55ae5b0..6d346dca62cf3 100644 --- a/test/extensions/filters/common/rbac/engine_impl_test.cc +++ b/test/extensions/filters/common/rbac/engine_impl_test.cc @@ -4,6 +4,8 @@ #include "test/mocks/network/mocks.h" #include "test/mocks/ssl/mocks.h" +#include "test/mocks/stream_info/mocks.h" +#include "test/test_common/utility.h" #include "gmock/gmock.h" #include "gtest/gtest.h" @@ -25,7 +27,9 @@ void checkEngine(const RBAC::RoleBasedAccessControlEngineImpl& engine, bool expe const Envoy::Http::HeaderMap& headers = Envoy::Http::HeaderMapImpl(), const envoy::api::v2::core::Metadata& metadata = envoy::api::v2::core::Metadata(), std::string* policy_id = nullptr) { - EXPECT_EQ(expected, engine.allowed(connection, headers, metadata, policy_id)); + NiceMock info; + EXPECT_CALL(Const(info), dynamicMetadata()).WillRepeatedly(ReturnRef(metadata)); + EXPECT_EQ(expected, engine.allowed(connection, headers, info, policy_id)); } TEST(RoleBasedAccessControlEngineImpl, Disabled) { @@ -79,6 +83,187 @@ TEST(RoleBasedAccessControlEngineImpl, DeniedBlacklist) { checkEngine(engine, true, conn); } +TEST(RoleBasedAccessControlEngineImpl, BasicCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + const_expr: + bool_value: false + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + checkEngine(engine, false); +} + +TEST(RoleBasedAccessControlEngineImpl, MalformedCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + call_expr: + function: undefined_extent + args: + - const_expr: + bool_value: false + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + + EXPECT_THROW_WITH_REGEX(RBAC::RoleBasedAccessControlEngineImpl engine(rbac), EnvoyException, + "failed to create an expression: .*"); +} + +TEST(RoleBasedAccessControlEngineImpl, MistypedCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + const_expr: + int64_value: 13 + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + checkEngine(engine, false); +} + +TEST(RoleBasedAccessControlEngineImpl, ErrorCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + call_expr: + function: _[_] + args: + - select_expr: + operand: + ident_expr: + name: request + field: undefined + - const_expr: + string_value: foo + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + checkEngine(engine, false, Envoy::Network::MockConnection()); +} + +TEST(RoleBasedAccessControlEngineImpl, HeaderCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + call_expr: + function: _==_ + args: + - call_expr: + function: _[_] + args: + - select_expr: + operand: + ident_expr: + name: request + field: headers + - const_expr: + string_value: foo + - const_expr: + string_value: bar + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + + Envoy::Http::HeaderMapImpl headers; + Envoy::Http::LowerCaseString key("foo"); + std::string value = "bar"; + headers.setReference(key, value); + + checkEngine(engine, true, Envoy::Network::MockConnection(), headers); +} + +TEST(RoleBasedAccessControlEngineImpl, MetadataCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_any(true); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + call_expr: + function: _==_ + args: + - call_expr: + function: _[_] + args: + - call_expr: + function: _[_] + args: + - select_expr: + operand: + ident_expr: + name: metadata + field: filter_metadata + - const_expr: + string_value: other + - const_expr: + string_value: label + - const_expr: + string_value: prod + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + + Envoy::Http::HeaderMapImpl headers; + + auto label = MessageUtil::keyValueStruct("label", "prod"); + envoy::api::v2::core::Metadata metadata; + metadata.mutable_filter_metadata()->insert( + Protobuf::MapPair("other", label)); + + checkEngine(engine, true, Envoy::Network::MockConnection(), headers, metadata); +} + +TEST(RoleBasedAccessControlEngineImpl, ConjunctiveCondition) { + envoy::config::rbac::v2::Policy policy; + policy.add_permissions()->set_destination_port(123); + policy.add_principals()->set_any(true); + policy.mutable_condition()->MergeFrom( + TestUtility::parseYaml(R"EOF( + const_expr: + bool_value: false + )EOF")); + + envoy::config::rbac::v2::RBAC rbac; + rbac.set_action(envoy::config::rbac::v2::RBAC_Action::RBAC_Action_ALLOW); + (*rbac.mutable_policies())["foo"] = policy; + RBAC::RoleBasedAccessControlEngineImpl engine(rbac); + + Envoy::Network::MockConnection conn; + Envoy::Network::Address::InstanceConstSharedPtr addr = + Envoy::Network::Utility::parseInternetAddress("1.2.3.4", 123, false); + EXPECT_CALL(conn, localAddress()).WillOnce(ReturnRef(addr)); + checkEngine(engine, false, conn); +} + } // namespace } // namespace RBAC } // namespace Common diff --git a/test/extensions/filters/common/rbac/matchers_test.cc b/test/extensions/filters/common/rbac/matchers_test.cc index 424c1c56a74ef..43012da47eda0 100644 --- a/test/extensions/filters/common/rbac/matchers_test.cc +++ b/test/extensions/filters/common/rbac/matchers_test.cc @@ -25,7 +25,9 @@ void checkMatcher( const Envoy::Network::Connection& connection = Envoy::Network::MockConnection(), const Envoy::Http::HeaderMap& headers = Envoy::Http::HeaderMapImpl(), const envoy::api::v2::core::Metadata& metadata = envoy::api::v2::core::Metadata()) { - EXPECT_EQ(expected, matcher.matches(connection, headers, metadata)); + NiceMock info; + EXPECT_CALL(Const(info), dynamicMetadata()).WillRepeatedly(ReturnRef(metadata)); + EXPECT_EQ(expected, matcher.matches(connection, headers, info)); } TEST(AlwaysMatcher, AlwaysMatches) { checkMatcher(RBAC::AlwaysMatcher(), true); } @@ -205,12 +207,35 @@ TEST(AuthenticatedMatcher, uriSanPeerCertificate) { checkMatcher(AuthenticatedMatcher(auth), false, conn); } +TEST(AuthenticatedMatcher, dnsSanPeerCertificate) { + Envoy::Network::MockConnection conn; + Envoy::Ssl::MockConnectionInfo ssl; + + const std::vector uri_sans; + const std::vector dns_sans{"foo", "baz"}; + + EXPECT_CALL(ssl, uriSanPeerCertificate()).WillRepeatedly(Return(uri_sans)); + EXPECT_CALL(Const(conn), ssl()).WillRepeatedly(Return(&ssl)); + + EXPECT_CALL(ssl, dnsSansPeerCertificate()).WillRepeatedly(Return(dns_sans)); + EXPECT_CALL(Const(conn), ssl()).WillRepeatedly(Return(&ssl)); + + // We should get the first DNS SAN as URI SAN is not available. + envoy::config::rbac::v2::Principal_Authenticated auth; + auth.mutable_principal_name()->set_exact("foo"); + checkMatcher(AuthenticatedMatcher(auth), true, conn); + + auth.mutable_principal_name()->set_exact("bar"); + checkMatcher(AuthenticatedMatcher(auth), false, conn); +} + TEST(AuthenticatedMatcher, subjectPeerCertificate) { Envoy::Network::MockConnection conn; Envoy::Ssl::MockConnectionInfo ssl; const std::vector sans; EXPECT_CALL(ssl, uriSanPeerCertificate()).WillRepeatedly(Return(sans)); + EXPECT_CALL(ssl, dnsSansPeerCertificate()).WillRepeatedly(Return(sans)); EXPECT_CALL(ssl, subjectPeerCertificate()).WillRepeatedly(Return("bar")); EXPECT_CALL(Const(conn), ssl()).WillRepeatedly(Return(&ssl)); @@ -270,7 +295,7 @@ TEST(PolicyMatcher, PolicyMatcher) { policy.add_principals()->mutable_authenticated()->mutable_principal_name()->set_exact("foo"); policy.add_principals()->mutable_authenticated()->mutable_principal_name()->set_exact("bar"); - RBAC::PolicyMatcher matcher(policy); + RBAC::PolicyMatcher matcher(policy, nullptr); Envoy::Network::MockConnection conn; Envoy::Ssl::MockConnectionInfo ssl; diff --git a/test/extensions/filters/common/rbac/mocks.h b/test/extensions/filters/common/rbac/mocks.h index 6b14a834eec79..50555419dd4cd 100644 --- a/test/extensions/filters/common/rbac/mocks.h +++ b/test/extensions/filters/common/rbac/mocks.h @@ -17,11 +17,10 @@ class MockEngine : public RoleBasedAccessControlEngineImpl { MOCK_CONST_METHOD4(allowed, bool(const Envoy::Network::Connection&, const Envoy::Http::HeaderMap&, - const envoy::api::v2::core::Metadata&, std::string* effective_policy_id)); + const StreamInfo::StreamInfo&, std::string* effective_policy_id)); - MOCK_CONST_METHOD3(allowed, - bool(const Envoy::Network::Connection&, const envoy::api::v2::core::Metadata&, - std::string* effective_policy_id)); + MOCK_CONST_METHOD3(allowed, bool(const Envoy::Network::Connection&, const StreamInfo::StreamInfo&, + std::string* effective_policy_id)); }; } // namespace RBAC diff --git a/test/extensions/filters/http/grpc_json_transcoder/grpc_json_transcoder_integration_test.cc b/test/extensions/filters/http/grpc_json_transcoder/grpc_json_transcoder_integration_test.cc index 89459dd4f341d..14f491375a8ad 100644 --- a/test/extensions/filters/http/grpc_json_transcoder/grpc_json_transcoder_integration_test.cc +++ b/test/extensions/filters/http/grpc_json_transcoder/grpc_json_transcoder_integration_test.cc @@ -175,6 +175,117 @@ TEST_P(GrpcJsonTranscoderIntegrationTest, UnaryPost) { R"({"id":"20","theme":"Children"})"); } +TEST_P(GrpcJsonTranscoderIntegrationTest, QueryParams) { + HttpIntegrationTest::initialize(); + // 1. Binding theme='Children' in CreateShelfRequest + // Using the following HTTP template: + // POST /shelves + // body: shelf + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/shelf?shelf.theme=Children"}, + {":authority", "host"}, + {"content-type", "application/json"}}, + "", {R"(shelf { theme: "Children" })"}, {R"(id: 20 theme: "Children" )"}, Status(), + Http::TestHeaderMapImpl{ + {":status", "200"}, + {"content-type", "application/json"}, + }, + R"({"id":"20","theme":"Children"})"); + + // 2. Binding theme='Children' and id='999' in CreateShelfRequest + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/shelf?shelf.id=999&shelf.theme=Children"}, + {":authority", "host"}, + {"content-type", "application/json"}}, + "", {R"(shelf { id: 999 theme: "Children" })"}, {R"(id: 999 theme: "Children" )"}, Status(), + Http::TestHeaderMapImpl{ + {":status", "200"}, + {"content-type", "application/json"}, + }, + R"({"id":"999","theme":"Children"})"); + + // 3. Binding shelf=1, book= and book.title='War and Peace' in CreateBookRequest + // Using the following HTTP template: + // POST /shelves/{shelf}/books + // body: book + testTranscoding( + Http::TestHeaderMapImpl{{":method", "PUT"}, + {":path", "/shelves/1/books?book.title=War%20and%20Peace"}, + {":authority", "host"}}, + R"({"author" : "Leo Tolstoy"})", + {R"(shelf: 1 book { author: "Leo Tolstoy" title: "War and Peace" })"}, + {R"(id: 3 author: "Leo Tolstoy" title: "War and Peace")"}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, {"content-type", "application/json"}}, + R"({"id":"3","author":"Leo Tolstoy","title":"War and Peace"})"); + + // 4. Binding shelf=1, book.author='Leo Tolstoy' and book.title='War and Peace' in + // CreateBookRequest + // Using the following HTTP template: + // POST /shelves/{shelf}/books + // body: book + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "PUT"}, + {":path", "/shelves/1/books?book.author=Leo%20Tolstoy&book.title=War%20and%20Peace"}, + {":authority", "host"}}, + "", {R"(shelf: 1 book { author: "Leo Tolstoy" title: "War and Peace" })"}, + {R"(id: 3 author: "Leo Tolstoy" title: "War and Peace")"}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, {"content-type", "application/json"}}, + R"({"id":"3","author":"Leo Tolstoy","title":"War and Peace"})"); + + // 5. Test URL decoding. + testTranscoding( + Http::TestHeaderMapImpl{{":method", "PUT"}, + {":path", "/shelves/1/books?book.title=War%20%26%20Peace"}, + {":authority", "host"}}, + R"({"author" : "Leo Tolstoy"})", + {R"(shelf: 1 book { author: "Leo Tolstoy" title: "War & Peace" })"}, + {R"(id: 3 author: "Leo Tolstoy" title: "War & Peace")"}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, {"content-type", "application/json"}}, + R"({"id":"3","author":"Leo Tolstoy","title":"War & Peace"})"); + + // 6. Binding all book fields through query params. + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "PUT"}, + {":path", + "/shelves/1/books?book.id=999&book.author=Leo%20Tolstoy&book.title=War%20and%20Peace"}, + {":authority", "host"}}, + "", {R"(shelf: 1 book { id : 999 author: "Leo Tolstoy" title: "War and Peace" })"}, + {R"(id: 999 author: "Leo Tolstoy" title: "War and Peace")"}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, {"content-type", "application/json"}}, + R"({"id":"999","author":"Leo Tolstoy","title":"War and Peace"})"); + + // 7. Binding shelf=3, book= and the repeated field book.quote with + // two values ("Winter is coming" and "Hold the door") in CreateBookRequest. + // These values should be added to the repeated field in addition to what is + // translated in the body. + // Using the following HTTP template: + // POST /shelves/{shelf}/books + // body: book + std::string reqBody = + R"({"id":"999","author":"George R.R. Martin","title":"A Game of Thrones",)" + R"("quotes":["A girl has no name","A very small man can cast a very large shadow"]})"; + std::string grpcResp = R"(id : 999 author: "George R.R. Martin" title: "A Game of Thrones" + quotes: "A girl has no name" quotes : "A very small man can cast a very large shadow" + quotes: "Winter is coming" quotes : "Hold the door")"; + std::string expectGrpcRequest = absl::StrCat("shelf: 1 book {", grpcResp, "}"); + std::string respBody = + R"({"id":"999","author":"George R.R. Martin","title":"A Game of Thrones","quotes":["A girl has no name")" + R"(,"A very small man can cast a very large shadow","Winter is coming","Hold the door"]})"; + + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "PUT"}, + {":path", + "/shelves/1/books?book.quotes=Winter%20is%20coming&book.quotes=Hold%20the%20door"}, + {":authority", "host"}}, + reqBody, {expectGrpcRequest}, {grpcResp}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, {"content-type", "application/json"}}, respBody); +} + TEST_P(GrpcJsonTranscoderIntegrationTest, UnaryGet) { HttpIntegrationTest::initialize(); testTranscoding( @@ -363,6 +474,136 @@ TEST_P(GrpcJsonTranscoderIntegrationTest, InvalidJson) { R"({ "theme" "Children" })", {}, {}, Status(), Http::TestHeaderMapImpl{{":status", "400"}, {"content-type", "text/plain"}}, "Expected : between key:value pair.\n", false); + + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, {":path", "/shelf"}, {":authority", "host"}}, + R"({ "theme" : "Children" }EXTRA)", {}, {}, Status(), + Http::TestHeaderMapImpl{{":status", "400"}, {"content-type", "text/plain"}}, + "Parsing terminated before end of input.\n", false); +} + +std::string createDeepJson(int level, bool valid) { + std::string begin = R"({"k":)"; + std::string deep_val = R"("v")"; + std::string end = R"(})"; + std::string json; + + for (int i = 0; i < level; ++i) { + absl::StrAppend(&json, begin); + } + if (valid) { + absl::StrAppend(&json, deep_val); + } + for (int i = 0; i < level; ++i) { + absl::StrAppend(&json, end); + } + return json; +} + +std::string jsonStrToPbStrucStr(std::string json) { + Envoy::ProtobufWkt::Struct message; + std::string structStr; + TestUtility::loadFromJson(json, message); + TextFormat::PrintToString(message, &structStr); + return structStr; +} + +TEST_P(GrpcJsonTranscoderIntegrationTest, DeepStruct) { + HttpIntegrationTest::initialize(); + // Due to the limit of protobuf util, we can only compare to level 32. + std::string deepJson = createDeepJson(32, true); + std::string deepProto = "content {" + jsonStrToPbStrucStr(deepJson) + "}"; + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "POST"}, {":path", "/echoStruct"}, {":authority", "host"}}, + deepJson, {deepProto}, {deepProto}, Status(), + Http::TestHeaderMapImpl{ + {":status", "200"}, {"content-type", "application/json"}, {"grpc-status", "0"}}, + R"({"content":)" + deepJson + R"(})"); + + // The valid deep struct is parsed successfully. + // Since we didn't set the response, it return 503. + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "POST"}, {":path", "/echoStruct"}, {":authority", "host"}}, + createDeepJson(100, true), {}, {}, Status(), + Http::TestHeaderMapImpl{{":status", "503"}, {"content-type", "application/grpc"}}, ""); + + // The invalid deep struct is detected. + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "POST"}, {":path", "/echoStruct"}, {":authority", "host"}}, + createDeepJson(100, false), {}, {}, Status(), + Http::TestHeaderMapImpl{{":status", "400"}, {"content-type", "text/plain"}}, + "Unexpected token.\n", false); +} + +std::string createLargeJson(int level) { + std::shared_ptr cur = std::make_shared(); + for (int i = 0; i < level - 1; ++i) { + std::shared_ptr next = std::make_shared(); + ProtobufWkt::Value val = ProtobufWkt::Value(); + ProtobufWkt::Value left = ProtobufWkt::Value(*cur); + ProtobufWkt::Value right = ProtobufWkt::Value(*cur); + val.mutable_list_value()->add_values()->Swap(&left); + val.mutable_list_value()->add_values()->Swap(&right); + (*next->mutable_struct_value()->mutable_fields())["k"] = val; + cur = next; + } + return MessageUtil::getJsonStringFromMessage(*cur, false, false); +} + +TEST_P(GrpcJsonTranscoderIntegrationTest, LargeStruct) { + HttpIntegrationTest::initialize(); + // Create a 40kB json payload. + + std::string largeJson = createLargeJson(12); + std::string largeProto = "content {" + jsonStrToPbStrucStr(largeJson) + "}"; + testTranscoding( + Http::TestHeaderMapImpl{ + {":method", "POST"}, {":path", "/echoStruct"}, {":authority", "host"}}, + largeJson, {largeProto}, {largeProto}, Status(), + Http::TestHeaderMapImpl{ + {":status", "200"}, {"content-type", "application/json"}, {"grpc-status", "0"}}, + R"({"content":)" + largeJson + R"(})"); +} + +TEST_P(GrpcJsonTranscoderIntegrationTest, UnknownField) { + HttpIntegrationTest::initialize(); + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/shelf"}, + {":authority", "host"}, + {"content-type", "application/json"}}, + R"({"theme": "Children", "unknown1": "a", "unknown2" : {"a" : "b"}, "unknown3" : ["a", "b", "c"]})", + {R"(shelf { theme: "Children" })"}, {R"(id: 20 theme: "Children" )"}, Status(), + Http::TestHeaderMapImpl{{":status", "200"}, + {"content-type", "application/json"}, + {"content-length", "30"}, + {"grpc-status", "0"}}, + R"({"id":"20","theme":"Children"})"); +} + +TEST_P(GrpcJsonTranscoderIntegrationTest, UTF8) { + HttpIntegrationTest::initialize(); + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/shelf"}, + {":authority", "host"}, + {"content-type", "application/json"}}, + "{\"id\":\"20\",\"theme\":\"\xC2\xAE\"}", {"shelf {id : 20 theme: \"®\" }"}, + {"id: 20 theme: \"\xC2\xAE\""}, Status(), + Http::TestHeaderMapImpl{ + {":status", "200"}, {"content-type", "application/json"}, {"grpc-status", "0"}}, + R"({"id":"20","theme":"®"})"); + + testTranscoding( + Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/shelf"}, + {":authority", "host"}, + {"content-type", "application/json"}}, + "{\"id\":\"20\",\"theme\":\"\xC3\x28\"}", {}, {""}, Status(), + Http::TestHeaderMapImpl{{":status", "400"}}, R"(Encountered non UTF-8 code points)", false); } } // namespace diff --git a/test/extensions/filters/http/health_check/health_check_test.cc b/test/extensions/filters/http/health_check/health_check_test.cc index 6a2d4b5de94bc..85f2d242c39df 100644 --- a/test/extensions/filters/http/health_check/health_check_test.cc +++ b/test/extensions/filters/http/health_check/health_check_test.cc @@ -360,7 +360,7 @@ TEST_F(HealthCheckFilterCachingTest, All) { // Fire the timer, this should result in the next request going through. EXPECT_CALL(*cache_timer_, enableTimer(_)); - cache_timer_->callback_(); + cache_timer_->invokeCallback(); prepareFilter(true); EXPECT_EQ(Http::FilterHeadersStatus::Continue, filter_->decodeHeaders(request_headers_, true)); } @@ -394,7 +394,7 @@ TEST_F(HealthCheckFilterCachingTest, DegradedHeader) { // Fire the timer, this should result in the next request going through. EXPECT_CALL(*cache_timer_, enableTimer(_)); - cache_timer_->callback_(); + cache_timer_->invokeCallback(); prepareFilter(true); EXPECT_EQ(Http::FilterHeadersStatus::Continue, filter_->decodeHeaders(request_headers_, true)); } diff --git a/test/extensions/filters/http/lua/lua_filter_test.cc b/test/extensions/filters/http/lua/lua_filter_test.cc index 2d444fc6f61a5..ea09b1c38e41e 100644 --- a/test/extensions/filters/http/lua/lua_filter_test.cc +++ b/test/extensions/filters/http/lua/lua_filter_test.cc @@ -744,7 +744,8 @@ TEST_F(LuaHttpFilterTest, HttpCall) { { [":method"] = "POST", [":path"] = "/", - [":authority"] = "foo" + [":authority"] = "foo", + ["set-cookie"] = { "flavor=chocolate; Path=/", "variant=chewy; Path=/" } }, "hello world", 5000) @@ -770,6 +771,8 @@ TEST_F(LuaHttpFilterTest, HttpCall) { EXPECT_EQ((Http::TestHeaderMapImpl{{":path", "/"}, {":method", "POST"}, {":authority", "foo"}, + {"set-cookie", "flavor=chocolate; Path=/"}, + {"set-cookie", "variant=chewy; Path=/"}, {"content-length", "11"}}), message->headers()); callbacks = &cb; @@ -959,7 +962,10 @@ TEST_F(LuaHttpFilterTest, HttpCallImmediateResponse) { nil, 5000) request_handle:respond( - {[":status"] = "403"}, + { + [":status"] = "403", + ["set-cookie"] = { "flavor=chocolate; Path=/", "variant=chewy; Path=/" } + }, nil) end )EOF"}; @@ -988,7 +994,9 @@ TEST_F(LuaHttpFilterTest, HttpCallImmediateResponse) { Http::MessagePtr response_message(new Http::ResponseMessageImpl( Http::HeaderMapPtr{new Http::TestHeaderMapImpl{{":status", "200"}}})); - Http::TestHeaderMapImpl expected_headers{{":status", "403"}}; + Http::TestHeaderMapImpl expected_headers{{":status", "403"}, + {"set-cookie", "flavor=chocolate; Path=/"}, + {"set-cookie", "variant=chewy; Path=/"}}; EXPECT_CALL(decoder_callbacks_, encodeHeaders_(HeaderMapEqualRef(&expected_headers), true)); callbacks->onSuccess(std::move(response_message)); } @@ -1668,28 +1676,28 @@ TEST_F(LuaHttpFilterTest, SignatureVerify) { rawsig = signature:fromhex() - ok, error = request_handle:verifySignature(hashFunc, pubkey, rawsig, string.len(rawsig), data, string.len(data)) + ok, error = request_handle:verifySignature(hashFunc, pubkey, rawsig, string.len(rawsig), data, string.len(data)) if ok then request_handle:logTrace("signature is valid") else request_handle:logTrace(error) end - ok, error = request_handle:verifySignature("unknown", pubkey, rawsig, string.len(rawsig), data, string.len(data)) + ok, error = request_handle:verifySignature("unknown", pubkey, rawsig, string.len(rawsig), data, string.len(data)) if ok then request_handle:logTrace("signature is valid") else request_handle:logTrace(error) end - ok, error = request_handle:verifySignature(hashFunc, pubkey, "0000", 4, data, string.len(data)) + ok, error = request_handle:verifySignature(hashFunc, pubkey, "0000", 4, data, string.len(data)) if ok then request_handle:logTrace("signature is valid") else request_handle:logTrace(error) end - ok, error = request_handle:verifySignature(hashFunc, pubkey, rawsig, string.len(rawsig), "xxxx", 4) + ok, error = request_handle:verifySignature(hashFunc, pubkey, rawsig, string.len(rawsig), "xxxx", 4) if ok then request_handle:logTrace("signature is valid") else diff --git a/test/extensions/filters/http/squash/squash_filter_test.cc b/test/extensions/filters/http/squash/squash_filter_test.cc index 534b59b87a740..0800a51499cb1 100644 --- a/test/extensions/filters/http/squash/squash_filter_test.cc +++ b/test/extensions/filters/http/squash/squash_filter_test.cc @@ -330,7 +330,7 @@ TEST_F(SquashFilterTest, Timeout) { EXPECT_CALL(request_, cancel()); EXPECT_CALL(filter_callbacks_, continueDecoding()); - attachmentTimeout_timer_->callback_(); + attachmentTimeout_timer_->invokeCallback(); EXPECT_EQ(Envoy::Http::FilterDataStatus::Continue, filter_->decodeData(buffer, false)); } @@ -359,7 +359,7 @@ TEST_F(SquashFilterTest, CheckRetryPollingAttachment) { // Expect the second get attachment request expectAsyncClientSend(); - retry_timer->callback_(); + retry_timer->invokeCallback(); EXPECT_CALL(filter_callbacks_, continueDecoding()); completeGetStatusRequest("attached"); } @@ -378,7 +378,7 @@ TEST_F(SquashFilterTest, CheckRetryPollingAttachmentOnFailure) { // Expect the second get attachment request expectAsyncClientSend(); - retry_timer->callback_(); + retry_timer->invokeCallback(); EXPECT_CALL(filter_callbacks_, continueDecoding()); completeGetStatusRequest("attached"); @@ -430,10 +430,13 @@ TEST_F(SquashFilterTest, TimerExpiresInline) { initFilter(); attachmentTimeout_timer_ = new NiceMock(&filter_callbacks_.dispatcher_); + // TODO: this is a really synthetic test as the callback can't actually be called under the stack + // of enableTimer. It'd be good to clean this up. EXPECT_CALL(*attachmentTimeout_timer_, enableTimer(config_->attachmentTimeout())) .WillOnce(Invoke([&](const std::chrono::milliseconds&) { + attachmentTimeout_timer_->enabled_ = true; // timer expires inline - attachmentTimeout_timer_->callback_(); + attachmentTimeout_timer_->invokeCallback(); })); EXPECT_CALL(cm_.async_client_, send_(_, _, _)) diff --git a/test/extensions/filters/http/wasm/config_test.cc b/test/extensions/filters/http/wasm/config_test.cc index fdbec78700f4b..2a17b95751b79 100644 --- a/test/extensions/filters/http/wasm/config_test.cc +++ b/test/extensions/filters/http/wasm/config_test.cc @@ -54,7 +54,6 @@ TEST_P(WasmFilterConfigTest, JsonLoadFromFileWASM) { "code": { "filename": "{{ test_rundir }}/test/extensions/filters/http/wasm/test_data/headers_cpp.wasm" }, - "allow_precompiled": true }} )EOF")); diff --git a/test/extensions/filters/http/wasm/test_data/async_call_cpp.wasm b/test/extensions/filters/http/wasm/test_data/async_call_cpp.wasm index 9e8d2146a67a2..4967a39977234 100644 Binary files a/test/extensions/filters/http/wasm/test_data/async_call_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/async_call_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/async_call_cpp.wat b/test/extensions/filters/http/wasm/test_data/async_call_cpp.wat index 8fe5916f78371..79c8e82c8e4bf 100644 --- a/test/extensions/filters/http/wasm/test_data/async_call_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/async_call_cpp.wat @@ -1,9 +1,9 @@ (module (type $0 (func (param i32))) - (type $1 (func (param i32 i32))) - (type $2 (func (param i32) (result i32))) - (type $3 (func (param i32 i32 i32) (result i32))) - (type $4 (func (param i32 i32) (result i32))) + (type $1 (func (param i32) (result i32))) + (type $2 (func (param i32 i32 i32) (result i32))) + (type $3 (func (param i32 i32) (result i32))) + (type $4 (func (param i32 i32))) (type $5 (func (param i32 i32 i32 i32))) (type $6 (func (param i32 i32 i32))) (type $7 (func (param i32 i32 i32 i32 i32))) @@ -21,16 +21,19 @@ (type $19 (func (param f64 i32))) (type $20 (func (param i32 i32) (result i64))) (type $21 (func (param i32 i64))) - (type $22 (func (param i64 i32 i32) (result i32))) - (type $23 (func (param i64 i32) (result i32))) - (type $24 (func (param f64 i32) (result f64))) - (type $25 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $22 (func (param f64 i32) (result f64))) + (type $23 (func (param i64 i32 i32) (result i32))) + (type $24 (func (param i64 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $27 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $28 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -42,17 +45,18 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) (import "env" "_proxy_httpCall" (func $_proxy_httpCall (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "_proxy_setEffectiveContext" (func $_proxy_setEffectiveContext (param i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $29 i32)) - (import "env" "DYNAMICTOP_PTR" (global $30 i32)) - (import "env" "memory" (memory $28 256 256)) - (import "env" "table" (table $27 231 231 funcref)) + (import "env" "__table_base" (global $31 i32)) + (import "env" "DYNAMICTOP_PTR" (global $32 i32)) + (import "env" "memory" (memory $30 256 256)) + (import "env" "table" (table $29 447 447 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -105,46 +109,73 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $31 (mut i32) (i32.const 17264)) - (global $32 (mut i32) (i32.const 5260144)) - (elem $33 $27 (global.get $29) + (global $33 (mut i32) (i32.const 26464)) + (global $34 (mut i32) (i32.const 5269344)) + (elem $35 $29 (global.get $31) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEv $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv - $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv - $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv - $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev - $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev - $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv - $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 $b7 - $b8 $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEPNS0_6__baseISB_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv - $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi - $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EEclEOSA_SD_SD_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ + $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE11__call_implINS0_12__alloc_funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorISC_EES7_EEEEvPKNS0_16__policy_storageEOS6_SJ_SJ_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ $b10 $b10 $b10 $b10 + $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $34 $28 (i32.const 1024) - "\12,\00\00\17,\00\00\1f,\00\00%,") - (data $35 $28 (i32.const 1168) + (data $36 $30 (i32.const 1024) + "\d99\00\00\de9\00\00\e69\00\00\ec9") + (data $37 $30 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $28 (i32.const 1488) + (data $38 $30 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -174,280 +205,426 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $37 $28 (i32.const 3472) + (data $39 $30 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $38 $28 (i32.const 3632) + (data $40 $30 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $39 $28 (i32.const 3681) + (data $41 $30 (i32.const 3681) "\0b") - (data $40 $28 (i32.const 3690) + (data $42 $30 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $41 $28 (i32.const 3739) + (data $43 $30 (i32.const 3739) "\0c") - (data $42 $28 (i32.const 3751) + (data $44 $30 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $43 $28 (i32.const 3797) + (data $45 $30 (i32.const 3797) "\0e") - (data $44 $28 (i32.const 3809) + (data $46 $30 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $45 $28 (i32.const 3855) + (data $47 $30 (i32.const 3855) "\10") - (data $46 $28 (i32.const 3867) + (data $48 $30 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $47 $28 (i32.const 3922) + (data $49 $30 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $48 $28 (i32.const 3971) + (data $50 $30 (i32.const 3971) "\0b") - (data $49 $28 (i32.const 3983) + (data $51 $30 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $50 $28 (i32.const 4029) + (data $52 $30 (i32.const 4029) "\0c") - (data $51 $28 (i32.const 4041) + (data $53 $30 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00p\1a\00\00y\1b\00\00\98\1a\00\00p\1b\00\00p\11\00\00\00\00\00\00\98" - "\1a\00\00_\1b\00\00x\11\00\00\00\00\00\00p\1a\00\00\00\1c\00\00\98\1a\00\00\87\1b\00\00\98\11\00\00\00\00\00\00p\1a\00\00b\1c\00\00p\1a\00\00\00\1d\00\00\98\1a\00\00g\1c\00\00\b8" - "\11\00\00\00\00\00\00p\1a\00\00[\1d\00\00p\1a\00\00\87\1d\00\00\04\1b\00\00\89\1e\00\00\00\00\00\00\01\00\00\00\f8\11\00\00\00\00\00\00p\1a\00\00\c8\1e\00\00\98\1a\00\00\ab(\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00\8d'\00\00 \12\00\00\00\00\00\00\98\1a\00\00J!\00\000\12\00\00\00\00\00\00\98\1a\00\00z!\00\00@\12\00\00\00\00\00\00\98\1a\00\00@\"\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00Z'\00\00\c0\12\00\00\00\00\00\00\04\1b\00\00\18&\00\00\00\00\00\00\01\00\00\00x\12\00\00\00\00\00\00p\1a\00\00\85&\00\00\98\1a\00\00t'\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00\de(\00\00p\11\00\00\00\00\00\00\98\1a\00\00\0d)\00\00\b0\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $52 $28 (i32.const 4800) - "p\1a\00\00\11.\00\00\98\1a\00\00\e21\00\00\e8\12\00\00\00\00\00\00\98\1a\00\00\9e2\00\00\e8\12\00\00\00\00\00\00p\1a\00\00j3\00\00\05") - (data $53 $28 (i32.const 4860) - "1") - (data $54 $28 (i32.const 4884) - "\08\00\00\00\01\00\00\00\9b>") - (data $55 $28 (i32.const 4908) - "\02") - (data $56 $28 (i32.const 4923) - "\ff\ff\ff\ff\ff") - (data $57 $28 (i32.const 4992) - "\05") - (data $58 $28 (i32.const 5004) - "1") - (data $59 $28 (i32.const 5028) - "\09\00\00\00\01\00\00\00\a86\00\00\00\04") - (data $60 $28 (i32.const 5052) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00T\1e\00\00\0d+\00\00|\1e\00\00\04+\00\00p\11\00\00\00\00\00\00|" + "\1e\00\00\f3*\00\00x\11\00\00\00\00\00\00T\1e\00\00\1b+\00\00T\1e\00\00 +\00\00T\1e\00\00L+\00\00\98*\00\00N,\00\00\00\00\00\00\01\00\00\00\c8\11\00\00\00\00\00\00T" + "\1e\00\00\8d,\00\00|\1e\00\00r6\00\00\90\12\00\00\00\00\00\00|\1e\00\00T5\00\00\f0\11\00\00\00\00\00\00|\1e\00\00\11/\00\00\00\12\00\00\00\00\00\00|\1e\00\00A/\00\00\10" + "\12\00\00\00\00\00\00|\1e\00\00\070\00\00\90\12\00\00\00\00\00\00|\1e\00\00!5\00\00\90\12\00\00\00\00\00\00\98*\00\00\df3\00\00\00\00\00\00\01\00\00\00H\12\00\00\00\00\00\00T" + "\1e\00\00L4\00\00|\1e\00\00;5\00\00\90\12\00\00\00\00\00\00|\1e\00\00\a56\00\00p\11\00\00\00\00\00\00|\1e\00\00\d46\00\00\80\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $54 $30 (i32.const 4752) + "T\1e\00\00\d8;\00\00|\1e\00\00\a9?\00\00\b8\12\00\00\00\00\00\00|\1e\00\00e@\00\00\b8\12\00\00\00\00\00\00T\1e\00\001A\00\00\05") + (data $55 $30 (i32.const 4812) + "-") + (data $56 $30 (i32.const 4836) + "\08\00\00\00\01\00\00\00\98Z\00\00\00\04") + (data $57 $30 (i32.const 4860) "\01") - (data $61 $28 (i32.const 5067) + (data $58 $30 (i32.const 4875) "\n\ff\ff\ff\ff") - (data $62 $28 (i32.const 5172) + (data $59 $30 (i32.const 4944) + "\05") + (data $60 $30 (i32.const 4956) + "-") + (data $61 $30 (i32.const 4980) + "\09\00\00\00\01\00\00\00\86b") + (data $62 $30 (i32.const 5004) + "\02") + (data $63 $30 (i32.const 5019) + "\ff\ff\ff\ff\ff") + (data $64 $30 (i32.const 5124) "\n") - (data $63 $28 (i32.const 5211) + (data $65 $30 (i32.const 5163) "\ff\ff\ff\ff\ff") - (data $64 $28 (i32.const 5280) - "\98\1a\00\00\e33\00\00\b0\14\00\00\00\00\00\00p\1a\00\00\a24\00\00\98\1a\00\00\025\00\00\c8\14\00\00\00\00\00\00\98\1a\00\00\af4\00\00\d8\14\00\00\00\00\00\00p\1a\00\00\d04\00\00" - "\98\1a\00\00\dd4\00\00\b8\14\00\00\00\00\00\00\98\1a\00\00\e45\00\00\b0\14\00\00\00\00\00\00\98\1a\00\00\f45\00\00\f0\14\00\00\00\00\00\00\98\1a\00\00)6\00\00\c8\14\00\00\00\00\00\00" - "\98\1a\00\00\056\00\00\10\15\00\00\00\00\00\00\98\1a\00\00K6\00\00\c8\14\00\00\00\00\00\00\e8\1a\00\00s6\00\00\e8\1a\00\00u6\00\00\98\1a\00\00w6\00\00\b8\14") - (data $65 $28 (i32.const 5476) + (data $66 $30 (i32.const 5232) + "|\1e\00\00\a8A\00\00\80\14\00\00\00\00\00\00T\1e\00\00gB\00\00|\1e\00\00\c7B\00\00\98\14\00\00\00\00\00\00|\1e\00\00tB\00\00\a8\14\00\00\00\00\00\00T\1e\00\00\95B\00\00" + "|\1e\00\00\a2B\00\00\88\14\00\00\00\00\00\00|\1e\00\00WD\00\00\d0\14\00\00\00\00\00\00T\1e\00\00\86D\00\00|\1e\00\00:E\00\00\d0\14\00\00\00\00\00\00|\1e\00\00}E\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\caE\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\10F\00\00\d0\14\00\00\00\00\00\00|\1e\00\00@F\00\00\d0\14\00\00\00\00\00\00|\1e\00\00~F\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\afF\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\ffF\00\00\d0\14\00\00\00\00\00\00|\1e\00\008G\00\00\d0\14\00\00\00\00\00\00|\1e\00\00sG\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\afG\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\f2G\00\00\d0\14\00\00\00\00\00\00|\1e\00\00 H\00\00\d0\14\00\00\00\00\00\00|\1e\00\00SH\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\0fI\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\00\00\91>\00\00\10\0d\00\00\f0\12\00\00\80\13") - (data $69 $28 (i32.const 6680) - "\1c<") - (data $70 $28 (i32.const 6740) - "\a0\14\00\00'\00\00\00(\00\00\002\00\00\00\02\00\00\00\00\00\00\00\b8\14\00\00)\00\00\00*\00\00\00+\00\00\00,\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\00\00\00\00" - "\e0\14\00\00)\00\00\00-\00\00\00+\00\00\00,\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\00\00\00\00\f0\14\00\00.\00\00\00/\00\00\003") - (data $71 $28 (i32.const 6865) - "\15\00\00.\00\00\000\00\00\003\00\00\00\00\00\00\000\15\00\00)\00\00\001\00\00\00+\00\00\00,\00\00\00\0c\00\00\00\00\00\00\00P\15\00\00)\00\00\002\00\00\00+\00\00\00," - "\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\06\00\00\00cluster\00:method\00:path\00:authority\00foo\00hello wo" - "rld\00trail\00cow\0014ExampleContext\007Context\0011ContextBase\00NSt3__210_" - "_function6__funcI3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7Contex" - "tNS_14default_deleteIS6_EEEEjP11RootContextEEE\00NSt3__210__functi" - "on6__baseIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP" - "11RootContextEEE\003$_0\00NSt3__210__function6__funcIZN14ExampleCont" - "ext16onRequestHeadersEvE3$_1NS_9allocatorIS3_EEFvNS_10unique_ptr" - "I8WasmDataNS_14default_deleteIS7_EEEESA_SA_EEE\00NSt3__210__functi" - "on6__baseIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEE" - "S6_S6_EEE\00ZN14ExampleContext16onRequestHeadersEvE3$_1\00N6google8p" - "rotobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_s" - "tringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMe" - "tadataWithArenaLiteEE9ContainerE\00/usr/local/include/google/proto" - "buf/arenastring.h\00CHECK failed: initial_value != NULL: \00NSt3__21" - "2basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221" - "__basic_string_commonILb1EEE\00/home/jplev_google_com/envoy/api/wa" - "sm/cpp/struct_lite.pb.cc\00/usr/local/include/google/protobuf/repe" - "ated_field.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index" - ") < (current_size_): \00/usr/local/include/google/protobuf/map.h\00C" - "HECK failed: (bucket_index_ & 1) == (0): \00CHECK failed: m_->inde" - "x_of_first_non_null_ == m_->num_buckets_ || m_->table_[m_->index" - "_of_first_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CH" - "ECK failed: node_ != NULL && m_ != NULL: \00google.protobuf.Value." - "string_value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed" - ": (&from) != (this): \00CHECK failed: (&other) != (this): \00N6googl" - "e8protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8inter" - "nal12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212bas" - "ic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEL" - "NS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf" - "8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11" - "MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9all" - "ocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11E" - "Li0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntr" - "yIsNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK f" - "ailed: GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_firs" - "t_non_null_ == num_buckets_ || table_[index_of_first_non_null_] " - "!= NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end():" - " \00CHECK failed: (count) <= (kMaxLength): \00CHECK failed: (result." - "bucket_index_) == (b & ~static_cast(1)): \00CHECK faile" - "d: (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsT" - "ree(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (t" - "ree->size()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize" - "): \00CHECK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1" - ")) == (0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) " - "== 0: \00N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_t" - "raitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8pro" - "tobuf4hashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allo" - "catorIcEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/loca" - "l/include/google/protobuf/stubs/casts.h\00down_cast\00google.protobu" - "f.Struct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6go" - "ogle8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_Do" - "NotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_trait" - "sIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldT" - "ypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00" - "google.protobuf.ListValue\00N6google8protobuf9ListValueE\00google.pr" - "otobuf.Value\0011RootContext\00no context factory for root_id: \00N6go" - "ogle8protobuf14FatalExceptionE\00google/protobuf/stubs/common.cc\00T" - "his program requires version \00%d.%d.%d\00 of the Protocol Buffer r" - "untime library, but the installed version is \00. Please update y" - "our library. If you compiled the program yourself, make sure th" - "at your headers are from the same version of Protocol Buffers as" - " your link-time library. (Version verification failed in \"\00\".)\00" - "This program was compiled against version \00 of the Protocol Buff" - "er runtime library, which is not compatible with the installed v" - "ersion (\00). Contact the program author for an update. If you c" - "ompiled the program yourself, make sure that your headers are fr" - "om the same version of Protocol Buffers as your link-time librar" - "y. (Version verification failed in \"\00[libprotobuf %s %s:%d] %s\n" - "\00INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' e" - "xceeds maximum supported size\00%d\00%u\00google/protobuf/arena.cc\00CHE" - "CK failed: (min_bytes) <= (std::numeric_limits::max() - " - "kBlockHeaderSize): \00google/protobuf/generated_message_util.cc\00No" - "t implemented field number \00 with type \00CHECK failed: (scc->visi" - "t_status.load(std::memory_order_relaxed)) == (SCCInfoBase::kRunn" - "ing): \00google/protobuf/message_lite.cc\00CHECK failed: !coded_out." - "HadError(): \00(cannot determine missing fields for lite message)\00" - "N6google8protobuf11MessageLiteE\00google/protobuf/repeated_field.c" - "c\00CHECK failed: (new_size) <= ((std::numeric_limits::max" - "() - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requested" - " size is too large to fit into size_t.\00google/protobuf/wire_form" - "at_lite.cc\00CHECK failed: (value.size()) <= (kint32max): \00seriali" - "zing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 data wh" - "en \00 a protocol \00buffer. Use the 'bytes' type if you intend to s" - "end raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed" - ": (buffer_size) >= (0): \00A protocol message was rejected because" - " it was too big (more than \00 bytes). To increase the limit (or " - "to disable these warnings), see CodedInputStream::SetTotalBytesL" - "imit() in google/protobuf/io/coded_stream.h.\00google/protobuf/io/" - "zero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHE" - "CK failed: (last_returned_size_) > (0): \00BackUp() can only be ca" - "lled after a successful Next().\00CHECK failed: (count) <= (last_r" - "eturned_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK " - "failed: target_ != NULL: \00CHECK failed: (count) <= (target_->siz" - "e()): \00Cannot allocate buffer larger than kint32max for \00StringO" - "utputStream.\00N6google8protobuf2io18StringOutputStreamE\00google/pr" - "otobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't " - "support aliasing. Reaching here usually means a ZeroCopyOutputSt" - "ream implementation bug.\00N6google8protobuf2io20ZeroCopyOutputStr" - "eamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::" - "bad_function_call\00NSt3__217bad_function_callE\00mutex lock failed\00" - "terminating with %s exception of type %s: %s\00terminating with %s" - " exception of type %s\00terminating with %s foreign exception\00term" - "inating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00S" - "t9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117" - "__class_type_infoE\00pthread_once failure in __cxa_get_globals_fas" - "t()\00cannot create pthread key for __cxa_get_globals()\00cannot zer" - "o out thread value for __cxa_get_globals()\00terminate_handler une" - "xpectedly returned\00St11logic_error\00St12length_error\00N10__cxxabiv" - "119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE\00N10__c" - "xxabiv123__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__vmi_class" - "_type_infoE") + "\04\00\00\00\05\00\00\00\06") + (data $68 $30 (i32.const 6600) + "\01\00\00\00H\19\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02") + (data $69 $30 (i32.const 6652) + "\98\11") + (data $70 $30 (i32.const 6668) + "\a0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $71 $30 (i32.const 6692) + "\f0\11\00\00\08\00\00\00\09\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00P\12\00\00\0b\00\00\00\0c\00\00\00\05\00\00\00\14\00\00\00\06\00\00\00\15\00\00\00\16\00\00\00\0d\00\00\00\17\00\00\00" + "\02\00\00\00\06\00\00\00\07\00\00\00\18\00\00\00\07\00\00\00\05\00\00\00\19\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\d0\11\00\00\0e\00\00\00\0f\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00" + "\1b\00\00\00\1c\00\00\00\10\00\00\00\1d\00\00\00\02\00\00\00\09\00\00\00\09\00\00\00\1e\00\00\00\n\00\00\00\05\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\e0\11\00\00\08\00\00\00" + "\11\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00" + "\11\00\00\00 \00\00\00!\00\00\00\00\00\00\00 \12\00\00\12\00\00\00\13\00\00\00\0b\00\00\00\"\00\00\00\n\00\00\00#\00\00\00$\00\00\00\14\00\00\00%\00\00\00\02\00\00\00\0c\00\00\00" + "\0b\00\00\00&\00\00\00\0d\00\00\00\05\00\00\00'\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\10\12\00\00\08\00\00\00\15\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00" + "\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00`\12\00\00\16\00\00\00" + "\17\00\00\00(\00\00\00)\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\10\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00\19\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\12\00\00\1a\00\00\00\1b\00\00\00+\00\00\00\00\00\00\00\98\12\00\00\1c\00\00\00\1d\00\00\00\05\00\00\00\14\00\00\00\01\00\00\00\06\00\00\00" + ",\00\00\00\00\00\00\00\a8\12\00\00\1c\00\00\00\1e\00\00\00\07\00\00\00\15\00\00\00\02\00\00\00\06\00\00\00,") + (data $72 $30 (i32.const 7441) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00xb\00\00\86b\00\00\10\0d\00\00\c0\12\00\00P\13") + (data $73 $30 (i32.const 7680) + "\0c`") + (data $74 $30 (i32.const 7740) + "p\14\00\00\1f\00\00\00 \00\00\00.\00\00\00\00\00\00\00\88\14\00\00!\00\00\00\"\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\b0\14\00\00" + "!\00\00\00%\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\c0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00'\00\00\00\00\00\00\00\d0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00&\00\00\00(\00\00\00\00\00\00\00\d8\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00&\00\00\00)\00\00\00\00\00\00\00\e8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00*\00\00\00\00\00\00\00\f8\14\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00&\00\00\00+\00\00\00\00\00\00\00" + "\08\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00&\00\00\00,\00\00\00\00\00\00\00\18\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + " \00\00\00\17\00\00\00!\00\00\00&\00\00\00-\00\00\00\00\00\00\00(\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00&\00\00\00.\00\00\00" + "\00\00\00\008\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00&\00\00\00/\00\00\00\00\00\00\00H\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00%\00\00\00\17\00\00\00\18\00\00\00&\00\00\000\00\00\00\00\00\00\00X\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "1\00\00\00\00\00\00\00h\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00&\00\00\002\00\00\00\00\00\00\00x\15\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00&\00\00\003\00\00\00\00\00\00\00\88\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\004\00\00\00\00\00\00\00\98\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00&\00\00\005\00\00\00\00\00\00\00\a8\15\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00&\00\00\006\00\00\00\00\00\00\00\b8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\007\00\00\00\00\00\00\00\c8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00&\00\00\008\00\00\00\00\00\00\00\d8\15\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00&\00\00\009\00\00\00\00\00\00\00\e8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00:\00\00\00\00\00\00\00\f8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00&\00\00\00;\00\00\00\00\00\00\00" + "\08\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00&\00\00\00<\00\00\00\00\00\00\00\18\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "2\00\00\00\17\00\00\00\18\00\00\00&\00\00\00=\00\00\00\00\00\00\00(\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00&\00\00\00>\00\00\00" + "\00\00\00\008\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00&\00\00\00?\00\00\00\00\00\00\00H\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\005\00\00\00\17\00\00\00\18\00\00\00&\00\00\00@\00\00\00\00\00\00\00X\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "A\00\00\00\00\00\00\00h\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00&\00\00\00B\00\00\00\00\00\00\00x\16\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00&\00\00\00C\00\00\00\00\00\00\00\88\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\00D\00\00\00\00\00\00\00\98\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00&\00\00\00E\00\00\00\00\00\00\00\a8\16\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00&\00\00\00F\00\00\00\00\00\00\00\b8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00G\00\00\00\00\00\00\00\c8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00&\00\00\00H\00\00\00\00\00\00\00\d8\16\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00&\00\00\00I\00\00\00\00\00\00\00\e8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00" + "\17\00\00\00B\00\00\00&\00\00\00J\00\00\00\00\00\00\00\f8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00&\00\00\00K\00\00\00\00\00\00\00" + "\08\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00&\00\00\00L\00\00\00\00\00\00\00\18\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "E\00\00\00\17\00\00\00\18\00\00\00&\00\00\00M\00\00\00\00\00\00\00(\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00&\00\00\00N\00\00\00" + "\00\00\00\008\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00&\00\00\00O\00\00\00\00\00\00\00H\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00H\00\00\00\17\00\00\00\18\00\00\00&\00\00\00P\00\00\00\00\00\00\00X\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "Q\00\00\00\00\00\00\00h\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00&\00\00\00R\00\00\00\00\00\00\00x\17\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00&\00\00\00S\00\00\00\00\00\00\00\88\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00" + "&\00\00\00T\00\00\00\00\00\00\00\98\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00&\00\00\00U\00\00\00\00\00\00\00\a8\17\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00&\00\00\00V\00\00\00\00\00\00\00\b8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00W\00\00\00\00\00\00\00\c8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00&\00\00\00X\00\00\00\00\00\00\00\d8\17\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00&\00\00\00Y\00\00\00\00\00\00\00\e8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00" + "\17\00\00\00U\00\00\00&\00\00\00Z\00\00\00\00\00\00\00\f8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00&\00\00\00[\00\00\00\00\00\00\00" + "\08\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00&\00\00\00\\\00\00\00\00\00\00\00\18\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00" + "Z\00\00\00[\00\00\00\18\00\00\00&\00\00\00]\00\00\00\00\00\00\00(\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00&\00\00\00^\00\00\00" + "\00\00\00\008\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00&\00\00\00_\00\00\00\00\00\00\00H\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00" + "\0f\00\00\00^\00\00\00_\00\00\00\18\00\00\00&\00\00\00`\00\00\00\00\00\00\00X\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "a\00\00\00\00\00\00\00h\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00&\00\00\00b\00\00\00\00\00\00\00x\18\00\00 \00\00\00\0d\00\00\00" + "!\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00&\00\00\00c\00\00\00\00\00\00\00\88\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\00d\00\00\00\00\00\00\00\98\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00&\00\00\00e\00\00\00\00\00\00\00\a8\18\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00&\00\00\00f\00\00\00\00\00\00\00\b8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00g\00\00\00\00\00\00\00\c8\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00&\00\00\00h\00\00\00\00\00\00\00\d8\18\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00&\00\00\00i\00\00\00\00\00\00\00\e8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00j\00\00\00\00\00\00\00\f8\18\00\00k\00\00\00l\00\00\00/\00\00\00\00\00\00\00\08\19\00\00k\00\00\00m\00\00\00/\00\00\00\00\00\00\008\19\00\00" + "!\00\00\00n\00\00\00#\00\00\00$\00\00\00\0c\00\00\00\00\00\00\00`\19\00\00!\00\00\00o\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00clus" + "ter\00:method\00:path\00:authority\00foo\00hello world\00trail\00cow\0014Example" + "Context\007Context\0011ContextBase\003$_0\00ZN14ExampleContext16onReques" + "tHeadersEvE3$_1\00N6google8protobuf8internal29InternalMetadataWith" + "ArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9alloc" + "atorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerE\00/usr/" + "local/include/google/protobuf/arenastring.h\00CHECK failed: initia" + "l_value != NULL: \00NSt3__212basic_stringIcNS_11char_traitsIcEENS_" + "9allocatorIcEEEE\00NSt3__221__basic_string_commonILb1EEE\00/home/pio" + "trsikora/Google/envoy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/" + "include/google/protobuf/repeated_field.h\00CHECK failed: (index) >" + "= (0): \00CHECK failed: (index) < (current_size_): \00/usr/local/inc" + "lude/google/protobuf/map.h\00CHECK failed: (bucket_index_ & 1) == " + "(0): \00CHECK failed: m_->index_of_first_non_null_ == m_->num_buck" + "ets_ || m_->table_[m_->index_of_first_non_null_] != NULL: \00CHECK" + " failed: !tree->empty(): \00CHECK failed: node_ != NULL && m_ != N" + "ULL: \00google.protobuf.Value.string_value\00google.protobuf.Struct." + "FieldsEntry.key\00CHECK failed: (&from) != (this): \00CHECK failed: " + "(&other) != (this): \00N6google8protobuf27Struct_FieldsEntry_DoNot" + "UseE\00N6google8protobuf8internal12MapEntryLiteINS0_27Struct_Field" + "sEntry_DoNotUseENSt3__212basic_stringIcNS4_11char_traitsIcEENS4_" + "9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD" + "_11ELi0EEE\00N6google8protobuf8internal12MapEntryImplINS0_27Struct" + "_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcN" + "S5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFo" + "rmatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (thi" + "s): \00CHECK failed: TableEntryIsNonEmptyList(b): \00CHECK failed: T" + "ableEntryIsTree(b): \00CHECK failed: GetArenaNoVirtual() == NULL: " + "\00CHECK failed: index_of_first_non_null_ == num_buckets_ || table" + "_[index_of_first_non_null_] != NULL: \00CHECK failed: find(*KeyPtr" + "FromNodePtr(node)) == end(): \00CHECK failed: (count) <= (kMaxLeng" + "th): \00CHECK failed: (result.bucket_index_) == (b & ~static_cast<" + "size_type>(1)): \00CHECK failed: (table_[b]) == (table_[b ^ 1]): \00" + "CHECK failed: !TableEntryIsTree(b) && !TableEntryIsTree(b ^ 1): " + "\00CHECK failed: (count) == (tree->size()): \00CHECK failed: (new_nu" + "m_buckets) >= (kMinTableSize): \00CHECK failed: n >= kMinTableSize" + ": \00CHECK failed: (n & (n - 1)) == (0): \00CHECK failed: table_[b] " + "== table_[b + 1] && (b & 1) == 0: \00N6google8protobuf3MapINSt3__2" + "12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5Va" + "lueEE8InnerMapE\00N6google8protobuf4hashINSt3__212basic_stringIcNS" + "2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == NULL || dynamic_c" + "ast(f) != NULL\00/usr/local/include/google/protobuf/stubs/cast" + "s.h\00down_cast\00google.protobuf.Struct\00N6google8protobuf6StructE\00N" + "6google8protobuf5ValueE\00N6google8protobuf8internal12MapEntryImpl" + "INS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212ba" + "sic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueE" + "LNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE" + "\00CHECK failed: (n) >= (0): \00google.protobuf.ListValue\00N6google8p" + "rotobuf9ListValueE\00google.protobuf.Value\0011RootContext\00no contex" + "t factory for root_id: \00N6google8protobuf14FatalExceptionE\00googl" + "e/protobuf/stubs/common.cc\00This program requires version \00%d.%d." + "%d\00 of the Protocol Buffer runtime library, but the installed ve" + "rsion is \00. Please update your library. If you compiled the pr" + "ogram yourself, make sure that your headers are from the same ve" + "rsion of Protocol Buffers as your link-time library. (Version v" + "erification failed in \"\00\".)\00This program was compiled against ve" + "rsion \00 of the Protocol Buffer runtime library, which is not com" + "patible with the installed version (\00). Contact the program aut" + "hor for an update. If you compiled the program yourself, make s" + "ure that your headers are from the same version of Protocol Buff" + "ers as your link-time library. (Version verification failed in " + "\"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator<" + "T>::allocate(size_t n) 'n' exceeds maximum supported size\00%d\00%u\00" + "google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= (std::nume" + "ric_limits::max() - kBlockHeaderSize): \00google/protobuf/" + "generated_message_util.cc\00Not implemented field number \00 with ty" + "pe \00CHECK failed: (scc->visit_status.load(std::memory_order_rela" + "xed)) == (SCCInfoBase::kRunning): \00google/protobuf/message_lite." + "cc\00CHECK failed: !coded_out.HadError(): \00(cannot determine missi" + "ng fields for lite message)\00N6google8protobuf11MessageLiteE\00goog" + "le/protobuf/repeated_field.cc\00CHECK failed: (new_size) <= ((std:" + ":numeric_limits::max() - kRepHeaderSize) / sizeof(old_re" + "p->elements[0])): \00Requested size is too large to fit into size_" + "t.\00google/protobuf/wire_format_lite.cc\00CHECK failed: (value.size" + "()) <= (kint32max): \00serializing\00parsing\00 '%s'\00String field\00 con" + "tains invalid \00UTF-8 data when \00 a protocol \00buffer. Use the 'by" + "tes' type if you intend to send raw \00bytes. \00google/protobuf/io/" + "coded_stream.cc\00CHECK failed: (buffer_size) >= (0): \00A protocol " + "message was rejected because it was too big (more than \00 bytes)." + " To increase the limit (or to disable these warnings), see Code" + "dInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_s" + "tream.h.\00google/protobuf/io/zero_copy_stream_impl_lite.cc\00CHECK " + "failed: (count) >= (0): \00CHECK failed: (last_returned_size_) > (" + "0): \00BackUp() can only be called after a successful Next().\00CHEC" + "K failed: (count) <= (last_returned_size_): \00N6google8protobuf2i" + "o17ArrayOutputStreamE\00CHECK failed: target_ != NULL: \00CHECK fail" + "ed: (count) <= (target_->size()): \00Cannot allocate buffer larger" + " than kint32max for \00StringOutputStream.\00N6google8protobuf2io18S" + "tringOutputStreamE\00google/protobuf/io/zero_copy_stream.cc\00This Z" + "eroCopyOutputStream doesn't support aliasing. Reaching here usua" + "lly means a ZeroCopyOutputStream implementation bug.\00N6google8pr" + "otobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0" + "x 0x\00inf\00INF\00nan\00NAN\00std::bad_function_call\00NSt3__217bad_functio" + "n_callE\00mutex lock failed\00terminating with %s exception of type " + "%s: %s\00terminating with %s exception of type %s\00terminating with" + " %s foreign exception\00terminating\00uncaught\00St9exception\00N10__cxx" + "abiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv120__si_class_" + "type_infoE\00N10__cxxabiv117__class_type_infoE\00terminate_handler u" + "nexpectedly returned\00_Z\00___Z\00_block_invoke\00invocation function f" + "or block in \00void\00bool\00char\00signed char\00unsigned char\00short\00unsi" + "gned short\00int\00unsigned int\00long\00unsigned long\00long long\00__int12" + "8\00unsigned __int128\00float\00long double\00__float128\00...\00decimal64\00d" + "ecimal128\00decimal32\00decimal16\00char32_t\00char16_t\00auto\00decltype(au" + "to)\00std::nullptr_t\00[abi:\00]\00N12_GLOBAL__N_116itanium_demangle10Ab" + "iTagAttrE\00N12_GLOBAL__N_116itanium_demangle4NodeE\00allocator\00basi" + "c_string\00string\00istream\00ostream\00iostream\00std::allocator\00std::bas" + "ic_string\00std::string\00std::istream\00std::ostream\00std::iostream\00N1" + "2_GLOBAL__N_116itanium_demangle19SpecialSubstitutionE\00 imaginary" + "\00N12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeE\00 compl" + "ex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_116itanium_demangle13ReferenceTypeE\00" + "objc_object\00*\00id<\00>\00N12_GLOBAL__N_116itanium_demangle11PointerTy" + "peE\00N12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsE\00<\00," + " \00N12_GLOBAL__N_116itanium_demangle12TemplateArgsE\00N12_GLOBAL__N" + "_116itanium_demangle13ParameterPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00u" + "ll\00N12_GLOBAL__N_116itanium_demangle15IntegerCastExprE\00%LaL\00N12_" + "GLOBAL__N_116itanium_demangle16FloatLiteralImplIeEE\00%a\00N12_GLOBA" + "L__N_116itanium_demangle16FloatLiteralImplIdEE\00%af\00N12_GLOBAL__N" + "_116itanium_demangle16FloatLiteralImplIfEE\00true\00false\00N12_GLOBAL" + "__N_116itanium_demangle8BoolExprE\00-\00N12_GLOBAL__N_116itanium_dem" + "angle14IntegerLiteralE\00N12_GLOBAL__N_116itanium_demangle20Templa" + "teArgumentPackE\00gs\00&=\00=\00alignof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<" + "<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typ" + "eid (\00throw\00throw \00N12_GLOBAL__N_116itanium_demangle9ThrowExprE\00" + "N12_GLOBAL__N_116itanium_demangle12InitListExprE\00N12_GLOBAL__N_1" + "16itanium_demangle13NodeArrayNodeE\00sizeof... (\00N12_GLOBAL__N_116" + "itanium_demangle13EnclosingExprE\00sizeof...(\00N12_GLOBAL__N_116ita" + "nium_demangle22ParameterPackExpansionE\00N12_GLOBAL__N_116itanium_" + "demangle19SizeofParamPackExprE\00static_cast\00>(\00N12_GLOBAL__N_116i" + "tanium_demangle8CastExprE\00reinterpret_cast\00) ? (\00) : (\00N12_GLOBA" + "L__N_116itanium_demangle15ConditionalExprE\00noexcept (\00nw\00na\00pi\00:" + ":operator \00new\00[]\00N12_GLOBAL__N_116itanium_demangle7NewExprE\00N12" + "_GLOBAL__N_116itanium_demangle11PostfixExprE\00 ... \00 = \00N12_GLOBA" + "L__N_116itanium_demangle15BracedRangeExprE\00N12_GLOBAL__N_116itan" + "ium_demangle10BracedExprE\00_GLOBAL__N\00(anonymous namespace)\00N12_G" + "LOBAL__N_116itanium_demangle8NameTypeE\00)[\00N12_GLOBAL__N_116itani" + "um_demangle18ArraySubscriptExprE\00.\00N12_GLOBAL__N_116itanium_dema" + "ngle10MemberExprE\00srN\00sr\00::\00N12_GLOBAL__N_116itanium_demangle19G" + "lobalQualifiedNameE\00dn\00on\00operator&&\00operator&\00operator&=\00operat" + "or=\00operator()\00operator,\00operator~\00operator delete[]\00operator*\00o" + "perator/\00operator/=\00operator^\00operator^=\00operator==\00operator>=\00o" + "perator>\00operator[]\00operator<=\00operator<<\00operator<<=\00operator<\00" + "operator-\00operator-=\00operator*=\00operator--\00operator new[]\00operat" + "or!=\00operator!\00operator new\00operator||\00operator|\00operator|=\00oper" + "ator->*\00operator+\00operator+=\00operator++\00operator->\00operator?\00ope" + "rator%\00operator%=\00operator>>\00operator>>=\00operator<=>\00operator\"\" " + "\00N12_GLOBAL__N_116itanium_demangle15LiteralOperatorE\00operator de" + "lete\00operator \00N12_GLOBAL__N_116itanium_demangle22ConversionOper" + "atorTypeE\00N12_GLOBAL__N_116itanium_demangle8DtorNameE\00N12_GLOBAL" + "__N_116itanium_demangle13QualifiedNameE\00dynamic_cast\00delete\00[] \00" + "N12_GLOBAL__N_116itanium_demangle10DeleteExprE\00cv\00)(\00N12_GLOBAL_" + "_N_116itanium_demangle14ConversionExprE\00N12_GLOBAL__N_116itanium" + "_demangle8CallExprE\00const_cast\00N12_GLOBAL__N_116itanium_demangle" + "10PrefixExprE\00) \00 (\00N12_GLOBAL__N_116itanium_demangle10BinaryExp" + "rE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00m" + "L\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00rS\00... \00 ...\00N12_GLOBAL__N_116itani" + "um_demangle8FoldExprE\00fp\00fL\00N12_GLOBAL__N_116itanium_demangle13F" + "unctionParamE\00N12_GLOBAL__N_116itanium_demangle24ForwardTemplate" + "ReferenceE\00Ts\00struct\00Tu\00union\00Te\00enum\00N12_GLOBAL__N_116itanium_d" + "emangle22ElaboratedTypeSpefTypeE\00StL\00St\00std::\00N12_GLOBAL__N_116i" + "tanium_demangle16StdQualifiedNameE\00DC\00N12_GLOBAL__N_116itanium_d" + "emangle21StructuredBindingNameE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__" + "N_116itanium_demangle15ClosureTypeNameE\00'unnamed\00'\00N12_GLOBAL__N" + "_116itanium_demangle15UnnamedTypeNameE\00string literal\00N12_GLOBAL" + "__N_116itanium_demangle9LocalNameE\00std\00N12_GLOBAL__N_116itanium_" + "demangle12CtorDtorNameE\00basic_istream\00basic_ostream\00basic_iostre" + "am\00std::basic_string, std::allocato" + "r >\00std::basic_istream >\00std:" + ":basic_ostream >\00std::basic_iostrea" + "m >\00N12_GLOBAL__N_116itanium_demang" + "le27ExpandedSpecialSubstitutionE\00N12_GLOBAL__N_116itanium_demang" + "le10NestedNameE\00::*\00N12_GLOBAL__N_116itanium_demangle19PointerTo" + "MemberTypeE\00[\00N12_GLOBAL__N_116itanium_demangle9ArrayTypeE\00Dv\00 v" + "ector[\00N12_GLOBAL__N_116itanium_demangle10VectorTypeE\00pixel vect" + "or[\00N12_GLOBAL__N_116itanium_demangle15PixelVectorTypeE\00decltype" + "(\00double\00unsigned long long\00objcproto\00 const\00 volatile\00 restrict" + "\00N12_GLOBAL__N_116itanium_demangle8QualTypeE\00N12_GLOBAL__N_116it" + "anium_demangle17VendorExtQualTypeE\00N12_GLOBAL__N_116itanium_dema" + "ngle13ObjCProtoNameE\00Do\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBA" + "L__N_116itanium_demangle12FunctionTypeE\00throw(\00N12_GLOBAL__N_116" + "itanium_demangle20DynamicExceptionSpecE\00noexcept(\00N12_GLOBAL__N_" + "116itanium_demangle12NoexceptSpecE\00N12_GLOBAL__N_116itanium_dema" + "ngle11SpecialNameE\00N12_GLOBAL__N_116itanium_demangle9DotSuffixE\00" + "Ua9enable_ifI\00N12_GLOBAL__N_116itanium_demangle16FunctionEncodin" + "gE\00 [enable_if:\00N12_GLOBAL__N_116itanium_demangle12EnableIfAttrE" + "\00thread-local wrapper routine for \00reference temporary for \00guar" + "d variable for \00non-virtual thunk to \00virtual thunk to \00thread-l" + "ocal initialization routine for \00construction vtable for \00-in-\00N" + "12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameE\00covaria" + "nt return thunk to \00typeinfo name for \00typeinfo for \00VTT for \00vt" + "able for \00St11logic_error\00St12length_error\00N10__cxxabiv117__pbas" + "e_type_infoE\00N10__cxxabiv119__pointer_type_infoE\00N10__cxxabiv123" + "__fundamental_type_infoE\00v\00c\00h\00N10__cxxabiv121__vmi_class_type_i" + "nfoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_async_call_cpp_cc - i32.const 15208 + i32.const 24408 i64.const 0 i64.store align=4 - i32.const 15216 + i32.const 24416 i64.const 0 i64.store align=4 - i32.const 15224 + i32.const 24424 i32.const 1065353216 i32.store - i32.const 15228 + i32.const 24428 i64.const 0 i64.store align=4 - i32.const 15236 + i32.const 24436 i64.const 0 i64.store align=4 - i32.const 15244 + i32.const 24444 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc ) - (func $stackAlloc (type $2) + (func $stackAlloc (type $1) (param $0 i32) (result i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 local.get $0 - global.get $31 + global.get $33 i32.add - global.set $31 - global.get $31 + global.set $33 + global.get $33 i32.const 15 i32.add i32.const -16 i32.and - global.set $31 + global.set $33 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $31 + global.get $33 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $31 + global.set $33 ) - (func $establishStackSpace (type $1) + (func $establishStackSpace (type $4) (param $0 i32) (param $1 i32) local.get $0 - global.set $31 + global.set $33 local.get $1 - global.set $32 + global.set $34 ) - (func $__ZN14ExampleContext16onRequestHeadersEv (type $2) + (func $__ZN14ExampleContext16onRequestHeadersEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -461,42 +638,42 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 192 + global.get $33 + local.set $5 + global.get $33 + i32.const 160 i32.add - global.set $31 - local.get $2 - i32.const 176 + global.set $33 + local.get $5 + i32.const 152 i32.add - local.set $8 - local.get $2 - i32.const 168 + local.set $3 + local.get $5 + i32.const 144 + i32.add + local.set $7 + local.get $5 + i32.const 140 i32.add local.set $9 - local.get $2 - i32.const 164 + local.get $5 + i32.const 40 i32.add - local.set $10 - local.get $2 - i32.const -64 - i32.sub local.set $6 - local.get $2 - i32.const 40 + local.get $5 + i32.const 16 i32.add - local.set $4 + local.set $2 local.get $0 i32.const -64 i32.sub i32.load - local.set $11 + local.set $10 local.get $0 i32.load offset=68 - local.set $7 - local.get $2 - i32.const 80 + local.set $11 + local.get $5 + i32.const 56 i32.add local.tee $1 i32.const 0 @@ -505,15 +682,15 @@ i32.const 7 i32.store8 offset=11 local.get $1 - i32.const 6956 + i32.const 10944 i32.load align=1 i32.store align=1 local.get $1 - i32.const 6960 + i32.const 10948 i32.load16_s align=1 i32.store16 offset=4 align=1 local.get $1 - i32.const 6962 + i32.const 10950 i32.load8_s i32.store8 offset=6 local.get $1 @@ -544,11 +721,11 @@ i32.const 5 i32.store8 offset=35 local.get $1 - i32.const 6964 + i32.const 10952 i32.load align=1 i32.store offset=24 align=1 local.get $1 - i32.const 6968 + i32.const 10956 i32.load8_s i32.store8 offset=28 local.get $1 @@ -573,11 +750,11 @@ i32.const 10 i32.store8 offset=59 local.get $1 - i32.const 6970 + i32.const 10958 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 6978 + i32.const 10966 i32.load16_s align=1 i32.store16 offset=56 align=1 local.get $1 @@ -592,37 +769,37 @@ i32.const 3 i32.store8 offset=71 local.get $1 - i32.const 6981 + i32.const 10969 i32.load16_s align=1 i32.store16 offset=60 align=1 local.get $1 - i32.const 6983 + i32.const 10971 i32.load8_s i32.store8 offset=62 local.get $1 i32.const 0 i32.store8 offset=63 - local.get $2 - i32.const 152 + local.get $5 + i32.const 128 i32.add - local.tee $5 + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $4 i32.const 0 i32.store offset=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $4 i32.const 72 call $__Znwm local.tee $0 i32.store offset=4 - local.get $5 + local.get $4 local.get $0 i32.store - local.get $5 + local.get $4 local.get $0 i32.const 72 i32.add @@ -637,87 +814,87 @@ i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.load offset=4 - local.tee $3 + local.tee $0 i32.const 24 i32.add - local.tee $0 + local.tee $8 i32.store offset=4 - local.get $0 + local.get $8 local.get $1 i32.const 24 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $3 + local.get $0 i32.const 36 i32.add local.get $1 i32.const 36 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.load offset=4 - local.tee $3 + local.tee $0 i32.const 24 i32.add - local.tee $0 + local.tee $8 i32.store offset=4 - local.get $0 + local.get $8 local.get $1 i32.const 48 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $3 + local.get $0 i32.const 36 i32.add local.get $1 i32.const 60 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.load offset=4 i32.const 24 i32.add i32.store offset=4 - local.get $4 + local.get $2 i64.const 0 i64.store align=4 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $2 i32.const 5 i32.store8 offset=11 - local.get $4 - i32.const 6997 + local.get $2 + i32.const 10985 i32.load align=1 i32.store align=1 - local.get $4 - i32.const 7001 + local.get $2 + i32.const 10989 i32.load8_s i32.store8 offset=4 - local.get $4 + local.get $2 i32.const 0 i32.store8 offset=5 - local.get $4 + local.get $2 i64.const 0 i64.store offset=16 align=4 - local.get $4 + local.get $2 i32.const 3 i32.store8 offset=23 - local.get $4 - i32.const 7003 + local.get $2 + i32.const 10991 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $4 - i32.const 7005 + local.get $2 + i32.const 10993 i32.load8_s i32.store8 offset=14 - local.get $4 + local.get $2 i32.const 0 i32.store8 offset=15 local.get $6 @@ -743,12 +920,12 @@ i32.add i32.store offset=8 local.get $0 - local.get $4 + local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 i32.const 12 i32.add - local.get $4 + local.get $2 i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ @@ -758,173 +935,97 @@ i32.const 24 i32.add i32.store offset=4 - local.get $2 - i32.const 5636 - i32.store - local.get $2 - local.get $11 - i32.store offset=4 - local.get $2 - local.get $2 - i32.store offset=16 - local.get $2 - i32.const 6948 - i32.store offset=32 - local.get $2 + local.get $5 + i32.const 10936 + i32.store offset=8 + local.get $5 i32.const 7 - i32.store offset=36 - local.get $2 - i32.const 6985 - i32.store offset=24 - local.get $2 + i32.store offset=12 + local.get $5 + i32.const 10973 + i32.store + local.get $5 i32.const 11 - i32.store offset=28 - local.get $9 - local.get $2 - i64.load offset=32 align=4 + i32.store offset=4 + local.get $7 + local.get $5 + i64.load offset=8 align=4 i64.store align=4 - local.get $8 - local.get $2 - i64.load offset=24 align=4 + local.get $3 + local.get $5 + i64.load align=4 i64.store align=4 - local.get $10 local.get $9 - local.get $5 - local.get $8 + local.get $7 + local.get $4 + local.get $3 local.get $6 call $__Z12makeHttpCallNSt3__217basic_string_viewIcNS_11char_traitsIcEEEERKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEES3_SE_j local.tee $0 i32.store - block $block - block $block_0 - local.get $0 - i32.eqz - br_if $block_0 - local.get $7 - i32.const 80 - i32.add - local.get $10 - call $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ - local.tee $7 - i32.load offset=16 - local.tee $0 - local.get $7 - i32.eq - if $if - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_0 - end ;; $if - local.get $7 - i32.const 0 - i32.store offset=16 - local.get $2 - i32.load offset=16 - local.tee $0 - i32.eqz - if $if_1 - local.get $7 - i32.const 0 - i32.store offset=16 - br $block_0 - end ;; $if_1 - local.get $0 - local.get $2 - i32.eq - if $if_2 (result i32) - local.get $7 - local.get $7 - i32.store offset=16 - local.get $2 - i32.load offset=16 - local.tee $3 - i32.load - i32.load offset=12 - local.set $0 - local.get $3 - local.get $7 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - br $block_0 - else - local.get $7 - local.get $0 - i32.store offset=16 - local.get $2 - i32.const 0 - i32.store offset=16 - i32.const 0 - local.set $3 - i32.const 0 - end ;; $if_2 - local.set $0 - br $block - end ;; $block_0 - local.get $2 - i32.load offset=16 + local.get $0 + if $if (result i32) + local.get $11 + i32.const 80 + i32.add + local.get $9 + call $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ local.tee $0 + i32.load offset=12 local.set $3 - end ;; $block - local.get $2 - local.get $3 - i32.eq - if $if_3 local.get $0 + i32.const 6592 + i32.store offset=12 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_4 - local.get $0 + i32.const 5 + i32.store offset=8 + local.get $3 + i32.load offset=4 + local.tee $3 + if $if_0 local.get $0 i32.load - i32.load offset=20 - i32.const 63 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_4 - end ;; $if_3 + call_indirect $29 (type $0) + end ;; $if_0 + local.get $0 + local.get $10 + i32.store + local.get $0 + i32.const 6 + i32.store offset=8 + local.get $0 + i32.const 6656 + i32.store offset=12 + i32.const 6592 + else + i32.const 6656 + end ;; $if + i32.load offset=4 + local.tee $0 + if $if_1 + local.get $10 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_1 local.get $6 i32.load local.tee $3 - if $if_5 + if $if_2 local.get $3 local.get $6 i32.load offset=4 local.tee $0 i32.eq - if $if_6 (result i32) + if $if_3 (result i32) local.get $3 else loop $loop @@ -935,11 +1036,11 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_7 + if $if_4 local.get $7 i32.load call $_free - end ;; $if_7 + end ;; $if_4 local.get $0 i32.const -24 i32.add @@ -947,11 +1048,11 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_5 local.get $0 i32.load call $_free - end ;; $if_8 + end ;; $if_5 local.get $0 local.get $3 i32.ne @@ -959,57 +1060,57 @@ end ;; $loop local.get $6 i32.load - end ;; $if_6 + end ;; $if_3 local.set $0 local.get $6 local.get $3 i32.store offset=4 local.get $0 call $_free - end ;; $if_5 - local.get $4 + end ;; $if_2 + local.get $2 i32.load8_s offset=23 i32.const 0 i32.lt_s - if $if_9 - local.get $4 + if $if_6 + local.get $2 i32.load offset=12 call $_free - end ;; $if_9 - local.get $4 + end ;; $if_6 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_10 - local.get $4 + if $if_7 + local.get $2 i32.load call $_free - end ;; $if_10 - local.get $5 + end ;; $if_7 + local.get $4 i32.load local.tee $3 - if $if_11 + if $if_8 local.get $3 - local.get $5 + local.get $4 i32.load offset=4 local.tee $0 i32.eq - if $if_12 (result i32) + if $if_9 (result i32) local.get $3 else loop $loop_0 local.get $0 i32.const -12 i32.add - local.tee $7 + local.tee $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_13 - local.get $7 + if $if_10 + local.get $2 i32.load call $_free - end ;; $if_13 + end ;; $if_10 local.get $0 i32.const -24 i32.add @@ -1017,86 +1118,86 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_14 + if $if_11 local.get $0 i32.load call $_free - end ;; $if_14 + end ;; $if_11 local.get $0 local.get $3 i32.ne br_if $loop_0 end ;; $loop_0 - local.get $5 + local.get $4 i32.load - end ;; $if_12 + end ;; $if_9 local.set $0 - local.get $5 + local.get $4 local.get $3 i32.store offset=4 local.get $0 call $_free - end ;; $if_11 + end ;; $if_8 local.get $1 i32.load8_s offset=71 i32.const 0 i32.lt_s - if $if_15 + if $if_12 local.get $1 i32.load offset=60 call $_free - end ;; $if_15 + end ;; $if_12 local.get $1 i32.load8_s offset=59 i32.const 0 i32.lt_s - if $if_16 + if $if_13 local.get $1 i32.load offset=48 call $_free - end ;; $if_16 + end ;; $if_13 local.get $1 i32.load8_s offset=47 i32.const 0 i32.lt_s - if $if_17 + if $if_14 local.get $1 i32.load offset=36 call $_free - end ;; $if_17 + end ;; $if_14 local.get $1 i32.load8_s offset=35 i32.const 0 i32.lt_s - if $if_18 + if $if_15 local.get $1 i32.load offset=24 call $_free - end ;; $if_18 + end ;; $if_15 local.get $1 i32.load8_s offset=23 i32.const 0 i32.lt_s - if $if_19 + if $if_16 local.get $1 i32.load offset=12 call $_free - end ;; $if_19 + end ;; $if_16 local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_20 - local.get $2 - global.set $31 + if $if_17 + local.get $5 + global.set $33 i32.const 1 return - end ;; $if_20 + end ;; $if_17 local.get $1 i32.load call $_free - local.get $2 - global.set $31 + local.get $5 + global.set $33 i32.const 1 ) @@ -1105,7 +1206,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5560 + i32.const 6616 i32.store local.get $0 i32.load offset=52 @@ -1254,19 +1355,19 @@ call $_free ) - (func $__ZN7Context6asRootEv (type $2) + (func $__ZN7Context6asRootEv (type $1) (param $0 i32) (result i32) i32.const 0 ) - (func $__ZN7Context9asContextEv (type $2) + (func $__ZN7Context9asContextEv (type $1) (param $0 i32) (result i32) local.get $0 ) - (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $4) + (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -1280,7 +1381,7 @@ nop ) - (func $__ZN7Context13onRequestBodyEmb (type $3) + (func $__ZN7Context13onRequestBodyEmb (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1800,7 +1901,7 @@ local.get $0 ) - (func $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ (type $4) + (func $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -1897,7 +1998,7 @@ end ;; $block_0 end ;; $loop local.get $2 - i32.const 16 + i32.const 12 i32.add return end ;; $if_5 @@ -1941,21 +2042,24 @@ end ;; $block_1 end ;; $loop_0 local.get $2 - i32.const 16 + i32.const 12 i32.add return end ;; $block end ;; $if_4 end ;; $if_3 end ;; $if - i32.const 40 + i32.const 28 call $__Znwm local.tee $4 local.get $5 i32.store offset=8 local.get $4 - i32.const 0 - i32.store offset=32 + i32.const 5 + i32.store offset=20 + local.get $4 + i32.const 6592 + i32.store offset=24 local.get $4 local.get $5 i32.store offset=4 @@ -2151,11 +2255,11 @@ i32.add i32.store offset=12 local.get $4 - i32.const 16 + i32.const 12 i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE6rehashEm (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE6rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -2275,7 +2379,23 @@ call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7744 + i32.store + local.get $0 + i32.const 5232 + i32.const 31 + call $___cxa_throw + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -2314,11 +2434,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6868 + i32.const 10856 i32.store local.get $2 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $1 @@ -2635,42 +2755,11 @@ end ;; $loop_2 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $2) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5592 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5592 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -2709,63 +2798,14 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5480 - i32.store - local.get $0 - local.get $1 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7266 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $2) - (param $0 i32) - (result i32) - i32.const 4528 - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEv (type $2) - (param $0 i32) - (result i32) - (local $1 i32) - i32.const 8 - call $__Znwm - local.tee $1 - i32.const 5636 + i32.const 6520 i32.store - local.get $1 local.get $0 - i32.load offset=4 - i32.store offset=4 - local.get $1 - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEPNS0_6__baseISB_EE (type $1) - (param $0 i32) - (param $1 i32) local.get $1 - i32.const 5636 i32.store - local.get $1 - local.get $0 - i32.load offset=4 - i32.store offset=4 ) - (func $__ZNSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EEclEOSA_SD_SD_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE11__call_implINS0_12__alloc_funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorISC_EES7_EEEEvPKNS0_16__policy_storageEOS6_SJ_SJ_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) @@ -2785,54 +2825,59 @@ (local $16 i32) (local $17 i32) (local $18 i32) - (local $19 i64) - (local $20 i64) - global.get $31 - local.set $12 - global.get $31 - i32.const 80 + (local $19 i32) + global.get $33 + local.set $10 + global.get $33 + i32.const 96 i32.add - global.set $31 - local.get $12 + global.set $33 + local.get $10 + i32.const 84 + i32.add + local.set $7 + local.get $10 + i32.const 72 + i32.add + local.set $14 + local.get $10 i32.const 60 i32.add - local.set $4 - local.get $12 + local.set $13 + local.get $10 i32.const 48 i32.add - local.set $9 - local.get $12 + local.set $6 + local.get $10 i32.const 36 i32.add - local.set $11 - local.get $12 + local.set $12 + local.get $10 i32.const 24 i32.add - local.set $8 - local.get $12 + local.set $4 + local.get $10 i32.const 12 i32.add - local.set $10 - local.get $12 - local.set $5 + local.set $8 local.get $0 - i32.load offset=4 + i32.load local.set $0 local.get $1 i32.load - local.set $15 + local.set $16 local.get $1 i32.const 0 i32.store local.get $2 i32.load - local.set $14 + local.set $15 local.get $2 i32.const 0 i32.store local.get $3 i32.load - local.set $16 + local.set $17 local.get $3 i32.const 0 i32.store @@ -2843,16 +2888,16 @@ i32.load call $_proxy_setEffectiveContext drop - local.get $4 + local.get $7 i32.const 0 i32.store - local.get $4 + local.get $7 i32.const 0 i32.store offset=4 - local.get $4 + local.get $7 i32.const 0 i32.store offset=8 - local.get $15 + local.get $16 i32.load local.tee $1 if $if @@ -2863,27 +2908,27 @@ local.set $0 local.get $1 i32.load - local.tee $17 + local.tee $18 if $if_0 - local.get $4 - local.get $17 + local.get $7 + local.get $18 call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm - local.get $17 + local.get $18 i32.const 0 i32.le_s if $if_1 - local.get $4 + local.get $7 i32.load local.set $0 br $block end ;; $if_1 - local.get $4 + local.get $7 i32.load - local.set $3 + local.set $11 i32.const 0 local.set $1 local.get $0 - local.get $17 + local.get $18 i32.const 3 i32.shl i32.add @@ -2891,36 +2936,36 @@ loop $loop local.get $0 i32.load - local.set $6 + local.set $9 local.get $1 i32.const 4 i32.shl - local.get $3 + local.get $11 i32.add local.get $2 i32.store local.get $1 i32.const 4 i32.shl - local.get $3 + local.get $11 i32.add - local.get $6 + local.get $9 i32.store offset=4 local.get $0 i32.load offset=4 - local.set $3 + local.set $11 local.get $0 i32.const 8 i32.add - local.set $13 - local.get $4 + local.set $3 + local.get $7 i32.load local.tee $0 local.get $1 i32.const 4 i32.shl i32.add - local.get $6 + local.get $9 i32.const 1 i32.add local.get $2 @@ -2932,10 +2977,10 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $11 i32.store offset=12 local.get $2 - local.get $3 + local.get $11 i32.const 1 i32.add i32.add @@ -2944,12 +2989,12 @@ i32.const 1 i32.add local.tee $1 - local.get $17 + local.get $18 i32.ne if $if_2 local.get $0 - local.set $3 - local.get $13 + local.set $11 + local.get $3 local.set $0 br $loop end ;; $if_2 @@ -2963,61 +3008,55 @@ i32.const 0 local.set $0 end ;; $if - local.get $4 + local.get $7 i32.load offset=4 - local.tee $13 + local.tee $11 local.get $0 i32.eq if $if_3 local.get $0 - local.set $7 + local.set $5 else block $block_0 local.get $0 local.set $1 block $block_1 loop $loop_0 - local.get $1 - i64.load align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $20 - i32.wrap_i64 - local.set $6 - local.get $8 + local.get $6 i64.const 0 i64.store align=4 - local.get $8 + local.get $6 i32.const 0 i32.store offset=8 - local.get $6 + local.get $1 + i32.load + local.set $3 + local.get $1 + i32.load offset=4 + local.tee $9 i32.const -17 i32.gt_u br_if $block_1 - local.get $19 - i32.wrap_i64 - local.set $3 block $block_2 block $block_3 - local.get $6 + local.get $9 i32.const 11 i32.lt_u if $if_4 (result i32) - local.get $8 - local.get $20 - i64.store8 offset=11 local.get $6 + local.get $9 + i32.store8 offset=11 + local.get $9 if $if_5 (result i32) - local.get $8 + local.get $6 local.set $0 br $block_3 else - local.get $8 + local.get $6 end ;; $if_5 else - local.get $8 local.get $6 + local.get $9 i32.const 16 i32.add i32.const -16 @@ -3026,13 +3065,13 @@ call $__Znwm local.tee $0 i32.store - local.get $8 + local.get $6 local.get $2 i32.const -2147483648 i32.or i32.store offset=8 - local.get $8 local.get $6 + local.get $9 i32.store offset=4 br $block_3 end ;; $if_4 @@ -3041,39 +3080,39 @@ end ;; $block_3 local.get $0 local.get $3 - local.get $6 + local.get $9 call $_memcpy drop end ;; $block_2 local.get $0 - local.get $6 + local.get $9 i32.add i32.const 0 i32.store8 - local.get $10 + local.get $12 i64.const 0 i64.store align=4 - local.get $10 + local.get $12 i32.const 0 i32.store offset=8 - local.get $10 + local.get $12 i32.const 4 i32.store8 offset=11 - local.get $10 + local.get $12 i32.const 540945696 i32.store - local.get $10 + local.get $12 i32.const 0 i32.store8 offset=4 - local.get $11 - local.get $8 - local.get $10 + local.get $13 + local.get $6 + local.get $12 i32.const 4 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $11 + local.get $13 local.get $0 i32.load offset=8 i32.store offset=8 @@ -3083,47 +3122,41 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 - i64.load offset=8 align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $20 - i32.wrap_i64 - local.set $6 - local.get $5 + local.get $4 i64.const 0 i64.store align=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $6 + local.get $1 + i32.load offset=8 + local.set $3 + local.get $1 + i32.load offset=12 + local.tee $9 i32.const -17 i32.gt_u br_if $block_1 - local.get $19 - i32.wrap_i64 - local.set $3 block $block_4 block $block_5 - local.get $6 + local.get $9 i32.const 11 i32.lt_u if $if_6 (result i32) - local.get $5 - local.get $20 - i64.store8 offset=11 - local.get $6 + local.get $4 + local.get $9 + i32.store8 offset=11 + local.get $9 if $if_7 (result i32) - local.get $5 + local.get $4 local.set $0 br $block_5 else - local.get $5 + local.get $4 end ;; $if_7 else - local.get $5 - local.get $6 + local.get $4 + local.get $9 i32.const 16 i32.add i32.const -16 @@ -3132,13 +3165,13 @@ call $__Znwm local.tee $0 i32.store - local.get $5 + local.get $4 local.get $2 i32.const -2147483648 i32.or i32.store offset=8 - local.get $5 - local.get $6 + local.get $4 + local.get $9 i32.store offset=4 br $block_5 end ;; $if_6 @@ -3147,28 +3180,28 @@ end ;; $block_5 local.get $0 local.get $3 - local.get $6 + local.get $9 call $_memcpy drop end ;; $block_4 local.get $0 - local.get $6 + local.get $9 i32.add i32.const 0 i32.store8 - local.get $9 - local.get $11 - local.get $5 + local.get $14 + local.get $13 + local.get $4 i32.load - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $0 select - local.get $5 + local.get $4 i32.load offset=4 local.get $2 i32.const 255 @@ -3179,7 +3212,7 @@ local.tee $0 i64.load align=4 i64.store align=4 - local.get $9 + local.get $14 local.get $0 i32.load offset=8 i32.store offset=8 @@ -3190,17 +3223,17 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $9 + local.get $14 i32.load - local.get $9 - local.get $9 + local.get $14 + local.get $14 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $0 select - local.get $9 + local.get $14 i32.load offset=4 local.get $2 i32.const 255 @@ -3208,48 +3241,49 @@ local.get $0 select call $_proxy_log - local.get $9 + drop + local.get $14 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_8 - local.get $9 + local.get $14 i32.load call $_free end ;; $if_8 - local.get $5 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_9 - local.get $5 + local.get $4 i32.load call $_free end ;; $if_9 - local.get $11 + local.get $13 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_10 - local.get $11 + local.get $13 i32.load call $_free end ;; $if_10 - local.get $10 + local.get $12 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_11 - local.get $10 + local.get $12 i32.load call $_free end ;; $if_11 - local.get $8 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_12 - local.get $8 + local.get $6 i32.load call $_free end ;; $if_12 @@ -3257,36 +3291,36 @@ i32.const 16 i32.add local.tee $1 - local.get $13 + local.get $11 i32.ne br_if $loop_0 end ;; $loop_0 - local.get $4 + local.get $7 i32.load - local.set $7 + local.set $5 br $block_0 end ;; $block_1 call $_abort end ;; $block_0 end ;; $if_3 - local.get $7 + local.get $5 if $if_13 - local.get $4 local.get $7 + local.get $5 i32.store offset=4 - local.get $7 + local.get $5 call $_free end ;; $if_13 - local.get $14 + local.get $15 i32.load local.set $2 - local.get $14 + local.get $15 i32.load offset=4 local.set $3 - local.get $4 + local.get $8 i64.const 0 i64.store align=4 - local.get $4 + local.get $8 i32.const 0 i32.store offset=8 local.get $3 @@ -3301,7 +3335,7 @@ i32.const 11 i32.lt_u if $if_15 (result i32) - local.get $4 + local.get $8 i32.const 11 i32.add local.tee $1 @@ -3309,14 +3343,14 @@ i32.store8 local.get $3 if $if_16 (result i32) - local.get $4 + local.get $8 local.set $0 br $block_7 else - local.get $4 + local.get $8 end ;; $if_16 else - local.get $4 + local.get $8 local.get $3 i32.const 16 i32.add @@ -3326,15 +3360,15 @@ call $__Znwm local.tee $0 i32.store - local.get $4 + local.get $8 local.get $1 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $8 local.get $3 i32.store offset=4 - local.get $4 + local.get $8 i32.const 11 i32.add local.set $1 @@ -3355,9 +3389,9 @@ i32.const 0 i32.store8 i32.const 1 - local.get $4 + local.get $8 i32.load - local.get $4 + local.get $8 local.get $1 i32.load8_s local.tee $2 @@ -3365,7 +3399,7 @@ i32.lt_s local.tee $0 select - local.get $4 + local.get $8 i32.load offset=4 local.get $2 i32.const 255 @@ -3373,25 +3407,26 @@ local.get $0 select call $_proxy_log + drop local.get $1 i32.load8_s i32.const 0 i32.lt_s if $if_17 - local.get $4 + local.get $8 i32.load call $_free end ;; $if_17 - local.get $4 + local.get $7 i32.const 0 i32.store - local.get $4 + local.get $7 i32.const 0 i32.store offset=4 - local.get $4 + local.get $7 i32.const 0 i32.store offset=8 - local.get $16 + local.get $17 i32.load local.tee $1 if $if_18 @@ -3402,27 +3437,27 @@ local.set $0 local.get $1 i32.load - local.tee $6 + local.tee $8 if $if_19 - local.get $4 - local.get $6 + local.get $7 + local.get $8 call $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm - local.get $6 + local.get $8 i32.const 0 i32.le_s if $if_20 - local.get $4 + local.get $7 i32.load local.set $0 br $block_8 end ;; $if_20 - local.get $4 + local.get $7 i32.load - local.set $3 + local.set $11 i32.const 0 local.set $1 local.get $0 - local.get $6 + local.get $8 i32.const 3 i32.shl i32.add @@ -3430,36 +3465,36 @@ loop $loop_1 local.get $0 i32.load - local.set $7 + local.set $5 local.get $1 i32.const 4 i32.shl - local.get $3 + local.get $11 i32.add local.get $2 i32.store local.get $1 i32.const 4 i32.shl - local.get $3 + local.get $11 i32.add - local.get $7 + local.get $5 i32.store offset=4 local.get $0 i32.load offset=4 - local.set $3 + local.set $11 local.get $0 i32.const 8 i32.add - local.set $13 - local.get $4 + local.set $3 + local.get $7 i32.load local.tee $0 local.get $1 i32.const 4 i32.shl i32.add - local.get $7 + local.get $5 i32.const 1 i32.add local.get $2 @@ -3471,10 +3506,10 @@ i32.shl local.get $0 i32.add - local.get $3 + local.get $11 i32.store offset=12 local.get $2 - local.get $3 + local.get $11 i32.const 1 i32.add i32.add @@ -3483,12 +3518,12 @@ i32.const 1 i32.add local.tee $1 - local.get $6 + local.get $8 i32.ne if $if_21 local.get $0 - local.set $3 - local.get $13 + local.set $11 + local.get $3 local.set $0 br $loop_1 end ;; $if_21 @@ -3502,61 +3537,55 @@ i32.const 0 local.set $0 end ;; $if_18 - local.get $4 + local.get $7 i32.load offset=4 - local.tee $13 + local.tee $11 local.get $0 i32.eq if $if_22 local.get $0 - local.set $18 + local.set $19 else block $block_9 local.get $0 local.set $1 block $block_10 loop $loop_2 - local.get $1 - i64.load align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $20 - i32.wrap_i64 - local.set $7 - local.get $8 + local.get $6 i64.const 0 i64.store align=4 - local.get $8 + local.get $6 i32.const 0 i32.store offset=8 - local.get $7 + local.get $1 + i32.load + local.set $3 + local.get $1 + i32.load offset=4 + local.tee $5 i32.const -17 i32.gt_u br_if $block_10 - local.get $19 - i32.wrap_i64 - local.set $3 block $block_11 block $block_12 - local.get $7 + local.get $5 i32.const 11 i32.lt_u if $if_23 (result i32) - local.get $8 - local.get $20 - i64.store8 offset=11 - local.get $7 + local.get $6 + local.get $5 + i32.store8 offset=11 + local.get $5 if $if_24 (result i32) - local.get $8 + local.get $6 local.set $0 br $block_12 else - local.get $8 + local.get $6 end ;; $if_24 else - local.get $8 - local.get $7 + local.get $6 + local.get $5 i32.const 16 i32.add i32.const -16 @@ -3565,13 +3594,13 @@ call $__Znwm local.tee $0 i32.store - local.get $8 + local.get $6 local.get $2 i32.const -2147483648 i32.or i32.store offset=8 - local.get $8 - local.get $7 + local.get $6 + local.get $5 i32.store offset=4 br $block_12 end ;; $if_23 @@ -3580,39 +3609,39 @@ end ;; $block_12 local.get $0 local.get $3 - local.get $7 + local.get $5 call $_memcpy drop end ;; $block_11 local.get $0 - local.get $7 + local.get $5 i32.add i32.const 0 i32.store8 - local.get $10 + local.get $12 i64.const 0 i64.store align=4 - local.get $10 + local.get $12 i32.const 0 i32.store offset=8 - local.get $10 + local.get $12 i32.const 4 i32.store8 offset=11 - local.get $10 + local.get $12 i32.const 540945696 i32.store - local.get $10 + local.get $12 i32.const 0 i32.store8 offset=4 - local.get $11 - local.get $8 - local.get $10 + local.get $13 + local.get $6 + local.get $12 i32.const 4 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $11 + local.get $13 local.get $0 i32.load offset=8 i32.store offset=8 @@ -3622,47 +3651,41 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 - i64.load offset=8 align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $20 - i32.wrap_i64 - local.set $7 - local.get $5 + local.get $4 i64.const 0 i64.store align=4 - local.get $5 + local.get $4 i32.const 0 i32.store offset=8 - local.get $7 + local.get $1 + i32.load offset=8 + local.set $3 + local.get $1 + i32.load offset=12 + local.tee $5 i32.const -17 i32.gt_u br_if $block_10 - local.get $19 - i32.wrap_i64 - local.set $3 block $block_13 block $block_14 - local.get $7 + local.get $5 i32.const 11 i32.lt_u if $if_25 (result i32) + local.get $4 + local.get $5 + i32.store8 offset=11 local.get $5 - local.get $20 - i64.store8 offset=11 - local.get $7 if $if_26 (result i32) - local.get $5 + local.get $4 local.set $0 br $block_14 else - local.get $5 + local.get $4 end ;; $if_26 else + local.get $4 local.get $5 - local.get $7 i32.const 16 i32.add i32.const -16 @@ -3671,13 +3694,13 @@ call $__Znwm local.tee $0 i32.store - local.get $5 + local.get $4 local.get $2 i32.const -2147483648 i32.or i32.store offset=8 + local.get $4 local.get $5 - local.get $7 i32.store offset=4 br $block_14 end ;; $if_25 @@ -3686,28 +3709,28 @@ end ;; $block_14 local.get $0 local.get $3 - local.get $7 + local.get $5 call $_memcpy drop end ;; $block_13 local.get $0 - local.get $7 + local.get $5 i32.add i32.const 0 i32.store8 - local.get $9 - local.get $11 - local.get $5 + local.get $10 + local.get $13 + local.get $4 i32.load - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $0 select - local.get $5 + local.get $4 i32.load offset=4 local.get $2 i32.const 255 @@ -3718,7 +3741,7 @@ local.tee $0 i64.load align=4 i64.store align=4 - local.get $9 + local.get $10 local.get $0 i32.load offset=8 i32.store offset=8 @@ -3729,17 +3752,17 @@ i32.const 0 i32.store offset=8 i32.const 3 - local.get $9 + local.get $10 i32.load - local.get $9 - local.get $9 + local.get $10 + local.get $10 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $0 select - local.get $9 + local.get $10 i32.load offset=4 local.get $2 i32.const 255 @@ -3747,48 +3770,49 @@ local.get $0 select call $_proxy_log - local.get $9 + drop + local.get $10 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_27 - local.get $9 + local.get $10 i32.load call $_free end ;; $if_27 - local.get $5 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_28 - local.get $5 + local.get $4 i32.load call $_free end ;; $if_28 - local.get $11 + local.get $13 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_29 - local.get $11 + local.get $13 i32.load call $_free end ;; $if_29 - local.get $10 + local.get $12 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_30 - local.get $10 + local.get $12 i32.load call $_free end ;; $if_30 - local.get $8 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_31 - local.get $8 + local.get $6 i32.load call $_free end ;; $if_31 @@ -3796,80 +3820,59 @@ i32.const 16 i32.add local.tee $1 - local.get $13 + local.get $11 i32.ne br_if $loop_2 end ;; $loop_2 - local.get $4 + local.get $7 i32.load - local.set $18 + local.set $19 br $block_9 end ;; $block_10 call $_abort end ;; $block_9 end ;; $if_22 - local.get $18 + local.get $19 if $if_32 - local.get $4 - local.get $18 + local.get $7 + local.get $19 i32.store offset=4 - local.get $18 + local.get $19 call $_free end ;; $if_32 - local.get $16 + local.get $17 if $if_33 - local.get $16 + local.get $17 i32.load call $_free - local.get $16 + local.get $17 call $_free end ;; $if_33 - local.get $14 + local.get $15 if $if_34 - local.get $14 + local.get $15 i32.load call $_free - local.get $14 + local.get $15 call $_free end ;; $if_34 - local.get $15 + local.get $16 i32.eqz if $if_35 - local.get $12 - global.set $31 + local.get $10 + global.set $33 return end ;; $if_35 - local.get $15 + local.get $16 i32.load call $_free - local.get $15 + local.get $16 call $_free - local.get $12 - global.set $31 - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7515 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE11target_typeEv (type $2) - (param $0 i32) - (result i32) - i32.const 4560 + local.get $10 + global.set $33 ) - (func $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm (type $1) + (func $__ZNSt3__26vectorINS_4pairINS_17basic_string_viewIcNS_11char_traitsIcEEEES5_EENS_9allocatorIS6_EEE8__appendEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -3963,11 +3966,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6868 + i32.const 10856 i32.store local.get $2 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw else local.get $4 @@ -4032,118 +4035,84 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const -64 - i32.sub - global.set $31 - local.get $1 + global.get $33 + local.set $0 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5592 - i32.store - local.get $2 + i32.const 7 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 16017 - i32.store offset=48 + i32.const 6640 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 8 + i32.store offset=8 local.get $1 + i32.const 6592 + i32.store offset=12 + local.get $0 + i32.const 25222 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_0 + call_indirect $29 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - global.set $31 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $31 + if $if_0 + local.get $0 + global.set $33 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 63 + i32.load + local.get $1 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $1 - global.set $31 + call_indirect $29 (type $0) + local.get $0 + global.set $33 ) - (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $2) + (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4155,10 +4124,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $2) + (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4207,17 +4176,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4568 + i32.const 4520 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 51 + i32.const 112 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -4255,12 +4224,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $2 i32.eqz if $if @@ -4268,7 +4237,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7730 + i32.const 11255 i32.store offset=4 local.get $3 i32.const 370 @@ -4280,7 +4249,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7779 + i32.const 11304 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4298,7 +4267,7 @@ local.get $1 i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if_0 local.get $1 @@ -4307,17 +4276,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4576 + i32.const 4528 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 52 + i32.const 113 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -4326,73 +4295,73 @@ local.get $1 i32.store local.get $3 - global.set $31 + global.set $33 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 256 i32.add - global.set $31 + global.set $33 local.get $0 - global.set $31 - i32.const 15036 + global.set $33 + i32.const 24236 i32.const 0 i32.store - i32.const 15028 - i32.const 15176 + i32.const 24228 + i32.const 24376 i32.store - i32.const 15032 + i32.const 24232 i32.const 0 i32.store - i32.const 15040 + i32.const 24240 i32.const 0 i32.store - i32.const 15024 - i32.const 5696 + i32.const 24224 + i32.const 6696 i32.store - i32.const 15048 + i32.const 24248 call $__ZN6google8protobuf6StructC2Ev - i32.const 53 - i32.const 15048 + i32.const 114 + i32.const 24248 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15080 - i32.const 5784 + i32.const 24280 + i32.const 6784 i32.store - i32.const 15084 + i32.const 24284 i32.const 0 i32.store - i32.const 15096 + i32.const 24296 i32.const 0 i32.store - i32.const 5672 + i32.const 6672 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 15100 + i32.const 24300 i32.const 0 i32.store - i32.const 53 - i32.const 15080 + i32.const 114 + i32.const 24280 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15136 + i32.const 24336 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 53 - i32.const 15136 + i32.const 114 + i32.const 24336 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15032 - i32.const 15080 + i32.const 24232 + i32.const 24280 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 i64.const 0 @@ -4410,7 +4379,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -4422,7 +4391,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 i32.const 4 @@ -4436,7 +4405,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -4452,14 +4421,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 i32.load offset=4 @@ -4481,7 +4450,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $2 i32.const 915 @@ -4493,7 +4462,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9098 + i32.const 12625 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4530,11 +4499,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -4588,14 +4557,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $31 + global.set $33 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -4606,7 +4575,7 @@ call $_free ) - (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -4627,19 +4596,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10385 + i32.const 13912 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10393 + i32.const 13920 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10401 + i32.const 13928 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10409 + i32.const 13936 i32.load8_s i32.store8 offset=24 local.get $1 @@ -4647,14 +4616,14 @@ i32.store8 offset=25 ) - (func $__ZNK6google8protobuf9ListValue3NewEv (type $2) + (func $__ZNK6google8protobuf9ListValue3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -4662,7 +4631,7 @@ call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $2) + (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4683,7 +4652,7 @@ end ;; $if ) - (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $2) + (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -4733,33 +4702,33 @@ end ;; $if_0 ) - (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $2) + (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $1) (param $0 i32) (result i32) i32.const 1 ) - (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4608 + i32.const 4752 + i32.const 4560 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 9951 - i32.const 9992 + i32.const 13478 + i32.const 13519 i32.const 92 - i32.const 10041 + i32.const 13568 call $___assert_fail end ;; $if ) - (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -4771,12 +4740,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $4 i32.const 40 i32.add @@ -4833,7 +4802,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6408 + i32.const 7408 i32.store local.get $3 local.get $5 @@ -5143,7 +5112,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $31 + global.set $33 local.get $1 return end ;; $if_8 @@ -5151,11 +5120,11 @@ i32.load call $_free local.get $4 - global.set $31 + global.set $33 local.get $1 ) - (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -5168,7 +5137,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $1 i32.const 1 i32.and @@ -5242,7 +5211,7 @@ local.get $1 ) - (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -5277,7 +5246,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $2 i32.const 1 i32.and @@ -5296,7 +5265,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $0 i32.const 1 i32.and @@ -5322,25 +5291,25 @@ end ;; $if_1 ) - (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=24 ) - (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $4) + (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $2 i32.const 24 i32.add @@ -5353,7 +5322,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7978 + i32.const 11505 i32.store offset=4 local.get $3 i32.const 1505 @@ -5365,7 +5334,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8030 + i32.const 11557 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -5387,7 +5356,7 @@ i32.load local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $if_0 @@ -5395,7 +5364,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7978 + i32.const 11505 i32.store offset=4 local.get $2 i32.const 1506 @@ -5407,7 +5376,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8061 + i32.const 11588 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -5423,11 +5392,11 @@ i32.load local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -5442,7 +5411,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $1 i32.const 1 i32.and @@ -5593,7 +5562,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $1 i32.const 1 i32.and @@ -5692,7 +5661,7 @@ local.get $0 ) - (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -5703,18 +5672,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $1 i32.const 1 i32.and @@ -5786,7 +5755,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $4 @@ -5809,12 +5778,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -5831,13 +5800,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 5944 + i32.const 6944 i32.store local.get $1 local.get $7 @@ -5860,11 +5829,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $2 i32.const 16 i32.add @@ -5893,7 +5862,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -5935,7 +5904,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -5996,22 +5965,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 return end ;; $block @@ -6019,11 +5988,11 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -6031,12 +6000,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $2 i32.const 24 i32.add @@ -6065,7 +6034,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $3 i32.const 418 @@ -6077,7 +6046,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8187 + i32.const 11714 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -6100,7 +6069,7 @@ i32.le_u if $if_1 local.get $2 - global.set $31 + global.set $33 return end ;; $if_1 local.get $5 @@ -6134,7 +6103,7 @@ br $block end ;; $block_0 local.get $2 - global.set $31 + global.set $33 return end ;; $block local.get $1 @@ -6152,7 +6121,7 @@ local.get $3 i32.store local.get $2 - global.set $31 + global.set $33 return end ;; $if_3 local.get $3 @@ -6163,7 +6132,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 427 @@ -6175,7 +6144,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8304 + i32.const 11831 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -6187,7 +6156,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -6199,12 +6168,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load i32.load offset=16 @@ -6214,7 +6183,7 @@ local.get $1 i32.store local.get $2 - global.set $31 + global.set $33 return end ;; $if local.get $2 @@ -6246,7 +6215,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 451 @@ -6258,7 +6227,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8144 + i32.const 11671 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -6346,10 +6315,10 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -6361,12 +6330,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 24 i32.add @@ -6394,7 +6363,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $3 i32.const 476 @@ -6406,7 +6375,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8335 + i32.const 11862 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -6515,12 +6484,12 @@ i32.ne local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 return end ;; $block_1 local.get $3 - global.set $31 + global.set $33 i32.const 1 ) @@ -6538,12 +6507,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $31 + global.get $33 local.set $10 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 i32.load local.get $2 @@ -6729,7 +6698,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 return end ;; $block_0 end ;; $if_2 @@ -6849,7 +6818,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 return end ;; $block else @@ -6869,10 +6838,10 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -7053,7 +7022,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6112 + i32.const 7112 i32.store local.get $0 i32.load offset=12 @@ -7063,7 +7032,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15176 + i32.const 24376 i32.eq local.get $1 i32.eqz @@ -7093,18 +7062,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6112 + i32.const 7112 i32.store local.get $0 i32.load offset=12 @@ -7116,7 +7085,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15176 + i32.const 24376 i32.eq local.get $1 i32.eqz @@ -7148,16 +7117,16 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 call $_free ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -7168,7 +7137,7 @@ i32.store offset=8 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $1) (param $0 i32) (result i32) i32.const 20 @@ -7177,7 +7146,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $0 i32.const 0 @@ -7186,12 +7155,12 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5696 + i32.const 6696 i32.store local.get $0 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -7199,7 +7168,7 @@ call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -7213,7 +7182,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15176 + i32.const 24376 i32.ne if $if local.get $1 @@ -7284,27 +7253,27 @@ i32.store offset=16 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $1) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4640 + i32.const 4752 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 9951 - i32.const 9992 + i32.const 13478 + i32.const 13519 i32.const 92 - i32.const 10041 + i32.const 13568 call $___assert_fail end ;; $if ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -7313,12 +7282,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.set $4 local.get $0 @@ -7389,13 +7358,13 @@ local.get $5 i32.load local.tee $2 - i32.const 15176 + i32.const 24376 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 15176 + i32.const 24376 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -7545,7 +7514,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 @@ -7556,16 +7525,16 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $block local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -7585,7 +7554,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -7638,7 +7607,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -7659,7 +7628,7 @@ i32.add ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -7671,7 +7640,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -7682,12 +7651,12 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -7707,7 +7676,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -7760,7 +7729,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.load offset=16 local.tee $0 i32.const 1 @@ -7781,7 +7750,7 @@ i32.add ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $3) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -7796,7 +7765,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $2 i32.const 10 @@ -7815,7 +7784,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $4 local.get $2 i32.const 18 @@ -7874,19 +7843,19 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -7898,19 +7867,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4736 + i32.const 4688 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5784 + i32.const 6784 i32.store local.get $1 local.get $0 @@ -7918,7 +7887,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5672 + i32.const 6672 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -7929,7 +7898,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 i32.const 0 @@ -7937,7 +7906,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5672 + i32.const 6672 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -7949,7 +7918,7 @@ local.get $0 ) - (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -7962,12 +7931,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $4 i32.const 48 i32.add @@ -8024,7 +7993,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6408 + i32.const 7408 i32.store local.get $5 local.get $6 @@ -8229,7 +8198,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 15176 + i32.const 24376 i32.store end ;; $if_5 local.get $0 @@ -8251,12 +8220,12 @@ local.get $5 i32.load local.tee $3 - i32.const 15176 + i32.const 24376 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 15176 + i32.const 24376 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -8277,9 +8246,9 @@ i32.load local.tee $2 else - i32.const 15176 + i32.const 24376 local.set $2 - i32.const 15176 + i32.const 24376 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -8296,9 +8265,9 @@ i32.load local.tee $3 else - i32.const 15176 + i32.const 24376 local.set $3 - i32.const 15176 + i32.const 24376 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -8313,7 +8282,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8379 + i32.const 11906 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -8663,7 +8632,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $31 + global.set $33 local.get $1 return end ;; $if_18 @@ -8671,7 +8640,7 @@ i32.load call $_free local.get $4 - global.set $31 + global.set $33 local.get $1 ) @@ -8710,7 +8679,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 15176 + i32.const 24376 i32.eq local.get $1 i32.eqz @@ -8759,18 +8728,18 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $block local.get $0 i32.const 0 i32.store offset=20 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -8790,12 +8759,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4688 + i32.const 4640 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -8807,7 +8776,7 @@ local.get $1 ) - (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -8821,12 +8790,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 96 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 72 i32.add @@ -8887,7 +8856,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6408 + i32.const 7408 i32.store local.get $7 local.get $4 @@ -9053,7 +9022,7 @@ local.get $6 select i32.const 0 - i32.const 8414 + i32.const 11941 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -9074,11 +9043,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -9181,7 +9150,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $31 + global.set $33 local.get $1 return end ;; $if_11 @@ -9189,11 +9158,11 @@ i32.load call $_free local.get $2 - global.set $31 + global.set $33 local.get $1 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -9213,12 +9182,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4608 + i32.const 4560 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -9230,11 +9199,11 @@ local.get $1 ) - (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $1) + (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $4) (param $0 i32) (param $1 i32) local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 local.get $1 @@ -9248,7 +9217,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -9257,7 +9226,7 @@ call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -9267,12 +9236,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block block $block_0 local.get $1 @@ -9296,12 +9265,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $if @@ -9324,14 +9293,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -9340,7 +9309,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -9359,7 +9328,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -9374,12 +9343,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -9388,7 +9357,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -9447,7 +9416,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_3 @@ -9457,7 +9426,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $31 + global.set $33 local.get $0 return end ;; $if_7 @@ -9465,10 +9434,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_2 @@ -9486,46 +9455,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -9534,7 +9516,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -9545,7 +9527,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $2 i32.const 0 @@ -9554,9 +9536,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5696 + i32.const 6696 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -9564,22 +9546,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -9589,22 +9569,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 15176 + i32.load + local.tee $5 + i32.const 24376 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 15176 + i32.const 24376 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -9619,13 +9599,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -9637,7 +9617,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -9657,8 +9637,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -9667,12 +9648,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -9683,35 +9662,35 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $31 + global.set $33 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=8 local.set $4 @@ -9745,7 +9724,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $31 + global.set $33 local.get $2 i32.const 16 i32.add @@ -9758,25 +9737,25 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $31 + global.set $33 local.get $0 i32.const 16 i32.add ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 32 i32.add @@ -9798,7 +9777,7 @@ i32.eqz if $if local.get $2 - global.set $31 + global.set $33 return end ;; $if local.get $2 @@ -9849,10 +9828,10 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -9863,9 +9842,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -9875,7 +9854,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $2 i32.const 0 @@ -9884,7 +9863,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5696 + i32.const 6696 i32.store end ;; $if local.get $0 @@ -9895,17 +9874,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -9941,7 +9918,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -9951,28 +9928,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 15176 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 15176 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24376 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24376 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -9981,6 +9960,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -9990,20 +9981,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -10011,34 +9999,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -10053,8 +10041,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -10063,35 +10052,33 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 local.get $4 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -10103,12 +10090,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4640 + i32.const 4592 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -10127,7 +10114,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $0 i32.const 0 @@ -10136,12 +10123,12 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5696 + i32.const 6696 i32.store local.get $0 ) - (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $1) + (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10152,12 +10139,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $0 local.get $1 @@ -10451,20 +10438,20 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10473,12 +10460,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -10487,7 +10474,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $4 i32.const 796 @@ -10499,7 +10486,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8453 + i32.const 11980 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -10628,7 +10615,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 15176 + i32.const 24376 i32.store end ;; $if_4 local.get $2 @@ -10648,7 +10635,7 @@ local.get $0 i32.load local.tee $2 - i32.const 15176 + i32.const 24376 i32.eq if $if_6 local.get $0 @@ -10661,7 +10648,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $31 + global.set $33 return end ;; $block_3 local.get $1 @@ -10724,7 +10711,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 15048 + i32.const 24248 end ;; $if_8 br $block_7 end ;; $block_8 @@ -10778,7 +10765,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 15136 + i32.const 24336 end ;; $if_10 br $block_9 end ;; $block_10 @@ -10792,14 +10779,14 @@ br $block end ;; $block_0 local.get $4 - global.set $31 + global.set $33 return end ;; $block local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10807,12 +10794,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -10821,7 +10808,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $3 i32.const 341 @@ -10833,7 +10820,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8453 + i32.const 11980 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -10923,7 +10910,7 @@ i32.eqz if $if_2 local.get $3 - global.set $31 + global.set $33 return end ;; $if_2 local.get $0 @@ -10992,22 +10979,22 @@ br_if $loop end ;; $loop local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -11016,7 +11003,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $2 i32.const 1040 @@ -11028,7 +11015,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8453 + i32.const 11980 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11049,7 +11036,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -11099,10 +11086,10 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $1) + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -11111,12 +11098,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -11125,7 +11112,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7978 + i32.const 11505 i32.store offset=4 local.get $2 i32.const 1586 @@ -11137,7 +11124,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8487 + i32.const 12014 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11149,7 +11136,7 @@ i32.eqz if $if_0 local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $1 @@ -11257,17 +11244,17 @@ i32.ge_s if $if_3 local.get $2 - global.set $31 + global.set $33 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $1) + (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $4) (param $0 i32) (param $1 i32) local.get $1 @@ -11283,7 +11270,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5784 + i32.const 6784 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -11334,7 +11321,7 @@ call $_free ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -11346,12 +11333,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -11365,7 +11352,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 601 @@ -11377,7 +11364,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8984 + i32.const 12511 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11439,7 +11426,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 607 @@ -11451,7 +11438,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9018 + i32.const 12545 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11494,7 +11481,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $3 i32.const 612 @@ -11506,7 +11493,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9062 + i32.const 12589 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -11598,7 +11585,7 @@ i32.ne if $if_5 local.get $3 - global.set $31 + global.set $33 return end ;; $if_5 local.get $1 @@ -11608,7 +11595,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $31 + global.set $33 return end ;; $if_6 local.get $0 @@ -11636,10 +11623,10 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -11664,7 +11651,7 @@ end ;; $if ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $1) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -11833,7 +11820,7 @@ call $_free ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $1) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $4) (param $0 i32) (param $1 i32) local.get $1 @@ -11858,7 +11845,7 @@ call $_free ) - (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $1) + (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -12549,12 +12536,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $3 @@ -12575,7 +12562,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $1 i32.const 495 @@ -12587,7 +12574,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9098 + i32.const 12625 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -12598,13 +12585,13 @@ i32.eqz if $if_1 local.get $1 - global.set $31 + global.set $33 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -12617,12 +12604,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 16 i32.add @@ -12653,7 +12640,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $31 + global.set $33 return end ;; $if block $block @@ -12775,12 +12762,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -12820,10 +12807,10 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -12840,7 +12827,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5784 + i32.const 6784 i32.store offset=16 local.get $0 i32.const 0 @@ -12848,7 +12835,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5672 + i32.const 6672 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -12865,12 +12852,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -12896,7 +12883,7 @@ i32.load local.set $0 local.get $2 - i32.const 5784 + i32.const 6784 i32.store offset=16 local.get $2 local.get $0 @@ -12904,7 +12891,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5672 + i32.const 6672 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -12918,7 +12905,7 @@ local.get $2 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -12930,12 +12917,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 7 i32.le_u @@ -12944,7 +12931,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 765 @@ -12956,7 +12943,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9568 + i32.const 13095 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -13096,13 +13083,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $31 + global.set $33 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -13115,12 +13102,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 112 i32.add - global.set $31 + global.set $33 local.get $5 i32.const 48 i32.add @@ -13145,7 +13132,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $4 i32.const 672 @@ -13157,7 +13144,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9142 + i32.const 12669 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -13183,7 +13170,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $4 i32.const 678 @@ -13195,7 +13182,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9243 + i32.const 12770 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -13229,7 +13216,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $31 + global.set $33 return end ;; $if_3 i32.const 0 @@ -13269,7 +13256,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $31 + global.set $33 return end ;; $if_5 else @@ -13277,7 +13264,7 @@ i32.const 3 i32.store local.get $6 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $6 i32.const 878 @@ -13289,7 +13276,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 9299 + i32.const 12826 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -13321,7 +13308,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $5 i32.const 685 @@ -13333,7 +13320,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9339 + i32.const 12866 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -13369,10 +13356,10 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -13385,12 +13372,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 96 i32.add - global.set $31 + global.set $33 local.get $5 i32.const 72 i32.add @@ -13450,7 +13437,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 837 @@ -13462,7 +13449,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9461 + i32.const 12988 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -13478,12 +13465,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -13726,7 +13713,7 @@ local.get $6 i32.store local.get $5 - global.set $31 + global.set $33 return end ;; $if_11 local.get $11 @@ -13734,7 +13721,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 848 @@ -13746,7 +13733,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9526 + i32.const 13053 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -13768,7 +13755,7 @@ local.get $6 i32.store local.get $5 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -13779,12 +13766,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=16 local.tee $6 @@ -13808,7 +13795,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $4 i32.const 713 @@ -13820,7 +13807,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9414 + i32.const 12941 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -13866,7 +13853,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $31 + global.set $33 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -13876,12 +13863,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 local.get $4 local.get $2 @@ -13897,7 +13884,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $1 @@ -13910,12 +13897,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -13975,10 +13962,10 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $31 + global.set $33 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -14288,7 +14275,7 @@ local.get $2 ) - (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $1) + (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -14565,12 +14552,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $4 local.get $1 i32.load @@ -14596,7 +14583,7 @@ i32.load if $if local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -14609,12 +14596,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -14666,7 +14653,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $31 + global.set $33 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $17) @@ -15081,18 +15068,18 @@ end ;; $if_11 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $3 i32.const 24 i32.add @@ -15105,7 +15092,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $2 i32.const 926 @@ -15117,7 +15104,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9621 + i32.const 13148 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -15133,7 +15120,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $3 i32.const 927 @@ -15145,7 +15132,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9656 + i32.const 13183 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -15168,7 +15155,7 @@ call $_memset drop local.get $3 - global.set $31 + global.set $33 local.get $0 return end ;; $if_1 @@ -15184,13 +15171,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5448 + i32.const 6488 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -15202,7 +15189,7 @@ call $_memset drop local.get $3 - global.set $31 + global.set $33 local.get $0 ) @@ -15216,12 +15203,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 2 i32.shl @@ -15349,21 +15336,21 @@ local.get $0 if $if_4 local.get $4 - global.set $31 + global.set $33 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $1) + (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 local.get $1 @@ -15388,7 +15375,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -15444,17 +15431,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4704 + i32.const 4656 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 54 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -15524,12 +15511,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 28 i32.add @@ -15551,7 +15538,7 @@ i32.eqz if $if local.get $1 - global.set $31 + global.set $33 return end ;; $if loop $loop @@ -15608,7 +15595,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -15623,12 +15610,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 i32.eqz @@ -15640,7 +15627,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $31 + global.set $33 return end ;; $if loop $loop @@ -15726,7 +15713,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8103 + i32.const 11630 i32.store offset=4 local.get $5 i32.const 527 @@ -15738,7 +15725,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9693 + i32.const 13220 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -15945,7 +15932,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -15973,14 +15960,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 i32.load offset=4 @@ -16002,7 +15989,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7918 + i32.const 11443 i32.store offset=4 local.get $1 i32.const 150 @@ -16014,7 +16001,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9098 + i32.const 12625 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -16057,14 +16044,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -16075,7 +16062,7 @@ call $_free ) - (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -16096,19 +16083,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 10051 + i32.const 13578 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10059 + i32.const 13586 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10067 + i32.const 13594 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10071 + i32.const 13598 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -16116,14 +16103,14 @@ i32.store8 offset=22 ) - (func $__ZNK6google8protobuf6Struct3NewEv (type $2) + (func $__ZNK6google8protobuf6Struct3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -16174,27 +16161,27 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4688 + i32.const 4752 + i32.const 4640 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 9951 - i32.const 9992 + i32.const 13478 + i32.const 13519 i32.const 92 - i32.const 10041 + i32.const 13568 call $___assert_fail end ;; $if ) - (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -16206,12 +16193,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $6 i32.const 12 i32.add @@ -16276,12 +16263,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -16298,13 +16285,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5944 + i32.const 6944 i32.store local.get $2 local.get $7 @@ -16323,11 +16310,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -16341,7 +16328,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $5 @@ -16368,7 +16355,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8414 + i32.const 11941 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -16385,11 +16372,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) br $block end ;; $if_0 i32.const -1 @@ -16485,12 +16472,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -16507,13 +16494,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 15176 + i32.const 24376 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5944 + i32.const 6944 i32.store local.get $2 local.get $4 @@ -16532,11 +16519,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -16550,7 +16537,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $10 @@ -16576,7 +16563,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8414 + i32.const 11941 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -16593,11 +16580,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -16609,7 +16596,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $2 i32.const 1 i32.and @@ -16628,7 +16615,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $0 i32.const 1 i32.and @@ -16653,7 +16640,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $31 + global.set $33 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -18079,7 +18066,7 @@ end ;; $block ) - (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $3) + (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -19040,7 +19027,7 @@ i32.add ) - (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $1) + (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19264,7 +19251,7 @@ end ;; $loop ) - (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $4) + (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -19647,7 +19634,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $1) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19669,13 +19656,13 @@ i32.add local.tee $2 i32.load - i32.const 15176 + i32.const 24376 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 15176 + i32.const 24376 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -19686,12 +19673,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 15176 + i32.const 24376 i32.eq if $if_2 local.get $2 @@ -19739,7 +19726,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $1 local.get $0 i32.load offset=8 @@ -19753,13 +19740,13 @@ i32.store offset=16 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=8 local.tee $0 - i32.const 15032 + i32.const 24232 i32.load local.get $0 select @@ -19773,12 +19760,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $3 @@ -19789,7 +19776,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7978 + i32.const 11505 i32.store offset=4 local.get $1 i32.const 1567 @@ -19801,20 +19788,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10358 + i32.const 13885 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -19880,7 +19867,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -19888,7 +19875,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -19940,7 +19927,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -19984,7 +19971,7 @@ call $_free ) - (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -20005,19 +19992,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10440 + i32.const 13967 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10448 + i32.const 13975 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10456 + i32.const 13983 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10460 + i32.const 13987 i32.load8_s i32.store8 offset=20 local.get $1 @@ -20025,14 +20012,14 @@ i32.store8 offset=21 ) - (func $__ZNK6google8protobuf5Value3NewEv (type $2) + (func $__ZNK6google8protobuf5Value3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -20081,27 +20068,27 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4736 + i32.const 4752 + i32.const 4688 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 9951 - i32.const 9992 + i32.const 13478 + i32.const 13519 i32.const 92 - i32.const 10041 + i32.const 13568 call $___assert_fail end ;; $if ) - (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -20159,7 +20146,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8379 + i32.const 11906 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -20170,7 +20157,7 @@ local.get $0 i32.load offset=8 else - i32.const 15176 + i32.const 24376 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -20220,7 +20207,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $2 i32.const 1 i32.and @@ -20239,7 +20226,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15176 + i32.const 24376 local.get $0 i32.const 1 i32.and @@ -20265,7 +20252,7 @@ end ;; $if_8 ) - (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -20279,12 +20266,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -20305,11 +20292,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $3 i32.load local.set $0 @@ -20320,7 +20307,7 @@ i32.eqz if $if local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -20329,10 +20316,10 @@ local.get $0 call $_free local.get $3 - global.set $31 + global.set $33 ) - (func $_proxy_onCreate (type $1) + (func $_proxy_onCreate (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -20344,221 +20331,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 - local.set $5 - global.get $31 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $33 + local.set $6 + global.get $33 i32.const 32 i32.add - global.set $31 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $33 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24412 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24408 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24424 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 24420 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24412 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24408 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24416 + i32.load + i32.store + i32.const 24416 + local.get $4 + i32.store + local.get $11 + i32.const 24416 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24408 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24420 + i32.const 24420 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 15252 + i32.const 24452 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -20566,103 +20815,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + local.get $1 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $5 + call_indirect $29 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 + call_indirect $29 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_10 + call_indirect $29 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -20700,71 +20934,71 @@ local.get $0 i32.store local.get $1 - i32.const 6272 + i32.const 7272 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 - local.get $0 + block $block_7 (result i32) local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 - global.set $31 + call_indirect $29 (type $0) + local.get $6 + global.set $33 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -20774,20 +21008,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 - global.set $31 + call_indirect $29 (type $0) + local.get $6 + global.set $33 ) (func $_proxy_onDelete (type $0) @@ -20795,12 +21029,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__Z10getContextj local.tee $2 @@ -20809,18 +21043,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $31 + global.set $33 ) (func $_proxy_onDone (type $0) @@ -20834,11 +21068,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -20850,12 +21084,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -20878,11 +21112,11 @@ local.get $2 local.get $5 local.get $7 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) local.get $5 i32.load local.set $0 @@ -20893,7 +21127,7 @@ i32.eqz if $if local.get $5 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -20902,10 +21136,10 @@ local.get $0 call $_free local.get $5 - global.set $31 + global.set $33 ) - (func $_proxy_onGrpcCreateInitialMetadata (type $1) + (func $_proxy_onGrpcCreateInitialMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -20918,11 +21152,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $_proxy_onGrpcReceive (type $5) @@ -20933,12 +21167,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -20962,9 +21196,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $4 i32.load local.set $0 @@ -20975,7 +21209,7 @@ i32.eqz if $if local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -20984,10 +21218,10 @@ local.get $0 call $_free local.get $4 - global.set $31 + global.set $33 ) - (func $_proxy_onGrpcReceiveInitialMetadata (type $1) + (func $_proxy_onGrpcReceiveInitialMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -21000,14 +21234,14 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $_proxy_onGrpcReceiveTrailingMetadata (type $1) + (func $_proxy_onGrpcReceiveTrailingMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -21020,11 +21254,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $_proxy_onHttpCallResponse (type $18) @@ -21041,12 +21275,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $31 + global.get $33 local.set $8 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $8 i32.const 8 i32.add @@ -21102,9 +21336,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) local.get $8 i32.load local.set $0 @@ -21143,7 +21377,7 @@ i32.eqz if $if_1 local.get $8 - global.set $31 + global.set $33 return end ;; $if_1 local.get $0 @@ -21152,7 +21386,7 @@ local.get $0 call $_free local.get $8 - global.set $31 + global.set $33 ) (func $_proxy_onLog (type $0) @@ -21168,14 +21402,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $_proxy_onQueueReady (type $1) + (func $_proxy_onQueueReady (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -21188,14 +21422,14 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $_proxy_onRequestBody (type $3) + (func $_proxy_onRequestBody (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -21215,12 +21449,12 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $_proxy_onRequestHeaders (type $2) + (func $_proxy_onRequestHeaders (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21234,10 +21468,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onRequestMetadata (type $2) + (func $_proxy_onRequestMetadata (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21251,10 +21485,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onRequestTrailers (type $2) + (func $_proxy_onRequestTrailers (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21268,10 +21502,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseBody (type $3) + (func $_proxy_onResponseBody (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -21291,12 +21525,12 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $_proxy_onResponseHeaders (type $2) + (func $_proxy_onResponseHeaders (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21310,10 +21544,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseMetadata (type $2) + (func $_proxy_onResponseMetadata (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21327,10 +21561,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseTrailers (type $2) + (func $_proxy_onResponseTrailers (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21344,7 +21578,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) (func $_proxy_onStart (type $7) @@ -21363,29 +21597,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $31 - local.set $7 - global.get $31 + global.get $33 + local.set $6 + global.get $33 i32.const 32 i32.add - global.set $31 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $33 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -21395,27 +21624,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 15212 + i32.const 24412 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 15208 + i32.const 24408 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -21434,7 +21663,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -21448,7 +21677,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -21456,16 +21685,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -21486,7 +21715,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -21495,22 +21724,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -21535,11 +21764,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 br $block end ;; $block_0 - i32.const 15248 + i32.const 24448 i32.load i32.eqz if $if_7 @@ -21578,7 +21807,7 @@ local.get $0 i32.store local.get $5 - i32.const 6200 + i32.const 7200 i32.store local.get $5 i32.const 68 @@ -21613,12 +21842,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -21630,7 +21859,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -21676,10 +21905,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -21693,20 +21922,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -21721,19 +21950,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -21743,12 +21972,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -21757,7 +21986,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -21767,53 +21996,36 @@ i32.add i32.const 0 i32.store8 - i32.const 15248 + i32.const 24448 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6744 - i32.store - local.get $2 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $11 + call_indirect $29 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -21823,22 +22035,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -21848,40 +22060,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $29 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_17 + call_indirect $29 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -21920,7 +22132,7 @@ local.get $0 i32.store local.get $2 - i32.const 6200 + i32.const 7200 i32.store local.get $2 i32.const 68 @@ -21934,15 +22146,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -21955,12 +22167,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -21968,11 +22180,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -22018,10 +22230,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -22030,29 +22242,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_20 + call_indirect $29 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -22066,35 +22278,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $12 + call_indirect $29 (type $4) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $31 + local.get $6 + global.set $33 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -22105,8 +22317,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $31 + local.get $6 + global.set $33 ) (func $_proxy_onTick (type $0) @@ -22120,14 +22332,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZL14getRootContextj (type $2) + (func $__ZL14getRootContextj (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -22135,7 +22347,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15212 + i32.const 24412 i32.load local.tee $1 i32.eqz @@ -22143,7 +22355,7 @@ i32.const 0 return end ;; $if - i32.const 15208 + i32.const 24408 i32.load local.get $1 local.get $1 @@ -22278,7 +22490,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz if $if_11 i32.const 0 @@ -22294,10 +22506,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $2) + (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -22311,7 +22523,7 @@ local.get $0 i32.load local.set $4 - i32.const 15212 + i32.const 24412 i32.load local.tee $2 i32.eqz @@ -22320,7 +22532,7 @@ i32.const 0 local.set $0 else - i32.const 15208 + i32.const 24408 i32.load local.get $2 local.get $2 @@ -22459,13 +22671,13 @@ i32.const 0 i32.store local.get $6 - i32.const 15224 + i32.const 24424 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 15220 + i32.const 24420 i32.load i32.const 1 i32.add @@ -22525,7 +22737,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 15212 + i32.const 24412 i32.load local.tee $1 i32.const -1 @@ -22562,7 +22774,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 15208 + i32.const 24408 i32.load local.get $0 i32.const 2 @@ -22579,14 +22791,14 @@ br $block_4 else local.get $3 - i32.const 15216 + i32.const 24416 i32.load i32.store - i32.const 15216 + i32.const 24416 local.get $3 i32.store local.get $2 - i32.const 15216 + i32.const 24416 i32.store local.get $3 i32.load @@ -22595,7 +22807,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 15208 + i32.const 24408 i32.load local.get $1 local.get $1 @@ -22637,8 +22849,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 15220 - i32.const 15220 + i32.const 24420 + i32.const 24420 i32.load i32.const 1 i32.add @@ -22648,7 +22860,7 @@ i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -23072,7 +23284,7 @@ local.get $0 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $2) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -23214,7 +23426,7 @@ i32.xor local.set $6 block $block_3 - i32.const 15232 + i32.const 24432 i32.load local.tee $2 i32.eqz @@ -23223,7 +23435,7 @@ i32.const 0 local.set $5 else - i32.const 15228 + i32.const 24428 i32.load local.get $2 local.get $2 @@ -23571,13 +23783,13 @@ i32.const 0 i32.store local.get $12 - i32.const 15244 + i32.const 24444 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 15240 + i32.const 24440 i32.load i32.const 1 i32.add @@ -23637,7 +23849,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 15232 + i32.const 24432 i32.load local.tee $0 i32.const -1 @@ -23674,7 +23886,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 15228 + i32.const 24428 i32.load local.get $5 i32.const 2 @@ -23693,14 +23905,14 @@ br $block_13 else local.get $4 - i32.const 15236 + i32.const 24436 i32.load i32.store - i32.const 15236 + i32.const 24436 local.get $4 i32.store local.get $2 - i32.const 15236 + i32.const 24436 i32.store local.get $4 i32.load @@ -23709,7 +23921,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 15228 + i32.const 24428 i32.load local.get $0 local.get $0 @@ -23751,8 +23963,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 15240 - i32.const 15240 + i32.const 24440 + i32.const 24440 i32.load i32.const 1 i32.add @@ -23792,7 +24004,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15232 + i32.const 24432 i32.load local.tee $0 i32.gt_u @@ -23818,10 +24030,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15240 + i32.const 24440 i32.load f32.convert_i32_u - i32.const 15244 + i32.const 24444 f32.load f32.div f32.ceil @@ -23903,10 +24115,10 @@ local.get $0 i32.eqz if $if - i32.const 15228 + i32.const 24428 i32.load local.set $0 - i32.const 15228 + i32.const 24428 i32.const 0 i32.store local.get $0 @@ -23914,7 +24126,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15232 + i32.const 24432 i32.const 0 i32.store return @@ -23928,11 +24140,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6868 + i32.const 10856 i32.store local.get $1 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $0 @@ -23940,10 +24152,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15228 + i32.const 24428 i32.load local.set $1 - i32.const 15228 + i32.const 24428 local.get $2 i32.store local.get $1 @@ -23951,13 +24163,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15232 + i32.const 24432 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15228 + i32.const 24428 i32.load local.get $1 i32.const 2 @@ -23973,7 +24185,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15236 + i32.const 24436 i32.load local.tee $6 i32.eqz @@ -23983,7 +24195,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 15228 + i32.const 24428 i32.load local.get $0 local.get $0 @@ -24018,7 +24230,7 @@ i32.const 2 i32.shl i32.add - i32.const 15236 + i32.const 24436 i32.store local.get $6 i32.load @@ -24060,7 +24272,7 @@ local.get $4 else block $block (result i32) - i32.const 15228 + i32.const 24428 i32.load local.get $8 i32.const 2 @@ -24288,7 +24500,7 @@ i32.load i32.store local.get $1 - i32.const 15228 + i32.const 24428 i32.load local.get $8 i32.const 2 @@ -24297,7 +24509,7 @@ i32.load i32.load i32.store - i32.const 15228 + i32.const 24428 i32.load local.get $8 i32.const 2 @@ -24345,7 +24557,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15212 + i32.const 24412 i32.load local.tee $0 i32.gt_u @@ -24371,10 +24583,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15220 + i32.const 24420 i32.load f32.convert_i32_u - i32.const 15224 + i32.const 24424 f32.load f32.div f32.ceil @@ -24450,10 +24662,10 @@ local.get $0 i32.eqz if $if - i32.const 15208 + i32.const 24408 i32.load local.set $0 - i32.const 15208 + i32.const 24408 i32.const 0 i32.store local.get $0 @@ -24461,7 +24673,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15212 + i32.const 24412 i32.const 0 i32.store return @@ -24475,11 +24687,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6868 + i32.const 10856 i32.store local.get $1 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $0 @@ -24487,10 +24699,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15208 + i32.const 24408 i32.load local.set $1 - i32.const 15208 + i32.const 24408 local.get $2 i32.store local.get $1 @@ -24498,13 +24710,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15212 + i32.const 24412 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15208 + i32.const 24408 i32.load local.get $1 i32.const 2 @@ -24520,7 +24732,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15216 + i32.const 24416 i32.load local.tee $4 i32.eqz @@ -24530,7 +24742,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 15208 + i32.const 24408 i32.load local.get $0 local.get $0 @@ -24565,7 +24777,7 @@ i32.const 2 i32.shl i32.add - i32.const 15216 + i32.const 24416 i32.store local.get $4 i32.load @@ -24592,7 +24804,7 @@ local.get $0 else block $block (result i32) - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24651,7 +24863,7 @@ i32.load i32.store local.get $1 - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24660,7 +24872,7 @@ i32.load i32.load i32.store - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24707,7 +24919,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24766,7 +24978,7 @@ i32.load i32.store local.get $2 - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24775,7 +24987,7 @@ i32.load i32.load i32.store - i32.const 15208 + i32.const 24408 i32.load local.get $3 i32.const 2 @@ -24800,7 +25012,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 6200 + i32.const 7200 i32.store local.get $0 i32.load offset=148 @@ -24809,30 +25021,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -24856,30 +25068,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -24903,46 +25115,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_9 + call_indirect $29 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -24952,59 +25147,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $29 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -25012,19 +25190,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -25040,7 +25218,7 @@ call $_free ) - (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $1) + (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $4) (param $0 i32) (param $1 i32) nop @@ -25060,19 +25238,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $31 - local.set $6 - global.get $31 + global.get $33 + local.set $8 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $33 block $block local.get $0 i32.load offset=84 @@ -25080,10 +25251,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -25091,7 +25259,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -25113,55 +25281,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -25169,13 +25337,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -25195,127 +25363,440 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $33 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=20 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $6 + call_indirect $29 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 + local.get $0 + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block + local.get $0 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add i32.load - local.set $0 - local.get $8 + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $31 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $33 return end ;; $block - local.get $6 - global.set $31 + local.get $8 + global.set $33 ) - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -25456,11 +25937,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) return end ;; $block end ;; $if_4 @@ -25603,14 +26084,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $1) + (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -25754,14 +26235,14 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $1) + (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -25905,11 +26386,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -25925,68 +26406,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $31 - local.set $6 - global.get $31 - i32.const 32 - i32.add - global.set $31 - local.get $6 + global.get $33 + local.set $8 + global.get $33 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $33 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -25999,24 +26471,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -26037,7 +26509,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -26046,22 +26518,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -26078,197 +26550,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $29 (type $6) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $1 if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw + i32.load + call $_free + local.get $1 + call $_free end ;; $if_10 + local.get $10 + i32.load + local.set $2 local.get $0 - local.get $8 - local.get $7 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block local.get $0 - i32.load - i32.load offset=24 - i32.const 1 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 208 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $27 (type $6) - local.get $7 i32.load - local.set $0 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 end ;; $if_3 end ;; $if - local.get $6 + local.get $8 i32.const 4 i32.add - local.set $7 + local.set $6 local.get $0 i32.const 120 i32.add - local.set $8 + local.set $7 local.get $0 i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 + local.tee $4 + if $if_37 + local.get $7 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $11 + if $if_38 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else - local.get $3 - if $if_15 (result i32) + local.get $4 + if $if_40 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -26277,82 +27060,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $7 + call_indirect $29 (type $4) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -26366,82 +27149,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $31 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $33 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -26450,44 +27233,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $6 + call_indirect $29 (type $4) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $31 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $33 return end ;; $block - local.get $6 - global.set $31 + local.get $8 + global.set $33 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -26504,17 +27287,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $31 + global.get $33 local.set $8 - global.get $31 - i32.const 32 - i32.add - global.set $31 - local.get $8 + global.get $33 i32.const 16 i32.add - local.set $10 + global.set $33 local.get $8 i32.const 8 i32.add @@ -26522,31 +27300,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -26570,42 +27344,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -26614,39 +27388,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -26657,59 +27431,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -26722,133 +27807,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -26856,12 +27941,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -26869,9 +27954,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $7 i32.load local.set $0 @@ -26879,58 +27964,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -26943,82 +28028,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $31 + global.set $33 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -27050,381 +28135,14 @@ local.get $0 call $_free local.get $8 - global.set $31 - return - end ;; $block - local.get $8 - global.set $31 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 + global.set $33 return end ;; $block local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $33 ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -27768,11 +28486,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_28 local.get $1 call $_free @@ -27788,12 +28506,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=8 local.set $3 @@ -27822,9 +28540,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $5 i32.load local.set $1 @@ -27962,7 +28680,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $31 + global.set $33 return end ;; $block_0 local.get $0 @@ -27979,14 +28697,14 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $31 + global.set $33 return end ;; $block local.get $5 - global.set $31 + global.set $33 ) - (func $__Z10getContextj (type $2) + (func $__Z10getContextj (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -27994,7 +28712,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15212 + i32.const 24412 i32.load local.tee $1 i32.eqz @@ -28002,7 +28720,7 @@ i32.const 0 return end ;; $if - i32.const 15208 + i32.const 24408 i32.load local.get $1 local.get $1 @@ -28137,7 +28855,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz if $if_11 i32.const 0 @@ -28153,7 +28871,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -28169,14 +28887,14 @@ local.get $0 i32.load local.set $3 - i32.const 15212 + i32.const 24412 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 15208 + i32.const 24408 i32.load local.tee $4 local.get $2 @@ -28344,7 +29062,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 15216 + i32.const 24416 i32.eq br_if $block_2 local.get $3 @@ -28454,7 +29172,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 15208 + i32.const 24408 i32.load local.get $2 i32.const 2 @@ -28474,8 +29192,8 @@ local.get $8 i32.const 0 i32.store - i32.const 15220 - i32.const 15220 + i32.const 24420 + i32.const 24420 i32.load i32.const -1 i32.add @@ -28497,349 +29215,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 15212 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 15208 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 15224 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15220 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 15212 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 15208 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 15216 - i32.load - i32.store - i32.const 15216 - local.get $1 - i32.store - i32.const 15208 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 15216 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 15208 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 15220 - i32.const 15220 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) @@ -28851,15 +29236,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $31 - local.set $4 - global.get $31 - i32.const 48 + global.get $33 + local.set $8 + global.get $33 + i32.const 16 i32.add - global.set $31 - i32.const 15248 + global.set $33 + i32.const 24448 i32.load i32.eqz if $if @@ -28874,7 +29257,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15248 + i32.const 24448 local.get $3 i32.store i32.const 20 @@ -28888,27 +29271,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15252 + i32.const 24452 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 15252 + i32.const 24452 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -28916,25 +29291,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -28944,7 +29321,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -28959,7 +29336,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -28967,127 +29344,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $27 (type $2) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $29 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $31 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $33 return - end ;; $if_9 - i32.const 15248 + end ;; $if_7 + i32.const 24448 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -29095,31 +29438,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -29127,12 +29472,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -29140,12 +29485,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -29157,100 +29502,74 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $27 (type $2) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $29 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $31 + end ;; $if_13 + local.get $8 + global.set $33 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -29733,7 +30052,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -29750,8 +30069,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 9 + i32.store offset=28 + local.get $5 + i32.const 6592 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -29949,345 +30271,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $31 - local.set $4 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $31 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $31 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $31 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $31 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -30300,794 +30296,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6868 - i32.store - local.get $2 - i32.const 5376 - i32.const 46 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 6592 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6352 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6352 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $2) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 15256 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 - local.get $1 - local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E + i32.add + i32.and + if $if_0 (result i32) + local.get $1 + call $__ZNSt3__212__next_primeEm + else + local.get $1 end ;; $if_0 - i32.const 15260 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6352 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4768 - i32.const 34 - call $___cxa_throw - else local.get $1 - global.set $31 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 15260 - local.get $0 - i32.store - i32.const 56 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 - local.set $4 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $31 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6484 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $31 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 15260 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 15260 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 16 - i32.add - global.set $31 - i32.const 15168 - i32.load8_s i32.eqz - if $if - i32.const 15168 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 15168 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 15264 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 15264 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $31 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -31098,229 +31122,440 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10856 + i32.store + local.get $2 + i32.const 6408 + i32.const 107 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6868 - i32.store - local.get $3 - i32.const 5376 - i32.const 46 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 144 - i32.add - global.set $31 - local.get $2 - i32.const 128 + i32.const -1 i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 11375 - local.get $3 - call $_snprintf - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $31 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 144 - i32.add - global.set $31 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 11378 - local.get $3 - call $_snprintf - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $31 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 + i32.const 7352 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s @@ -31332,930 +31567,1108 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $0 - global.get $31 - i32.const 16 - i32.add - global.set $31 - i32.const 15268 - i64.const 0 - i64.store align=4 - i32.const 15276 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 16017 + i32.const 7352 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15284 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 16017 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15300 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $31 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $31 - local.set $5 - global.get $31 + global.get $33 + local.set $1 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $0 + global.set $33 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $31 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24456 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24460 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $31 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $3) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $31 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7352 i32.store + local.get $1 local.get $3 - i32.const 11381 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11406 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4720 + i32.const 26 + call $___cxa_throw + else + local.get $1 + global.set $33 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 24460 local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 117 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=8 - local.get $3 - global.set $31 - local.get $2 + call_indirect $29 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $33 + return + end ;; $if + i32.const 7488 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $33 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24460 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24460 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $29 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const 24368 + i32.load8_s + i32.eqz + if $if + i32.const 24368 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24464 + local.get $2 + i32.store + i32.const 24368 + i32.const 0 + i32.store + i32.const 24368 + i32.const 24368 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24464 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 - local.get $0 - i32.load offset=24 - local.set $3 local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 local.get $2 i32.load offset=4 + i32.const 8 i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 + i32.store offset=4 + else local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $33 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4784 - i64.load - local.get $0 - i64.load offset=16 - i64.eq + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4792 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10856 + i32.store + local.get $3 + i32.const 6408 + i32.const 107 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 4784 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4792 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4784 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4784 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 4792 + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 144 + i32.add + global.set $33 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 i32.store - i32.const 4784 + local.get $2 + i32.const 128 + i32.const 14902 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.store + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $33 local.get $0 - local.get $3 - i32.store offset=4 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4784 - i64.load + global.get $33 + local.set $2 + global.get $33 + i32.const 144 + i32.add + global.set $33 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 14905 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.eq + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s if $if - i32.const 4792 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4784 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block + return end ;; $if local.get $0 - i32.load offset=24 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $33 + local.set $0 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const 24468 + i64.const 0 + i64.store align=4 + i32.const 24476 + i64.const 0 + i64.store align=4 local.get $0 - i32.load offset=20 - local.tee $3 - i32.sub - local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.const 25222 + i32.store local.get $0 - i32.load offset=28 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add local.tee $1 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 + i64.load align=4 + i64.store align=4 + i32.const 24484 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25222 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24500 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $33 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $3) + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) - i32.const 4784 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4792 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $33 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 local.get $3 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - drop + i32.const 11 + i32.add + local.set $0 + br $block_0 end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - i32.sub + br $block + end ;; $block_0 + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 local.get $1 - i32.lt_u - if $if_1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $33 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + if $if (result i32) local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select else local.get $0 - local.get $1 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 local.get $3 - i32.add + i32.const 3 + i32.store + local.get $3 + i32.const 14908 + i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 i32.store offset=20 - end ;; $if_1 + local.get $3 + i32.const 14933 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 local.get $0 - i32.load offset=28 - local.tee $1 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $33 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 + local.get $0 + i32.load offset=24 local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 + local.get $4 + i32.store offset=4 local.get $3 + local.get $6 i32.store - local.get $1 - local.get $2 - i32.store offset=4 local.get $0 - local.get $1 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 i32.const 8 i32.add + local.tee $4 i32.store offset=28 - end ;; $if_2 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 16 + i32.add + i32.store offset=28 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $1) + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4784 + i32.const 4736 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4792 + i32.const 4744 i32.load local.set $2 else @@ -32266,53 +32679,50 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4784 + i32.const 4736 i32.eq br_if $block end ;; $if_0 local.get $0 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm return end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) local.get $2 local.get $1 - i32.const 52 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 52 - i32.store offset=4 local.get $2 local.get $0 - i32.const 8 + local.get $1 i32.add - i32.store offset=28 + i32.store offset=20 + local.get $0 end ;; $if_1 ) - (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $1) + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4784 + i32.const 4736 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4792 + i32.const 4744 i32.load local.set $2 else @@ -32323,7 +32733,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4784 + i32.const 4736 i32.eq br_if $block end ;; $if_0 @@ -32333,47 +32743,470 @@ end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) local.get $2 local.get $1 - i32.const 52 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 52 - i32.store offset=4 local.get $2 local.get $0 - i32.const 8 + local.get $1 i32.add - i32.store offset=28 + i32.store offset=20 + local.get $0 end ;; $if_1 ) - (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) (param $0 i32) + (result i32) (local $1 i32) - local.get $0 - i32.load - i32.load - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - ) - + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4736 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4744 + local.get $3 + i32.store + i32.const 4736 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4744 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 113 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 113 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 113 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 113 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.load + i32.load + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + ) + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $17) (param $0 i32) (param $1 i32) @@ -32396,12 +33229,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $6 local.get $4 i32.store @@ -32419,7 +33252,7 @@ i32.load local.set $0 local.get $6 - global.set $31 + global.set $33 local.get $0 return end ;; $if @@ -36981,9 +37814,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_190 local.tee $4 i32.store @@ -37127,9 +37960,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_196 local.tee $4 i32.store @@ -37292,9 +38125,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_202 local.tee $4 i32.store @@ -37462,9 +38295,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_208 local.tee $4 i32.store @@ -37665,7 +38498,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -37724,9 +38557,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_214 br $block @@ -37866,7 +38699,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -37925,9 +38758,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_222 br $block @@ -38086,7 +38919,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -38144,9 +38977,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_230 i32.store local.get $9 @@ -38309,7 +39142,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -38368,9 +39201,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_238 br $block @@ -42397,7 +43230,7 @@ i32.load local.set $4 local.get $11 - i32.const 6372 + i32.const 7372 i32.store local.get $11 local.get $4 @@ -42444,9 +43277,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) local.get $6 local.get $6 i32.load @@ -42465,7 +43298,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11493 + i32.const 15020 i32.store offset=4 local.get $11 i32.const 571 @@ -42477,7 +43310,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11535 + i32.const 15062 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -42497,24 +43330,24 @@ i32.load local.set $0 local.get $6 - global.set $31 + global.set $33 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11493 + i32.const 15020 i32.store offset=4 local.get $1 i32.const 534 @@ -42526,12 +43359,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11535 + i32.const 15062 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11565 + i32.const 15092 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -42540,50 +43373,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 - i32.const 15200 + global.set $33 + i32.const 24400 i32.load8_s i32.eqz if $if - i32.const 15200 + i32.const 24400 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 15200 + i32.const 24400 + i32.const 0 + i32.store + i32.const 24400 + i32.const 24400 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15344 + i32.const 24544 i32.load - i32.const 6492 + i32.const 7492 call $_pthread_equal if $if_1 - i32.const 5672 + i32.const 6672 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $31 + global.set $33 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11493 + i32.const 15020 i32.store offset=4 local.get $0 i32.const 801 @@ -42595,53 +43436,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11577 + i32.const 15104 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $31 + global.set $33 return end ;; $if_1 - i32.const 15192 + i32.const 24392 i32.load8_s i32.eqz if $if_3 - i32.const 15192 + i32.const 24392 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 15192 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 15176 + i32.xor + if $if_4 + i32.const 24376 i64.const 0 i64.store - i32.const 15184 + i32.const 24384 i32.const 0 i32.store - i32.const 57 - i32.const 15176 + i32.const 118 + i32.const 24376 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24392 + i32.const 0 + i32.store + i32.const 24392 + i32.const 24392 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15344 - i32.const 6492 + i32.const 24544 + i32.const 7492 i32.store - i32.const 5672 + i32.const 6672 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15344 + i32.const 24544 i32.const 0 i32.store local.get $0 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -42700,15 +43544,15 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $27 (type $8) + call_indirect $29 (type $8) local.get $0 i32.const 0 i32.store ) - (func $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv (type $1) + (func $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -42729,31 +43573,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11742 + i32.const 15269 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11750 + i32.const 15277 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11758 + i32.const 15285 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11766 + i32.const 15293 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11774 + i32.const 15301 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11782 + i32.const 15309 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11790 + i32.const 15317 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -42761,7 +43605,7 @@ i32.store8 offset=50 ) - (func $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh (type $4) + (func $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -42773,7 +43617,7 @@ i32.load local.set $2 local.get $0 - i32.const 16018 + i32.const 25213 i32.load8_s i32.const 1 i32.and @@ -42783,12 +43627,12 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $3) + (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -42798,19 +43642,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 if $if local.get $0 @@ -42827,7 +43671,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $31 + global.set $33 local.get $0 return end ;; $if @@ -42837,7 +43681,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $6 local.set $5 local.get $4 @@ -42845,7 +43689,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6372 + i32.const 7372 i32.store local.get $3 local.get $2 @@ -42878,11 +43722,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $3 i32.load8_s offset=16 if $if_0 @@ -42890,7 +43734,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11672 + i32.const 15199 i32.store offset=4 local.get $4 i32.const 373 @@ -42902,7 +43746,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11704 + i32.const 15231 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42915,11 +43759,11 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi (type $4) + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -42928,12 +43772,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=12 local.set $4 @@ -42949,7 +43793,7 @@ i32.ge_s if $if local.get $3 - global.set $31 + global.set $33 local.get $4 i32.const 4 i32.add @@ -42985,7 +43829,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11825 + i32.const 15352 i32.store offset=4 local.get $3 i32.const 59 @@ -42997,9 +43841,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11859 + i32.const 15386 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11976 + i32.const 15503 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -43031,13 +43875,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5440 + i32.const 6480 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -43101,11 +43945,11 @@ i32.add local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -43114,12 +43958,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $1 i32.const 8 @@ -43168,7 +44012,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_4 @@ -43206,7 +44050,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $block_3 @@ -43285,7 +44129,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_2 @@ -43371,7 +44215,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $31 + global.set $33 local.get $3 local.get $1 i32.const -8 @@ -43415,21 +44259,21 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $block_0 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $block local.get $2 - global.set $31 + global.set $33 i32.const 0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11SkipMessageEPNS0_2io16CodedInputStreamEPNS3_17CodedOutputStreamE (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite11SkipMessageEPNS0_2io16CodedInputStreamEPNS3_17CodedOutputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -43577,7 +44421,7 @@ local.get $0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE (type $3) + (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -43589,12 +44433,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block block $block_0 local.get $1 @@ -43733,7 +44577,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $31 + global.set $33 i32.const 1 return end ;; $if_2 @@ -43803,7 +44647,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_5 @@ -44359,17 +45203,17 @@ br $block end ;; $block_1 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block local.get $5 - global.set $31 + global.set $33 local.get $0 ) @@ -44422,7 +45266,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey ) - (func $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -44496,7 +45340,7 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -44619,7 +45463,7 @@ i32.store offset=8 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -44627,12 +45471,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=8 i32.const 4 @@ -44682,7 +45526,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12024 + i32.const 15551 i32.store offset=4 local.get $4 i32.const 507 @@ -44694,7 +45538,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12060 + i32.const 15587 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -44746,7 +45590,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $31 + global.set $33 return end ;; $if_2 local.get $1 @@ -44828,10 +45672,10 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -44839,12 +45683,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=8 i32.const 4 @@ -44894,7 +45738,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12024 + i32.const 15551 i32.store offset=4 local.get $4 i32.const 516 @@ -44906,7 +45750,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12060 + i32.const 15587 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -45032,7 +45876,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -45125,7 +45969,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 local.get $2 i32.load offset=8 @@ -45142,11 +45986,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) return end ;; $if_2 local.get $2 @@ -45215,14 +46059,14 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -45271,7 +46115,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $4 local.get $1 i32.load offset=8 @@ -45385,9 +46229,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop return end ;; $if_4 @@ -45397,14 +46241,14 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -45517,18 +46361,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $if @@ -45585,13 +46429,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 12106 + i32.const 15633 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 12118 + i32.const 15645 local.get $2 select local.set $3 @@ -45603,7 +46447,7 @@ i32.const 2 i32.store local.get $1 - i32.const 12024 + i32.const 15551 i32.store offset=4 local.get $1 i32.const 626 @@ -45615,21 +46459,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12132 + i32.const 15659 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 12145 + i32.const 15672 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12164 + i32.const 15691 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12181 + i32.const 15708 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12194 + i32.const 15721 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12250 + i32.const 15777 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -45644,7 +46488,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $31 + global.set $33 i32.const 0 ) @@ -45755,12 +46599,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.set $5 local.get $0 @@ -45803,7 +46647,7 @@ select local.set $7 local.get $5 - global.set $31 + global.set $33 local.get $7 return end ;; $block @@ -45926,7 +46770,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $31 + global.set $33 i64.const -1 return end ;; $if_9 @@ -45954,12 +46798,12 @@ local.get $2 i32.store local.get $5 - global.set $31 + global.set $33 local.get $1 i64.extend_i32_u ) - (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv (type $1) + (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -46317,7 +47161,7 @@ i32.store8 offset=8 ) - (func $__ZN6google8protobuf2io16CodedInputStream7RefreshEv (type $2) + (func $__ZN6google8protobuf2io16CodedInputStream7RefreshEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -46325,12 +47169,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 28 i32.add @@ -46370,9 +47214,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $4 @@ -46399,7 +47243,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12258 + i32.const 15785 i32.store offset=4 local.get $2 i32.const 591 @@ -46411,7 +47255,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12293 + i32.const 15820 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46504,7 +47348,7 @@ end ;; $block local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $if_1 @@ -46520,7 +47364,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_5 @@ -46530,31 +47374,31 @@ i32.eq if $if_6 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $31 + global.set $33 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 12258 + i32.const 15785 i32.store offset=4 local.get $1 i32.const 190 @@ -46566,21 +47410,21 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12330 + i32.const 15857 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12397 + i32.const 15924 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -46646,7 +47490,7 @@ local.get $2 ) - (func $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -46713,11 +47557,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) drop i32.const 0 return @@ -46731,11 +47575,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) if $if_2 (result i32) local.get $0 local.get $0 @@ -46756,15 +47600,15 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $27 (type $10) + call_indirect $29 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 ) - (func $__ZN6google8protobuf2io16CodedInputStream10ReadStringEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream10ReadStringEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -46817,7 +47661,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream18ReadStringFallbackEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream18ReadStringFallbackEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -46995,7 +47839,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian32FallbackEPj (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian32FallbackEPj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -47005,12 +47849,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $7 local.set $3 local.get $0 @@ -47083,7 +47927,7 @@ br $block end ;; $block_0 local.get $7 - global.set $31 + global.set $33 i32.const 0 return end ;; $block @@ -47096,11 +47940,11 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -47110,12 +47954,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $7 local.set $3 local.get $0 @@ -47188,7 +48032,7 @@ br $block end ;; $block_0 local.get $7 - global.set $31 + global.set $33 i32.const 0 return end ;; $block @@ -47201,11 +48045,11 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv (type $2) + (func $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -47216,12 +48060,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $6 @@ -47269,7 +48113,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $31 + global.set $33 local.get $0 return end ;; $block @@ -47439,7 +48283,7 @@ i32.and if $if_11 local.get $7 - global.set $31 + global.set $33 i32.const -1 return end ;; $if_11 @@ -47502,7 +48346,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $31 + global.set $33 i32.const -1 return end ;; $if_12 @@ -47510,12 +48354,12 @@ local.get $2 i32.store local.get $7 - global.set $31 + global.set $33 local.get $8 i32.wrap_i64 ) - (func $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -47524,12 +48368,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $0 i32.load offset=4 @@ -47627,7 +48471,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_2 @@ -47668,7 +48512,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $31 + global.set $33 local.get $0 return end ;; $block_0 @@ -47827,26 +48671,26 @@ local.get $1 i32.store local.get $5 - global.set $31 + global.set $33 local.get $4 return end ;; $block local.get $5 - global.set $31 + global.set $33 i32.const 0 ) - (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamE (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.store @@ -47875,9 +48719,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) if $if local.get $0 local.get $2 @@ -47905,19 +48749,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.store @@ -47934,7 +48778,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -47959,11 +48803,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $0 local.get $0 i32.load offset=12 @@ -47988,12 +48832,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $3 local.set $6 local.get $0 @@ -48031,9 +48875,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -48073,7 +48917,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $31 + global.set $33 return end ;; $block end ;; $if @@ -48095,7 +48939,7 @@ i32.sub i32.store local.get $6 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -48144,11 +48988,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $0 i32.const 12 i32.add @@ -48198,9 +49042,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.const 1 i32.xor i32.const 1 @@ -48211,7 +49055,7 @@ i32.store8 offset=16 ) - (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian32Ej (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian32Ej (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -48221,12 +49065,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add @@ -48253,7 +49097,7 @@ i32.add i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $3 @@ -48295,9 +49139,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -48337,7 +49181,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $5 @@ -48358,7 +49202,7 @@ i32.sub i32.store local.get $3 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $21) @@ -48372,12 +49216,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add @@ -48404,7 +49248,7 @@ i32.add i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $3 @@ -48444,9 +49288,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -48486,7 +49330,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $6 @@ -48507,10 +49351,10 @@ i32.sub i32.store local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -48519,12 +49363,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $6 i32.const 4 i32.add @@ -48612,9 +49456,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -48654,7 +49498,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $31 + global.set $33 return end ;; $block else @@ -48679,7 +49523,7 @@ i32.sub i32.store local.get $6 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $21) @@ -48693,12 +49537,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 4 i32.add @@ -48790,9 +49634,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -48832,7 +49676,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $31 + global.set $33 return end ;; $block end ;; $if_1 @@ -48854,10 +49698,10 @@ i32.sub i32.store local.get $7 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $4) + (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -48948,7 +49792,13 @@ i32.add ) - (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $3) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49003,18 +49853,18 @@ end ;; $if ) - (func $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi (type $1) + (func $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -49029,7 +49879,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $2 i32.const 132 @@ -49041,9 +49891,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12622 + i32.const 16149 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12666 + i32.const 16193 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -49064,7 +49914,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $2 i32.const 134 @@ -49076,7 +49926,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12721 + i32.const 16248 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -49096,14 +49946,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $31 + global.set $33 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $3 i32.const 135 @@ -49115,7 +49965,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12591 + i32.const 16118 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -49130,7 +49980,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $31 + global.set $33 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -49141,7 +49991,7 @@ i64.extend_i32_s ) - (func $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi (type $3) + (func $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49151,12 +50001,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $5 i32.const 24 i32.add @@ -49171,7 +50021,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $3 i32.const 151 @@ -49183,7 +50033,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12811 + i32.const 16338 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -49257,7 +50107,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $5 i32.const 164 @@ -49269,15 +50119,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12888 + i32.const 16415 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12938 + i32.const 16465 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 @@ -49318,22 +50168,22 @@ i32.sub i32.store local.get $5 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io18StringOutputStream6BackUpEi (type $1) + (func $__ZN6google8protobuf2io18StringOutputStream6BackUpEi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -49346,7 +50196,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $2 i32.const 182 @@ -49358,7 +50208,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12591 + i32.const 16118 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -49379,7 +50229,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $2 i32.const 183 @@ -49391,7 +50241,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12811 + i32.const 16338 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -49421,7 +50271,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $3 i32.const 184 @@ -49433,7 +50283,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12843 + i32.const 16370 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -49469,7 +50319,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $31 + global.set $33 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -49478,12 +50328,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 block $block (result i32) local.get $0 i32.load offset=4 @@ -49494,7 +50344,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12542 + i32.const 16069 i32.store offset=4 local.get $1 i32.const 189 @@ -49506,7 +50356,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12811 + i32.const 16338 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -49527,11 +50377,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $31 + global.set $33 local.get $3 else local.get $1 - global.set $31 + global.set $33 local.get $0 i32.const 255 i32.and @@ -49539,19 +50389,19 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi (type $1) + (func $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 1040 i32.add - global.set $31 + global.set $33 local.get $2 local.get $1 i32.load @@ -49561,7 +50411,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 12126 + i32.const 15653 local.get $2 call $_vsnprintf local.tee $4 @@ -49573,7 +50423,7 @@ i32.le_s if $if_0 local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -49594,7 +50444,7 @@ i32.store local.get $3 local.get $5 - i32.const 12126 + i32.const 15653 local.get $2 call $_vsnprintf local.tee $1 @@ -49616,19 +50466,19 @@ call $_free end ;; $if local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf12StringPrintfEPKcz (type $1) + (func $__ZN6google8protobuf12StringPrintfEPKcz (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.get $1 i32.store @@ -49642,10 +50492,10 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $3) + (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49671,7 +50521,7 @@ i32.const 241 return end ;; $if - i32.const 6452 + i32.const 7452 i32.load local.set $13 local.get $0 @@ -49681,18 +50531,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6480 + i32.const 7480 i32.load local.set $4 - i32.const 6460 + i32.const 7460 i32.load local.set $11 - i32.const 6464 + i32.const 7464 i32.load local.set $12 - i32.const 6468 + i32.const 7468 i32.load - i32.const 6436 + i32.const 7436 i32.load i32.add local.tee $8 @@ -49905,7 +50755,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6440 + i32.const 7440 i32.load i32.ge_u if $if_7 @@ -49937,7 +50787,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6440 + i32.const 7440 i32.load i32.lt_u if $if_9 (result i32) @@ -49975,7 +50825,7 @@ local.get $9 ) - (func $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci (type $4) + (func $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -49985,17 +50835,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 i32.eqz if $if local.get $2 - global.set $31 + global.set $33 local.get $1 i32.eqz return @@ -50118,7 +50968,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $31 + global.set $33 local.get $1 local.get $0 local.get $6 @@ -50126,22 +50976,22 @@ i32.eq ) - (func $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi (type $3) + (func $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 13000 + i32.const 16527 i32.store offset=4 local.get $0 i32.const 47 @@ -50153,26 +51003,26 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 13039 + i32.const 16566 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $31 + global.set $33 i32.const 0 ) - (func $___stdio_close (type $2) + (func $___stdio_close (type $1) (param $0 i32) (result i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 local.get $0 i32.load offset=60 @@ -50184,7 +51034,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15412 + i32.const 24612 i32.const 0 local.get $0 i32.sub @@ -50193,217 +51043,63 @@ local.set $0 end ;; $if local.get $1 - global.set $31 + global.set $33 local.get $0 ) - (func $___stdio_write (type $3) + (func $___stdout_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $31 - local.set $6 - global.get $31 - i32.const 48 - i32.add - global.set $31 - local.get $6 + global.get $33 + local.set $3 + global.get $33 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $33 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15412 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15412 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $31 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $33 + local.get $0 ) (func $___stdio_seek (type $12) @@ -50413,12 +51109,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 8 i32.add @@ -50447,7 +51143,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15412 + i32.const 24612 i32.const 0 local.get $0 i32.sub @@ -50469,71 +51165,306 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $31 + global.set $33 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15412 + i32.const 24612 ) - (func $___stdout_write (type $3) + (func $___stdio_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $31 - local.set $3 - global.get $31 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $6 i32.const 32 i32.add - global.set $31 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24612 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24612 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $33 + local.get $2 + ) + + (func $_strlen (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $31 - local.get $0 + i32.sub ) - (func $_memcmp (type $3) + (func $_memcmp (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -50584,7 +51515,134 @@ end ;; $if ) - (func $_memchr (type $4) + (func $_frexp (type $22) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + + (func $_memchr (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -50706,6 +51764,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -50714,18 +51799,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 160 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5136 + i32.const 5088 i32.const 144 call $_memcpy drop @@ -50739,7 +51824,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15412 + i32.const 24612 i32.const 75 i32.store i32.const -1 @@ -50804,11 +51889,11 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $_vfprintf (type $3) + (func $_vfprintf (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -50850,12 +51935,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $31 + global.get $33 local.set $21 - global.get $31 + global.get $33 i32.const 560 i32.add - global.set $31 + global.set $33 local.get $21 i32.const 32 i32.add @@ -50887,13 +51972,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 13223 + i32.const 16750 local.set $18 i32.const 1 else - i32.const 13226 - i32.const 13229 - i32.const 13224 + i32.const 16753 + i32.const 16756 + i32.const 16751 local.get $4 i32.const 1 i32.and @@ -50916,8 +52001,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 13250 - i32.const 13254 + i32.const 16777 + i32.const 16781 local.get $5 i32.const 32 i32.and @@ -50925,8 +52010,8 @@ i32.ne local.tee $3 select - i32.const 13242 - i32.const 13246 + i32.const 16769 + i32.const 16773 local.get $3 select local.get $1 @@ -50944,15 +52029,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -50960,7 +52045,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -51218,11 +52303,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -51230,14 +52315,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -51250,11 +52335,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -51262,7 +52347,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -52169,11 +53254,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -52181,7 +53266,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -52250,7 +53335,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -52274,9 +53359,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 13258 + i32.const 19549 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -52323,7 +53408,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -52353,7 +53438,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -52421,7 +53506,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -52433,9 +53518,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 13258 + i32.const 19549 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -52472,7 +53557,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -52496,13 +53581,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -52511,13 +53596,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $31 + global.set $33 local.get $2 local.get $0 local.get $0 @@ -52526,7 +53611,7 @@ select ) - (func $_pop_arg_long_double (type $1) + (func $_pop_arg_long_double (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -52550,7 +53635,7 @@ f64.store ) - (func $___vfprintf_internal (type $3) + (func $___vfprintf_internal (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -52560,12 +53645,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 224 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 160 i32.add @@ -52676,9 +53761,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop local.get $1 i32.const -1 @@ -52721,7 +53806,7 @@ end ;; $if local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 ) @@ -52753,12 +53838,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $31 + global.get $33 local.set $15 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $15 i32.const 40 i32.add @@ -52807,7 +53892,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15412 + i32.const 24612 i32.const 75 i32.store i32.const -1 @@ -52897,7 +53982,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -53110,7 +54195,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -53146,7 +54231,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -53336,7 +54421,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -53523,7 +54608,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 13206 + i32.const 16733 local.set $8 br $block_14 end ;; $block_25 @@ -53539,13 +54624,13 @@ i64.sub local.tee $25 i64.store - i32.const 13206 + i32.const 16733 local.set $8 i32.const 1 else - i32.const 13207 - i32.const 13208 - i32.const 13206 + i32.const 16734 + i32.const 16735 + i32.const 16733 local.get $7 i32.const 1 i32.and @@ -53569,7 +54654,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 13206 + i32.const 16733 local.set $8 br $block_16 end ;; $block_23 @@ -53585,7 +54670,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13206 + i32.const 16733 local.set $8 local.get $18 local.set $1 @@ -53594,7 +54679,7 @@ local.get $10 i32.load local.tee $5 - i32.const 13216 + i32.const 16743 local.get $5 select local.tee $6 @@ -53614,7 +54699,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13206 + i32.const 16733 local.set $8 local.get $1 local.get $6 @@ -53650,7 +54735,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -53665,7 +54750,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $27 (type $11) + call_indirect $29 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -53675,7 +54760,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13206 + i32.const 16733 local.set $8 local.get $18 local.set $1 @@ -53703,11 +54788,11 @@ local.tee $8 select local.set $12 - i32.const 13206 + i32.const 16733 local.get $6 i32.const 4 i32.shr_u - i32.const 13206 + i32.const 16733 i32.add local.get $8 select @@ -53773,7 +54858,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -53804,7 +54889,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -53867,7 +54952,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -53900,11 +54985,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -53912,17 +54997,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -53930,7 +55015,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -53962,7 +55047,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -54003,11 +55088,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $31 + global.set $33 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -54024,7 +55109,7 @@ end ;; $if ) - (func $_getint_280 (type $2) + (func $_getint (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -54066,7 +55151,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -54290,13 +55375,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 200 - call_indirect $27 (type $1) + i32.const 396 + call_indirect $29 (type $4) end ;; $block end ;; $if ) - (func $_fmt_x (type $22) + (func $_fmt_x (type $23) (param $0 i64) (param $1 i32) (param $2 i32) @@ -54332,7 +55417,7 @@ local.get $1 ) - (func $_fmt_o (type $23) + (func $_fmt_o (type $24) (param $0 i64) (param $1 i32) (result i32) @@ -54364,7 +55449,7 @@ local.get $1 ) - (func $_fmt_u (type $23) + (func $_fmt_u (type $24) (param $0 i64) (param $1 i32) (result i32) @@ -54437,19 +55522,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 256 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 73728 i32.and @@ -54488,7 +55573,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -54505,13 +55590,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $31 + global.set $33 ) - (func $_wctomb (type $4) + (func $_wctomb (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -54525,7 +55610,7 @@ end ;; $if ) - (func $_wcrtomb (type $4) + (func $_wcrtomb (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -54542,7 +55627,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6680 + i32.const 7680 i32.load i32.load i32.eqz @@ -54559,7 +55644,7 @@ i32.const 1 br $block else - i32.const 15412 + i32.const 24612 i32.const 84 i32.store i32.const -1 @@ -54664,7 +55749,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15412 + i32.const 24612 i32.const 84 i32.store i32.const -1 @@ -54714,9 +55799,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop br $block end ;; $if_0 @@ -54761,9 +55846,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) local.get $3 i32.lt_u br_if $block @@ -54794,7 +55879,7 @@ end ;; $block ) - (func $___towrite (type $2) + (func $___towrite (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -54844,77 +55929,7 @@ end ;; $if ) - (func $_frexp (type $24) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - - (func $_sn_write (type $3) + (func $_sn_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -54948,173 +55963,26 @@ local.get $2 ) - (func $_strlen (type $2) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $6) + (func $_fprintf (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (local $3 i32) - global.get $31 - local.set $3 - global.get $31 + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $3 + global.set $33 local.get $2 + local.get $1 i32.store local.get $0 - i32.const 128 - local.get $1 - local.get $3 - call $_vsnprintf + i32.const 14782 + local.get $2 + call $_vfprintf drop - local.get $3 - global.set $31 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + local.get $2 + global.set $33 ) (func $___overflow (type $0) @@ -55122,12 +55990,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 10 i32.store8 @@ -55177,9 +56045,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.const 1 i32.eq if $if_2 (result i32) @@ -55191,32 +56059,10 @@ drop end ;; $block local.get $1 - global.set $31 - ) - - (func $_fprintf (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 11255 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $31 + global.set $33 ) - (func $_fflush (type $2) + (func $_fflush (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -55237,10 +56083,10 @@ end ;; $block local.set $0 else - i32.const 6488 + i32.const 7484 i32.load if $if_1 (result i32) - i32.const 6488 + i32.const 7484 i32.load call $_fflush else @@ -55248,9 +56094,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15416 + i32.const 24616 call $___lock - i32.const 15424 + i32.const 24624 i32.load local.tee $1 end ;; $block_0 @@ -55284,13 +56130,13 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15416 + i32.const 24616 call $___unlock end ;; $if local.get $0 ) - (func $___fflush_unlocked (type $2) + (func $___fflush_unlocked (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -55313,9 +56159,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop local.get $0 i32.load offset=20 @@ -55343,9 +56189,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $27 (type $12) + call_indirect $29 (type $12) drop end ;; $if local.get $0 @@ -55367,7 +56213,71 @@ end ;; $block ) - (func $_malloc (type $2) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + + (func $_malloc (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -55392,17 +56302,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $31 + global.get $33 local.set $17 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15428 + i32.const 24628 i32.load local.tee $6 i32.const 16 @@ -55434,7 +56344,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.tee $3 i32.load offset=8 @@ -55447,7 +56357,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15428 + i32.const 24628 local.get $6 i32.const 1 local.get $0 @@ -55457,7 +56367,7 @@ i32.and i32.store else - i32.const 15444 + i32.const 24644 i32.load local.get $4 i32.gt_u @@ -55497,12 +56407,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $31 + global.set $33 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15436 + i32.const 24636 i32.load local.tee $13 i32.gt_u @@ -55581,7 +56491,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.tee $1 i32.load offset=8 @@ -55594,7 +56504,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15428 + i32.const 24628 local.get $6 i32.const 1 local.get $0 @@ -55605,7 +56515,7 @@ local.tee $8 i32.store else - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.gt_u @@ -55655,7 +56565,7 @@ i32.store local.get $13 if $if_9 - i32.const 15448 + i32.const 24648 i32.load local.set $10 local.get $13 @@ -55664,7 +56574,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $2 local.get $8 @@ -55674,7 +56584,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.const 8 @@ -55692,7 +56602,7 @@ local.set $4 end ;; $if_11 else - i32.const 15428 + i32.const 24628 local.get $0 local.get $8 i32.or @@ -55717,18 +56627,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15436 + i32.const 24636 local.get $6 i32.store - i32.const 15448 + i32.const 24648 local.get $3 i32.store local.get $17 - global.set $31 + global.set $33 local.get $9 return end ;; $if_5 - i32.const 15432 + i32.const 24632 i32.load local.tee $11 if $if_12 (result i32) @@ -55791,7 +56701,7 @@ i32.add i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add i32.load local.tee $0 @@ -55841,7 +56751,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15444 + i32.const 24644 i32.load local.tee $7 local.get $9 @@ -55965,7 +56875,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.tee $0 i32.load @@ -55978,7 +56888,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15432 + i32.const 24632 local.get $11 i32.const 1 local.get $1 @@ -55990,7 +56900,7 @@ br $block_2 end ;; $if_25 else - i32.const 15444 + i32.const 24644 i32.load local.get $18 i32.gt_u @@ -56015,7 +56925,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $3 @@ -56048,7 +56958,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15444 + i32.const 24644 i32.load local.get $0 i32.gt_u @@ -56104,7 +57014,7 @@ i32.store local.get $13 if $if_33 - i32.const 15448 + i32.const 24648 i32.load local.set $4 local.get $13 @@ -56113,7 +57023,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $3 local.get $6 @@ -56123,7 +57033,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15444 + i32.const 24644 i32.load local.get $3 i32.const 8 @@ -56141,7 +57051,7 @@ local.set $12 end ;; $if_35 else - i32.const 15428 + i32.const 24628 local.get $0 local.get $6 i32.or @@ -56166,15 +57076,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15436 + i32.const 24636 local.get $10 i32.store - i32.const 15448 + i32.const 24648 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $31 + global.set $33 local.get $9 i32.const 8 i32.add @@ -56200,7 +57110,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15432 + i32.const 24632 i32.load local.tee $4 if $if_37 (result i32) @@ -56280,7 +57190,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add i32.load local.tee $0 @@ -56445,7 +57355,7 @@ i32.add i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add i32.load local.set $0 @@ -56508,13 +57418,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15436 + i32.const 24636 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15444 + i32.const 24644 i32.load local.tee $12 local.get $2 @@ -56638,7 +57548,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.tee $0 i32.load @@ -56651,7 +57561,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15432 + i32.const 24632 local.get $4 i32.const 1 local.get $3 @@ -56664,7 +57574,7 @@ br $block_9 end ;; $if_60 else - i32.const 15444 + i32.const 24644 i32.load local.get $8 i32.gt_u @@ -56693,7 +57603,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $13 @@ -56726,7 +57636,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15444 + i32.const 24644 i32.load local.get $0 i32.gt_u @@ -56800,10 +57710,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $3 - i32.const 15428 + i32.const 24628 i32.load local.tee $1 i32.const 1 @@ -56812,7 +57722,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15444 + i32.const 24644 i32.load local.get $3 i32.const 8 @@ -56830,7 +57740,7 @@ local.set $11 end ;; $if_71 else - i32.const 15428 + i32.const 24628 local.get $0 local.get $1 i32.or @@ -56926,7 +57836,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.set $3 local.get $5 @@ -56946,7 +57856,7 @@ i32.and i32.eqz if $if_74 - i32.const 15432 + i32.const 24632 local.get $0 local.get $1 i32.or @@ -57027,7 +57937,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15444 + i32.const 24644 i32.load local.get $4 i32.gt_u @@ -57050,7 +57960,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $6 @@ -57083,7 +57993,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $31 + global.set $33 local.get $2 i32.const 8 i32.add @@ -57103,13 +58013,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15436 + i32.const 24636 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15448 + i32.const 24648 i32.load local.set $0 local.get $3 @@ -57119,13 +58029,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15448 + i32.const 24648 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15436 + i32.const 24636 local.get $2 i32.store local.get $1 @@ -57144,10 +58054,10 @@ i32.or i32.store offset=4 else - i32.const 15436 + i32.const 24636 i32.const 0 i32.store - i32.const 15448 + i32.const 24648 i32.const 0 i32.store local.get $0 @@ -57168,13 +58078,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15440 + i32.const 24640 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15440 + i32.const 24640 local.get $12 local.get $11 i32.sub @@ -57182,31 +58092,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 15900 + i32.const 25100 i32.load if $if_83 (result i32) - i32.const 15908 + i32.const 25108 i32.load else - i32.const 15908 + i32.const 25108 i32.const 4096 i32.store - i32.const 15904 + i32.const 25104 i32.const 4096 i32.store - i32.const 15912 + i32.const 25112 i32.const -1 i32.store - i32.const 15916 + i32.const 25116 i32.const -1 i32.store - i32.const 15920 + i32.const 25120 i32.const 0 i32.store - i32.const 15872 + i32.const 25072 i32.const 0 i32.store - i32.const 15900 + i32.const 25100 local.get $17 i32.const -16 i32.and @@ -57233,11 +58143,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15868 + i32.const 25068 i32.load local.tee $2 if $if_85 - i32.const 15860 + i32.const 25060 i32.load local.tee $1 local.get $8 @@ -57259,7 +58169,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 15872 + i32.const 25072 i32.load i32.const 4 i32.and @@ -57270,12 +58180,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15452 + i32.const 24652 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 15876 + i32.const 25076 local.set $2 loop $loop_5 block $block_20 @@ -57338,11 +58248,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15860 + i32.const 25060 i32.load local.tee $4 local.get $0 - i32.const 15904 + i32.const 25104 i32.load local.tee $2 i32.const -1 @@ -57373,7 +58283,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15868 + i32.const 25068 i32.load local.tee $1 if $if_92 @@ -57431,7 +58341,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 15908 + i32.const 25108 i32.load local.tee $1 local.get $6 @@ -57468,8 +58378,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 15872 - i32.const 15872 + i32.const 25072 + i32.const 25072 i32.load i32.const 4 i32.or @@ -57524,28 +58434,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15860 - i32.const 15860 + i32.const 25060 + i32.const 25060 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15864 + i32.const 25064 i32.load i32.gt_u if $if_98 - i32.const 15864 + i32.const 25064 local.get $1 i32.store end ;; $if_98 - i32.const 15452 + i32.const 24652 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 15876 + i32.const 25076 local.set $2 block $block_22 block $block_23 @@ -57603,7 +58513,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15440 + i32.const 24640 i32.load local.get $3 i32.add @@ -57611,10 +58521,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15452 + i32.const 24652 local.get $2 i32.store - i32.const 15440 + i32.const 24640 local.get $1 i32.store local.get $2 @@ -57627,8 +58537,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15456 - i32.const 15916 + i32.const 24656 + i32.const 25116 i32.load i32.store br $block_21 @@ -57636,12 +58546,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15444 + i32.const 24644 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15444 + i32.const 24644 local.get $0 i32.store local.get $0 @@ -57651,7 +58561,7 @@ local.get $3 i32.add local.set $1 - i32.const 15876 + i32.const 25076 local.set $8 block $block_24 block $block_25 @@ -57732,14 +58642,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15440 - i32.const 15440 + i32.const 24640 + i32.const 24640 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15452 + i32.const 24652 local.get $5 i32.store local.get $5 @@ -57749,19 +58659,19 @@ i32.store offset=4 else block $block_26 - i32.const 15448 + i32.const 24648 i32.load local.get $3 i32.eq if $if_105 - i32.const 15436 - i32.const 15436 + i32.const 24636 + i32.const 24636 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15448 + i32.const 24648 local.get $5 i32.store local.get $5 @@ -57806,7 +58716,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.tee $0 i32.ne @@ -57830,8 +58740,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15428 - i32.const 15428 + i32.const 24628 + i32.const 24628 i32.load i32.const 1 local.get $1 @@ -57989,7 +58899,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.tee $0 i32.load @@ -58002,8 +58912,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15432 - i32.const 15432 + i32.const 24632 + i32.const 24632 i32.load i32.const 1 local.get $1 @@ -58015,7 +58925,7 @@ br $block_27 end ;; $block_32 else - i32.const 15444 + i32.const 24644 i32.load local.get $8 i32.gt_u @@ -58040,7 +58950,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $16 @@ -58074,7 +58984,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15444 + i32.const 24644 i32.load local.get $0 i32.gt_u @@ -58126,10 +59036,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $2 - i32.const 15428 + i32.const 24628 i32.load local.tee $1 i32.const 1 @@ -58139,7 +59049,7 @@ i32.and if $if_128 block $block_33 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.const 8 @@ -58158,7 +59068,7 @@ call $_abort end ;; $block_33 else - i32.const 15428 + i32.const 24628 local.get $0 local.get $1 i32.or @@ -58254,7 +59164,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.set $2 local.get $5 @@ -58266,7 +59176,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15432 + i32.const 24632 i32.load local.tee $1 i32.const 1 @@ -58276,7 +59186,7 @@ i32.and i32.eqz if $if_132 - i32.const 15432 + i32.const 24632 local.get $0 local.get $1 i32.or @@ -58357,7 +59267,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.gt_u @@ -58380,7 +59290,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $9 @@ -58413,14 +59323,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $31 + global.set $33 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 15876 + i32.const 25076 local.set $2 loop $loop_10 block $block_35 @@ -58445,7 +59355,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15452 + i32.const 24652 i32.const 0 local.get $0 i32.const 8 @@ -58464,7 +59374,7 @@ i32.add local.tee $4 i32.store - i32.const 15440 + i32.const 24640 local.get $3 i32.const -40 i32.add @@ -58483,8 +59393,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15456 - i32.const 15916 + i32.const 24656 + i32.const 25116 i32.load i32.store local.get $6 @@ -58517,23 +59427,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 15876 + i32.const 25076 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 15884 + i32.const 25084 i64.load align=4 i64.store offset=16 align=4 - i32.const 15876 + i32.const 25076 local.get $0 i32.store - i32.const 15880 + i32.const 25080 local.get $3 i32.store - i32.const 15888 + i32.const 25088 i32.const 0 i32.store - i32.const 15884 + i32.const 25084 local.get $2 i32.const 8 i32.add @@ -58592,10 +59502,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $2 - i32.const 15428 + i32.const 24628 i32.load local.tee $1 i32.const 1 @@ -58604,7 +59514,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.const 8 @@ -58622,7 +59532,7 @@ local.set $5 end ;; $if_143 else - i32.const 15428 + i32.const 24628 local.get $0 local.get $1 i32.or @@ -58718,7 +59628,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.set $2 local.get $6 @@ -58730,7 +59640,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15432 + i32.const 24632 i32.load local.tee $1 i32.const 1 @@ -58740,7 +59650,7 @@ i32.and i32.eqz if $if_146 - i32.const 15432 + i32.const 24632 local.get $0 local.get $1 i32.or @@ -58821,7 +59731,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15444 + i32.const 24644 i32.load local.get $3 i32.gt_u @@ -58844,7 +59754,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $10 @@ -58877,7 +59787,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15444 + i32.const 24644 i32.load local.tee $1 i32.eqz @@ -58886,219 +59796,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15444 + i32.const 24644 local.get $0 i32.store end ;; $if_152 - i32.const 15876 + i32.const 25076 local.get $0 i32.store - i32.const 15880 + i32.const 25080 local.get $3 i32.store - i32.const 15888 + i32.const 25088 i32.const 0 i32.store - i32.const 15464 - i32.const 15900 + i32.const 24664 + i32.const 25100 i32.load i32.store - i32.const 15460 + i32.const 24660 i32.const -1 i32.store - i32.const 15480 - i32.const 15468 + i32.const 24680 + i32.const 24668 i32.store - i32.const 15476 - i32.const 15468 + i32.const 24676 + i32.const 24668 i32.store - i32.const 15488 - i32.const 15476 + i32.const 24688 + i32.const 24676 i32.store - i32.const 15484 - i32.const 15476 + i32.const 24684 + i32.const 24676 i32.store - i32.const 15496 - i32.const 15484 + i32.const 24696 + i32.const 24684 i32.store - i32.const 15492 - i32.const 15484 + i32.const 24692 + i32.const 24684 i32.store - i32.const 15504 - i32.const 15492 + i32.const 24704 + i32.const 24692 i32.store - i32.const 15500 - i32.const 15492 + i32.const 24700 + i32.const 24692 i32.store - i32.const 15512 - i32.const 15500 + i32.const 24712 + i32.const 24700 i32.store - i32.const 15508 - i32.const 15500 + i32.const 24708 + i32.const 24700 i32.store - i32.const 15520 - i32.const 15508 + i32.const 24720 + i32.const 24708 i32.store - i32.const 15516 - i32.const 15508 + i32.const 24716 + i32.const 24708 i32.store - i32.const 15528 - i32.const 15516 + i32.const 24728 + i32.const 24716 i32.store - i32.const 15524 - i32.const 15516 + i32.const 24724 + i32.const 24716 i32.store - i32.const 15536 - i32.const 15524 + i32.const 24736 + i32.const 24724 i32.store - i32.const 15532 - i32.const 15524 + i32.const 24732 + i32.const 24724 i32.store - i32.const 15544 - i32.const 15532 + i32.const 24744 + i32.const 24732 i32.store - i32.const 15540 - i32.const 15532 + i32.const 24740 + i32.const 24732 i32.store - i32.const 15552 - i32.const 15540 + i32.const 24752 + i32.const 24740 i32.store - i32.const 15548 - i32.const 15540 + i32.const 24748 + i32.const 24740 i32.store - i32.const 15560 - i32.const 15548 + i32.const 24760 + i32.const 24748 i32.store - i32.const 15556 - i32.const 15548 + i32.const 24756 + i32.const 24748 i32.store - i32.const 15568 - i32.const 15556 + i32.const 24768 + i32.const 24756 i32.store - i32.const 15564 - i32.const 15556 + i32.const 24764 + i32.const 24756 i32.store - i32.const 15576 - i32.const 15564 + i32.const 24776 + i32.const 24764 i32.store - i32.const 15572 - i32.const 15564 + i32.const 24772 + i32.const 24764 i32.store - i32.const 15584 - i32.const 15572 + i32.const 24784 + i32.const 24772 i32.store - i32.const 15580 - i32.const 15572 + i32.const 24780 + i32.const 24772 i32.store - i32.const 15592 - i32.const 15580 + i32.const 24792 + i32.const 24780 i32.store - i32.const 15588 - i32.const 15580 + i32.const 24788 + i32.const 24780 i32.store - i32.const 15600 - i32.const 15588 + i32.const 24800 + i32.const 24788 i32.store - i32.const 15596 - i32.const 15588 + i32.const 24796 + i32.const 24788 i32.store - i32.const 15608 - i32.const 15596 + i32.const 24808 + i32.const 24796 i32.store - i32.const 15604 - i32.const 15596 + i32.const 24804 + i32.const 24796 i32.store - i32.const 15616 - i32.const 15604 + i32.const 24816 + i32.const 24804 i32.store - i32.const 15612 - i32.const 15604 + i32.const 24812 + i32.const 24804 i32.store - i32.const 15624 - i32.const 15612 + i32.const 24824 + i32.const 24812 i32.store - i32.const 15620 - i32.const 15612 + i32.const 24820 + i32.const 24812 i32.store - i32.const 15632 - i32.const 15620 + i32.const 24832 + i32.const 24820 i32.store - i32.const 15628 - i32.const 15620 + i32.const 24828 + i32.const 24820 i32.store - i32.const 15640 - i32.const 15628 + i32.const 24840 + i32.const 24828 i32.store - i32.const 15636 - i32.const 15628 + i32.const 24836 + i32.const 24828 i32.store - i32.const 15648 - i32.const 15636 + i32.const 24848 + i32.const 24836 i32.store - i32.const 15644 - i32.const 15636 + i32.const 24844 + i32.const 24836 i32.store - i32.const 15656 - i32.const 15644 + i32.const 24856 + i32.const 24844 i32.store - i32.const 15652 - i32.const 15644 + i32.const 24852 + i32.const 24844 i32.store - i32.const 15664 - i32.const 15652 + i32.const 24864 + i32.const 24852 i32.store - i32.const 15660 - i32.const 15652 + i32.const 24860 + i32.const 24852 i32.store - i32.const 15672 - i32.const 15660 + i32.const 24872 + i32.const 24860 i32.store - i32.const 15668 - i32.const 15660 + i32.const 24868 + i32.const 24860 i32.store - i32.const 15680 - i32.const 15668 + i32.const 24880 + i32.const 24868 i32.store - i32.const 15676 - i32.const 15668 + i32.const 24876 + i32.const 24868 i32.store - i32.const 15688 - i32.const 15676 + i32.const 24888 + i32.const 24876 i32.store - i32.const 15684 - i32.const 15676 + i32.const 24884 + i32.const 24876 i32.store - i32.const 15696 - i32.const 15684 + i32.const 24896 + i32.const 24884 i32.store - i32.const 15692 - i32.const 15684 + i32.const 24892 + i32.const 24884 i32.store - i32.const 15704 - i32.const 15692 + i32.const 24904 + i32.const 24892 i32.store - i32.const 15700 - i32.const 15692 + i32.const 24900 + i32.const 24892 i32.store - i32.const 15712 - i32.const 15700 + i32.const 24912 + i32.const 24900 i32.store - i32.const 15708 - i32.const 15700 + i32.const 24908 + i32.const 24900 i32.store - i32.const 15720 - i32.const 15708 + i32.const 24920 + i32.const 24908 i32.store - i32.const 15716 - i32.const 15708 + i32.const 24916 + i32.const 24908 i32.store - i32.const 15728 - i32.const 15716 + i32.const 24928 + i32.const 24916 i32.store - i32.const 15724 - i32.const 15716 + i32.const 24924 + i32.const 24916 i32.store - i32.const 15452 + i32.const 24652 i32.const 0 local.get $0 i32.const 8 @@ -59117,7 +60027,7 @@ i32.add local.tee $4 i32.store - i32.const 15440 + i32.const 24640 local.get $3 i32.const -40 i32.add @@ -59136,18 +60046,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15456 - i32.const 15916 + i32.const 24656 + i32.const 25116 i32.load i32.store end ;; $if_99 - i32.const 15440 + i32.const 24640 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15440 + i32.const 24640 local.get $0 local.get $11 i32.sub @@ -59156,13 +60066,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15412 + i32.const 24612 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15452 - i32.const 15452 + i32.const 24652 + i32.const 24652 i32.load local.tee $0 local.get $11 @@ -59181,14 +60091,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $31 + global.set $33 i32.const 0 ) @@ -59220,7 +60130,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15444 + i32.const 24644 i32.load local.tee $11 i32.lt_u @@ -59279,7 +60189,7 @@ local.get $10 i32.add local.set $5 - i32.const 15448 + i32.const 24648 i32.load local.get $0 i32.eq @@ -59299,7 +60209,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15436 + i32.const 24636 local.get $5 i32.store local.get $7 @@ -59336,7 +60246,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.tee $4 i32.ne @@ -59359,8 +60269,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15428 - i32.const 15428 + i32.const 24628 + i32.const 24628 i32.load i32.const 1 local.get $2 @@ -59526,7 +60436,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.tee $6 i32.load @@ -59539,8 +60449,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15432 - i32.const 15432 + i32.const 24632 + i32.const 24632 i32.load i32.const 1 local.get $2 @@ -59557,7 +60467,7 @@ br $block end ;; $if_24 else - i32.const 15444 + i32.const 24644 i32.load local.get $13 i32.gt_u @@ -59590,7 +60500,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15444 + i32.const 24644 i32.load local.tee $6 local.get $8 @@ -59623,7 +60533,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.gt_u @@ -59693,19 +60603,19 @@ local.get $1 i32.store else - i32.const 15452 + i32.const 24652 i32.load local.get $7 i32.eq if $if_35 - i32.const 15440 - i32.const 15440 + i32.const 24640 + i32.const 24640 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15452 + i32.const 24652 local.get $3 i32.store local.get $3 @@ -59714,33 +60624,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15448 + i32.const 24648 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15448 + i32.const 24648 i32.const 0 i32.store - i32.const 15436 + i32.const 24636 i32.const 0 i32.store return end ;; $if_35 - i32.const 15448 + i32.const 24648 i32.load local.get $7 i32.eq if $if_37 - i32.const 15436 - i32.const 15436 + i32.const 24636 + i32.const 24636 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15448 + i32.const 24648 local.get $4 i32.store local.get $3 @@ -59779,12 +60689,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.gt_u @@ -59803,8 +60713,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15428 - i32.const 15428 + i32.const 24628 + i32.const 24628 i32.load i32.const 1 local.get $6 @@ -59824,7 +60734,7 @@ i32.add local.set $16 else - i32.const 15444 + i32.const 24644 i32.load local.get $1 i32.gt_u @@ -59907,7 +60817,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15444 + i32.const 24644 i32.load local.get $1 i32.gt_u @@ -59922,7 +60832,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15444 + i32.const 24644 i32.load local.get $7 i32.load offset=8 @@ -59962,7 +60872,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.tee $1 i32.load @@ -59975,8 +60885,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15432 - i32.const 15432 + i32.const 24632 + i32.const 24632 i32.load i32.const 1 local.get $0 @@ -59988,7 +60898,7 @@ br $block_2 end ;; $if_55 else - i32.const 15444 + i32.const 24644 i32.load local.get $8 i32.gt_u @@ -60014,7 +60924,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15444 + i32.const 24644 i32.load local.tee $1 local.get $9 @@ -60047,7 +60957,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15444 + i32.const 24644 i32.load local.get $0 i32.gt_u @@ -60075,12 +60985,12 @@ i32.add local.get $5 i32.store - i32.const 15448 + i32.const 24648 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15436 + i32.const 24636 local.get $5 i32.store return @@ -60100,10 +61010,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15468 + i32.const 24668 i32.add local.set $0 - i32.const 15428 + i32.const 24628 i32.load local.tee $1 i32.const 1 @@ -60112,7 +61022,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15444 + i32.const 24644 i32.load local.get $0 i32.const 8 @@ -60130,7 +61040,7 @@ local.set $15 end ;; $if_65 else - i32.const 15428 + i32.const 24628 local.get $1 local.get $4 i32.or @@ -60227,7 +61137,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15732 + i32.const 24932 i32.add local.set $0 local.get $3 @@ -60239,7 +61149,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15432 + i32.const 24632 i32.load local.tee $5 i32.const 1 @@ -60311,7 +61221,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15444 + i32.const 24644 i32.load local.get $2 i32.gt_u @@ -60334,7 +61244,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15444 + i32.const 24644 i32.load local.tee $0 local.get $14 @@ -60366,7 +61276,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15432 + i32.const 24632 local.get $2 local.get $5 i32.or @@ -60384,8 +61294,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15460 - i32.const 15460 + i32.const 24660 + i32.const 24660 i32.load i32.const -1 i32.add @@ -60395,7 +61305,7 @@ if $if_74 return end ;; $if_74 - i32.const 15884 + i32.const 25084 local.set $0 loop $loop_2 local.get $0 @@ -60407,30 +61317,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15460 + i32.const 24660 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $2) + (func $_realloc (type $3) (param $0 i32) + (param $1 i32) (result i32) - i32.const 13260 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24612 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $2) + (func $_try_realloc_chunk (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -60440,167 +61416,1936 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24644 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25108 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24652 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24640 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24652 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24640 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24648 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24636 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24636 + local.get $3 + i32.store + i32.const 24648 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24668 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24628 + i32.const 24628 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24932 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24632 + i32.const 24632 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24644 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24644 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24644 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24644 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24648 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24636 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24668 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24628 + i32.const 24628 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24932 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24632 + i32.const 24632 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24644 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24644 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24644 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24644 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24652 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24640 + i32.const 24640 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24652 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24648 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24648 + i32.const 0 + i32.store + i32.const 24636 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24648 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24636 + i32.const 24636 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24648 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24668 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24628 + i32.const 24628 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 24932 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24632 + i32.const 24632 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24644 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24644 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24644 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24648 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24636 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24668 + i32.add + local.set $0 + i32.const 24628 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24644 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24628 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 24932 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24632 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24632 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24644 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24644 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (param $0 i32) + (result i32) + i32.const 16785 + ) + + (func $__ZNSt3__212__next_primeEm (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq if $if_6 (result i32) i32.const 9 local.set $1 @@ -61809,2719 +64554,28210 @@ local.set $0 local.get $2 br $block_5 - end ;; $if_113 + end ;; $if_113 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_114 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_114 + local.get $4 + i32.const 168 + i32.add + local.tee $2 + local.tee $1 + if $if_115 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_115 + local.tee $1 + local.get $2 + i32.lt_u + if $if_116 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_116 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_117 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_117 + local.get $4 + i32.const 172 + i32.add + local.tee $2 + local.tee $1 + if $if_118 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_118 + local.tee $1 + local.get $2 + i32.lt_u + if $if_119 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_119 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_120 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_120 + local.get $4 + i32.const 178 + i32.add + local.tee $2 + local.tee $1 + if $if_121 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_121 + local.tee $1 + local.get $2 + i32.lt_u + if $if_122 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_122 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_123 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_123 + local.get $4 + i32.const 180 + i32.add + local.tee $2 + local.tee $1 + if $if_124 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_124 + local.tee $1 + local.get $2 + i32.lt_u + if $if_125 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_125 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_126 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_126 + local.get $4 + i32.const 186 + i32.add + local.tee $2 + local.tee $1 + if $if_127 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_127 + local.tee $1 + local.get $2 + i32.lt_u + if $if_128 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_128 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_129 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_129 + local.get $4 + i32.const 190 + i32.add + local.tee $2 + local.tee $1 + if $if_130 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_130 + local.tee $1 + local.get $2 + i32.lt_u + if $if_131 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_131 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_132 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_132 + local.get $4 + i32.const 192 + i32.add + local.tee $2 + local.tee $1 + if $if_133 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_133 + local.tee $1 + local.get $2 + i32.lt_u + if $if_134 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_134 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_135 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_135 + local.get $4 + i32.const 196 + i32.add + local.tee $2 + local.tee $1 + if $if_136 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_136 + local.tee $1 + local.get $2 + i32.lt_u + if $if_137 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_137 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_138 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_138 + local.get $4 + i32.const 198 + i32.add + local.tee $2 + local.tee $1 + if $if_139 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_139 + local.tee $1 + local.get $2 + i32.lt_u + if $if_140 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_114 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_114 + end ;; $if_141 local.get $4 - i32.const 168 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_115 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_115 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_116 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $33 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24456 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25152 + i32.const 25124 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24456 + i32.load + i32.eqz + if $if_0 + i32.const 24456 + i32.const 1 + i32.store + local.get $0 + i32.const 276 + call_indirect $29 (type $0) + i32.const 24456 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $1) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 14834 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 14834 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10836 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $4 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $4 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.set $4 + local.get $2 + if $if_3 + local.get $4 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_4 + end ;; $if_0 + local.get $5 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $8 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14003 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $33 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14003 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 1072 + i32.add + global.set $33 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25200 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 16990 + i32.store + i32.const 16940 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5248 + local.get $0 + local.get $5 + i32.const 5248 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $29 (type $2) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $0 + local.get $4 + i32.const 16990 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 16854 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 16990 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 16899 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 16978 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 4496 + i32.add + global.set $33 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $33 + local.get $0 + ) + + (func $_abort_message (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $1 + i32.store + i32.const 7488 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5272 + i32.const 5256 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $29 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $29 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $29 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $29 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17169 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17172 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17177 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17191 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25200 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $29 (type $8) + i32.const 17129 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22524 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17225 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17230 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17235 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17240 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17252 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17266 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17272 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17287 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17291 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17304 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17309 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17323 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_116 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_117 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_117 - local.get $4 - i32.const 172 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_118 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_118 - local.tee $1 - local.get $2 - i32.lt_u - if $if_119 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 - local.get $4 - i32.const 178 + i32.store + local.get $0 + i32.const 17333 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17342 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17360 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17366 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17378 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17389 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17393 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17403 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17414 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17424 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17434 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 - local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17443 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17452 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17457 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17472 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 80 + i32.add + global.set $33 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22228 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22237 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22240 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22243 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22246 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22249 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22004 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 21879 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 20935 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 20938 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 20945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 20948 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 20954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 20957 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $33 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17452 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $33 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7844 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $4 + i32.const 17487 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17652 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17670 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17682 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17708 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17612 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17628 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 17863 + i32.const 17861 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8064 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 17930 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 17928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 17916 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $33 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8152 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18043 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8196 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 352 + i32.add + global.set $33 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 - i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 17863 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 17861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 - i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 + i32.store + local.get $8 + i32.const 17861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18578 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18580 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18580 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + i32.store local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 - i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_136 - local.tee $1 - local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 - local.get $4 - i32.const 198 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 i32.add - local.tee $2 local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u - else + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop i32.const 0 - end ;; $if_139 - local.tee $1 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 17928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18594 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18597 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18604 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18610 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18613 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18616 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18623 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 17928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18629 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18635 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18649 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18654 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18654 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18649 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18657 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18660 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18662 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18665 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18668 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18672 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18672 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18681 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18681 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18690 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 160 + i32.add + global.set $33 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18145 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18153 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17240 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17266 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17272 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25222 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18161 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18163 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18165 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18168 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18171 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17333 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17342 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17169 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8284 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18227 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8328 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18288 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8372 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18347 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8416 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18407 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18412 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8460 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8504 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 20818 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 20821 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 288 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20671 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 17863 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20674 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 17861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20677 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20680 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18578 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20683 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18594 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20689 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18597 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20692 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20698 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18604 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20701 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20704 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18610 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20707 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20710 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18613 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20713 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18616 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20719 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20725 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18623 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20728 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 17928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20731 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20734 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20737 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20743 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 20746 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18649 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 20749 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 20752 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18660 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 20755 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18662 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 20758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18665 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 20761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18668 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20459 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19598 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19186 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19189 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8548 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18696 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8592 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8636 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 18847 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8680 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8724 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 18909 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17389 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18043 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19035 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8812 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $5 + i32.const 19047 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $6 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19117 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19175 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $25) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8900 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19195 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19207 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19211 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19414 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8988 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19305 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19425 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9076 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9120 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19491 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19549 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9164 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19667 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19670 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19681 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19691 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19702 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19712 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19723 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19733 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19743 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19761 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19771 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19781 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19792 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19802 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19813 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19824 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19835 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19845 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19856 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19867 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19878 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19890 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19900 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19910 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19761 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19921 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19932 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19943 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19958 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19900 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19969 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19979 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19992 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20003 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20013 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20024 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20036 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20046 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20057 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20036 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20068 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20079 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20089 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20099 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20121 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20133 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9252 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20145 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9296 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9340 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9384 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20401 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20408 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9472 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9516 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20560 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9560 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9604 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20618 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20621 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9648 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 20764 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 20769 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9692 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20818 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9736 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9780 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21343 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21283 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21021 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21087 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 local.get $1 - br_if $block_0 - end ;; $block_2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9824 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21028 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21148 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21151 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21154 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9868 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9912 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21157 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21165 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9956 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21220 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21229 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10000 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 + i32.load8_s + else i32.const 0 - local.get $3 - local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 local.get $3 - local.set $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10044 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10088 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17652 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21439 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21510 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21560 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21610 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21396 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21410 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21424 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10132 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10176 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21772 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10220 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 21832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10264 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 + local.get $5 + local.get $0 + i32.load i32.store - end ;; $block + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10308 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 21938 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17493 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22014 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22021 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18145 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10352 + i32.store + local.get $0 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 + i32.load + i32.load offset=16 + local.set $3 + local.get $2 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and + if $if + local.get $4 + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 end ;; $if - local.get $8 - global.set $31 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22057 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 + local.get $2 + i32.const 22067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10396 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10440 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 local.get $2 - i32.load + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 local.get $0 - i32.sub - i32.const 2 - i32.shr_s + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $25) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $6 + i32.const 8 + i32.add + local.set $7 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $33 local.get $0 ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) (param $1 i32) (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10484 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memcpy - drop - end ;; $if + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) - loop $loop - i32.const 15256 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 15952 - i32.const 15924 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 15256 + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 i32.load - i32.eqz - if $if_0 - i32.const 15256 - i32.const 1 - i32.store - local.get $0 - i32.const 167 - call_indirect $27 (type $0) - i32.const 15256 - i32.const -1 - i32.store - end ;; $if_0 + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__Znwm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $4) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.const 1 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - select - local.set $1 - loop $loop (result i32) + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 16008 - i32.const 16008 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if + local.get $4 + i32.const 2 + i32.and + if $if_0 + local.get $7 + i32.const 22057 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $33 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) + (result i32) (local $2 i32) - i32.const 11307 - call $_strlen - local.tee $2 - i32.const 13 + global.get $33 + local.set $2 + global.get $33 + i32.const 16 i32.add - call $__Znwm - local.tee $1 + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - i32.store local.get $1 + i64.load align=4 + i64.store local.get $2 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add - local.tee $1 - i32.const 11307 local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10528 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 i32.add - call $_memcpy - drop + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22308 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE local.get $1 - i32.store + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $0 - i32.const 6848 + i32.const 7888 i32.store local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc + i32.const 16 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10572 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - local.get $0 - i64.const 0 + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22372 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.const 0 - i32.store offset=8 + i32.load offset=8 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $4 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store align=4 local.get $0 - local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $3 - global.set $31 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10616 + i32.store local.get $0 local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $31 - local.set $5 - global.get $31 + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $2 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add local.tee $3 - if $if (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if - local.tee $4 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $4 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 - local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.set $4 - local.get $2 - if $if_3 - local.get $4 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $2 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_4 - end ;; $if_0 - local.get $5 - global.set $31 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $31 - local.set $8 - global.get $31 + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 i32.const 16 i32.add - global.set $31 - i32.const -18 + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.sub + i32.load + local.set $1 + local.get $3 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 - local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + global.set $33 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 1 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10660 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $31 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20621 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 - local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add - local.get $2 - select - local.tee $7 + global.set $33 local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 local.get $0 - else local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 + i32.load + i32.const 2 i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 local.get $0 - i32.load - else + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 + i32.const 22653 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 local.get $0 - i32.const 4 - i32.add - local.tee $3 i32.load - i32.const 1 + i32.const 2 i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 + local.get $0 + i32.load + i32.const 1 + i32.add i32.store local.get $0 - local.get $1 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 br $block - end ;; $block_0 + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 - local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 local.get $0 i32.load + i32.const 2 i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 + i32.store local.get $2 - i32.load8_s - i32.store8 local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 - local.get $2 - global.set $31 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 + local.get $0 + local.get $1 + i32.load offset=336 + local.get $1 + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 - local.set $5 - global.get $31 - i32.const 16 + (local $6 i32) + local.get $0 + i32.const 332 + i32.add + local.tee $3 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 i32.add - global.set $31 + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $0 + local.get $4 + i32.ge_u + br_if $block_0 + local.get $3 + i32.load + local.get $0 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 local.get $1 + i32.load + i32.sub if $if local.get $0 - i32.load8_s offset=11 - local.tee $3 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub i32.const 0 - i32.lt_s + i32.gt_u if $if_0 (result i32) local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add + i32.load8_s else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 + i32.const 0 end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + i32.const 255 + i32.and + i32.const 95 + i32.eq local.get $0 - i32.load8_s offset=11 - else - local.get $3 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 end ;; $if - local.get $5 - global.set $31 + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $26) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + (param $5 i32) + (param $6 i32) + (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i32.const 368 + i32.add local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + local.get $2 local.get $3 local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 - local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 - local.get $0 - local.get $2 - i32.store - local.get $0 + local.get $5 local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=8 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $26) (param $0 i32) (param $1 i32) (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $31 - local.set $5 - global.get $31 + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $7 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 - local.get $3 - i32.sub + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $4 - i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 + i32.load + local.set $2 + local.get $7 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 local.get $5 - global.set $31 - local.get $0 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $1) - (param $0 i32) - (param $1 i32) + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + local.get $2 + local.get $8 + local.get $3 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $27) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10476 - local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $3 i32.const 0 - i32.store8 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10704 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 local.get $0 - local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 local.get $3 - global.set $31 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $4 + i32.store offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + local.get $0 + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store + i32.const 17857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop - local.get $0 - i32.const 10476 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 - i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $31 - local.set $1 - global.get $31 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 i32.add - global.set $31 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13465 - i32.store - i32.const 13415 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5296 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5296 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $27 (type $3) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.set $0 - local.get $1 - i32.const 13465 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13329 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13465 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13374 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) end ;; $if - i32.const 13453 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const 16 - i32.add - global.set $31 - block $block (result i32) - i32.const 0 - i32.const 16000 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $27 (type $8) - i32.const 16000 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13604 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 16004 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22057 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $31 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $33 ) - (func $_abort_message (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10748 i32.store - i32.const 6484 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $31 - i32.const -64 - i32.sub - global.set $31 - local.get $0 + local.get $2 + i32.const 22591 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5320 - i32.const 5304 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $27 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $31 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $1) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22712 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 + i32.const 22732 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $31 - i32.const -64 - i32.sub - global.set $31 local.get $0 - local.get $0 - i32.load - local.tee $4 - i32.const -8 - i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22754 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $33 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22772 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $27 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $31 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10792 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22813 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22901 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $27 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $27 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $0 - global.get $31 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 16004 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13653 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $31 - end ;; $if + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22947 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) - global.get $31 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $31 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 16004 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13703 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $31 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22970 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6848 + i32.const 10836 i32.store local.get $0 i32.const 4 @@ -64553,9 +92789,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -64563,14 +92797,15 @@ end ;; $if ) - (func $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (func $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -64584,10 +92819,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -64597,20 +92835,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -64627,72 +92865,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -64706,10 +93014,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -64731,7 +93040,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -64871,145 +93182,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -65021,10 +93337,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -65089,20 +93406,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -65122,11 +93443,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -65178,9 +93499,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $27 (type $13) + call_indirect $29 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -65230,24 +93551,24 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) ) - (func $___cxa_can_catch (type $3) + (func $___cxa_can_catch (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $3 local.get $2 i32.load @@ -65262,9 +93583,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) local.tee $0 if $if local.get $2 @@ -65273,20 +93594,20 @@ i32.store end ;; $if local.get $3 - global.set $31 + global.set $33 local.get $0 i32.const 1 i32.and ) - (func $___cxa_is_pointer_type (type $2) + (func $___cxa_is_pointer_type (type $1) (param $0 i32) (result i32) local.get $0 if $if (result i32) local.get $0 - i32.const 5320 - i32.const 5408 + i32.const 5272 + i32.const 6440 call $___dynamic_cast i32.const 0 i32.ne @@ -65295,7 +93616,7 @@ end ;; $if ) - (func $_memcpy (type $3) + (func $_memcpy (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65527,7 +93848,7 @@ local.get $4 ) - (func $_memmove (type $3) + (func $_memmove (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65586,7 +93907,7 @@ local.get $0 ) - (func $_memset (type $3) + (func $_memset (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65739,7 +94060,7 @@ i32.sub ) - (func $_sbrk (type $2) + (func $_sbrk (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -65748,7 +94069,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $30 + global.get $32 i32.load local.tee $2 i32.add @@ -65786,13 +94107,13 @@ return end ;; $if_1 end ;; $if_0 - global.get $30 + global.get $32 local.get $1 i32.store local.get $2 ) - (func $dynCall_ii (type $4) + (func $dynCall_ii (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -65800,10 +94121,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $dynCall_iidiiii (type $25) + (func $dynCall_iidiiii (type $28) (param $0 i32) (param $1 i32) (param $2 f64) @@ -65823,10 +94144,10 @@ i32.and i32.const -64 i32.sub - call_indirect $27 (type $11) + call_indirect $29 (type $11) ) - (func $dynCall_iii (type $3) + (func $dynCall_iii (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65834,11 +94155,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) ) (func $dynCall_iiii (type $16) @@ -65853,21 +94174,21 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $dynCall_vi (type $1) + (func $dynCall_vi (type $4) (param $0 i32) (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $dynCall_vii (type $6) @@ -65877,11 +94198,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $dynCall_viii (type $5) @@ -65895,9 +94216,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) ) (func $dynCall_viiii (type $7) @@ -65911,11 +94232,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) ) (func $dynCall_viiiii (type $13) @@ -65933,12 +94254,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) ) - (func $dynCall_viiiiii (type $26) + (func $dynCall_viiiiii (type $27) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65955,12 +94276,12 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $27 (type $13) + call_indirect $29 (type $13) ) - (func $b0 (type $2) + (func $b0 (type $1) (param $0 i32) (result i32) i32.const 0 @@ -65981,7 +94302,7 @@ i32.const 0 ) - (func $b2 (type $4) + (func $b2 (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -65990,7 +94311,7 @@ i32.const 0 ) - (func $b3 (type $3) + (func $b3 (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -66029,7 +94350,7 @@ call $abort ) - (func $b8 (type $1) + (func $b8 (type $4) (param $0 i32) (param $1 i32) i32.const 8 @@ -66082,7 +94403,7 @@ call $abort ) - (func $legalstub$dynCall_ji (type $4) + (func $legalstub$dynCall_ji (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -66091,9 +94412,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $27 (type $10) + call_indirect $29 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -66123,9 +94444,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $27 (type $12) + call_indirect $29 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -66150,9 +94471,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\f0\86\c1\02\d0\86\01\e0\86\01" + ;; "\00\02\00\04\00\80\02\bf\03\80\08\e0\ce\c1\02\c0\ce\01\d0\ce\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wasm b/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wasm index 9863d7d277a1a..c58d0a8fd983b 100644 Binary files a/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wat b/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wat index 9bdeb416ce1f5..3a50dcd5bab47 100644 --- a/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/grpc_call_cpp.wat @@ -22,16 +22,19 @@ (type $20 (func (param f64 i32))) (type $21 (func (param i32 i32) (result i64))) (type $22 (func (param i32 i64))) - (type $23 (func (param i64 i32 i32) (result i32))) - (type $24 (func (param i64 i32) (result i32))) - (type $25 (func (param f64 i32) (result f64))) - (type $26 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $27 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $23 (func (param f64 i32) (result f64))) + (type $24 (func (param i64 i32 i32) (result i32))) + (type $25 (func (param i64 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $27 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $28 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $29 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -43,16 +46,17 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) (import "env" "_proxy_grpcCall" (func $_proxy_grpcCall (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $30 i32)) - (import "env" "DYNAMICTOP_PTR" (global $31 i32)) - (import "env" "memory" (memory $29 256 256)) - (import "env" "table" (table $28 529 529 funcref)) + (import "env" "__table_base" (global $32 i32)) + (import "env" "DYNAMICTOP_PTR" (global $33 i32)) + (import "env" "memory" (memory $31 256 256)) + (import "env" "table" (table $30 785 785 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -105,65 +109,93 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $32 (mut i32) (i32.const 21568)) - (global $33 (mut i32) (i32.const 5264448)) - (elem $34 $28 (global.get $30) + (global $34 (mut i32) (i32.const 31056)) + (global $35 (mut i32) (i32.const 5273936)) + (elem $36 $30 (global.get $32) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNK10DataSource3NewEv $__ZN7Context6asRootEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv - $__ZNK10DataSource13IsInitializedEv $__ZNK10DataSource12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK3Any3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv - $__ZNK21GrpcService_EnvoyGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK21GrpcService_EnvoyGrpc12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials12ByteSizeLongEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv - $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv $__ZNK28GrpcService_GoogleGrpc_Empty3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv - $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv - $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv - $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK38GrpcService_GoogleGrpc_CallCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK22GrpcService_GoogleGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK22GrpcService_GoogleGrpc12ByteSizeLongEv $__ZNK22GrpcService_GoogleGrpc13GetCachedSizeEv - $__ZNK23GrpcService_HeaderValue3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK11GrpcService3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK11GrpcService12ByteSizeLongEv $__ZNK11GrpcService13GetCachedSizeEv - $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv - $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv - $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv - $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv - $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK10DataSource3NewEv $__ZN7Context6asRootEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK10DataSource12ByteSizeLongEv + $__ZNK10DataSource13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK3Any3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK21GrpcService_EnvoyGrpc3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK21GrpcService_EnvoyGrpc12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials12ByteSizeLongEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv $__ZNK28GrpcService_GoogleGrpc_Empty3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK38GrpcService_GoogleGrpc_CallCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK22GrpcService_GoogleGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK22GrpcService_GoogleGrpc12ByteSizeLongEv $__ZNK22GrpcService_GoogleGrpc13GetCachedSizeEv $__ZNK23GrpcService_HeaderValue3NewEv $__ZNK10DataSource13IsInitializedEv + $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK11GrpcService3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK11GrpcService12ByteSizeLongEv $__ZNK11GrpcService13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK10DataSource13GetCachedSizeEv + $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv + $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv + $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv + $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNK10DataSource3NewEPN6google8protobuf5ArenaE $__ZN10DataSource27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE - $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK3Any3NewEPN6google8protobuf5ArenaE $__ZN3Any27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK21GrpcService_EnvoyGrpc3NewEPN6google8protobuf5ArenaE $__ZN21GrpcService_EnvoyGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEPN6google8protobuf5ArenaE $__ZN37GrpcService_GoogleGrpc_SslCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEPN6google8protobuf5ArenaE - $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEPN6google8protobuf5ArenaE $__ZN41GrpcService_GoogleGrpc_ChannelCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEPN6google8protobuf5ArenaE $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEPN6google8protobuf5ArenaE - $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEPN6google8protobuf5ArenaE $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEPN6google8protobuf5ArenaE $__ZN38GrpcService_GoogleGrpc_CallCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK22GrpcService_GoogleGrpc3NewEPN6google8protobuf5ArenaE $__ZN22GrpcService_GoogleGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK23GrpcService_HeaderValue3NewEPN6google8protobuf5ArenaE - $__ZN23GrpcService_HeaderValue27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK11GrpcService3NewEPN6google8protobuf5ArenaE $__ZN11GrpcService27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE - $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $b2 $b2 $b2 $b2 $b2 - $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 - $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 - $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK10DataSource3NewEPN6google8protobuf5ArenaE $__ZN10DataSource27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK3Any3NewEPN6google8protobuf5ArenaE $__ZN3Any27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK21GrpcService_EnvoyGrpc3NewEPN6google8protobuf5ArenaE $__ZN21GrpcService_EnvoyGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEPN6google8protobuf5ArenaE $__ZN37GrpcService_GoogleGrpc_SslCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK28GrpcService_GoogleGrpc_Empty3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEPN6google8protobuf5ArenaE $__ZN41GrpcService_GoogleGrpc_ChannelCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEPN6google8protobuf5ArenaE $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEPN6google8protobuf5ArenaE $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEPN6google8protobuf5ArenaE $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEPN6google8protobuf5ArenaE $__ZN38GrpcService_GoogleGrpc_CallCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK22GrpcService_GoogleGrpc3NewEPN6google8protobuf5ArenaE $__ZN22GrpcService_GoogleGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK23GrpcService_HeaderValue3NewEPN6google8protobuf5ArenaE $__ZN23GrpcService_HeaderValue27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK11GrpcService3NewEPN6google8protobuf5ArenaE $__ZN11GrpcService27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek $b6 $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL22InitDefaultsDataSourceEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL15InitDefaultsAnyEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL33InitDefaultsGrpcService_EnvoyGrpcEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL49InitDefaultsGrpcService_GoogleGrpc_SslCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL57InitDefaultsGrpcService_GoogleGrpc_GoogleLocalCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL40InitDefaultsGrpcService_GoogleGrpc_EmptyEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL53InitDefaultsGrpcService_GoogleGrpc_ChannelCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL85InitDefaultsGrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL71InitDefaultsGrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL80InitDefaultsGrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL50InitDefaultsGrpcService_GoogleGrpc_CallCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL34InitDefaultsGrpcService_GoogleGrpcEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL35InitDefaultsGrpcService_HeaderValueEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL23InitDefaultsGrpcServiceEv $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv - $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 $b6 $b6 + $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv - $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN10DataSourceD2Ev - $__ZN10DataSourceD0Ev $__ZN10DataSource5ClearEv $__ZN3AnyD2Ev $__ZN3AnyD0Ev $__ZN3Any5ClearEv $__ZN21GrpcService_EnvoyGrpcD2Ev $__ZN21GrpcService_EnvoyGrpcD0Ev $__ZN21GrpcService_EnvoyGrpc5ClearEv - $__ZN37GrpcService_GoogleGrpc_SslCredentialsD2Ev $__ZN37GrpcService_GoogleGrpc_SslCredentialsD0Ev $__ZN37GrpcService_GoogleGrpc_SslCredentials5ClearEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD2Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD0Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN28GrpcService_GoogleGrpc_EmptyD2Ev $__ZN28GrpcService_GoogleGrpc_EmptyD0Ev - $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD2Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD0Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentials5ClearEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD2Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD0Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials5ClearEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsD2Ev - $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsD0Ev $__ZN3Any5ClearEv $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginD2Ev $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginD0Ev $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin5ClearEv $__ZN38GrpcService_GoogleGrpc_CallCredentialsD2Ev $__ZN38GrpcService_GoogleGrpc_CallCredentialsD0Ev $__ZN38GrpcService_GoogleGrpc_CallCredentials5ClearEv - $__ZN22GrpcService_GoogleGrpcD2Ev $__ZN22GrpcService_GoogleGrpcD0Ev $__ZN22GrpcService_GoogleGrpc5ClearEv $__ZN23GrpcService_HeaderValueD2Ev $__ZN23GrpcService_HeaderValueD0Ev $__ZN3Any5ClearEv $__ZN11GrpcServiceD2Ev $__ZN11GrpcServiceD0Ev - $__ZN11GrpcService5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev - $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev - $__ZN11RootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev - $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZNSt11logic_errorD2Ev - $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv + $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN10DataSourceD2Ev $__ZN10DataSourceD0Ev $__ZN10DataSource5ClearEv $__ZN3AnyD2Ev $__ZN3AnyD0Ev + $__ZN3Any5ClearEv $__ZN21GrpcService_EnvoyGrpcD2Ev $__ZN21GrpcService_EnvoyGrpcD0Ev $__ZN21GrpcService_EnvoyGrpc5ClearEv $__ZN37GrpcService_GoogleGrpc_SslCredentialsD2Ev $__ZN37GrpcService_GoogleGrpc_SslCredentialsD0Ev $__ZN37GrpcService_GoogleGrpc_SslCredentials5ClearEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD2Ev + $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD0Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN28GrpcService_GoogleGrpc_EmptyD2Ev $__ZN28GrpcService_GoogleGrpc_EmptyD0Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD2Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD0Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentials5ClearEv + $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD2Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD0Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials5ClearEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsD2Ev $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsD0Ev $__ZN3Any5ClearEv $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginD2Ev $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginD0Ev + $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin5ClearEv $__ZN38GrpcService_GoogleGrpc_CallCredentialsD2Ev $__ZN38GrpcService_GoogleGrpc_CallCredentialsD0Ev $__ZN38GrpcService_GoogleGrpc_CallCredentials5ClearEv $__ZN22GrpcService_GoogleGrpcD2Ev $__ZN22GrpcService_GoogleGrpcD0Ev $__ZN22GrpcService_GoogleGrpc5ClearEv $__ZN23GrpcService_HeaderValueD2Ev + $__ZN23GrpcService_HeaderValueD0Ev $__ZN3Any5ClearEv $__ZN11GrpcServiceD2Ev $__ZN11GrpcServiceD0Ev $__ZN11GrpcService5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv + $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev + $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev + $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev + $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN7Context8onCreateEv $__ZN17MyGrpcCallHandlerD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev + $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN17MyGrpcCallHandlerD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv - $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv - $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 $b7 $b7 + $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv + $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 - $b8 $__ZN15GrpcCallHandlerIN6google8protobuf5ValueEE9onSuccessENSt3__210unique_ptrI8WasmDataNS4_14default_deleteIS6_EEEE $__ZN17MyGrpcCallHandler9onSuccessEON6google8protobuf5ValueE $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNK10DataSource11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN10DataSource21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK10DataSource24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE - $__ZNK3Any11GetTypeNameEv $__ZN3Any21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK3Any24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK21GrpcService_EnvoyGrpc11GetTypeNameEv $__ZN21GrpcService_EnvoyGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK21GrpcService_EnvoyGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials11GetTypeNameEv $__ZN37GrpcService_GoogleGrpc_SslCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE - $__ZNK37GrpcService_GoogleGrpc_SslCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials11GetTypeNameEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty11GetTypeNameEv $__ZN28GrpcService_GoogleGrpc_Empty21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials11GetTypeNameEv - $__ZN41GrpcService_GoogleGrpc_ChannelCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials11GetTypeNameEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials11GetTypeNameEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE - $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin11GetTypeNameEv $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials11GetTypeNameEv $__ZN38GrpcService_GoogleGrpc_CallCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK38GrpcService_GoogleGrpc_CallCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK22GrpcService_GoogleGrpc11GetTypeNameEv $__ZN22GrpcService_GoogleGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE - $__ZNK22GrpcService_GoogleGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK23GrpcService_HeaderValue11GetTypeNameEv $__ZN23GrpcService_HeaderValue21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK23GrpcService_HeaderValue24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK11GrpcService11GetTypeNameEv $__ZN11GrpcService21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK11GrpcService24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj - $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double $b8 $b8 $b8 $b8 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZN15GrpcCallHandlerIN6google8protobuf5ValueEE9onSuccessENSt3__210unique_ptrI8WasmDataNS4_14default_deleteIS6_EEEE $__ZN17MyGrpcCallHandler9onSuccessEON6google8protobuf5ValueE $__ZNK10DataSource11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN10DataSource21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK10DataSource24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK3Any11GetTypeNameEv + $__ZN3Any21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK3Any24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK21GrpcService_EnvoyGrpc11GetTypeNameEv $__ZN21GrpcService_EnvoyGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK21GrpcService_EnvoyGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials11GetTypeNameEv $__ZN37GrpcService_GoogleGrpc_SslCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK37GrpcService_GoogleGrpc_SslCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE + $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials11GetTypeNameEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty11GetTypeNameEv $__ZN28GrpcService_GoogleGrpc_Empty21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials11GetTypeNameEv $__ZN41GrpcService_GoogleGrpc_ChannelCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE + $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials11GetTypeNameEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials11GetTypeNameEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin11GetTypeNameEv + $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials11GetTypeNameEv $__ZN38GrpcService_GoogleGrpc_CallCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK38GrpcService_GoogleGrpc_CallCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK22GrpcService_GoogleGrpc11GetTypeNameEv $__ZN22GrpcService_GoogleGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK22GrpcService_GoogleGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE + $__ZNK23GrpcService_HeaderValue11GetTypeNameEv $__ZN23GrpcService_HeaderValue21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK23GrpcService_HeaderValue24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK11GrpcService11GetTypeNameEv $__ZN11GrpcService21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK11GrpcService24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv + $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj + $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE + $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 @@ -171,18 +203,22 @@ $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN17MyGrpcCallHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b9 $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN17MyGrpcCallHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b9 $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi + $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $35 $29 (i32.const 1024) - "\0b9\00\00\109\00\00\189\00\00\1e9") - (data $36 $29 (i32.const 1168) + (data $37 $31 (i32.const 1025) + "H\00\00\05H\00\00\0dH\00\00\13H") + (data $38 $31 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $37 $29 (i32.const 1488) + (data $39 $31 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -212,304 +248,455 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $38 $29 (i32.const 3472) + (data $40 $31 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $39 $29 (i32.const 3632) + (data $41 $31 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $40 $29 (i32.const 3681) + (data $42 $31 (i32.const 3681) "\0b") - (data $41 $29 (i32.const 3690) + (data $43 $31 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $42 $29 (i32.const 3739) + (data $44 $31 (i32.const 3739) "\0c") - (data $43 $29 (i32.const 3751) + (data $45 $31 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $44 $29 (i32.const 3797) + (data $46 $31 (i32.const 3797) "\0e") - (data $45 $29 (i32.const 3809) + (data $47 $31 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $46 $29 (i32.const 3855) + (data $48 $31 (i32.const 3855) "\10") - (data $47 $29 (i32.const 3867) + (data $49 $31 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $48 $29 (i32.const 3922) + (data $50 $31 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $49 $29 (i32.const 3971) + (data $51 $31 (i32.const 3971) "\0b") - (data $50 $29 (i32.const 3983) + (data $52 $31 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $51 $29 (i32.const 4029) + (data $53 $31 (i32.const 4029) "\0c") - (data $52 $29 (i32.const 4041) + (data $54 $31 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\b4 \00\00\a1!\00\00\dc \00\00\98!\00\00p\11\00\00\00\00\00\00\dc" - " \00\00\87!\00\00x\11\00\00\00\00\00\00\b4 \00\00\91\"\00\00H!\00\00R\"\00\00\00\00\00\00\01\00\00\00\98\11\00\00\00\00\00\00\b4 \00\00\f7\"\00\00\dc \00\00\cb\"\00\00\b8" - "\11\00\00\00\00\00\00\dc \00\00\b7\"\00\00\c0\11\00\00\00\00\00\00\b4 \00\00\86#\00\00\dc \00\00\0d#\00\00\e0\11\00\00\00\00\00\00\b4 \00\00\e8#\00\00\b4 \00\008$\00\00\dc" - " \00\00r%\00\00\a8\13\00\00\00\00\00\00\dc \00\00\90%\00\00\a8\13\00\00\00\00\00\00\dc \00\00\ce%\00\00\a8\13\00\00\00\00\00\00\dc \00\00\0c&\00\00\a8\13\00\00\00\00\00\00\dc" - " \00\00b&\00\00\a8\13\00\00\00\00\00\00\dc \00\00\af&\00\00\a8\13\00\00\00\00\00\00\dc \00\00\f8&\00\00\a8\13\00\00\00\00\00\00\dc \00\00\c1'\00\00\a8\13\00\00\00\00\00\00\dc" - " \00\00\e8(\00\00\a8\13\00\00\00\00\00\00\dc \00\00\b5)\00\00\a8\13\00\00\00\00\00\00\dc \00\00\93*\00\00\a8\13\00\00\00\00\00\00\dc \00\00H+\00\00\a8\13\00\00\00\00\00\00\dc" - " \00\00\b3+\00\00\a8\13\00\00\00\00\00\00\dc \00\00\d9+\00\00\a8\13\00\00\00\00\00\00\dc \00\00\a45\00\00\a8\13\00\00\00\00\00\00\dc \00\00\864\00\00\08\13\00\00\00\00\00\00\dc" - " \00\00C.\00\00\18\13\00\00\00\00\00\00\dc \00\00s.\00\00(\13\00\00\00\00\00\00\dc \00\009/\00\00\a8\13\00\00\00\00\00\00\dc \00\00S4\00\00\a8\13\00\00\00\00\00\00H" - "!\00\00\113\00\00\00\00\00\00\01\00\00\00`\13\00\00\00\00\00\00\b4 \00\00~3\00\00\dc \00\00m4\00\00\a8\13\00\00\00\00\00\00\dc \00\00\d75\00\00p\11\00\00\00\00\00\00\dc" - " \00\00\066\00\00\98\15\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $53 $29 (i32.const 5032) - "\b4 \00\00\0b;\00\00\dc \00\00\f9@\00\00\d0\13\00\00\00\00\00\00\dc \00\00\b5A\00\00\d0\13\00\00\00\00\00\00\b4 \00\00\81B\00\00\05") - (data $54 $29 (i32.const 5092) - "h") - (data $55 $29 (i32.const 5116) - "\08\00\00\00\01\00\00\00kO") - (data $56 $29 (i32.const 5140) - "\02") - (data $57 $29 (i32.const 5155) - "\ff\ff\ff\ff\ff") - (data $58 $29 (i32.const 5224) - "\05") - (data $59 $29 (i32.const 5236) - "h") - (data $60 $29 (i32.const 5260) - "\09\00\00\00\01\00\00\00\c8E\00\00\00\04") - (data $61 $29 (i32.const 5284) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\cc$\00\00i1\00\00\f4$\00\00`1\00\00p\11\00\00\00\00\00\00\f4" + "$\00\00O1\00\00x\11\00\00\00\00\00\00\cc$\00\00]2\00\00\101\00\00\1e2\00\00\00\00\00\00\01\00\00\00\98\11\00\00\00\00\00\00\cc$\00\00\c32\00\00\f4$\00\00\972\00\00\b8" + "\11\00\00\00\00\00\00\f4$\00\00\832\00\00\c0\11\00\00\00\00\00\00\cc$\00\00\d92\00\00\cc$\00\00+3\00\00\f4$\00\00e4\00\00\90\13\00\00\00\00\00\00\f4$\00\00\834\00\00\90" + "\13\00\00\00\00\00\00\f4$\00\00\c14\00\00\90\13\00\00\00\00\00\00\f4$\00\00\ff4\00\00\90\13\00\00\00\00\00\00\f4$\00\00U5\00\00\90\13\00\00\00\00\00\00\f4$\00\00\a25\00\00\90" + "\13\00\00\00\00\00\00\f4$\00\00\eb5\00\00\90\13\00\00\00\00\00\00\f4$\00\00\b46\00\00\90\13\00\00\00\00\00\00\f4$\00\00\db7\00\00\90\13\00\00\00\00\00\00\f4$\00\00\a88\00\00\90" + "\13\00\00\00\00\00\00\f4$\00\00\869\00\00\90\13\00\00\00\00\00\00\f4$\00\00;:\00\00\90\13\00\00\00\00\00\00\f4$\00\00\a6:\00\00\90\13\00\00\00\00\00\00\f4$\00\00\cc:\00\00\90" + "\13\00\00\00\00\00\00\f4$\00\00\99D\00\00\90\13\00\00\00\00\00\00\f4$\00\00{C\00\00\f0\12\00\00\00\00\00\00\f4$\00\008=\00\00\00\13\00\00\00\00\00\00\f4$\00\00h=\00\00\10" + "\13\00\00\00\00\00\00\f4$\00\00.>\00\00\90\13\00\00\00\00\00\00\f4$\00\00HC\00\00\90\13\00\00\00\00\00\00\101\00\00\06B\00\00\00\00\00\00\01\00\00\00H\13\00\00\00\00\00\00\cc" + "$\00\00sB\00\00\f4$\00\00bC\00\00\90\13\00\00\00\00\00\00\f4$\00\00\ccD\00\00p\11\00\00\00\00\00\00\f4$\00\00\fbD\00\00\80\15\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $55 $31 (i32.const 5008) + "\cc$\00\00\00J\00\00\f4$\00\00\eeO\00\00\b8\13\00\00\00\00\00\00\f4$\00\00\aaP\00\00\b8\13\00\00\00\00\00\00\cc$\00\00vQ\00\00\05") + (data $56 $31 (i32.const 5068) + "f") + (data $57 $31 (i32.const 5092) + "\08\00\00\00\01\00\00\00\d8j\00\00\00\04") + (data $58 $31 (i32.const 5116) "\01") - (data $62 $29 (i32.const 5299) + (data $59 $31 (i32.const 5131) "\n\ff\ff\ff\ff") - (data $63 $29 (i32.const 5404) + (data $60 $31 (i32.const 5200) + "\05") + (data $61 $31 (i32.const 5212) + "f") + (data $62 $31 (i32.const 5236) + "\09\00\00\00\01\00\00\00vt") + (data $63 $31 (i32.const 5260) + "\02") + (data $64 $31 (i32.const 5275) + "\ff\ff\ff\ff\ff") + (data $65 $31 (i32.const 5380) "\n") - (data $64 $29 (i32.const 5443) + (data $66 $31 (i32.const 5419) "\ff\ff\ff\ff\ff") - (data $65 $29 (i32.const 5512) - "\dc \00\00\faB\00\00\98\15\00\00\00\00\00\00\b4 \00\00\bcC\00\00\dc \00\00\1cD\00\00\b0\15\00\00\00\00\00\00\dc \00\00\c9C\00\00\c0\15\00\00\00\00\00\00\b4 \00\00\eaC\00\00" - "\dc \00\00\f7C\00\00\a0\15\00\00\00\00\00\00\dc \00\00\feD\00\00\98\15\00\00\00\00\00\00\dc \00\00\0eE\00\00\d8\15\00\00\00\00\00\00\dc \00\00CE\00\00\b0\15\00\00\00\00\00\00" - "\dc \00\00\1fE\00\00\f8\15\00\00\00\00\00\00\dc \00\00eE\00\00\b0\15\00\00\00\00\00\00,!\00\00\8dE\00\00,!\00\00\8fE\00\00\dc \00\00\91E\00\00\a0\15") - (data $66 $29 (i32.const 5708) + (data $67 $31 (i32.const 5488) + "\f4$\00\00\edQ\00\00\80\15\00\00\00\00\00\00\cc$\00\00\afR\00\00\f4$\00\00\0fS\00\00\98\15\00\00\00\00\00\00\f4$\00\00\bcR\00\00\a8\15\00\00\00\00\00\00\cc$\00\00\ddR\00\00" + "\f4$\00\00\eaR\00\00\88\15\00\00\00\00\00\00\f4$\00\00\9fT\00\00\d0\15\00\00\00\00\00\00\cc$\00\00\ceT\00\00\f4$\00\00\82U\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\c5U\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\12V\00\00\d0\15\00\00\00\00\00\00\f4$\00\00XV\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\88V\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\c6V\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\f7V\00\00\d0\15\00\00\00\00\00\00\f4$\00\00GW\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\80W\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\bbW\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\f7W\00\00\d0\15\00\00\00\00\00\00\f4$\00\00:X\00\00\d0\15\00\00\00\00\00\00\f4$\00\00hX\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\9bX\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00WY\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\84Y\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\b5Y\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\f3Y\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00kZ\00\00\d0\15\00\00\00\00\00\00\f4$\00\000Z\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\b2Z\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\fbZ\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00V[\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\81[\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\bb[\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\ef[\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00?\\\00\00\d0\15\00\00\00\00\00\00\f4$\00\00n\\\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\a7\\\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\e0\\\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\05_\00\00\d0\15\00\00\00\00\00\00\f4$\00\00S_\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\8e_\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\ba_\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\04`\00\00\d0\15\00\00\00\00\00\00\f4$\00\009`\00\00\d0\15\00\00\00\00\00\00\f4$\00\00l`\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\a3`\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\d8`\00\00\d0\15\00\00\00\00\00\00\f4$\00\00na\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\a0a\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\d2a\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00*b\00\00\d0\15\00\00\00\00\00\00\f4$\00\00rb\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\aab\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\f8b\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\007c\00\00\d0\15\00\00\00\00\00\00\f4$\00\00zc\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\abc\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\e5d\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00%e\00\00\d0\15\00\00\00\00\00\00\f4$\00\00Xe\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\92e\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\cbe\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\08f\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\85f\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\b1f\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\e7f\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00;g\00\00\d0\15\00\00\00\00\00\00\f4$\00\00sg\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\b6g\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\e7g\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\17h\00\00\d0\15\00\00\00\00\00\00\f4$\00\00Rh\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\94h\00\00\d0\15\00\00\00\00\00\00\f4$\00\00\83i\00\00" + "\d0\15\00\00\00\00\00\00\f4$\00\00\0ej\00\00\80\15\00\00\00\00\00\00\f4$\00\00\1ej\00\00\f8\19\00\00\00\00\00\00\f4$\00\00/j\00\00\98\15\00\00\00\00\00\00\f4$\00\00Qj\00\00" + "\18\1a\00\00\00\00\00\00\f4$\00\00uj\00\00\98\15\00\00\00\00\00\00\f40\00\00\9dj\00\00\f40\00\00\9fj\00\00\f40\00\00\a1j\00\00\f4$\00\00\a3j\00\00\88\15") + (data $68 $31 (i32.const 6772) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\d0\11\00\00\07\00\00\00\08\00\00\00\09\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\n\00\00\00\09\00\00\00" - "\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\e8\11\00\00\0b\00\00\00\0c\00\00\00\0b\00\00\00\03\00\00\00\0d\00\00\00\0e\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\ff\ff\ff\ff\00\00\00\00" - "\01") - (data $67 $29 (i32.const 5912) - "\08\12\00\00\0f\00\00\00\10\00\00\00\04\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\11\00\00\00\10\00\00\00\05\00\00\00\06\00\00\00\05\00\00\00\11\00\00\00\07\00\00\00\06\00\00\00" - "\12\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\02") - (data $68 $29 (i32.const 6008) - "\18\12\00\00\12\00\00\00\13\00\00\00\08\00\00\00\14\00\00\00\07\00\00\00\0e\00\00\00\0f\00\00\00\14\00\00\00\15\00\00\00\05\00\00\00\09\00\00\00\08\00\00\00\16\00\00\00\n\00\00\00\06\00\00\00" - "\17\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\03") - (data $69 $29 (i32.const 6104) - "(\12\00\00\15\00\00\00\16\00\00\00\0b\00\00\00\18\00\00\00\09\00\00\00\0e\00\00\00\0f\00\00\00\17\00\00\00\19\00\00\00\05\00\00\00\0c\00\00\00\n\00\00\00\1a\00\00\00\0d\00\00\00\06\00\00\00" - "\1b\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\01\00\00\00\04\00\00\00\04\17\00\00\00\00\00\008\12\00\00\18\00\00\00\19\00\00\00\0e\00\00\00\1c\00\00\00\0b\00\00\00\0e\00\00\00\0f\00\00\00" - "\1a\00\00\00\1d\00\00\00\05\00\00\00\0f\00\00\00\0c\00\00\00\1e\00\00\00\10\00\00\00\06\00\00\00\1f\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\05") - (data $70 $29 (i32.const 6296) - "H\12\00\00\1b\00\00\00\1c\00\00\00\11\00\00\00 \00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1d\00\00\00!\00\00\00\05\00\00\00\12\00\00\00\0e\00\00\00\"\00\00\00\13\00\00\00\06\00\00\00" - "#\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\06") - (data $71 $29 (i32.const 6392) - "X\12\00\00\1e\00\00\00\1f\00\00\00\14\00\00\00$\00\00\00\0f\00\00\00\0e\00\00\00\0f\00\00\00 \00\00\00%\00\00\00\05\00\00\00\15\00\00\00\10\00\00\00&\00\00\00\16\00\00\00\06\00\00\00" - "'\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\07\00\00\00$\18\00\00\e4\18\00\00\84\18\00\00\00\00\00\00h\12\00\00!\00\00\00\"\00\00\00\17\00\00\00(\00\00\00\11\00\00\00" - "\0e\00\00\00\0f\00\00\00#\00\00\00)\00\00\00\05\00\00\00\18\00\00\00\12\00\00\00*\00\00\00\19\00\00\00\06\00\00\00+\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\08") - (data $72 $29 (i32.const 6592) - "x\12\00\00$\00\00\00%\00\00\00\1a\00\00\00,\00\00\00\13\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00-\00\00\00\05\00\00\00\1b\00\00\00\14\00\00\00.\00\00\00\1c\00\00\00\06\00\00\00" - "/\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\09") - (data $73 $29 (i32.const 6688) - "\88\12\00\00'\00\00\00(\00\00\00\1d\00\00\000\00\00\00\15\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\001\00\00\00\05\00\00\00\1e\00\00\00\16\00\00\002\00\00\00\1f\00\00\00\06\00\00\00" - "3\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\02\00\00\00\n\00\00\00l\1c\00\00d\17\00\00\00\00\00\00\98\12\00\00*\00\00\00+\00\00\00 \00\00\004\00\00\00\17\00\00\00\0e\00\00\00" - "\0f\00\00\00,\00\00\005\00\00\00\05\00\00\00!\00\00\00\18\00\00\006\00\00\00\"\00\00\00\06\00\00\007\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\04\00\00\00\0b\00\00\00\e4\18\00\00" - "\ac\19\00\00\0c\1a\00\00l\1a\00\00\00\00\00\00\a8\12\00\00-\00\00\00.\00\00\00#\00\00\008\00\00\00\19\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\009\00\00\00\05\00\00\00$\00\00\00" - "\1a\00\00\00:\00\00\00%\00\00\00\06\00\00\00;\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\0c\00\00\00D\19\00\00\d0\1a\00\00l\1c\00\00\00\00\00\00\b8\12\00\000\00\00\00" - "1\00\00\00&\00\00\00<\00\00\00\1b\00\00\00\0e\00\00\00\0f\00\00\002\00\00\00=\00\00\00\05\00\00\00'\00\00\00\1c\00\00\00>\00\00\00(\00\00\00\06\00\00\00?\00\00\00\03\00\00\00" - "\13\00\00\00\ff\ff\ff\ff\00\00\00\00\0d") - (data $74 $29 (i32.const 7096) - "\c8\12\00\003\00\00\004\00\00\00)\00\00\00@\00\00\00\1d\00\00\00\0e\00\00\00\0f\00\00\005\00\00\00A\00\00\00\05\00\00\00*\00\00\00\1e\00\00\00B\00\00\00+\00\00\00\06\00\00\00" - "C\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\0e\00\00\00\c4\17\00\00<\1b\00\00\a4\1b\00\00\00\00\00\00\d8\12\00\006\00\00\007\00\00\00,\00\00\00D\00\00\00\1f\00\00\00" - "\0e\00\00\00\0f\00\00\008\00\00\00E\00\00\00\05\00\00\00-\00\00\00 \00\00\00F\00\00\00.\00\00\00\06\00\00\00G\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\0f") - (data $75 $29 (i32.const 7296) - "\08\13\00\009\00\00\00:\00\00\00/\00\00\00H\00\00\00!\00\00\00I\00\00\00\0f\00\00\00;\00\00\00J\00\00\00\05\00\00\000\00\00\00\"\00\00\00K\00\00\001\00\00\00\06\00\00\00" - "L\00\00\00\04\00\00\00\13\00\00\00M\00\00\00N\00\00\00\00\00\00\00h\13\00\00<\00\00\00=\00\00\002\00\00\00O\00\00\00#\00\00\00P\00\00\00Q\00\00\00>\00\00\00R\00\00\00" - "\05\00\00\003\00\00\00$\00\00\00S\00\00\004\00\00\00\06\00\00\00T\00\00\00\03\00\00\00\13\00\00\00\00\00\00\00\e8\12\00\00?\00\00\00@\00\00\005\00\00\00U\00\00\00%\00\00\00" - "V\00\00\00W\00\00\00A\00\00\00X\00\00\00\05\00\00\006\00\00\00&\00\00\00Y\00\00\007\00\00\00\06\00\00\00Z\00\00\00\03\00\00\00\13\00\00\00\00\00\00\00\f8\12\00\009\00\00\00" - "B\00\00\00/\00\00\00H\00\00\00!\00\00\00I\00\00\00\0f\00\00\00;\00\00\00J\00\00\00\05\00\00\000\00\00\00\"\00\00\00K\00\00\001\00\00\00\06\00\00\00L\00\00\00\04\00\00\00" - "\13\00\00\00[\00\00\00\\\00\00\00\00\00\00\008\13\00\00C\00\00\00D\00\00\008\00\00\00]\00\00\00'\00\00\00^\00\00\00_\00\00\00E\00\00\00`\00\00\00\05\00\00\009\00\00\00" - "(\00\00\00a\00\00\00:\00\00\00\06\00\00\00b\00\00\00\03\00\00\00\13\00\00\00\00\00\00\00(\13\00\009\00\00\00F\00\00\00/\00\00\00H\00\00\00!\00\00\00I\00\00\00\0f\00\00\00" - ";\00\00\00J\00\00\00\05\00\00\000\00\00\00\"\00\00\00K\00\00\001\00\00\00\06\00\00\00L\00\00\00\04\00\00\00\13\00\00\00M\00\00\00N\00\00\00\00\00\00\00x\13\00\00G\00\00\00" - "H\00\00\00c\00\00\00d\00\00\00\01\00\00\00\02\00\00\00;\00\00\00<\00\00\00I\00\00\00=\00\00\00\01\00\00\00>\00\00\00?\00\00\00@\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00" - "x\11\00\00\01\00\00\00J\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00e\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" - "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\88\13\00\00K\00\00\00L\00\00\00f\00\00\00\00\00\00\00\b0\13\00\00M\00\00\00N\00\00\00\05\00\00\00A\00\00\00\01\00\00\00\06\00\00\00" - "g\00\00\00\00\00\00\00\c0\13\00\00M\00\00\00O\00\00\00\07\00\00\00B\00\00\00\02\00\00\00\06\00\00\00g") - (data $76 $29 (i32.const 8045) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\\O\00\00aO\00\00\10\0d\00\00\d8\13\00\00h\14") - (data $77 $29 (i32.const 8284) - "\ecL") - (data $78 $29 (i32.const 8344) - "\88\15\00\00P\00\00\00Q\00\00\00i\00\00\00\10\00\00\00\00\00\00\00\a0\15\00\00R\00\00\00S\00\00\00T\00\00\00U\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00" - "\c8\15\00\00R\00\00\00V\00\00\00T\00\00\00U\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\00\00\00\00\d8\15\00\00W\00\00\00X\00\00\00j\00\00\00\00\00\00\00\e8\15\00\00" - "W\00\00\00Y\00\00\00j\00\00\00\00\00\00\00\18\16\00\00R\00\00\00Z\00\00\00T\00\00\00U\00\00\00\0c\00\00\00\00\00\00\008\16\00\00R\00\00\00[\00\00\00T\00\00\00U\00\00\00" - "\0b\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00cluster\00request\00service\00method\0014ExampleContext\00" - "7Context\0011ContextBase\00/home/jplev_google_com/envoy/api/wasm/cpp" - "/proxy_wasm_intrinsics_lite.pb.h\00CHECK failed: value != NULL: \00/" - "home/jplev_google_com/envoy/api/wasm/cpp/struct_lite.pb.h\00NSt3__" - "212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__2" - "21__basic_string_commonILb1EEE\0017MyGrpcCallHandler\0015GrpcCallHan" - "dlerIN6google8protobuf5ValueEE\0019GrpcCallHandlerBase\00NSt3__210__" - "function6__funcI3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7Context" - "NS_14default_deleteIS6_EEEEjP11RootContextEEE\00NSt3__210__functio" - "n6__baseIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP1" - "1RootContextEEE\003$_0\00/home/jplev_google_com/envoy/api/wasm/cpp/p" - "roxy_wasm_intrinsics_lite.pb.cc\00N6google8protobuf8internal29Inte" - "rnalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_trai" - "tsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9" - "ContainerE\00DataSource.filename\00DataSource.inline_string\00/usr/loc" - "al/include/google/protobuf/arenastring.h\00CHECK failed: initial_v" - "alue != NULL: \00DataSource\0010DataSource\00Any.type_url\00Any\003Any\00Grp" - "cService.EnvoyGrpc.cluster_name\00GrpcService.EnvoyGrpc\0021GrpcServ" - "ice_EnvoyGrpc\00GrpcService.GoogleGrpc.SslCredentials\0037GrpcServic" - "e_GoogleGrpc_SslCredentials\00GrpcService.GoogleGrpc.GoogleLocalCr" - "edentials\0045GrpcService_GoogleGrpc_GoogleLocalCredentials\00GrpcSe" - "rvice.GoogleGrpc.Empty\0028GrpcService_GoogleGrpc_Empty\00GrpcServic" - "e.GoogleGrpc.ChannelCredentials\0041GrpcService_GoogleGrpc_Channel" - "Credentials\00GrpcService.GoogleGrpc.CallCredentials.ServiceAccoun" - "tJWTAccessCredentials.json_key\00GrpcService.GoogleGrpc.CallCreden" - "tials.ServiceAccountJWTAccessCredentials\0073GrpcService_GoogleGrp" - "c_CallCredentials_ServiceAccountJWTAccessCredentials\00GrpcService" - ".GoogleGrpc.CallCredentials.GoogleIAMCredentials.authorization_t" - "oken\00GrpcService.GoogleGrpc.CallCredentials.GoogleIAMCredentials" - ".authority_selector\00GrpcService.GoogleGrpc.CallCredentials.Googl" - "eIAMCredentials\0059GrpcService_GoogleGrpc_CallCredentials_GoogleI" - "AMCredentials\00GrpcService.GoogleGrpc.CallCredentials.MetadataCre" - "dentialsFromPlugin.name\00GrpcService.GoogleGrpc.CallCredentials.M" - "etadataCredentialsFromPlugin\0068GrpcService_GoogleGrpc_CallCreden" - "tials_MetadataCredentialsFromPlugin\00GrpcService.GoogleGrpc.CallC" - "redentials.access_token\00GrpcService.GoogleGrpc.CallCredentials.g" - "oogle_refresh_token\00GrpcService.GoogleGrpc.CallCredentials\0038Grp" - "cService_GoogleGrpc_CallCredentials\00GrpcService.GoogleGrpc.targe" - "t_uri\00GrpcService.GoogleGrpc.stat_prefix\00GrpcService.GoogleGrpc." - "credentials_factory_name\00GrpcService.GoogleGrpc\0022GrpcService_Go" - "ogleGrpc\00GrpcService.HeaderValue.key\00GrpcService.HeaderValue.val" - "ue\00GrpcService.HeaderValue\0023GrpcService_HeaderValue\00GrpcService" - "\0011GrpcService\00/home/jplev_google_com/envoy/api/wasm/cpp/struct_" - "lite.pb.cc\00/usr/local/include/google/protobuf/repeated_field.h\00C" - "HECK failed: (index) >= (0): \00CHECK failed: (index) < (current_s" - "ize_): \00/usr/local/include/google/protobuf/map.h\00CHECK failed: (" - "bucket_index_ & 1) == (0): \00CHECK failed: m_->index_of_first_non" - "_null_ == m_->num_buckets_ || m_->table_[m_->index_of_first_non_" - "null_] != NULL: \00CHECK failed: !tree->empty(): \00CHECK failed: no" - "de_ != NULL && m_ != NULL: \00google.protobuf.Value.string_value\00g" - "oogle.protobuf.Struct.FieldsEntry.key\00CHECK failed: (&from) != (" - "this): \00CHECK failed: (&other) != (this): \00N6google8protobuf27St" - "ruct_FieldsEntry_DoNotUseE\00N6google8protobuf8internal12MapEntryL" - "iteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4" - "_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireForm" - "atLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12Map" - "EntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENS" - "t3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS" - "0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK f" - "ailed: (it.m_) == (this): \00CHECK failed: TableEntryIsNonEmptyLis" - "t(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK failed: GetAren" - "aNoVirtual() == NULL: \00CHECK failed: index_of_first_non_null_ ==" - " num_buckets_ || table_[index_of_first_non_null_] != NULL: \00CHEC" - "K failed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed" - ": (count) <= (kMaxLength): \00CHECK failed: (result.bucket_index_)" - " == (b & ~static_cast(1)): \00CHECK failed: (table_[b])" - " == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !Tab" - "leEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->size()): " - "\00CHECK failed: (new_num_buckets) >= (kMinTableSize): \00CHECK fail" - "ed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == (0): \00CH" - "ECK failed: table_[b] == table_[b + 1] && (b & 1) == 0: \00N6googl" - "e8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9" - "allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt" - "3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00" - "f == NULL || dynamic_cast(f) != NULL\00/usr/local/include/goog" - "le/protobuf/stubs/casts.h\00down_cast\00google.protobuf.Struct\00N6goo" - "gle8protobuf6StructE\00N6google8protobuf5ValueE\00N6google8protobuf8" - "internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11M" - "essageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allo" - "catorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11EL" - "i0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google.protobu" - "f.ListValue\00N6google8protobuf9ListValueE\00google.protobuf.Value\001" - "1RootContext\00no context factory for root_id: \00N6google8protobuf1" - "4FatalExceptionE\00google/protobuf/stubs/common.cc\00This program re" - "quires version \00%d.%d.%d\00 of the Protocol Buffer runtime library" - ", but the installed version is \00. Please update your library. " - "If you compiled the program yourself, make sure that your header" - "s are from the same version of Protocol Buffers as your link-tim" - "e library. (Version verification failed in \"\00\".)\00This program w" - "as compiled against version \00 of the Protocol Buffer runtime lib" - "rary, which is not compatible with the installed version (\00). C" - "ontact the program author for an update. If you compiled the pr" - "ogram yourself, make sure that your headers are from the same ve" - "rsion of Protocol Buffers as your link-time library. (Version v" - "erification failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00" - "ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exceeds maximum" - " supported size\00%u\00%lu\00google/protobuf/arena.cc\00CHECK failed: (m" - "in_bytes) <= (std::numeric_limits::max() - kBlockHeaderS" - "ize): \00google/protobuf/generated_message_util.cc\00Not implemented" - " field number \00 with type \00CHECK failed: (scc->visit_status.load" - "(std::memory_order_relaxed)) == (SCCInfoBase::kRunning): \00google" - "/protobuf/message_lite.cc\00CHECK failed: !coded_out.HadError(): \00" - "(cannot determine missing fields for lite message)\00N6google8prot" - "obuf11MessageLiteE\00parse\00Can't \00 message of type \"\00\" because it " - "is missing required fields: \00Exceeded maximum protobuf size of 2" - "GB: \00CHECK failed: (byte_size_before_serialization) == (byte_siz" - "e_after_serialization): \00 was modified concurrently during seria" - "lization.\00CHECK failed: (bytes_produced_by_serialization) == (by" - "te_size_before_serialization): \00Byte size calculation and serial" - "ization were inconsistent. This may indicate a bug in protocol " - "buffers or it may be caused by concurrent modification of \00This " - "shouldn't be called if all the sizes are equal.\00google/protobuf/" - "repeated_field.cc\00CHECK failed: (new_size) <= ((std::numeric_lim" - "its::max() - kRepHeaderSize) / sizeof(old_rep->elements[" - "0])): \00Requested size is too large to fit into size_t.\00google/pr" - "otobuf/wire_format_lite.cc\00CHECK failed: (value.size()) <= (kint" - "32max): \00serializing\00parsing\00 '%s'\00String field\00 contains invali" - "d \00UTF-8 data when \00 a protocol \00buffer. Use the 'bytes' type if" - " you intend to send raw \00bytes. \00google/protobuf/io/coded_stream" - ".cc\00CHECK failed: (buffer_size) >= (0): \00A protocol message was " - "rejected because it was too big (more than \00 bytes). To increas" - "e the limit (or to disable these warnings), see CodedInputStream" - "::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.\00goo" - "gle/protobuf/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (cou" - "nt) >= (0): \00CHECK failed: (last_returned_size_) > (0): \00BackUp(" - ") can only be called after a successful Next().\00CHECK failed: (c" - "ount) <= (last_returned_size_): \00N6google8protobuf2io17ArrayOutp" - "utStreamE\00CHECK failed: target_ != NULL: \00CHECK failed: (count) " - "<= (target_->size()): \00Cannot allocate buffer larger than kint32" - "max for \00StringOutputStream.\00N6google8protobuf2io18StringOutputS" - "treamE\00google/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutpu" - "tStream doesn't support aliasing. Reaching here usually means a " - "ZeroCopyOutputStream implementation bug.\00N6google8protobuf2io20Z" - "eroCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF" - "\00nan\00NAN\00.\00std::bad_function_call\00NSt3__217bad_function_callE\00mu" - "tex lock failed\00%d\00terminating with %s exception of type %s: %s\00" - "terminating with %s exception of type %s\00terminating with %s for" - "eign exception\00terminating\00uncaught\00St9exception\00N10__cxxabiv116" - "__shim_type_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_in" - "foE\00N10__cxxabiv117__class_type_infoE\00pthread_once failure in __" - "cxa_get_globals_fast()\00cannot create pthread key for __cxa_get_g" - "lobals()\00cannot zero out thread value for __cxa_get_globals()\00te" - "rminate_handler unexpectedly returned\00St11logic_error\00St12length" - "_error\00N10__cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbas" - "e_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00c\00h\00N10__cx" - "xabiv121__vmi_class_type_infoE") + "\n\00\00\00\01\00\00\00\02") + (data $69 $31 (i32.const 6920) + "\01\00\00\00H\1a") + (data $70 $31 (i32.const 6940) + "\e0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $71 $31 (i32.const 6964) + "\f0\11\00\00\0b\00\00\00\0c\00\00\00\03\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\0d\00\00\00\0e\00\00\00\04\00\00\00\05\00\00\00\04\00\00\00\0f\00\00\00\06\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\02") + (data $72 $31 (i32.const 7061) + "\12\00\00\0e\00\00\00\0f\00\00\00\07\00\00\00\12\00\00\00\06\00\00\00\0c\00\00\00\0d\00\00\00\10\00\00\00\13\00\00\00\04\00\00\00\08\00\00\00\07\00\00\00\14\00\00\00\09\00\00\00\05\00\00\00\15" + "\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\03") + (data $73 $31 (i32.const 7156) + "\10\12\00\00\11\00\00\00\12\00\00\00\n\00\00\00\16\00\00\00\08\00\00\00\0c\00\00\00\0d\00\00\00\13\00\00\00\17\00\00\00\04\00\00\00\0b\00\00\00\09\00\00\00\18\00\00\00\0c\00\00\00\05\00\00\00" + "\19\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\01\00\00\00\04\00\00\00 \1b\00\00\00\00\00\00 \12\00\00\14\00\00\00\15\00\00\00\0d\00\00\00\1a\00\00\00\n\00\00\00\0c\00\00\00\0d\00\00\00" + "\16\00\00\00\1b\00\00\00\04\00\00\00\0e\00\00\00\0b\00\00\00\1c\00\00\00\0f\00\00\00\05\00\00\00\1d\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\05") + (data $74 $31 (i32.const 7348) + "0\12\00\00\17\00\00\00\18\00\00\00\10\00\00\00\1e\00\00\00\0c\00\00\00\0c\00\00\00\0d\00\00\00\19\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\0d\00\00\00 \00\00\00\12\00\00\00\05\00\00\00" + "!\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\06") + (data $75 $31 (i32.const 7444) + "@\12\00\00\1a\00\00\00\1b\00\00\00\13\00\00\00\"\00\00\00\0e\00\00\00\0c\00\00\00\0d\00\00\00\1c\00\00\00#\00\00\00\04\00\00\00\14\00\00\00\0f\00\00\00$\00\00\00\15\00\00\00\05\00\00\00" + "%\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\03\00\00\00\07\00\00\00@\1c\00\00\00\1d\00\00\a0\1c\00\00\00\00\00\00P\12\00\00\1d\00\00\00\1e\00\00\00\16\00\00\00&\00\00\00\10\00\00\00" + "\0c\00\00\00\0d\00\00\00\1f\00\00\00'\00\00\00\04\00\00\00\17\00\00\00\11\00\00\00(\00\00\00\18\00\00\00\05\00\00\00)\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\08") + (data $76 $31 (i32.const 7644) + "`\12\00\00 \00\00\00!\00\00\00\19\00\00\00*\00\00\00\12\00\00\00\0c\00\00\00\0d\00\00\00\"\00\00\00+\00\00\00\04\00\00\00\1a\00\00\00\13\00\00\00,\00\00\00\1b\00\00\00\05\00\00\00" + "-\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\09") + (data $77 $31 (i32.const 7740) + "p\12\00\00#\00\00\00$\00\00\00\1c\00\00\00.\00\00\00\14\00\00\00\0c\00\00\00\0d\00\00\00%\00\00\00/\00\00\00\04\00\00\00\1d\00\00\00\15\00\00\000\00\00\00\1e\00\00\00\05\00\00\00" + "1\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\02\00\00\00\n\00\00\00\88 \00\00\80\1b\00\00\00\00\00\00\80\12\00\00&\00\00\00'\00\00\00\1f\00\00\002\00\00\00\16\00\00\00\0c\00\00\00" + "\0d\00\00\00(\00\00\003\00\00\00\04\00\00\00 \00\00\00\17\00\00\004\00\00\00!\00\00\00\05\00\00\005\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\04\00\00\00\0b\00\00\00\00\1d\00\00" + "\c8\1d\00\00(\1e\00\00\88\1e\00\00\00\00\00\00\90\12\00\00)\00\00\00*\00\00\00\"\00\00\006\00\00\00\18\00\00\00\0c\00\00\00\0d\00\00\00+\00\00\007\00\00\00\04\00\00\00#\00\00\00" + "\19\00\00\008\00\00\00$\00\00\00\05\00\00\009\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\03\00\00\00\0c\00\00\00`\1d\00\00\ec\1e\00\00\88 \00\00\00\00\00\00\a0\12\00\00,\00\00\00" + "-\00\00\00%\00\00\00:\00\00\00\1a\00\00\00\0c\00\00\00\0d\00\00\00.\00\00\00;\00\00\00\04\00\00\00&\00\00\00\1b\00\00\00<\00\00\00'\00\00\00\05\00\00\00=\00\00\00\03\00\00\00" + "\11\00\00\00\ff\ff\ff\ff\00\00\00\00\0d") + (data $78 $31 (i32.const 8148) + "\b0\12\00\00/\00\00\000\00\00\00(\00\00\00>\00\00\00\1c\00\00\00\0c\00\00\00\0d\00\00\001\00\00\00?\00\00\00\04\00\00\00)\00\00\00\1d\00\00\00@\00\00\00*\00\00\00\05\00\00\00" + "A\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\03\00\00\00\0e\00\00\00\e0\1b\00\00X\1f\00\00\c0\1f\00\00\00\00\00\00\c0\12\00\002\00\00\003\00\00\00+\00\00\00B\00\00\00\1e\00\00\00" + "\0c\00\00\00\0d\00\00\004\00\00\00C\00\00\00\04\00\00\00,\00\00\00\1f\00\00\00D\00\00\00-\00\00\00\05\00\00\00E\00\00\00\03\00\00\00\11\00\00\00\ff\ff\ff\ff\00\00\00\00\0f") + (data $79 $31 (i32.const 8348) + "\f0\12\00\005\00\00\006\00\00\00.\00\00\00F\00\00\00 \00\00\00G\00\00\00\0d\00\00\007\00\00\00H\00\00\00\04\00\00\00/\00\00\00!\00\00\00I\00\00\000\00\00\00\05\00\00\00" + "J\00\00\00\04\00\00\00\11\00\00\00K\00\00\00L\00\00\00\00\00\00\00P\13\00\008\00\00\009\00\00\001\00\00\00M\00\00\00\"\00\00\00N\00\00\00O\00\00\00:\00\00\00P\00\00\00" + "\04\00\00\002\00\00\00#\00\00\00Q\00\00\003\00\00\00\05\00\00\00R\00\00\00\03\00\00\00\11\00\00\00\00\00\00\00\d0\12\00\00;\00\00\00<\00\00\004\00\00\00S\00\00\00$\00\00\00" + "T\00\00\00U\00\00\00=\00\00\00V\00\00\00\04\00\00\005\00\00\00%\00\00\00W\00\00\006\00\00\00\05\00\00\00X\00\00\00\03\00\00\00\11\00\00\00\00\00\00\00\e0\12\00\005\00\00\00" + ">\00\00\00.\00\00\00F\00\00\00 \00\00\00G\00\00\00\0d\00\00\007\00\00\00H\00\00\00\04\00\00\00/\00\00\00!\00\00\00I\00\00\000\00\00\00\05\00\00\00J\00\00\00\04\00\00\00" + "\11\00\00\00Y\00\00\00Z\00\00\00\00\00\00\00 \13\00\00?\00\00\00@\00\00\007\00\00\00[\00\00\00&\00\00\00\\\00\00\00]\00\00\00A\00\00\00^\00\00\00\04\00\00\008\00\00\00" + "'\00\00\00_\00\00\009\00\00\00\05\00\00\00`\00\00\00\03\00\00\00\11\00\00\00\00\00\00\00\10\13\00\005\00\00\00B\00\00\00.\00\00\00F\00\00\00 \00\00\00G\00\00\00\0d\00\00\00" + "7\00\00\00H\00\00\00\04\00\00\00/\00\00\00!\00\00\00I\00\00\000\00\00\00\05\00\00\00J\00\00\00\04\00\00\00\11\00\00\00K\00\00\00L\00\00\00\00\00\00\00`\13\00\00C\00\00\00" + "D\00\00\00a\00\00\00b\00\00\00\01\00\00\00\02\00\00\00:\00\00\00;\00\00\00E\00\00\00<\00\00\00\01\00\00\00=\00\00\00>\00\00\00?\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00F\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00c\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\13\00\00G\00\00\00H\00\00\00d\00\00\00\00\00\00\00\98\13\00\00I\00\00\00J\00\00\00\05\00\00\00@\00\00\00\01\00\00\00\06\00\00\00" + "e\00\00\00\00\00\00\00\a8\13\00\00I\00\00\00K\00\00\00\07\00\00\00A\00\00\00\02\00\00\00\06\00\00\00e") + (data $80 $31 (i32.const 9097) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00ht\00\00vt\00\00\10\0d\00\00\c0\13\00\00P\14") + (data $81 $31 (i32.const 9336) + "\fcq") + (data $82 $31 (i32.const 9396) + "p\15\00\00L\00\00\00M\00\00\00g\00\00\00\00\00\00\00\88\15\00\00N\00\00\00O\00\00\00P\00\00\00Q\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\b0\15\00\00" + "N\00\00\00R\00\00\00P\00\00\00Q\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\c0\15\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00B\00\00\00C\00\00\00" + "D\00\00\00S\00\00\00T\00\00\00\00\00\00\00\d0\15\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\10\00\00\00C\00\00\00D\00\00\00S\00\00\00U\00\00\00\00\00\00\00\d8\15\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00E\00\00\00C\00\00\00F\00\00\00S\00\00\00V\00\00\00\00\00\00\00\e8\15\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00G\00\00\00" + "C\00\00\00D\00\00\00S\00\00\00W\00\00\00\00\00\00\00\f8\15\00\00,\00\00\00)\00\00\00*\00\00\00+\00\00\00H\00\00\00I\00\00\00D\00\00\00S\00\00\00X\00\00\00\00\00\00\00" + "\08\16\00\00-\00\00\00)\00\00\00*\00\00\00+\00\00\00J\00\00\00K\00\00\00D\00\00\00S\00\00\00Y\00\00\00\00\00\00\00\18\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00" + "L\00\00\00C\00\00\00M\00\00\00S\00\00\00Z\00\00\00\00\00\00\00(\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00N\00\00\00C\00\00\00D\00\00\00S\00\00\00[\00\00\00" + "\00\00\00\008\16\00\00.\00\00\00/\00\00\000\00\00\001\00\00\00O\00\00\00P\00\00\00D\00\00\00S\00\00\00\\\00\00\00\00\00\00\00H\16\00\00(\00\00\00)\00\00\00*\00\00\00" + "+\00\00\00Q\00\00\00C\00\00\00D\00\00\00S\00\00\00]\00\00\00\00\00\00\00X\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00R\00\00\00C\00\00\00D\00\00\00S\00\00\00" + "^\00\00\00\00\00\00\00h\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00S\00\00\00C\00\00\00D\00\00\00S\00\00\00_\00\00\00\00\00\00\00x\16\00\00(\00\00\00)\00\00\00" + "*\00\00\00+\00\00\00T\00\00\00C\00\00\00D\00\00\00S\00\00\00`\00\00\00\00\00\00\00\88\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00U\00\00\00C\00\00\00D\00\00\00" + "S\00\00\00a\00\00\00\00\00\00\00\98\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00V\00\00\00C\00\00\00D\00\00\00S\00\00\00b\00\00\00\00\00\00\00\a8\16\00\00(\00\00\00" + ")\00\00\00*\00\00\00+\00\00\00W\00\00\00C\00\00\00D\00\00\00S\00\00\00c\00\00\00\00\00\00\00\b8\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00X\00\00\00C\00\00\00" + "D\00\00\00S\00\00\00d\00\00\00\00\00\00\00\c8\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00Y\00\00\00C\00\00\00D\00\00\00S\00\00\00e\00\00\00\00\00\00\00\d8\16\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00Z\00\00\00C\00\00\00D\00\00\00S\00\00\00f\00\00\00\00\00\00\00\e8\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00[\00\00\00" + "C\00\00\00D\00\00\00S\00\00\00g\00\00\00\00\00\00\00\f8\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\\\00\00\00C\00\00\00D\00\00\00S\00\00\00h\00\00\00\00\00\00\00" + "\08\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00]\00\00\00C\00\00\00D\00\00\00S\00\00\00i\00\00\00\00\00\00\00\18\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00" + "^\00\00\00C\00\00\00D\00\00\00S\00\00\00j\00\00\00\00\00\00\00(\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00_\00\00\00C\00\00\00D\00\00\00S\00\00\00k\00\00\00" + "\00\00\00\008\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00`\00\00\00C\00\00\00D\00\00\00S\00\00\00l\00\00\00\00\00\00\00H\17\00\00(\00\00\00)\00\00\00*\00\00\00" + "+\00\00\00a\00\00\00C\00\00\00D\00\00\00S\00\00\00m\00\00\00\00\00\00\00X\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00b\00\00\00C\00\00\00D\00\00\00S\00\00\00" + "n\00\00\00\00\00\00\00h\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00c\00\00\00C\00\00\00D\00\00\00S\00\00\00o\00\00\00\00\00\00\00x\17\00\00(\00\00\00)\00\00\00" + "*\00\00\00+\00\00\00d\00\00\00C\00\00\00e\00\00\00S\00\00\00p\00\00\00\00\00\00\00\88\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00f\00\00\00C\00\00\00D\00\00\00" + "S\00\00\00q\00\00\00\00\00\00\00\98\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00g\00\00\00C\00\00\00D\00\00\00S\00\00\00r\00\00\00\00\00\00\00\a8\17\00\00(\00\00\00" + ")\00\00\00*\00\00\00+\00\00\00h\00\00\00C\00\00\00i\00\00\00S\00\00\00s\00\00\00\00\00\00\00\b8\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00j\00\00\00C\00\00\00" + "D\00\00\00S\00\00\00t\00\00\00\00\00\00\00\c8\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00k\00\00\00C\00\00\00D\00\00\00S\00\00\00u\00\00\00\00\00\00\00\d8\17\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00l\00\00\00C\00\00\00D\00\00\00S\00\00\00v\00\00\00\00\00\00\00\e8\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00m\00\00\00" + "C\00\00\00n\00\00\00S\00\00\00w\00\00\00\00\00\00\00\f8\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00o\00\00\00C\00\00\00D\00\00\00S\00\00\00x\00\00\00\00\00\00\00" + "\08\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00p\00\00\00C\00\00\00D\00\00\00S\00\00\00y\00\00\00\00\00\00\00\18\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00" + "q\00\00\00C\00\00\00D\00\00\00S\00\00\00z\00\00\00\00\00\00\00(\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00r\00\00\00C\00\00\00D\00\00\00S\00\00\00{\00\00\00" + "\00\00\00\008\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00s\00\00\00C\00\00\00D\00\00\00S\00\00\00|\00\00\00\00\00\00\00H\18\00\00(\00\00\00)\00\00\00*\00\00\00" + "+\00\00\00t\00\00\00C\00\00\00D\00\00\00S\00\00\00}\00\00\00\00\00\00\00X\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00u\00\00\00C\00\00\00D\00\00\00S\00\00\00" + "~\00\00\00\00\00\00\00h\18\00\002\00\00\003\00\00\004\00\00\005\00\00\00v\00\00\00w\00\00\00D\00\00\00S\00\00\00\7f\00\00\00\00\00\00\00x\18\00\00(\00\00\00)\00\00\00" + "*\00\00\00+\00\00\00x\00\00\00C\00\00\00D\00\00\00S\00\00\00\80\00\00\00\00\00\00\00\88\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00y\00\00\00C\00\00\00z\00\00\00" + "S\00\00\00\81\00\00\00\00\00\00\00\98\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00{\00\00\00C\00\00\00D\00\00\00S\00\00\00\82\00\00\00\00\00\00\00\a8\18\00\00(\00\00\00" + ")\00\00\00*\00\00\00+\00\00\00|\00\00\00C\00\00\00D\00\00\00S\00\00\00\83\00\00\00\00\00\00\00\b8\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00}\00\00\00C\00\00\00" + "D\00\00\00S\00\00\00\84\00\00\00\00\00\00\00\c8\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00~\00\00\00C\00\00\00D\00\00\00S\00\00\00\85\00\00\00\00\00\00\00\d8\18\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00\7f\00\00\00C\00\00\00D\00\00\00S\00\00\00\86\00\00\00\00\00\00\00\e8\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\80\00\00\00" + "C\00\00\00\81\00\00\00S\00\00\00\87\00\00\00\00\00\00\00\f8\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\82\00\00\00C\00\00\00\83\00\00\00S\00\00\00\88\00\00\00\00\00\00\00" + "\08\19\00\006\00\00\00)\00\00\00*\00\00\00+\00\00\00\84\00\00\00\85\00\00\00D\00\00\00S\00\00\00\89\00\00\00\00\00\00\00\18\19\00\007\00\00\008\00\00\00*\00\00\00+\00\00\00" + "\86\00\00\00\87\00\00\00D\00\00\00S\00\00\00\8a\00\00\00\00\00\00\00(\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\88\00\00\00C\00\00\00D\00\00\00S\00\00\00\8b\00\00\00" + "\00\00\00\008\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\89\00\00\00C\00\00\00D\00\00\00S\00\00\00\8c\00\00\00\00\00\00\00H\19\00\009\00\00\00:\00\00\00;\00\00\00" + "+\00\00\00\8a\00\00\00\8b\00\00\00D\00\00\00S\00\00\00\8d\00\00\00\00\00\00\00X\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\8c\00\00\00C\00\00\00D\00\00\00S\00\00\00" + "\8e\00\00\00\00\00\00\00h\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\8d\00\00\00C\00\00\00D\00\00\00S\00\00\00\8f\00\00\00\00\00\00\00x\19\00\00<\00\00\00)\00\00\00" + "=\00\00\00+\00\00\00\8e\00\00\00\8f\00\00\00D\00\00\00S\00\00\00\90\00\00\00\00\00\00\00\88\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\90\00\00\00C\00\00\00D\00\00\00" + "S\00\00\00\91\00\00\00\00\00\00\00\98\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\91\00\00\00C\00\00\00D\00\00\00S\00\00\00\92\00\00\00\00\00\00\00\a8\19\00\00(\00\00\00" + ")\00\00\00*\00\00\00+\00\00\00\92\00\00\00C\00\00\00D\00\00\00S\00\00\00\93\00\00\00\00\00\00\00\b8\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\93\00\00\00C\00\00\00" + "D\00\00\00S\00\00\00\94\00\00\00\00\00\00\00\c8\19\00\00>\00\00\00)\00\00\00?\00\00\00+\00\00\00\94\00\00\00\95\00\00\00D\00\00\00S\00\00\00\95\00\00\00\00\00\00\00\d8\19\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00\96\00\00\00C\00\00\00D\00\00\00S\00\00\00\96\00\00\00\00\00\00\00\e8\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\97\00\00\00" + "C\00\00\00D\00\00\00S\00\00\00\97\00\00\00\00\00\00\00\f8\19\00\00\98\00\00\00\99\00\00\00h\00\00\00\00\00\00\00\08\1a\00\00\98\00\00\00\9a\00\00\00h\00\00\00\00\00\00\008\1a\00\00" + "N\00\00\00\9b\00\00\00P\00\00\00Q\00\00\00\0c\00\00\00\00\00\00\00`\1a\00\00N\00\00\00\9c\00\00\00P\00\00\00Q\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00clus" + "ter\00request\00service\00method\0014ExampleContext\007Context\0011ContextBa" + "se\00/home/piotrsikora/Google/envoy/api/wasm/cpp/proxy_wasm_intrin" + "sics_lite.pb.h\00CHECK failed: value != NULL: \00/home/piotrsikora/G" + "oogle/envoy/api/wasm/cpp/struct_lite.pb.h\00NSt3__212basic_stringI" + "cNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221__basic_string" + "_commonILb1EEE\0017MyGrpcCallHandler\0015GrpcCallHandlerIN6google8pr" + "otobuf5ValueEE\0019GrpcCallHandlerBase\003$_0\00/home/piotrsikora/Goog" + "le/envoy/api/wasm/cpp/proxy_wasm_intrinsics_lite.pb.cc\00N6google8" + "protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_" + "stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalM" + "etadataWithArenaLiteEE9ContainerE\00DataSource.filename\00DataSource" + ".inline_string\00/usr/local/include/google/protobuf/arenastring.h\00" + "CHECK failed: initial_value != NULL: \00DataSource\0010DataSource\00An" + "y.type_url\00Any\003Any\00GrpcService.EnvoyGrpc.cluster_name\00GrpcServi" + "ce.EnvoyGrpc\0021GrpcService_EnvoyGrpc\00GrpcService.GoogleGrpc.SslC" + "redentials\0037GrpcService_GoogleGrpc_SslCredentials\00GrpcService.G" + "oogleGrpc.GoogleLocalCredentials\0045GrpcService_GoogleGrpc_Google" + "LocalCredentials\00GrpcService.GoogleGrpc.Empty\0028GrpcService_Goog" + "leGrpc_Empty\00GrpcService.GoogleGrpc.ChannelCredentials\0041GrpcSer" + "vice_GoogleGrpc_ChannelCredentials\00GrpcService.GoogleGrpc.CallCr" + "edentials.ServiceAccountJWTAccessCredentials.json_key\00GrpcServic" + "e.GoogleGrpc.CallCredentials.ServiceAccountJWTAccessCredentials\00" + "73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccess" + "Credentials\00GrpcService.GoogleGrpc.CallCredentials.GoogleIAMCred" + "entials.authorization_token\00GrpcService.GoogleGrpc.CallCredentia" + "ls.GoogleIAMCredentials.authority_selector\00GrpcService.GoogleGrp" + "c.CallCredentials.GoogleIAMCredentials\0059GrpcService_GoogleGrpc_" + "CallCredentials_GoogleIAMCredentials\00GrpcService.GoogleGrpc.Call" + "Credentials.MetadataCredentialsFromPlugin.name\00GrpcService.Googl" + "eGrpc.CallCredentials.MetadataCredentialsFromPlugin\0068GrpcServic" + "e_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin\00GrpcS" + "ervice.GoogleGrpc.CallCredentials.access_token\00GrpcService.Googl" + "eGrpc.CallCredentials.google_refresh_token\00GrpcService.GoogleGrp" + "c.CallCredentials\0038GrpcService_GoogleGrpc_CallCredentials\00GrpcS" + "ervice.GoogleGrpc.target_uri\00GrpcService.GoogleGrpc.stat_prefix\00" + "GrpcService.GoogleGrpc.credentials_factory_name\00GrpcService.Goog" + "leGrpc\0022GrpcService_GoogleGrpc\00GrpcService.HeaderValue.key\00Grpc" + "Service.HeaderValue.value\00GrpcService.HeaderValue\0023GrpcService_" + "HeaderValue\00GrpcService\0011GrpcService\00/home/piotrsikora/Google/e" + "nvoy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/google/pr" + "otobuf/repeated_field.h\00CHECK failed: (index) >= (0): \00CHECK fai" + "led: (index) < (current_size_): \00/usr/local/include/google/proto" + "buf/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHECK faile" + "d: m_->index_of_first_non_null_ == m_->num_buckets_ || m_->table" + "_[m_->index_of_first_non_null_] != NULL: \00CHECK failed: !tree->e" + "mpty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00google.prot" + "obuf.Value.string_value\00google.protobuf.Struct.FieldsEntry.key\00C" + "HECK failed: (&from) != (this): \00CHECK failed: (&other) != (this" + "): \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8pro" + "tobuf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseEN" + "St3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEN" + "S0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6goog" + "le8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNo" + "tUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsI" + "cEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTyp" + "eE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed" + ": TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b" + "): \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK failed: in" + "dex_of_first_non_null_ == num_buckets_ || table_[index_of_first_" + "non_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)" + ") == end(): \00CHECK failed: (count) <= (kMaxLength): \00CHECK faile" + "d: (result.bucket_index_) == (b & ~static_cast(1)): \00" + "CHECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !Ta" + "bleEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (c" + "ount) == (tree->size()): \00CHECK failed: (new_num_buckets) >= (kM" + "inTableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK failed: " + "(n & (n - 1)) == (0): \00CHECK failed: table_[b] == table_[b + 1] " + "&& (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_stringIcN" + "S2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N" + "6google8protobuf4hashINSt3__212basic_stringIcNS2_11char_traitsIc" + "EENS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f) != NUL" + "L\00/usr/local/include/google/protobuf/stubs/casts.h\00down_cast\00goo" + "gle.protobuf.Struct\00N6google8protobuf6StructE\00N6google8protobuf5" + "ValueE\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_Fie" + "ldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_1" + "1char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormat" + "Lite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n" + ") >= (0): \00google.protobuf.ListValue\00N6google8protobuf9ListValue" + "E\00google.protobuf.Value\0011RootContext\00no context factory for roo" + "t_id: \00N6google8protobuf14FatalExceptionE\00google/protobuf/stubs/" + "common.cc\00This program requires version \00%d.%d.%d\00 of the Protoc" + "ol Buffer runtime library, but the installed version is \00. Plea" + "se update your library. If you compiled the program yourself, m" + "ake sure that your headers are from the same version of Protocol" + " Buffers as your link-time library. (Version verification faile" + "d in \"\00\".)\00This program was compiled against version \00 of the Pr" + "otocol Buffer runtime library, which is not compatible with the " + "installed version (\00). Contact the program author for an update" + ". If you compiled the program yourself, make sure that your hea" + "ders are from the same version of Protocol Buffers as your link-" + "time library. (Version verification failed in \"\00[libprotobuf %s" + " %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size" + "_t n) 'n' exceeds maximum supported size\00%u\00%lu\00google/protobuf/" + "arena.cc\00CHECK failed: (min_bytes) <= (std::numeric_limits::max() - kBlockHeaderSize): \00google/protobuf/generated_messag" + "e_util.cc\00Not implemented field number \00 with type \00CHECK failed" + ": (scc->visit_status.load(std::memory_order_relaxed)) == (SCCInf" + "oBase::kRunning): \00google/protobuf/message_lite.cc\00CHECK failed:" + " !coded_out.HadError(): \00(cannot determine missing fields for li" + "te message)\00N6google8protobuf11MessageLiteE\00parse\00Can't \00 messag" + "e of type \"\00\" because it is missing required fields: \00Exceeded m" + "aximum protobuf size of 2GB: \00CHECK failed: (byte_size_before_se" + "rialization) == (byte_size_after_serialization): \00 was modified " + "concurrently during serialization.\00CHECK failed: (bytes_produced" + "_by_serialization) == (byte_size_before_serialization): \00Byte si" + "ze calculation and serialization were inconsistent. This may in" + "dicate a bug in protocol buffers or it may be caused by concurre" + "nt modification of \00This shouldn't be called if all the sizes ar" + "e equal.\00google/protobuf/repeated_field.cc\00CHECK failed: (new_si" + "ze) <= ((std::numeric_limits::max() - kRepHeaderSize) / " + "sizeof(old_rep->elements[0])): \00Requested size is too large to f" + "it into size_t.\00google/protobuf/wire_format_lite.cc\00CHECK failed" + ": (value.size()) <= (kint32max): \00serializing\00parsing\00 '%s'\00Stri" + "ng field\00 contains invalid \00UTF-8 data when \00 a protocol \00buffer" + ". Use the 'bytes' type if you intend to send raw \00bytes. \00google" + "/protobuf/io/coded_stream.cc\00CHECK failed: (buffer_size) >= (0):" + " \00A protocol message was rejected because it was too big (more t" + "han \00 bytes). To increase the limit (or to disable these warnin" + "gs), see CodedInputStream::SetTotalBytesLimit() in google/protob" + "uf/io/coded_stream.h.\00google/protobuf/io/zero_copy_stream_impl_l" + "ite.cc\00CHECK failed: (count) >= (0): \00CHECK failed: (last_return" + "ed_size_) > (0): \00BackUp() can only be called after a successful" + " Next().\00CHECK failed: (count) <= (last_returned_size_): \00N6goog" + "le8protobuf2io17ArrayOutputStreamE\00CHECK failed: target_ != NULL" + ": \00CHECK failed: (count) <= (target_->size()): \00Cannot allocate " + "buffer larger than kint32max for \00StringOutputStream.\00N6google8p" + "rotobuf2io18StringOutputStreamE\00google/protobuf/io/zero_copy_str" + "eam.cc\00This ZeroCopyOutputStream doesn't support aliasing. Reach" + "ing here usually means a ZeroCopyOutputStream implementation bug" + ".\00N6google8protobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x\00(null)\00-" + "0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad_function_call\00NSt3__2" + "17bad_function_callE\00mutex lock failed\00%d\00terminating with %s ex" + "ception of type %s: %s\00terminating with %s exception of type %s\00" + "terminating with %s foreign exception\00terminating\00uncaught\00St9ex" + "ception\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxab" + "iv120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00ter" + "minate_handler unexpectedly returned\00_Z\00___Z\00_block_invoke\00invoc" + "ation function for block in \00void\00bool\00char\00signed char\00unsigned" + " char\00short\00unsigned short\00int\00unsigned int\00long\00unsigned long\00l" + "ong long\00__int128\00unsigned __int128\00float\00long double\00__float128" + "\00...\00decimal64\00decimal128\00decimal32\00decimal16\00char32_t\00char16_t\00" + "auto\00decltype(auto)\00std::nullptr_t\00[abi:\00]\00N12_GLOBAL__N_116itan" + "ium_demangle10AbiTagAttrE\00N12_GLOBAL__N_116itanium_demangle4Node" + "E\00allocator\00basic_string\00string\00istream\00ostream\00iostream\00std::al" + "locator\00std::basic_string\00std::string\00std::istream\00std::ostream\00" + "std::iostream\00N12_GLOBAL__N_116itanium_demangle19SpecialSubstitu" + "tionE\00 imaginary\00N12_GLOBAL__N_116itanium_demangle20PostfixQuali" + "fiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_116itanium_demangle1" + "3ReferenceTypeE\00objc_object\00*\00id<\00>\00N12_GLOBAL__N_116itanium_dem" + "angle11PointerTypeE\00N12_GLOBAL__N_116itanium_demangle20NameWithT" + "emplateArgsE\00<\00, \00N12_GLOBAL__N_116itanium_demangle12TemplateArg" + "sE\00N12_GLOBAL__N_116itanium_demangle13ParameterPackE\00wchar_t\00b0E" + "\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_demangle15IntegerCas" + "tExprE\00%LaL\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplI" + "eEE\00%a\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdEE\00%" + "af\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfEE\00true\00" + "false\00N12_GLOBAL__N_116itanium_demangle8BoolExprE\00-\00N12_GLOBAL__" + "N_116itanium_demangle14IntegerLiteralE\00N12_GLOBAL__N_116itanium_" + "demangle20TemplateArgumentPackE\00gs\00&=\00=\00alignof (\00,\00~\00.*\00/\00/=\00^\00" + "^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00" + ">>=\00sizeof (\00typeid (\00throw\00throw \00N12_GLOBAL__N_116itanium_dema" + "ngle9ThrowExprE\00N12_GLOBAL__N_116itanium_demangle12InitListExprE" + "\00N12_GLOBAL__N_116itanium_demangle13NodeArrayNodeE\00sizeof... (\00N" + "12_GLOBAL__N_116itanium_demangle13EnclosingExprE\00sizeof...(\00N12_" + "GLOBAL__N_116itanium_demangle22ParameterPackExpansionE\00N12_GLOBA" + "L__N_116itanium_demangle19SizeofParamPackExprE\00static_cast\00>(\00N1" + "2_GLOBAL__N_116itanium_demangle8CastExprE\00reinterpret_cast\00) ? (" + "\00) : (\00N12_GLOBAL__N_116itanium_demangle15ConditionalExprE\00noexc" + "ept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL__N_116itanium_deman" + "gle7NewExprE\00N12_GLOBAL__N_116itanium_demangle11PostfixExprE\00 .." + ". \00 = \00N12_GLOBAL__N_116itanium_demangle15BracedRangeExprE\00N12_G" + "LOBAL__N_116itanium_demangle10BracedExprE\00_GLOBAL__N\00(anonymous " + "namespace)\00N12_GLOBAL__N_116itanium_demangle8NameTypeE\00)[\00N12_GL" + "OBAL__N_116itanium_demangle18ArraySubscriptExprE\00.\00N12_GLOBAL__N" + "_116itanium_demangle10MemberExprE\00srN\00sr\00::\00N12_GLOBAL__N_116ita" + "nium_demangle19GlobalQualifiedNameE\00dn\00on\00operator&&\00operator&\00o" + "perator&=\00operator=\00operator()\00operator,\00operator~\00operator dele" + "te[]\00operator*\00operator/\00operator/=\00operator^\00operator^=\00operato" + "r==\00operator>=\00operator>\00operator[]\00operator<=\00operator<<\00operat" + "or<<=\00operator<\00operator-\00operator-=\00operator*=\00operator--\00opera" + "tor new[]\00operator!=\00operator!\00operator new\00operator||\00operator|" + "\00operator|=\00operator->*\00operator+\00operator+=\00operator++\00operator" + "->\00operator?\00operator%\00operator%=\00operator>>\00operator>>=\00operato" + "r<=>\00operator\"\" \00N12_GLOBAL__N_116itanium_demangle15LiteralOpera" + "torE\00operator delete\00operator \00N12_GLOBAL__N_116itanium_demangle" + "22ConversionOperatorTypeE\00N12_GLOBAL__N_116itanium_demangle8Dtor" + "NameE\00N12_GLOBAL__N_116itanium_demangle13QualifiedNameE\00dynamic_" + "cast\00delete\00[] \00N12_GLOBAL__N_116itanium_demangle10DeleteExprE\00c" + "v\00)(\00N12_GLOBAL__N_116itanium_demangle14ConversionExprE\00N12_GLOB" + "AL__N_116itanium_demangle8CallExprE\00const_cast\00N12_GLOBAL__N_116" + "itanium_demangle10PrefixExprE\00) \00 (\00N12_GLOBAL__N_116itanium_dem" + "angle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00" + "lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00rS\00... \00 ...\00N12_GL" + "OBAL__N_116itanium_demangle8FoldExprE\00fp\00fL\00N12_GLOBAL__N_116ita" + "nium_demangle13FunctionParamE\00N12_GLOBAL__N_116itanium_demangle2" + "4ForwardTemplateReferenceE\00Ts\00struct\00Tu\00union\00Te\00enum\00N12_GLOBAL" + "__N_116itanium_demangle22ElaboratedTypeSpefTypeE\00StL\00St\00std::\00N1" + "2_GLOBAL__N_116itanium_demangle16StdQualifiedNameE\00DC\00N12_GLOBAL" + "__N_116itanium_demangle21StructuredBindingNameE\00Ut\00Ul\00vE\00'lambda" + "\00'(\00N12_GLOBAL__N_116itanium_demangle15ClosureTypeNameE\00'unnamed" + "\00'\00N12_GLOBAL__N_116itanium_demangle15UnnamedTypeNameE\00string li" + "teral\00N12_GLOBAL__N_116itanium_demangle9LocalNameE\00std\00N12_GLOBA" + "L__N_116itanium_demangle12CtorDtorNameE\00basic_istream\00basic_ostr" + "eam\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_istream >\00std::basic_ostream >\00st" + "d::basic_iostream >\00N12_GLOBAL__N_1" + "16itanium_demangle27ExpandedSpecialSubstitutionE\00N12_GLOBAL__N_1" + "16itanium_demangle10NestedNameE\00::*\00N12_GLOBAL__N_116itanium_dem" + "angle19PointerToMemberTypeE\00[\00N12_GLOBAL__N_116itanium_demangle9" + "ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itanium_demangle10Vector" + "TypeE\00pixel vector[\00N12_GLOBAL__N_116itanium_demangle15PixelVect" + "orTypeE\00decltype(\00double\00unsigned long long\00objcproto\00 const\00 vo" + "latile\00 restrict\00N12_GLOBAL__N_116itanium_demangle8QualTypeE\00N12" + "_GLOBAL__N_116itanium_demangle17VendorExtQualTypeE\00N12_GLOBAL__N" + "_116itanium_demangle13ObjCProtoNameE\00Do\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00" + " &\00 &&\00N12_GLOBAL__N_116itanium_demangle12FunctionTypeE\00throw(\00N" + "12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpecE\00noexcept" + "(\00N12_GLOBAL__N_116itanium_demangle12NoexceptSpecE\00N12_GLOBAL__N" + "_116itanium_demangle11SpecialNameE\00N12_GLOBAL__N_116itanium_dema" + "ngle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_116itanium_demangle1" + "6FunctionEncodingE\00 [enable_if:\00N12_GLOBAL__N_116itanium_demangl" + "e12EnableIfAttrE\00thread-local wrapper routine for \00reference tem" + "porary for \00guard variable for \00non-virtual thunk to \00virtual th" + "unk to \00thread-local initialization routine for \00construction vt" + "able for \00-in-\00N12_GLOBAL__N_116itanium_demangle21CtorVtableSpec" + "ialNameE\00covariant return thunk to \00typeinfo name for \00typeinfo " + "for \00VTT for \00vtable for \00St11logic_error\00St12length_error\00N10__" + "cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_infoE" + "\00N10__cxxabiv123__fundamental_type_infoE\00v\00c\00h\00N10__cxxabiv121__" + "vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_grpc_call_cpp_cc - i32.const 19512 + i32.const 29000 i64.const 0 i64.store align=4 - i32.const 19520 + i32.const 29008 i64.const 0 i64.store align=4 - i32.const 19528 + i32.const 29016 i32.const 1065353216 i32.store - i32.const 19532 + i32.const 29020 i64.const 0 i64.store align=4 - i32.const 19540 + i32.const 29028 i64.const 0 i64.store align=4 - i32.const 19548 + i32.const 29036 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -519,39 +706,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $32 + global.get $34 local.set $1 local.get $0 - global.get $32 + global.get $34 i32.add - global.set $32 - global.get $32 + global.set $34 + global.get $34 i32.const 15 i32.add i32.const -16 i32.and - global.set $32 + global.set $34 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $32 + global.get $34 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $32 + global.set $34 ) (func $establishStackSpace (type $1) (param $0 i32) (param $1 i32) local.get $0 - global.set $32 + global.set $34 local.get $1 - global.set $33 + global.set $35 ) (func $__ZN21GrpcService_EnvoyGrpc16set_cluster_nameEPKc (type $0) @@ -561,12 +748,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 24 i32.add @@ -576,7 +763,7 @@ local.get $2 i32.const 0 i32.store offset=8 - i32.const 8552 + i32.const 12592 call $_strlen local.tee $3 i32.const -17 @@ -626,7 +813,7 @@ br $block end ;; $block_0 local.get $1 - i32.const 8552 + i32.const 12592 local.get $3 call $_memcpy drop @@ -639,7 +826,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 i32.const 12 @@ -662,7 +849,7 @@ local.get $1 i32.store offset=8 local.get $4 - global.set $32 + global.set $34 return end ;; $if_2 local.get $1 @@ -677,6 +864,18 @@ local.get $1 i32.const 0 i32.store offset=4 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $1 + i32.load + call $_free + local.get $1 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $1 i32.const 0 @@ -686,9 +885,6 @@ i32.store8 offset=11 end ;; $if_3 local.get $1 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $1 local.get $2 i64.load align=4 i64.store align=4 @@ -703,7 +899,7 @@ i32.const 0 i32.store offset=8 local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Value16set_string_valueEPKc (type $0) @@ -713,12 +909,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=20 i32.const 3 @@ -730,7 +926,7 @@ i32.const 3 i32.store offset=20 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 end ;; $if local.get $5 @@ -742,7 +938,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 8560 + i32.const 12600 call $_strlen local.tee $3 i32.const -17 @@ -792,7 +988,7 @@ br $block end ;; $block_0 local.get $2 - i32.const 8560 + i32.const 12600 local.get $3 call $_memcpy drop @@ -822,7 +1018,7 @@ local.tee $2 i32.load local.tee $0 - i32.const 19480 + i32.const 28968 i32.eq if $if_4 local.get $2 @@ -840,14 +1036,14 @@ i32.ge_s if $if_5 local.get $5 - global.set $32 + global.set $34 return end ;; $if_5 local.get $1 i32.load call $_free local.get $5 - global.set $32 + global.set $34 ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $2) @@ -862,12 +1058,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 128 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 120 i32.add @@ -956,13 +1152,13 @@ local.get $6 i32.store offset=52 local.get $1 - i32.const 8568 + i32.const 12608 i32.store offset=40 local.get $1 i32.const 7 i32.store offset=44 local.get $1 - i32.const 8576 + i32.const 12616 i32.store offset=32 local.get $1 i32.const 6 @@ -973,7 +1169,7 @@ i32.const 0 i32.store offset=4 local.get $0 - i32.const 5792 + i32.const 6856 i32.store local.get $4 local.get $0 @@ -1009,11 +1205,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 local.get $1 call $__ZN6google8protobuf5ValueD2Ev @@ -1025,7 +1221,7 @@ local.get $3 call $__ZN11GrpcServiceD2Ev local.get $1 - global.set $32 + global.set $34 i32.const 1 return end ;; $if_1 @@ -1035,7 +1231,7 @@ local.get $3 call $__ZN11GrpcServiceD2Ev local.get $1 - global.set $32 + global.set $34 i32.const 1 ) @@ -1050,12 +1246,12 @@ (local $7 i64) (local $8 i64) (local $9 i64) - global.get $32 + global.get $34 local.set $6 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $1 i64.load align=4 local.set $7 @@ -1131,7 +1327,7 @@ i32.eqz if $if_0 local.get $6 - global.set $32 + global.set $34 return end ;; $if_0 local.get $5 @@ -1164,20 +1360,20 @@ i32.eqz if $if_1 local.get $6 - global.set $32 + global.set $34 return end ;; $if_1 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $6 - global.set $32 + global.set $34 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -1185,7 +1381,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5824 + i32.const 6888 i32.store local.get $0 i32.load offset=52 @@ -1373,12 +1569,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $2 i32.eqz if $if @@ -1386,7 +1582,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9488 + i32.const 13315 i32.store offset=4 local.get $3 i32.const 370 @@ -1398,7 +1594,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9537 + i32.const 13364 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -1416,7 +1612,7 @@ local.get $1 i32.store local.get $3 - global.set $32 + global.set $34 return end ;; $if_0 local.get $1 @@ -1429,13 +1625,13 @@ i64.const 16 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 92 + i32.const 157 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -1444,7 +1640,7 @@ local.get $1 i32.store local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv (type $0) @@ -1805,11 +2001,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_28 local.get $1 call $_free @@ -2329,11 +2525,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 8472 + i32.const 12512 i32.store local.get $2 - i32.const 5608 - i32.const 87 + i32.const 6664 + i32.const 152 call $___cxa_throw end ;; $if_1 local.get $1 @@ -2661,12 +2857,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load i32.load offset=20 @@ -2685,15 +2881,15 @@ local.get $0 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $2 call $__ZN6google8protobuf5ValueD2Ev local.get $2 - global.set $32 + global.set $34 ) (func $__ZN17MyGrpcCallHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $6) @@ -2706,18 +2902,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 - i32.const 48 + i32.const 36 i32.add local.set $5 local.get $3 - i32.const 36 + i32.const 48 i32.add local.set $7 local.get $3 @@ -2909,6 +3105,7 @@ local.get $2 select call $_proxy_log + drop local.get $5 i32.load8_s offset=11 i32.const 0 @@ -2951,23 +3148,22 @@ i32.ge_s if $if_6 local.get $3 - global.set $32 + global.set $34 return end ;; $if_6 local.get $3 i32.load call $_free local.get $3 - global.set $32 + global.set $34 ) (func $__ZN17MyGrpcCallHandler9onSuccessEON6google8protobuf5ValueE (type $1) (param $0 i32) (param $1 i32) - (local $2 i32) local.get $1 i32.load offset=8 - i32.const 19480 + i32.const 28968 local.get $1 i32.load offset=20 i32.const 3 @@ -2975,56 +3171,32 @@ select local.tee $0 i32.load8_s offset=11 - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.set $1 - i32.const 1 - local.get $0 - i32.load - local.get $0 - local.get $1 - select - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $1 - select - call $_proxy_log - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $2) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5856 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5856 - i32.store + if $if (result i32) + i32.const 1 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $_proxy_log + else + i32.const 1 + local.get $0 + local.get $1 + i32.const 255 + i32.and + call $_proxy_log + end ;; $if + drop ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -3063,32 +3235,27 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5712 + i32.const 6776 i32.store local.get $0 local.get $1 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $4) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $5) (param $0 i32) (param $1 i32) - (result i32) - local.get $0 + (param $2 i32) + (param $3 i32) i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 9192 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $2) - (param $0 i32) - (result i32) - i32.const 4600 + call $___cxa_allocate_exception + local.tee $0 + i32.const 9400 + i32.store + local.get $0 + i32.const 5488 + i32.const 76 + call $___cxa_throw ) (func $__GLOBAL__sub_I_grpc_call_cpp_cc (type $8) @@ -3096,115 +3263,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 - local.set $1 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $1 + global.get $34 + local.set $0 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5856 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 20321 - i32.store offset=48 + i32.const 6928 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 local.get $1 + i32.const 6912 + i32.store offset=12 + local.get $0 + i32.const 29814 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_0 + call_indirect $30 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $1 - global.set $32 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $32 + if $if_0 + local.get $0 + global.set $34 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 127 + i32.load + local.get $1 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $1 - global.set $32 + call_indirect $30 (type $0) + local.get $0 + global.set $34 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $2) @@ -3219,7 +3352,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $2) @@ -3271,17 +3404,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4608 + i32.const 4584 i64.const 16 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 93 + i32.const 158 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -3302,34 +3435,34 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL22InitDefaultsDataSourceEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 18896 - i32.const 5916 + global.set $34 + i32.const 28384 + i32.const 6968 i32.store - i32.const 18900 + i32.const 28388 i32.const 0 i32.store - i32.const 18908 + i32.const 28396 i32.const 0 i32.store - i32.const 5892 + i32.const 6944 i32.load if $if - i32.const 5892 + i32.const 6944 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 18912 + i32.const 28400 i32.const 0 i32.store - i32.const 94 - i32.const 18896 + i32.const 159 + i32.const 28384 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -3338,7 +3471,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5916 + i32.const 6968 i32.store local.get $0 i32.load offset=16 @@ -3394,7 +3527,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5916 + i32.const 6968 i32.store local.get $0 i32.load offset=16 @@ -3449,11 +3582,11 @@ i32.const 10 i32.store8 offset=11 local.get $0 - i32.const 9575 + i32.const 13402 i64.load align=1 i64.store align=1 local.get $0 - i32.const 9583 + i32.const 13410 i32.load16_s align=1 i32.store16 offset=8 align=1 local.get $0 @@ -3527,18 +3660,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4616 + i32.const 5008 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN10DataSource9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -3555,12 +3688,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 32 i32.add @@ -3613,7 +3746,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $4 @@ -3699,7 +3832,7 @@ local.get $6 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq br_if $block_7 else @@ -3709,14 +3842,14 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 br $block_7 end ;; $if_2 br $block_6 end ;; $block_7 local.get $6 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -3739,9 +3872,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_3 i32.load8_s offset=11 i32.const 0 @@ -3758,9 +3891,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_5 i32.load8_s offset=11 local.tee $5 @@ -3775,7 +3908,7 @@ i32.and end ;; $if_6 i32.const 0 - i32.const 9443 + i32.const 13270 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -3797,7 +3930,7 @@ local.get $6 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq br_if $block_9 else @@ -3807,14 +3940,14 @@ i32.const 2 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 br $block_9 end ;; $if_7 br $block_8 end ;; $block_9 local.get $6 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -3843,7 +3976,7 @@ local.get $6 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq br_if $block_11 else @@ -3853,14 +3986,14 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 br $block_11 end ;; $if_8 br $block_10 end ;; $block_11 local.get $6 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -3883,9 +4016,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_9 i32.load8_s offset=11 i32.const 0 @@ -3902,9 +4035,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_11 i32.load8_s offset=11 local.tee $5 @@ -3919,7 +4052,7 @@ i32.and end ;; $if_12 i32.const 0 - i32.const 9463 + i32.const 13290 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -4006,7 +4139,7 @@ i32.ge_s if $if_15 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_15 @@ -4014,7 +4147,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -4029,7 +4162,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -4136,7 +4269,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 9443 + i32.const 13270 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -4148,7 +4281,7 @@ local.get $0 i32.load offset=8 else - i32.const 19480 + i32.const 28968 end ;; $if_1 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -4195,7 +4328,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 9463 + i32.const 13290 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -4207,7 +4340,7 @@ local.get $0 i32.load offset=8 else - i32.const 19480 + i32.const 28968 end ;; $if_5 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -4217,7 +4350,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -4236,7 +4369,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -4290,7 +4423,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -4322,12 +4455,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.eqz if $if @@ -4335,7 +4468,7 @@ i32.const 3 i32.store local.get $2 - i32.const 9488 + i32.const 13315 i32.store offset=4 local.get $2 i32.const 376 @@ -4347,7 +4480,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9537 + i32.const 13364 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4362,7 +4495,7 @@ local.get $3 i32.store local.get $2 - global.set $32 + global.set $34 ) (func $__ZN10DataSource9MergeFromERKS_ (type $1) @@ -4372,12 +4505,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -4386,7 +4519,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 832 @@ -4398,7 +4531,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4479,7 +4612,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne br_if $block_0 else @@ -4489,7 +4622,7 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 8 @@ -4512,7 +4645,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne br_if $block_0 else @@ -4522,7 +4655,7 @@ i32.const 2 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 8 @@ -4545,7 +4678,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne br_if $block_0 else @@ -4555,7 +4688,7 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 8 @@ -4565,21 +4698,21 @@ br $block end ;; $block_1 local.get $3 - global.set $32 + global.set $34 return end ;; $block_0 local.get $1 local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $0 local.get $2 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI10DataSourceJEEEPT_PS1_DpOT0_ (type $2) @@ -4593,26 +4726,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4616 + i32.const 4592 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 95 + i32.const 160 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 5916 + i32.const 6968 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 5916 + i32.const 6968 i32.store end ;; $if local.get $0 @@ -4621,10 +4754,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 5892 + i32.const 6944 i32.load if $if_2 - i32.const 5892 + i32.const 6944 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -4642,46 +4775,46 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL15InitDefaultsAnyEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 18936 - i32.const 6012 + global.set $34 + i32.const 28424 + i32.const 7064 i32.store - i32.const 18940 + i32.const 28428 i32.const 0 i32.store - i32.const 18952 + i32.const 28440 i32.const 0 i32.store - i32.const 5988 + i32.const 7040 i32.load if $if - i32.const 5988 + i32.const 7040 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 18944 - i32.const 19480 + i32.const 28432 + i32.const 28968 i32.store - i32.const 18948 - i32.const 19480 + i32.const 28436 + i32.const 28968 i32.store - i32.const 94 - i32.const 18936 + i32.const 159 + i32.const 28424 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -4690,12 +4823,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6012 + i32.const 7064 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -4717,7 +4850,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -4797,11 +4930,11 @@ i32.const 3 i32.store8 offset=11 local.get $0 - i32.const 9612 + i32.const 13439 i32.load16_s align=1 i32.store16 align=1 local.get $0 - i32.const 9614 + i32.const 13441 i32.load8_s i32.store8 offset=2 local.get $0 @@ -4830,7 +4963,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -4857,7 +4990,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if_1 local.get $1 @@ -4921,18 +5054,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4632 + i32.const 5008 + i32.const 4608 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN3Any9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -4950,12 +5083,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 32 i32.add @@ -5008,7 +5141,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $4 @@ -5090,11 +5223,11 @@ local.get $8 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $8 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -5117,11 +5250,11 @@ local.get $7 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_3 (result i32) local.get $7 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -5156,7 +5289,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 9599 + i32.const 13426 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -5243,7 +5376,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_7 @@ -5251,7 +5384,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -5267,7 +5400,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -5425,7 +5558,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 9599 + i32.const 13426 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -5459,7 +5592,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -5478,7 +5611,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -5518,12 +5651,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -5532,7 +5665,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 1072 @@ -5544,7 +5677,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -5623,7 +5756,7 @@ i32.ne if $if_4 local.get $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -5654,7 +5787,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $34 return end ;; $if_7 local.get $1 @@ -5667,11 +5800,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $34 return end ;; $if_8 local.get $0 - i32.const 19480 + i32.const 28968 i32.eq if $if_9 local.get $2 @@ -5683,7 +5816,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI3AnyJEEEPT_PS1_DpOT0_ (type $2) @@ -5697,26 +5830,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4632 + i32.const 4608 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 96 + i32.const 161 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6012 + i32.const 7064 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6012 + i32.const 7064 i32.store end ;; $if local.get $0 @@ -5725,51 +5858,51 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5988 + i32.const 7040 i32.load if $if_2 - i32.const 5988 + i32.const 7040 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL33InitDefaultsGrpcService_EnvoyGrpcEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 18960 - i32.const 6108 + global.set $34 + i32.const 28448 + i32.const 7160 i32.store - i32.const 18964 + i32.const 28452 i32.const 0 i32.store - i32.const 18972 + i32.const 28460 i32.const 0 i32.store - i32.const 6084 + i32.const 7136 i32.load if $if - i32.const 6084 + i32.const 7136 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 18968 - i32.const 19480 + i32.const 28456 + i32.const 28968 i32.store - i32.const 94 - i32.const 18960 + i32.const 159 + i32.const 28448 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -5778,12 +5911,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6108 + i32.const 7160 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -5850,12 +5983,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6108 + i32.const 7160 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -5935,19 +6068,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 9656 + i32.const 13483 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9664 + i32.const 13491 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9672 + i32.const 13499 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 9676 + i32.const 13503 i32.load8_s i32.store8 offset=20 local.get $1 @@ -5976,7 +6109,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -6040,18 +6173,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4648 + i32.const 5008 + i32.const 4624 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN21GrpcService_EnvoyGrpc9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -6068,12 +6201,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 32 i32.add @@ -6126,7 +6259,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $4 @@ -6192,11 +6325,11 @@ local.get $7 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $7 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -6231,7 +6364,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 9621 + i32.const 13448 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -6318,7 +6451,7 @@ i32.ge_s if $if_6 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_6 @@ -6326,7 +6459,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -6342,7 +6475,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -6456,7 +6589,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 9621 + i32.const 13448 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -6470,7 +6603,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -6489,7 +6622,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -6522,12 +6655,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -6536,7 +6669,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 1272 @@ -6548,7 +6681,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -6619,7 +6752,7 @@ i32.eqz if $if_3 local.get $3 - global.set $32 + global.set $34 return end ;; $if_3 local.get $0 @@ -6632,11 +6765,11 @@ i32.eq if $if_4 local.get $3 - global.set $32 + global.set $34 return end ;; $if_4 local.get $0 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $2 @@ -6648,7 +6781,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_5 local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI21GrpcService_EnvoyGrpcJEEEPT_PS1_DpOT0_ (type $2) @@ -6662,26 +6795,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4648 + i32.const 4624 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 16 - i32.const 97 + i32.const 162 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6108 + i32.const 7160 i32.store else i32.const 16 call $__Znwm local.tee $0 - i32.const 6108 + i32.const 7160 i32.store end ;; $if local.get $0 @@ -6690,60 +6823,60 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6084 + i32.const 7136 i32.load if $if_2 - i32.const 6084 + i32.const 7136 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL49InitDefaultsGrpcService_GoogleGrpc_SslCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 18976 - i32.const 6204 + global.set $34 + i32.const 28464 + i32.const 7256 i32.store - i32.const 18980 + i32.const 28468 i32.const 0 i32.store - i32.const 18996 + i32.const 28484 i32.const 0 i32.store - i32.const 6180 + i32.const 7232 i32.load if $if - i32.const 6180 + i32.const 7232 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 18984 + i32.const 28472 i64.const 0 i64.store - i32.const 18992 + i32.const 28480 i32.const 0 i32.store - i32.const 94 - i32.const 18976 + i32.const 159 + i32.const 28464 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 18984 - i32.const 18896 + i32.const 28472 + i32.const 28384 i32.store - i32.const 18988 - i32.const 18896 + i32.const 28476 + i32.const 28384 i32.store - i32.const 18992 - i32.const 18896 + i32.const 28480 + i32.const 28384 i32.store ) @@ -6752,10 +6885,10 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6204 + i32.const 7256 i32.store local.get $0 - i32.const 18976 + i32.const 28464 i32.ne if $if local.get $0 @@ -6766,11 +6899,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 local.get $0 i32.load offset=12 @@ -6780,11 +6913,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 local.get $0 i32.load offset=16 @@ -6794,11 +6927,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 end ;; $if local.get $0 @@ -6849,10 +6982,10 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6204 + i32.const 7256 i32.store local.get $0 - i32.const 18976 + i32.const 28464 i32.ne if $if local.get $0 @@ -6863,11 +6996,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 local.get $0 i32.load offset=12 @@ -6877,11 +7010,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 local.get $0 i32.load offset=16 @@ -6891,11 +7024,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 end ;; $if local.get $0 @@ -6959,27 +7092,27 @@ i32.const 37 i32.store offset=4 local.get $1 - i32.const 9702 + i32.const 13529 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9710 + i32.const 13537 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9718 + i32.const 13545 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 9726 + i32.const 13553 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 9734 + i32.const 13561 i32.load align=1 i32.store offset=32 align=1 local.get $1 - i32.const 9738 + i32.const 13565 i32.load8_s i32.store8 offset=36 local.get $1 @@ -7016,11 +7149,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if local.get $0 i32.const 0 @@ -7035,11 +7168,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 local.get $0 i32.const 0 @@ -7054,11 +7187,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 local.get $0 i32.const 0 @@ -7103,18 +7236,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4664 + i32.const 5008 + i32.const 4640 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN37GrpcService_GoogleGrpc_SslCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -7130,12 +7263,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 i32.const 40 i32.add @@ -7192,7 +7325,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8012 + i32.const 9064 i32.store local.get $4 local.get $5 @@ -7575,7 +7708,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_7 @@ -7583,7 +7716,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -7597,7 +7730,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -7617,7 +7750,7 @@ end ;; $if local.set $1 local.get $0 - i32.const 18976 + i32.const 28464 i32.eq if $if_0 local.get $0 @@ -7721,7 +7854,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 18976 + i32.const 28464 i32.ne if $if local.get $0 @@ -7757,7 +7890,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -7776,7 +7909,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -7816,12 +7949,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -7830,7 +7963,7 @@ i32.const 3 i32.store local.get $4 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $4 i32.const 1542 @@ -7842,7 +7975,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -7896,11 +8029,11 @@ drop end ;; $if_0 local.get $1 - i32.const 18976 + i32.const 28464 i32.eq if $if_2 local.get $4 - global.set $32 + global.set $34 return end ;; $if_2 local.get $1 @@ -7923,7 +8056,7 @@ end ;; $if_4 local.get $3 local.get $2 - i32.const 18896 + i32.const 28384 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ @@ -7948,7 +8081,7 @@ end ;; $if_6 local.get $3 local.get $2 - i32.const 18896 + i32.const 28384 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ @@ -7959,7 +8092,7 @@ i32.eqz if $if_7 local.get $4 - global.set $32 + global.set $34 return end ;; $if_7 local.get $0 @@ -7980,12 +8113,12 @@ end ;; $if_8 local.get $0 local.get $2 - i32.const 18896 + i32.const 28384 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI37GrpcService_GoogleGrpc_SslCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -7997,7 +8130,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 6204 + i32.const 7256 i32.store local.get $0 i32.const 0 @@ -8005,10 +8138,10 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 6180 + i32.const 7232 i32.load if $if_0 - i32.const 6180 + i32.const 7232 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_0 local.get $0 @@ -8026,20 +8159,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4664 + i32.const 4640 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 24 - i32.const 98 + i32.const 163 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6204 + i32.const 7256 i32.store local.get $0 i32.const 0 @@ -8047,10 +8180,10 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 6180 + i32.const 7232 i32.load if $if_3 - i32.const 6180 + i32.const 7232 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_3 local.get $0 @@ -8064,31 +8197,31 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL57InitDefaultsGrpcService_GoogleGrpc_GoogleLocalCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19000 - i32.const 6300 + global.set $34 + i32.const 28488 + i32.const 7352 i32.store - i32.const 19004 + i32.const 28492 i32.const 0 i32.store - i32.const 19008 + i32.const 28496 i32.const 0 i32.store - i32.const 6276 + i32.const 7328 i32.load if $if - i32.const 6276 + i32.const 7328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 94 - i32.const 19000 + i32.const 159 + i32.const 28488 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -8097,7 +8230,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6300 + i32.const 7352 i32.store local.get $0 i32.load offset=4 @@ -8147,7 +8280,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6300 + i32.const 7352 i32.store local.get $0 i32.load offset=4 @@ -8210,31 +8343,31 @@ i32.const 45 i32.store offset=4 local.get $1 - i32.const 9780 + i32.const 13607 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9788 + i32.const 13615 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9796 + i32.const 13623 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 9804 + i32.const 13631 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 9812 + i32.const 13639 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 9820 + i32.const 13647 i32.load align=1 i32.store offset=40 align=1 local.get $1 - i32.const 9824 + i32.const 13651 i32.load8_s i32.store8 offset=44 local.get $1 @@ -8300,18 +8433,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4680 + i32.const 5008 + i32.const 4656 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -8326,12 +8459,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $2 i32.const 32 i32.add @@ -8384,7 +8517,7 @@ i32.store offset=8 end ;; $if local.get $2 - i32.const 8012 + i32.const 9064 i32.store local.get $2 local.get $3 @@ -8513,7 +8646,7 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $34 local.get $1 return end ;; $if_3 @@ -8521,7 +8654,7 @@ i32.load call $_free local.get $2 - global.set $32 + global.set $34 local.get $1 ) @@ -8535,7 +8668,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -8572,7 +8705,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -8591,7 +8724,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -8629,12 +8762,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -8643,7 +8776,7 @@ i32.const 3 i32.store local.get $2 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $2 i32.const 1696 @@ -8655,7 +8788,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8669,7 +8802,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -8712,7 +8845,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm drop local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI45GrpcService_GoogleGrpc_GoogleLocalCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -8724,7 +8857,7 @@ i32.const 12 call $__Znwm local.tee $0 - i32.const 6300 + i32.const 7352 i32.store local.get $0 i32.const 0 @@ -8732,14 +8865,14 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6276 + i32.const 7328 i32.load i32.eqz if $if_0 local.get $0 return end ;; $if_0 - i32.const 6276 + i32.const 7328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 return @@ -8750,20 +8883,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4680 + i32.const 4656 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 16 - i32.const 99 + i32.const 164 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6300 + i32.const 7352 i32.store local.get $0 i32.const 0 @@ -8771,45 +8904,45 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6276 + i32.const 7328 i32.load i32.eqz if $if_3 local.get $0 return end ;; $if_3 - i32.const 6276 + i32.const 7328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL40InitDefaultsGrpcService_GoogleGrpc_EmptyEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19016 - i32.const 6396 + global.set $34 + i32.const 28504 + i32.const 7448 i32.store - i32.const 19020 + i32.const 28508 i32.const 0 i32.store - i32.const 19024 + i32.const 28512 i32.const 0 i32.store - i32.const 6372 + i32.const 7424 i32.load if $if - i32.const 6372 + i32.const 7424 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 94 - i32.const 19016 + i32.const 159 + i32.const 28504 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -8818,7 +8951,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6396 + i32.const 7448 i32.store local.get $0 i32.load offset=4 @@ -8868,7 +9001,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6396 + i32.const 7448 i32.store local.get $0 i32.load offset=4 @@ -8931,19 +9064,19 @@ i32.const 28 i32.store offset=4 local.get $1 - i32.const 9874 + i32.const 13701 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9882 + i32.const 13709 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9890 + i32.const 13717 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 9898 + i32.const 13725 i32.load align=1 i32.store offset=24 align=1 local.get $1 @@ -8970,18 +9103,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4696 + i32.const 5008 + i32.const 4672 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN28GrpcService_GoogleGrpc_Empty9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -8991,12 +9124,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -9005,7 +9138,7 @@ i32.const 3 i32.store local.get $2 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $2 i32.const 1838 @@ -9017,7 +9150,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -9031,7 +9164,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -9074,7 +9207,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm drop local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI28GrpcService_GoogleGrpc_EmptyJEEEPT_PS1_DpOT0_ (type $2) @@ -9086,7 +9219,7 @@ i32.const 12 call $__Znwm local.tee $0 - i32.const 6396 + i32.const 7448 i32.store local.get $0 i32.const 0 @@ -9094,14 +9227,14 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6372 + i32.const 7424 i32.load i32.eqz if $if_0 local.get $0 return end ;; $if_0 - i32.const 6372 + i32.const 7424 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 return @@ -9112,20 +9245,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4696 + i32.const 4672 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 16 - i32.const 100 + i32.const 165 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6396 + i32.const 7448 i32.store local.get $0 i32.const 0 @@ -9133,48 +9266,48 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6372 + i32.const 7424 i32.load i32.eqz if $if_3 local.get $0 return end ;; $if_3 - i32.const 6372 + i32.const 7424 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL53InitDefaultsGrpcService_GoogleGrpc_ChannelCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19032 - i32.const 6500 + global.set $34 + i32.const 28520 + i32.const 7552 i32.store - i32.const 19036 + i32.const 28524 i32.const 0 i32.store - i32.const 19044 + i32.const 28532 i32.const 0 i32.store - i32.const 6468 + i32.const 7520 i32.load if $if - i32.const 6468 + i32.const 7520 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19048 + i32.const 28536 i32.const 0 i32.store - i32.const 94 - i32.const 19032 + i32.const 159 + i32.const 28520 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -9183,7 +9316,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6500 + i32.const 7552 i32.store block $block block $block_0 @@ -9205,11 +9338,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_0 end ;; $block_2 local.get $0 @@ -9221,11 +9354,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -9237,11 +9370,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -9319,27 +9452,27 @@ i32.const 41 i32.store offset=4 local.get $1 - i32.const 9934 + i32.const 13761 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9942 + i32.const 13769 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9950 + i32.const 13777 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 9958 + i32.const 13785 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 9966 + i32.const 13793 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 9974 + i32.const 13801 i32.load8_s i32.store8 offset=40 local.get $1 @@ -9388,11 +9521,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if br $block end ;; $block_1 @@ -9406,11 +9539,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 br $block end ;; $block_0 @@ -9424,11 +9557,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 end ;; $block local.get $0 @@ -9474,18 +9607,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4712 + i32.const 5008 + i32.const 4688 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN41GrpcService_GoogleGrpc_ChannelCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -9501,12 +9634,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 i32.const 40 i32.add @@ -9563,7 +9696,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8012 + i32.const 9064 i32.store local.get $4 local.get $5 @@ -9666,11 +9799,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_11 end ;; $block_12 local.get $0 @@ -9682,11 +9815,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_11 local.get $0 i32.const 1 @@ -9787,11 +9920,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_18 end ;; $block_19 local.get $0 @@ -9803,11 +9936,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_18 local.get $0 i32.const 2 @@ -9908,11 +10041,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_25 end ;; $block_26 local.get $0 @@ -9924,11 +10057,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_25 local.get $0 i32.const 3 @@ -10087,7 +10220,7 @@ i32.ge_s if $if_4 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_4 @@ -10095,7 +10228,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -10111,7 +10244,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -10181,7 +10314,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -10275,7 +10408,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -10294,7 +10427,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -10327,12 +10460,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -10341,7 +10474,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 2156 @@ -10353,7 +10486,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -10446,11 +10579,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_5 end ;; $block_6 local.get $0 @@ -10461,11 +10594,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 end ;; $block_5 local.get $0 @@ -10483,7 +10616,7 @@ if $if_3 (result i32) br $block_4 else - i32.const 18976 + i32.const 28464 end ;; $if_3 br $block_3 end ;; $block_4 @@ -10495,7 +10628,7 @@ local.get $1 call $__ZN37GrpcService_GoogleGrpc_SslCredentials9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block_1 block $block_9 (result i32) @@ -10526,11 +10659,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_11 end ;; $block_12 local.get $0 @@ -10541,11 +10674,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 end ;; $block_11 local.get $0 @@ -10563,7 +10696,7 @@ if $if_5 (result i32) br $block_10 else - i32.const 19016 + i32.const 28504 end ;; $if_5 br $block_9 end ;; $block_10 @@ -10575,7 +10708,7 @@ local.get $1 call $__ZN28GrpcService_GoogleGrpc_Empty9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block_0 block $block_15 (result i32) @@ -10606,11 +10739,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_17 end ;; $block_18 local.get $0 @@ -10621,11 +10754,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_6 end ;; $block_17 local.get $0 @@ -10643,7 +10776,7 @@ if $if_7 (result i32) br $block_16 else - i32.const 19000 + i32.const 28488 end ;; $if_7 br $block_15 end ;; $block_16 @@ -10655,11 +10788,11 @@ local.get $1 call $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI41GrpcService_GoogleGrpc_ChannelCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -10673,26 +10806,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4712 + i32.const 4688 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 101 + i32.const 166 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6500 + i32.const 7552 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6500 + i32.const 7552 i32.store end ;; $if local.get $0 @@ -10701,10 +10834,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6468 + i32.const 7520 i32.load if $if_2 - i32.const 6468 + i32.const 7520 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -10715,37 +10848,37 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL85InitDefaultsGrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19072 - i32.const 6596 + global.set $34 + i32.const 28560 + i32.const 7648 i32.store - i32.const 19076 + i32.const 28564 i32.const 0 i32.store - i32.const 19096 + i32.const 28584 i32.const 0 i32.store - i32.const 6572 + i32.const 7624 i32.load if $if - i32.const 6572 + i32.const 7624 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19080 - i32.const 19480 + i32.const 28568 + i32.const 28968 i32.store - i32.const 19088 + i32.const 28576 i64.const 0 i64.store - i32.const 94 - i32.const 19072 + i32.const 159 + i32.const 28560 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -10754,12 +10887,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6596 + i32.const 7648 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -10826,12 +10959,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6596 + i32.const 7648 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -10911,45 +11044,45 @@ i32.const 73 i32.store offset=4 local.get $1 - i32.const 10103 + i32.const 13930 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10111 + i32.const 13938 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10119 + i32.const 13946 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10127 + i32.const 13954 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10135 + i32.const 13962 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10143 + i32.const 13970 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 10151 + i32.const 13978 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 10159 + i32.const 13986 i64.load align=1 i64.store offset=56 align=1 local.get $1 i32.const -64 i32.sub - i32.const 10167 + i32.const 13994 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10175 + i32.const 14002 i32.load8_s i32.store8 offset=72 local.get $1 @@ -10978,7 +11111,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -11045,18 +11178,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4728 + i32.const 5008 + i32.const 4704 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -11073,12 +11206,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 i32.const 48 i32.add @@ -11135,7 +11268,7 @@ i32.add local.tee $2 local.tee $6 - i32.const 8012 + i32.const 9064 i32.store local.get $6 local.get $4 @@ -11260,11 +11393,11 @@ local.get $6 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_4 (result i32) local.get $6 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -11299,7 +11432,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 10020 + i32.const 13847 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -11386,7 +11519,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_8 @@ -11394,7 +11527,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -11411,7 +11544,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -11550,7 +11683,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10020 + i32.const 13847 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -11574,7 +11707,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -11593,7 +11726,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -11634,12 +11767,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -11648,7 +11781,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 2393 @@ -11660,7 +11793,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -11739,7 +11872,7 @@ i32.ne if $if_4 local.get $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -11759,14 +11892,14 @@ i64.eq if $if_6 local.get $3 - global.set $32 + global.set $34 return end ;; $if_6 local.get $0 local.get $6 i64.store offset=16 local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -11780,26 +11913,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4728 + i32.const 4704 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 32 - i32.const 102 + i32.const 167 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6596 + i32.const 7648 i32.store else i32.const 32 call $__Znwm local.tee $0 - i32.const 6596 + i32.const 7648 i32.store end ;; $if local.get $0 @@ -11808,14 +11941,14 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 6572 + i32.const 7624 i32.load if $if_2 - i32.const 6572 + i32.const 7624 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i64.const 0 @@ -11825,37 +11958,37 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL71InitDefaultsGrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19104 - i32.const 6692 + global.set $34 + i32.const 28592 + i32.const 7744 i32.store - i32.const 19108 + i32.const 28596 i32.const 0 i32.store - i32.const 19120 + i32.const 28608 i32.const 0 i32.store - i32.const 6668 + i32.const 7720 i32.load if $if - i32.const 6668 + i32.const 7720 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19112 - i32.const 19480 + i32.const 28600 + i32.const 28968 i32.store - i32.const 19116 - i32.const 19480 + i32.const 28604 + i32.const 28968 i32.store - i32.const 94 - i32.const 19104 + i32.const 159 + i32.const 28592 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -11864,12 +11997,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6692 + i32.const 7744 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -11891,7 +12024,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -11982,39 +12115,39 @@ i32.const 59 i32.store offset=4 local.get $1 - i32.const 10412 + i32.const 14239 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10420 + i32.const 14247 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10428 + i32.const 14255 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10436 + i32.const 14263 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10444 + i32.const 14271 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10452 + i32.const 14279 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 10460 + i32.const 14287 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 10468 + i32.const 14295 i32.load16_s align=1 i32.store16 offset=56 align=1 local.get $1 - i32.const 10470 + i32.const 14297 i32.load8_s i32.store8 offset=58 local.get $1 @@ -12041,18 +12174,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4744 + i32.const 5008 + i32.const 4720 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -12070,12 +12203,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 32 i32.add @@ -12128,7 +12261,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $5 @@ -12212,11 +12345,11 @@ local.get $8 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $8 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -12251,7 +12384,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 10253 + i32.const 14080 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -12268,11 +12401,11 @@ local.get $9 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_4 (result i32) local.get $9 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -12307,7 +12440,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 10333 + i32.const 14160 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -12394,7 +12527,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_8 @@ -12402,7 +12535,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -12446,7 +12579,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10253 + i32.const 14080 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -12489,7 +12622,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10333 + i32.const 14160 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 2 @@ -12503,7 +12636,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -12522,7 +12655,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -12555,12 +12688,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -12569,7 +12702,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 2632 @@ -12581,7 +12714,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12660,7 +12793,7 @@ i32.ne if $if_4 local.get $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -12691,7 +12824,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $34 return end ;; $if_7 local.get $1 @@ -12704,11 +12837,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $34 return end ;; $if_8 local.get $0 - i32.const 19480 + i32.const 28968 i32.eq if $if_9 local.get $2 @@ -12720,7 +12853,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -12734,26 +12867,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4744 + i32.const 4720 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 103 + i32.const 168 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6692 + i32.const 7744 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6692 + i32.const 7744 i32.store end ;; $if local.get $0 @@ -12762,54 +12895,54 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 6668 + i32.const 7720 i32.load if $if_2 - i32.const 6668 + i32.const 7720 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL80InitDefaultsGrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19128 - i32.const 6792 + global.set $34 + i32.const 28616 + i32.const 7844 i32.store - i32.const 19132 + i32.const 28620 i32.const 0 i32.store - i32.const 19144 + i32.const 28632 i32.const 0 i32.store - i32.const 6764 + i32.const 7816 i32.load if $if - i32.const 6764 + i32.const 7816 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19136 - i32.const 19480 + i32.const 28624 + i32.const 28968 i32.store - i32.const 19148 + i32.const 28636 i32.const 0 i32.store - i32.const 94 - i32.const 19128 + i32.const 159 + i32.const 28616 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -12818,12 +12951,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6792 + i32.const 7844 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -12861,11 +12994,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -12877,11 +13010,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -12959,41 +13092,41 @@ i32.const 68 i32.store offset=4 local.get $1 - i32.const 10608 + i32.const 14435 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10616 + i32.const 14443 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10624 + i32.const 14451 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10632 + i32.const 14459 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10640 + i32.const 14467 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10648 + i32.const 14475 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 10656 + i32.const 14483 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 10664 + i32.const 14491 i64.load align=1 i64.store offset=56 align=1 local.get $1 i32.const -64 i32.sub - i32.const 10672 + i32.const 14499 i32.load align=1 i32.store align=1 local.get $1 @@ -13023,7 +13156,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -13068,11 +13201,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 br $block end ;; $block_0 @@ -13086,11 +13219,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 end ;; $block local.get $0 @@ -13136,18 +13269,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4760 + i32.const 5008 + i32.const 4736 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -13164,12 +13297,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $4 i32.const 40 i32.add @@ -13226,7 +13359,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $5 @@ -13310,11 +13443,11 @@ local.get $8 i32.load local.tee $3 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $8 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -13349,7 +13482,7 @@ local.get $2 local.get $3 i32.const 0 - i32.const 10534 + i32.const 14361 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -13387,11 +13520,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_10 local.get $0 i32.const 2 @@ -13491,11 +13624,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_16 local.get $0 i32.const 3 @@ -13651,7 +13784,7 @@ i32.ge_s if $if_6 local.get $4 - global.set $32 + global.set $34 local.get $1 return end ;; $if_6 @@ -13659,7 +13792,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $34 local.get $1 ) @@ -13677,7 +13810,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -13785,7 +13918,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -13965,7 +14098,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10534 + i32.const 14361 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -14004,7 +14137,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -14023,7 +14156,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -14056,12 +14189,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -14070,7 +14203,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 2962 @@ -14082,7 +14215,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -14161,7 +14294,7 @@ i32.ne if $if_4 local.get $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -14211,11 +14344,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_6 end ;; $block_4 local.get $0 @@ -14233,7 +14366,7 @@ if $if_7 (result i32) br $block_3 else - i32.const 19352 + i32.const 28840 end ;; $if_7 br $block_2 end ;; $block_3 @@ -14245,7 +14378,7 @@ local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ local.get $3 - global.set $32 + global.set $34 return end ;; $block_0 block $block_7 (result i32) @@ -14274,11 +14407,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_8 end ;; $block_9 local.get $0 @@ -14296,7 +14429,7 @@ if $if_9 (result i32) br $block_8 else - i32.const 18936 + i32.const 28424 end ;; $if_9 br $block_7 end ;; $block_8 @@ -14308,11 +14441,11 @@ local.get $1 call $__ZN3Any9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginJEEEPT_PS1_DpOT0_ (type $2) @@ -14326,26 +14459,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4760 + i32.const 4736 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 104 + i32.const 169 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6792 + i32.const 7844 i32.store else i32.const 24 call $__Znwm local.tee $0 - i32.const 6792 + i32.const 7844 i32.store end ;; $if local.get $0 @@ -14354,14 +14487,14 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 6764 + i32.const 7816 i32.load if $if_2 - i32.const 6764 + i32.const 7816 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 0 @@ -14371,34 +14504,34 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL50InitDefaultsGrpcService_GoogleGrpc_CallCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19160 - i32.const 6900 + global.set $34 + i32.const 28648 + i32.const 7952 i32.store - i32.const 19164 + i32.const 28652 i32.const 0 i32.store - i32.const 19172 + i32.const 28660 i32.const 0 i32.store - i32.const 6864 + i32.const 7916 i32.load if $if - i32.const 6864 + i32.const 7916 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19176 + i32.const 28664 i32.const 0 i32.store - i32.const 94 - i32.const 19160 + i32.const 159 + i32.const 28648 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -14407,7 +14540,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6900 + i32.const 7952 i32.store local.get $0 i32.load offset=16 @@ -14463,7 +14596,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6900 + i32.const 7952 i32.store local.get $0 i32.load offset=16 @@ -14532,27 +14665,27 @@ i32.const 38 i32.store offset=4 local.get $1 - i32.const 10860 + i32.const 14687 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10868 + i32.const 14695 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10876 + i32.const 14703 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10884 + i32.const 14711 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10892 + i32.const 14719 i32.load align=1 i32.store offset=32 align=1 local.get $1 - i32.const 10896 + i32.const 14723 i32.load16_s align=1 i32.store16 offset=36 align=1 local.get $1 @@ -14620,18 +14753,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4776 + i32.const 5008 + i32.const 4752 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN38GrpcService_GoogleGrpc_CallCredentials9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -14648,12 +14781,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $4 i32.const 40 i32.add @@ -14710,7 +14843,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $5 @@ -14804,7 +14937,7 @@ local.get $7 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq br_if $block_15 else @@ -14814,14 +14947,14 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 br $block_15 end ;; $if_2 br $block_14 end ;; $block_15 local.get $7 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -14844,9 +14977,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_3 i32.load8_s offset=11 i32.const 0 @@ -14863,9 +14996,9 @@ i32.load offset=8 local.tee $3 else - i32.const 19480 + i32.const 28968 local.set $3 - i32.const 19480 + i32.const 28968 end ;; $if_5 i32.load8_s offset=11 local.tee $2 @@ -14880,7 +15013,7 @@ i32.and end ;; $if_6 i32.const 0 - i32.const 10748 + i32.const 14575 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -14985,7 +15118,7 @@ local.get $7 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq br_if $block_19 else @@ -14995,14 +15128,14 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 br $block_19 end ;; $if_8 br $block_18 end ;; $block_19 local.get $7 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -15025,9 +15158,9 @@ i32.load offset=8 local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_9 i32.load8_s offset=11 i32.const 0 @@ -15044,9 +15177,9 @@ i32.load offset=8 local.tee $3 else - i32.const 19480 + i32.const 28968 local.set $3 - i32.const 19480 + i32.const 28968 end ;; $if_11 i32.load8_s offset=11 local.tee $2 @@ -15061,7 +15194,7 @@ i32.and end ;; $if_12 i32.const 0 - i32.const 10800 + i32.const 14627 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -15410,7 +15543,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $32 + global.set $34 local.get $1 return end ;; $if_18 @@ -15418,7 +15551,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $34 local.get $1 ) @@ -15437,7 +15570,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -15478,7 +15611,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -15509,7 +15642,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -15609,7 +15742,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -15850,7 +15983,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10748 + i32.const 14575 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -15862,7 +15995,7 @@ local.get $0 i32.load offset=8 else - i32.const 19480 + i32.const 28968 end ;; $if_1 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -15910,7 +16043,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10800 + i32.const 14627 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -15922,7 +16055,7 @@ local.get $0 i32.load offset=8 else - i32.const 19480 + i32.const 28968 end ;; $if_5 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -15971,7 +16104,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -15990,7 +16123,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -16037,7 +16170,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -16066,18 +16199,18 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_1 br $block end ;; $block_3 local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -16106,11 +16239,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 br $block end ;; $block_1 @@ -16122,11 +16255,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_5 br $block end ;; $block_0 @@ -16138,11 +16271,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_6 end ;; $block local.get $0 @@ -16157,12 +16290,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -16171,7 +16304,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 3433 @@ -16183,7 +16316,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -16268,7 +16401,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne br_if $block_1 else @@ -16278,7 +16411,7 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 8 @@ -16314,7 +16447,7 @@ i32.const 2 i32.eq br_if $block_10 - i32.const 19016 + i32.const 28504 end ;; $if_3 br $block_9 end ;; $block_10 @@ -16341,7 +16474,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne br_if $block_1 else @@ -16351,7 +16484,7 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 i32.const 8 @@ -16387,7 +16520,7 @@ i32.const 4 i32.eq br_if $block_12 - i32.const 19072 + i32.const 28560 end ;; $if_5 br $block_11 end ;; $block_12 @@ -16427,7 +16560,7 @@ i32.const 5 i32.eq br_if $block_14 - i32.const 19104 + i32.const 28592 end ;; $if_6 br $block_13 end ;; $block_14 @@ -16467,7 +16600,7 @@ i32.const 6 i32.eq br_if $block_16 - i32.const 19128 + i32.const 28616 end ;; $if_7 br $block_15 end ;; $block_16 @@ -16481,7 +16614,7 @@ br $block end ;; $block_2 local.get $3 - global.set $32 + global.set $34 return end ;; $block_1 local.get $1 @@ -16494,7 +16627,7 @@ call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE end ;; $block local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI38GrpcService_GoogleGrpc_CallCredentialsJEEEPT_PS1_DpOT0_ (type $2) @@ -16508,26 +16641,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4776 + i32.const 4752 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 105 + i32.const 170 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6900 + i32.const 7952 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6900 + i32.const 7952 i32.store end ;; $if local.get $0 @@ -16536,10 +16669,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6864 + i32.const 7916 i32.load if $if_2 - i32.const 6864 + i32.const 7916 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -16550,31 +16683,31 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL34InitDefaultsGrpcService_GoogleGrpcEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19208 + global.set $34 + i32.const 28696 call $__ZN22GrpcService_GoogleGrpcC2Ev - i32.const 94 - i32.const 19208 + i32.const 159 + i32.const 28696 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19244 - i32.const 19032 + i32.const 28732 + i32.const 28520 i32.store - i32.const 19248 - i32.const 19352 + i32.const 28736 + i32.const 28840 i32.store ) (func $__ZN22GrpcService_GoogleGrpcC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7004 + i32.const 8056 i32.store local.get $0 i32.const 0 @@ -16588,20 +16721,20 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 6972 + i32.const 8024 i32.load if $if - i32.const 6972 + i32.const 8024 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=24 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=28 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=32 local.get $0 i64.const 0 @@ -16615,7 +16748,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.const 7004 + i32.const 8056 i32.store local.get $0 call $__ZN22GrpcService_GoogleGrpc10SharedDtorEv @@ -16648,11 +16781,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 local.get $2 i32.const 1 @@ -16745,19 +16878,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 11057 + i32.const 14884 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11065 + i32.const 14892 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11073 + i32.const 14900 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 11077 + i32.const 14904 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -16791,7 +16924,7 @@ local.get $0 i32.load offset=24 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -16818,7 +16951,7 @@ local.get $0 i32.load offset=28 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if_1 local.get $1 @@ -16845,7 +16978,7 @@ local.get $0 i32.load offset=32 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if_3 local.get $1 @@ -16879,11 +17012,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_5 local.get $0 i32.const 0 @@ -16898,11 +17031,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_6 local.get $0 i32.const 0 @@ -16947,18 +17080,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4792 + i32.const 5008 + i32.const 4768 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN22GrpcService_GoogleGrpc9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -16978,12 +17111,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $4 i32.const 40 i32.add @@ -17040,7 +17173,7 @@ i32.add local.tee $3 local.tee $2 - i32.const 8012 + i32.const 9064 i32.store local.get $2 local.get $6 @@ -17140,11 +17273,11 @@ local.get $8 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $8 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -17179,7 +17312,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 10940 + i32.const 14767 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -17426,11 +17559,11 @@ local.get $9 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_8 (result i32) local.get $9 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -17465,7 +17598,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 10974 + i32.const 14801 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -17482,11 +17615,11 @@ local.get $10 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_10 (result i32) local.get $10 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $10 i32.load @@ -17521,7 +17654,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 11009 + i32.const 14836 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -17692,7 +17825,7 @@ i32.ge_s if $if_15 local.get $4 - global.set $32 + global.set $34 local.get $1 return end ;; $if_15 @@ -17700,7 +17833,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $34 local.get $1 ) @@ -17717,7 +17850,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -17912,7 +18045,7 @@ local.set $1 end ;; $if_6 local.get $0 - i32.const 19208 + i32.const 28696 i32.eq if $if_7 local.get $0 @@ -18026,7 +18159,7 @@ local.get $3 local.get $2 i32.const 1 - i32.const 10940 + i32.const 14767 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -18036,7 +18169,7 @@ call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE end ;; $if_0 local.get $0 - i32.const 19208 + i32.const 28696 i32.eq local.tee $5 i32.eqz @@ -18111,7 +18244,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10974 + i32.const 14801 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 4 @@ -18154,7 +18287,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11009 + i32.const 14836 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 5 @@ -18181,7 +18314,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -18200,7 +18333,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -18239,12 +18372,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $2 i32.const 24 i32.add @@ -18257,7 +18390,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $3 i32.const 1505 @@ -18269,7 +18402,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11351 + i32.const 15180 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -18291,7 +18424,7 @@ i32.load local.set $0 local.get $2 - global.set $32 + global.set $34 local.get $0 return end ;; $if_0 @@ -18299,7 +18432,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $2 i32.const 1506 @@ -18311,7 +18444,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11382 + i32.const 15211 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -18327,7 +18460,7 @@ i32.load local.set $0 local.get $2 - global.set $32 + global.set $34 local.get $0 ) @@ -18338,12 +18471,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -18352,7 +18485,7 @@ i32.const 3 i32.store local.get $4 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $4 i32.const 3854 @@ -18364,7 +18497,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -18450,7 +18583,7 @@ i32.ne if $if_4 local.get $3 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -18489,7 +18622,7 @@ i32.ne if $if_8 local.get $3 - i32.const 19480 + i32.const 28968 i32.eq if $if_9 local.get $5 @@ -18528,7 +18661,7 @@ i32.ne if $if_12 local.get $3 - i32.const 19480 + i32.const 28968 i32.eq if $if_13 local.get $5 @@ -18542,11 +18675,11 @@ end ;; $if_12 end ;; $if_11 local.get $1 - i32.const 19208 + i32.const 28696 i32.eq if $if_14 local.get $4 - global.set $32 + global.set $34 return end ;; $if_14 local.get $1 @@ -18569,7 +18702,7 @@ end ;; $if_16 local.get $2 local.get $3 - i32.const 19032 + i32.const 28520 local.get $3 select call $__ZN41GrpcService_GoogleGrpc_ChannelCredentials9MergeFromERKS_ @@ -18580,7 +18713,7 @@ i32.eqz if $if_17 local.get $4 - global.set $32 + global.set $34 return end ;; $if_17 local.get $0 @@ -18601,12 +18734,12 @@ end ;; $if_18 local.get $0 local.get $3 - i32.const 19352 + i32.const 28840 local.get $3 select call $__ZN6google8protobuf6Struct9MergeFromERKS1_ local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldI38GrpcService_GoogleGrpc_CallCredentialsE11TypeHandlerEEEvRKS2_ (type $1) @@ -18618,12 +18751,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -18632,7 +18765,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $2 i32.const 1586 @@ -18644,7 +18777,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11808 + i32.const 15637 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -18656,7 +18789,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $1 @@ -18764,14 +18897,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $34 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerI38GrpcService_GoogleGrpc_CallCredentialsE5MergeERKS3_PS3_ (type $1) @@ -18790,12 +18923,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $3 @@ -18806,7 +18939,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $1 i32.const 1567 @@ -18818,20 +18951,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 13679 + i32.const 17508 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $34 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -18897,7 +19030,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI22GrpcService_GoogleGrpcJEEEPT_PS1_DpOT0_ (type $2) @@ -18919,17 +19052,17 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4792 + i32.const 4768 i64.const 48 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 48 - i32.const 106 + i32.const 171 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 call $__ZN22GrpcService_GoogleGrpcC2Ev @@ -18942,7 +19075,7 @@ local.get $0 i32.load offset=24 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -18964,7 +19097,7 @@ local.get $0 i32.load offset=28 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -18986,7 +19119,7 @@ local.get $0 i32.load offset=32 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -19006,7 +19139,7 @@ call $_free end ;; $if_3 local.get $0 - i32.const 19208 + i32.const 28696 i32.eq if $if_5 return @@ -19019,11 +19152,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_6 local.get $0 i32.load offset=40 @@ -19036,46 +19169,46 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL35InitDefaultsGrpcService_HeaderValueEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19256 - i32.const 7100 + global.set $34 + i32.const 28744 + i32.const 8152 i32.store - i32.const 19260 + i32.const 28748 i32.const 0 i32.store - i32.const 19272 + i32.const 28760 i32.const 0 i32.store - i32.const 7076 + i32.const 8128 i32.load if $if - i32.const 7076 + i32.const 8128 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19264 - i32.const 19480 + i32.const 28752 + i32.const 28968 i32.store - i32.const 19268 - i32.const 19480 + i32.const 28756 + i32.const 28968 i32.store - i32.const 94 - i32.const 19256 + i32.const 159 + i32.const 28744 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -19084,12 +19217,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7100 + i32.const 8152 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -19111,7 +19244,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -19202,23 +19335,23 @@ i32.const 23 i32.store offset=4 local.get $1 - i32.const 11163 + i32.const 14990 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11171 + i32.const 14998 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11179 + i32.const 15006 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 11183 + i32.const 15010 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 - i32.const 11185 + i32.const 15012 i32.load8_s i32.store8 offset=22 local.get $1 @@ -19245,18 +19378,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4808 + i32.const 5008 + i32.const 4784 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN23GrpcService_HeaderValue9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -19274,12 +19407,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 32 i32.add @@ -19332,7 +19465,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $5 @@ -19416,11 +19549,11 @@ local.get $8 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 (result i32) local.get $8 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -19455,7 +19588,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 11105 + i32.const 14932 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -19472,11 +19605,11 @@ local.get $9 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_4 (result i32) local.get $9 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -19511,7 +19644,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 11133 + i32.const 14960 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -19598,7 +19731,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_8 @@ -19606,7 +19739,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -19650,7 +19783,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11105 + i32.const 14932 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -19693,7 +19826,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11133 + i32.const 14960 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 2 @@ -19707,7 +19840,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -19726,7 +19859,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -19759,12 +19892,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -19773,7 +19906,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 4111 @@ -19785,7 +19918,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -19864,7 +19997,7 @@ i32.ne if $if_4 local.get $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_5 local.get $5 @@ -19895,7 +20028,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $34 return end ;; $if_7 local.get $1 @@ -19908,11 +20041,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $34 return end ;; $if_8 local.get $0 - i32.const 19480 + i32.const 28968 i32.eq if $if_9 local.get $2 @@ -19924,7 +20057,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI23GrpcService_HeaderValueJEEEPT_PS1_DpOT0_ (type $2) @@ -19938,26 +20071,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4808 + i32.const 4784 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 107 + i32.const 172 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 7100 + i32.const 8152 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 7100 + i32.const 8152 i32.store end ;; $if local.get $0 @@ -19966,42 +20099,42 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7076 + i32.const 8128 i32.load if $if_2 - i32.const 7076 + i32.const 8128 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=8 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL23InitDefaultsGrpcServiceEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19280 + global.set $34 + i32.const 28768 call $__ZN11GrpcServiceC2Ev - i32.const 94 - i32.const 19280 + i32.const 159 + i32.const 28768 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) (func $__ZN11GrpcServiceC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7204 + i32.const 8256 i32.store local.get $0 i32.const 0 @@ -20015,7 +20148,7 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 7172 + i32.const 8224 i32.load i32.eqz if $if @@ -20024,7 +20157,7 @@ i32.store offset=32 return end ;; $if - i32.const 7172 + i32.const 8224 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 i32.const 0 @@ -20038,7 +20171,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.const 7204 + i32.const 8256 i32.store block $block block $block_0 @@ -20059,11 +20192,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -20075,11 +20208,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -20114,11 +20247,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 local.get $2 i32.const 1 @@ -20211,15 +20344,15 @@ i32.const 11 i32.store offset=4 local.get $1 - i32.const 11213 + i32.const 15040 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11221 + i32.const 15048 i32.load16_s align=1 i32.store16 offset=8 align=1 local.get $1 - i32.const 11223 + i32.const 15050 i32.load8_s i32.store8 offset=10 local.get $1 @@ -20271,11 +20404,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if br $block end ;; $block_0 @@ -20289,11 +20422,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 end ;; $block local.get $0 @@ -20339,18 +20472,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4824 + i32.const 5008 + i32.const 4800 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN11GrpcService9MergeFromERKS_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -20367,12 +20500,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $4 i32.const 40 i32.add @@ -20429,7 +20562,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8012 + i32.const 9064 i32.store local.get $3 local.get $6 @@ -20535,11 +20668,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_11 local.get $0 i32.const 1 @@ -20639,11 +20772,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block_17 local.get $0 i32.const 2 @@ -20958,7 +21091,7 @@ i32.ge_s if $if_7 local.get $4 - global.set $32 + global.set $34 local.get $1 return end ;; $if_7 @@ -20966,7 +21099,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $34 local.get $1 ) @@ -20987,7 +21120,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -21025,7 +21158,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -21179,7 +21312,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -21364,7 +21497,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -21383,7 +21516,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -21423,12 +21556,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -21437,7 +21570,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9197 + i32.const 13022 i32.store offset=4 local.get $3 i32.const 4428 @@ -21449,7 +21582,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -21546,11 +21679,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_2 end ;; $block_4 local.get $0 @@ -21568,7 +21701,7 @@ if $if_3 (result i32) br $block_3 else - i32.const 18960 + i32.const 28448 end ;; $if_3 br $block_2 end ;; $block_3 @@ -21580,7 +21713,7 @@ local.get $1 call $__ZN21GrpcService_EnvoyGrpc9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block_0 block $block_7 (result i32) @@ -21609,11 +21742,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 end ;; $block_9 local.get $0 @@ -21631,7 +21764,7 @@ if $if_5 (result i32) br $block_8 else - i32.const 19208 + i32.const 28696 end ;; $if_5 br $block_7 end ;; $block_8 @@ -21643,11 +21776,11 @@ local.get $1 call $__ZN22GrpcService_GoogleGrpc9MergeFromERKS_ local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldI23GrpcService_HeaderValueE11TypeHandlerEEEvRKS2_ (type $1) @@ -21659,12 +21792,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -21673,7 +21806,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $2 i32.const 1586 @@ -21685,7 +21818,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11808 + i32.const 15637 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -21697,7 +21830,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $1 @@ -21805,14 +21938,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $34 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerI23GrpcService_HeaderValueE5MergeERKS3_PS3_ (type $1) @@ -21831,12 +21964,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $5 @@ -21847,7 +21980,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $2 i32.const 1567 @@ -21859,20 +21992,20 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13679 + i32.const 17508 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $2 - global.set $32 + global.set $34 return end ;; $if local.get $5 i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -21890,7 +22023,7 @@ local.tee $3 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if_1 local.get $1 @@ -21917,7 +22050,7 @@ local.get $3 i32.load offset=12 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if_3 local.get $1 @@ -21985,7 +22118,7 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI11GrpcServiceJEEEPT_PS1_DpOT0_ (type $2) @@ -22007,17 +22140,17 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4824 + i32.const 4800 i64.const 40 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 40 - i32.const 108 + i32.const 173 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 call $__ZN11GrpcServiceC2Ev @@ -22049,11 +22182,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if br $block end ;; $block_0 @@ -22067,11 +22200,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 end ;; $block local.get $0 @@ -22081,69 +22214,69 @@ (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $0 - global.set $32 - i32.const 19340 + global.set $34 + i32.const 28828 i32.const 0 i32.store - i32.const 19332 - i32.const 19480 + i32.const 28820 + i32.const 28968 i32.store - i32.const 19336 + i32.const 28824 i32.const 0 i32.store - i32.const 19344 + i32.const 28832 i32.const 0 i32.store - i32.const 19328 - i32.const 7300 + i32.const 28816 + i32.const 8352 i32.store - i32.const 19352 + i32.const 28840 call $__ZN6google8protobuf6StructC2Ev - i32.const 94 - i32.const 19352 + i32.const 159 + i32.const 28840 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19384 - i32.const 7388 + i32.const 28872 + i32.const 8440 i32.store - i32.const 19388 + i32.const 28876 i32.const 0 i32.store - i32.const 19400 + i32.const 28888 i32.const 0 i32.store - i32.const 7276 + i32.const 8328 i32.load if $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19404 + i32.const 28892 i32.const 0 i32.store - i32.const 94 - i32.const 19384 + i32.const 159 + i32.const 28872 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19440 + i32.const 28928 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 94 - i32.const 19440 + i32.const 159 + i32.const 28928 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19336 - i32.const 19384 + i32.const 28824 + i32.const 28872 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7636 + i32.const 8688 i32.store local.get $0 i64.const 0 @@ -22161,20 +22294,20 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 7276 + i32.const 8328 i32.load i32.eqz if $if return end ;; $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7468 + i32.const 8520 i32.store local.get $0 i32.const 4 @@ -22188,13 +22321,13 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 7276 + i32.const 8328 i32.load i32.eqz if $if return end ;; $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -22205,14 +22338,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 - i32.const 7468 + i32.const 8520 i32.store local.get $0 i32.load offset=4 @@ -22234,7 +22367,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $2 i32.const 915 @@ -22246,7 +22379,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12419 + i32.const 16248 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -22283,11 +22416,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -22341,14 +22474,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $34 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -22380,19 +22513,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 13706 + i32.const 17535 i64.load align=1 i64.store align=1 local.get $1 - i32.const 13714 + i32.const 17543 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 13722 + i32.const 17551 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 13730 + i32.const 17559 i32.load8_s i32.store8 offset=24 local.get $1 @@ -22490,18 +22623,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4840 + i32.const 5008 + i32.const 4816 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -22518,12 +22651,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 i32.const 40 i32.add @@ -22580,7 +22713,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8012 + i32.const 9064 i32.store local.get $4 local.get $5 @@ -22879,7 +23012,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $34 local.get $1 return end ;; $if_7 @@ -22887,7 +23020,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $34 local.get $1 ) @@ -22904,7 +23037,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -23013,7 +23146,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -23032,7 +23165,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -23073,7 +23206,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -23224,7 +23357,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -23334,18 +23467,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $1 i32.const 1 i32.and @@ -23417,7 +23550,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) select local.set $3 local.get $4 @@ -23440,12 +23573,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4856 + i32.const 4832 i64.const 32 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -23462,13 +23595,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 7548 + i32.const 8600 i32.store local.get $1 local.get $7 @@ -23491,11 +23624,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $2 i32.const 16 i32.add @@ -23524,7 +23657,7 @@ i32.load offset=72 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -23566,7 +23699,7 @@ i32.load offset=76 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -23627,22 +23760,22 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $32 + global.set $34 local.get $5 return end ;; $block @@ -23650,7 +23783,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $32 + global.set $34 local.get $5 ) @@ -23662,12 +23795,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $2 i32.const 24 i32.add @@ -23696,7 +23829,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $3 i32.const 418 @@ -23708,7 +23841,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11508 + i32.const 15337 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -23731,7 +23864,7 @@ i32.le_u if $if_1 local.get $2 - global.set $32 + global.set $34 return end ;; $if_1 local.get $5 @@ -23765,7 +23898,7 @@ br $block end ;; $block_0 local.get $2 - global.set $32 + global.set $34 return end ;; $block local.get $1 @@ -23783,7 +23916,7 @@ local.get $3 i32.store local.get $2 - global.set $32 + global.set $34 return end ;; $if_3 local.get $3 @@ -23794,7 +23927,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 427 @@ -23806,7 +23939,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11625 + i32.const 15454 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -23818,7 +23951,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -23830,12 +23963,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load i32.load offset=16 @@ -23845,7 +23978,7 @@ local.get $1 i32.store local.get $2 - global.set $32 + global.set $34 return end ;; $if local.get $2 @@ -23877,7 +24010,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 451 @@ -23889,7 +24022,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11465 + i32.const 15294 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -23977,7 +24110,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $4) @@ -23992,12 +24125,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 24 i32.add @@ -24025,7 +24158,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $3 i32.const 476 @@ -24037,7 +24170,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11656 + i32.const 15485 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -24146,12 +24279,12 @@ i32.ne local.set $0 local.get $3 - global.set $32 + global.set $34 local.get $0 return end ;; $block_1 local.get $3 - global.set $32 + global.set $34 i32.const 1 ) @@ -24169,12 +24302,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $34 local.set $10 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $2 i32.load local.get $2 @@ -24360,7 +24493,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $32 + global.set $34 return end ;; $block_0 end ;; $if_2 @@ -24480,7 +24613,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $32 + global.set $34 return end ;; $block else @@ -24500,7 +24633,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $32 + global.set $34 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $3) @@ -24684,7 +24817,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 7716 + i32.const 8768 i32.store local.get $0 i32.load offset=12 @@ -24694,7 +24827,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -24724,18 +24857,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 7716 + i32.const 8768 i32.store local.get $0 i32.load offset=12 @@ -24747,7 +24880,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -24779,11 +24912,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $0 call $_free ) @@ -24808,7 +24941,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $0 i32.const 0 @@ -24817,7 +24950,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 7300 + i32.const 8352 i32.store local.get $0 ) @@ -24837,7 +24970,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 19480 + i32.const 28968 i32.ne if $if local.get $1 @@ -24912,18 +25045,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4872 + i32.const 5008 + i32.const 4848 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -24937,12 +25070,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $2 local.set $4 local.get $0 @@ -25013,13 +25146,13 @@ local.get $5 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -25169,7 +25302,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $32 + global.set $34 i32.const 0 return end ;; $block_0 @@ -25180,12 +25313,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $32 + global.set $34 i32.const 1 return end ;; $block local.get $4 - global.set $32 + global.set $34 local.get $0 ) @@ -25209,7 +25342,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -25262,7 +25395,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -25295,7 +25428,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -25306,7 +25439,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -25331,7 +25464,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -25384,7 +25517,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) i32.load offset=16 local.tee $0 i32.const 1 @@ -25420,7 +25553,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $2 i32.const 10 @@ -25439,7 +25572,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $4 local.get $2 i32.const 18 @@ -25500,7 +25633,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $2) @@ -25515,19 +25648,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4968 + i32.const 4944 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 7388 + i32.const 8440 i32.store local.get $1 local.get $0 @@ -25535,10 +25668,10 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 7276 + i32.const 8328 i32.load if $if_2 - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $1 @@ -25547,7 +25680,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 7388 + i32.const 8440 i32.store local.get $0 i32.const 0 @@ -25555,10 +25688,10 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7276 + i32.const 8328 i32.load if $if_3 - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_3 end ;; $if @@ -25581,12 +25714,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $4 i32.const 48 i32.add @@ -25643,7 +25776,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 8012 + i32.const 9064 i32.store local.get $5 local.get $6 @@ -25848,7 +25981,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 19480 + i32.const 28968 i32.store end ;; $if_5 local.get $0 @@ -25870,12 +26003,12 @@ local.get $5 i32.load local.tee $3 - i32.const 19480 + i32.const 28968 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -25896,9 +26029,9 @@ i32.load local.tee $2 else - i32.const 19480 + i32.const 28968 local.set $2 - i32.const 19480 + i32.const 28968 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -25915,9 +26048,9 @@ i32.load local.tee $3 else - i32.const 19480 + i32.const 28968 local.set $3 - i32.const 19480 + i32.const 28968 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -25932,7 +26065,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 11700 + i32.const 15529 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -26282,7 +26415,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $32 + global.set $34 local.get $1 return end ;; $if_18 @@ -26290,7 +26423,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $34 local.get $1 ) @@ -26329,7 +26462,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 19480 + i32.const 28968 i32.eq local.get $1 i32.eqz @@ -26378,11 +26511,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $block local.get $0 i32.const 0 @@ -26409,12 +26542,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4920 + i32.const 4896 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -26440,12 +26573,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 96 i32.add - global.set $32 + global.set $34 local.get $2 i32.const 72 i32.add @@ -26506,7 +26639,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 8012 + i32.const 9064 i32.store local.get $7 local.get $4 @@ -26672,7 +26805,7 @@ local.get $6 select i32.const 0 - i32.const 11735 + i32.const 15564 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -26693,11 +26826,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -26800,7 +26933,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $32 + global.set $34 local.get $1 return end ;; $if_11 @@ -26808,7 +26941,7 @@ i32.load call $_free local.get $2 - global.set $32 + global.set $34 local.get $1 ) @@ -26832,12 +26965,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4840 + i32.const 4816 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -26853,7 +26986,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 7468 + i32.const 8520 i32.store local.get $0 local.get $1 @@ -26867,13 +27000,13 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 7276 + i32.const 8328 i32.load i32.eqz if $if return end ;; $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -26887,12 +27020,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 block $block block $block_0 local.get $1 @@ -26916,12 +27049,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $32 + global.set $34 i32.const 0 return end ;; $if @@ -26944,14 +27077,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -26960,7 +27093,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -26979,7 +27112,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -26994,12 +27127,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -27008,7 +27141,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -27067,7 +27200,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $32 + global.set $34 i32.const 1 return end ;; $block_3 @@ -27077,7 +27210,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $32 + global.set $34 local.get $0 return end ;; $if_7 @@ -27085,10 +27218,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $32 + global.set $34 i32.const 0 return end ;; $if_2 @@ -27106,46 +27239,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -27154,7 +27300,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -27165,7 +27311,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $2 i32.const 0 @@ -27174,9 +27320,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 7300 + i32.const 8352 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -27184,22 +27330,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -27209,22 +27353,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 19480 + i32.load + local.tee $5 + i32.const 28968 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -27243,9 +27387,9 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -27257,7 +27401,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -27277,8 +27421,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -27287,12 +27432,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -27303,19 +27446,19 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $32 + global.set $34 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $32 + global.set $34 local.get $5 ) @@ -27326,12 +27469,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=8 local.set $4 @@ -27365,7 +27508,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $32 + global.set $34 local.get $2 i32.const 16 i32.add @@ -27378,7 +27521,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $32 + global.set $34 local.get $0 i32.const 16 i32.add @@ -27391,12 +27534,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $2 i32.const 32 i32.add @@ -27418,7 +27561,7 @@ i32.eqz if $if local.get $2 - global.set $32 + global.set $34 return end ;; $if local.get $2 @@ -27469,7 +27612,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $4) @@ -27483,9 +27626,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -27495,7 +27638,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $2 i32.const 0 @@ -27504,7 +27647,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 7300 + i32.const 8352 i32.store end ;; $if local.get $0 @@ -27515,17 +27658,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -27561,7 +27702,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -27571,28 +27712,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 19480 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 19480 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 28968 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 28968 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -27601,6 +27744,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -27610,20 +27765,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -27631,34 +27783,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 + local.get $3 i32.const 63 i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -27673,8 +27825,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -27683,28 +27836,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -27723,12 +27874,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4872 + i32.const 4848 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -27747,7 +27898,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $0 i32.const 0 @@ -27756,7 +27907,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 7300 + i32.const 8352 i32.store local.get $0 ) @@ -27772,12 +27923,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 block $block local.get $0 local.get $1 @@ -28071,17 +28222,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $1) @@ -28093,12 +28244,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -28107,7 +28258,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $4 i32.const 796 @@ -28119,7 +28270,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -28248,7 +28399,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 19480 + i32.const 28968 i32.store end ;; $if_4 local.get $2 @@ -28268,7 +28419,7 @@ local.get $0 i32.load local.tee $2 - i32.const 19480 + i32.const 28968 i32.eq if $if_6 local.get $0 @@ -28281,7 +28432,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $32 + global.set $34 return end ;; $block_3 local.get $1 @@ -28344,7 +28495,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 19352 + i32.const 28840 end ;; $if_8 br $block_7 end ;; $block_8 @@ -28398,7 +28549,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 19440 + i32.const 28928 end ;; $if_10 br $block_9 end ;; $block_10 @@ -28412,11 +28563,11 @@ br $block end ;; $block_0 local.get $4 - global.set $32 + global.set $34 return end ;; $block local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $1) @@ -28427,12 +28578,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -28441,7 +28592,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $3 i32.const 341 @@ -28453,7 +28604,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -28543,7 +28694,7 @@ i32.eqz if $if_2 local.get $3 - global.set $32 + global.set $34 return end ;; $if_2 local.get $0 @@ -28612,7 +28763,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $1) @@ -28622,12 +28773,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -28636,7 +28787,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $2 i32.const 1040 @@ -28648,7 +28799,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11774 + i32.const 15603 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -28669,7 +28820,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -28719,7 +28870,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $1) @@ -28731,12 +28882,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.eq @@ -28745,7 +28896,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $2 i32.const 1586 @@ -28757,7 +28908,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11808 + i32.const 15637 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -28769,7 +28920,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $1 @@ -28877,14 +29028,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $34 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $1) @@ -28903,7 +29054,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 7388 + i32.const 8440 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -28966,12 +29117,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 80 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 48 i32.add @@ -28985,7 +29136,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 601 @@ -28997,7 +29148,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12305 + i32.const 16134 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -29059,7 +29210,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 607 @@ -29071,7 +29222,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12339 + i32.const 16168 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -29114,7 +29265,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $3 i32.const 612 @@ -29126,7 +29277,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12383 + i32.const 16212 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -29218,7 +29369,7 @@ i32.ne if $if_5 local.get $3 - global.set $32 + global.set $34 return end ;; $if_5 local.get $1 @@ -29228,7 +29379,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $32 + global.set $34 return end ;; $if_6 local.get $0 @@ -29256,7 +29407,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $3) @@ -30169,12 +30320,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $3 @@ -30195,7 +30346,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $1 i32.const 495 @@ -30207,7 +30358,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12419 + i32.const 16248 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -30218,13 +30369,13 @@ i32.eqz if $if_1 local.get $1 - global.set $32 + global.set $34 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -30237,12 +30388,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 16 i32.add @@ -30273,7 +30424,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $32 + global.set $34 return end ;; $if block $block @@ -30395,12 +30546,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5680 + i32.const 6744 i64.const 24 local.get $3 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -30440,7 +30591,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $4) @@ -30460,7 +30611,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 7388 + i32.const 8440 i32.store offset=16 local.get $0 i32.const 0 @@ -30468,10 +30619,10 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 7276 + i32.const 8328 i32.load if $if_0 - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_0 local.get $0 @@ -30486,12 +30637,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5680 + i32.const 6744 i64.const 40 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -30517,7 +30668,7 @@ i32.load local.set $0 local.get $2 - i32.const 7388 + i32.const 8440 i32.store offset=16 local.get $2 local.get $0 @@ -30525,10 +30676,10 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 7276 + i32.const 8328 i32.load if $if_4 - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_4 local.get $2 @@ -30552,12 +30703,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 7 i32.le_u @@ -30566,7 +30717,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 765 @@ -30578,7 +30729,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12889 + i32.const 16718 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -30718,13 +30869,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $32 + global.set $34 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -30737,12 +30888,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 112 i32.add - global.set $32 + global.set $34 local.get $5 i32.const 48 i32.add @@ -30767,7 +30918,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $4 i32.const 672 @@ -30779,7 +30930,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12463 + i32.const 16292 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -30805,7 +30956,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $4 i32.const 678 @@ -30817,7 +30968,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12564 + i32.const 16393 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -30851,7 +31002,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $32 + global.set $34 return end ;; $if_3 i32.const 0 @@ -30891,7 +31042,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $32 + global.set $34 return end ;; $if_5 else @@ -30899,7 +31050,7 @@ i32.const 3 i32.store local.get $6 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $6 i32.const 878 @@ -30911,7 +31062,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 12620 + i32.const 16449 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -30943,7 +31094,7 @@ i32.const 3 i32.store local.get $5 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $5 i32.const 685 @@ -30955,7 +31106,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12660 + i32.const 16489 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -30991,7 +31142,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $1) @@ -31007,12 +31158,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 96 i32.add - global.set $32 + global.set $34 local.get $5 i32.const 72 i32.add @@ -31072,7 +31223,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 837 @@ -31084,7 +31235,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12782 + i32.const 16611 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -31100,12 +31251,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5680 + i32.const 6744 i64.const 16 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -31348,7 +31499,7 @@ local.get $6 i32.store local.get $5 - global.set $32 + global.set $34 return end ;; $if_11 local.get $11 @@ -31356,7 +31507,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 848 @@ -31368,7 +31519,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12847 + i32.const 16676 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -31390,7 +31541,7 @@ local.get $6 i32.store local.get $5 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -31401,12 +31552,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $1 i32.load offset=16 local.tee $6 @@ -31430,7 +31581,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $4 i32.const 713 @@ -31442,7 +31593,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12735 + i32.const 16564 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -31488,7 +31639,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $32 + global.set $34 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -31498,12 +31649,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $1 local.get $4 local.get $2 @@ -31519,7 +31670,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $32 + global.set $34 return end ;; $if local.get $1 @@ -31532,12 +31683,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5680 + i32.const 6744 i64.const 24 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -31597,7 +31748,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $32 + global.set $34 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $3) @@ -32187,12 +32338,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $4 local.get $1 i32.load @@ -32218,7 +32369,7 @@ i32.load if $if local.get $4 - global.set $32 + global.set $34 return end ;; $if local.get $0 @@ -32231,12 +32382,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5680 + i32.const 6744 i64.const 24 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -32288,7 +32439,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $32 + global.set $34 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $16) @@ -32709,12 +32860,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $3 i32.const 24 i32.add @@ -32727,7 +32878,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $2 i32.const 926 @@ -32739,7 +32890,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12942 + i32.const 16771 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -32755,7 +32906,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $3 i32.const 927 @@ -32767,7 +32918,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12977 + i32.const 16806 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -32790,7 +32941,7 @@ call $_memset drop local.get $3 - global.set $32 + global.set $34 local.get $0 return end ;; $if_1 @@ -32806,13 +32957,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5680 + i32.const 6744 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -32824,7 +32975,7 @@ call $_memset drop local.get $3 - global.set $32 + global.set $34 local.get $0 ) @@ -32838,12 +32989,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $2 i32.const 2 i32.shl @@ -32971,13 +33122,13 @@ local.get $0 if $if_4 local.get $4 - global.set $32 + global.set $34 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $1) @@ -32985,7 +33136,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 7636 + i32.const 8688 i32.store local.get $0 local.get $1 @@ -33010,13 +33161,13 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 7276 + i32.const 8328 i32.load i32.eqz if $if return end ;; $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -33067,17 +33218,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4936 + i32.const 4912 i64.const 24 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 109 + i32.const 174 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -33147,12 +33298,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 28 i32.add @@ -33174,7 +33325,7 @@ i32.eqz if $if local.get $1 - global.set $32 + global.set $34 return end ;; $if loop $loop @@ -33231,7 +33382,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -33246,12 +33397,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 i32.eqz @@ -33263,7 +33414,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $32 + global.set $34 return end ;; $if loop $loop @@ -33349,7 +33500,7 @@ i32.const 3 i32.store local.get $5 - i32.const 11424 + i32.const 15253 i32.store offset=4 local.get $5 i32.const 527 @@ -33361,7 +33512,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13014 + i32.const 16843 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -33568,7 +33719,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -33596,14 +33747,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 - i32.const 7636 + i32.const 8688 i32.store local.get $0 i32.load offset=4 @@ -33625,7 +33776,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11239 + i32.const 15066 i32.store offset=4 local.get $1 i32.const 150 @@ -33637,7 +33788,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12419 + i32.const 16248 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -33680,14 +33831,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $34 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -33719,19 +33870,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 13372 + i32.const 17201 i64.load align=1 i64.store align=1 local.get $1 - i32.const 13380 + i32.const 17209 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 13388 + i32.const 17217 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 13392 + i32.const 17221 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -33801,18 +33952,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4920 + i32.const 5008 + i32.const 4896 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -33829,12 +33980,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $6 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $6 i32.const 12 i32.add @@ -33899,12 +34050,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4856 + i32.const 4832 i64.const 32 local.get $4 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -33921,13 +34072,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 7548 + i32.const 8600 i32.store local.get $2 local.get $7 @@ -33946,11 +34097,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -33964,7 +34115,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) select local.set $3 local.get $5 @@ -33991,7 +34142,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 11735 + i32.const 15564 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -34008,11 +34159,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) br $block end ;; $if_0 i32.const -1 @@ -34108,12 +34259,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4856 + i32.const 4832 i64.const 32 local.get $5 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -34130,13 +34281,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 19480 + i32.const 28968 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 7548 + i32.const 8600 i32.store local.get $2 local.get $4 @@ -34155,11 +34306,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -34173,7 +34324,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) select local.set $3 local.get $10 @@ -34199,7 +34350,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 11735 + i32.const 15564 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -34216,11 +34367,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -34232,7 +34383,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -34251,7 +34402,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -34276,7 +34427,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $32 + global.set $34 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -37292,13 +37443,13 @@ i32.add local.tee $2 i32.load - i32.const 19480 + i32.const 28968 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 19480 + i32.const 28968 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -37309,12 +37460,12 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 19480 + i32.const 28968 i32.eq if $if_2 local.get $2 @@ -37362,7 +37513,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $1 local.get $0 i32.load offset=8 @@ -37382,7 +37533,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 19336 + i32.const 28824 i32.load local.get $0 select @@ -37396,12 +37547,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $3 @@ -37412,7 +37563,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11299 + i32.const 15128 i32.store offset=4 local.get $1 i32.const 1567 @@ -37424,20 +37575,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 13679 + i32.const 17508 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $34 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -37503,7 +37654,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -37511,7 +37662,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7388 + i32.const 8440 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -37563,7 +37714,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7388 + i32.const 8440 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -37628,19 +37779,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 13761 + i32.const 17590 i64.load align=1 i64.store align=1 local.get $1 - i32.const 13769 + i32.const 17598 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 13777 + i32.const 17606 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 13781 + i32.const 17610 i32.load8_s i32.store8 offset=20 local.get $1 @@ -37708,18 +37859,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5032 - i32.const 4968 + i32.const 5008 + i32.const 4944 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 13272 - i32.const 13313 + i32.const 17101 + i32.const 17142 i32.const 92 - i32.const 13362 + i32.const 17191 call $___assert_fail end ;; $if ) @@ -37782,7 +37933,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11700 + i32.const 15529 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -37794,7 +37945,7 @@ local.get $0 i32.load offset=8 else - i32.const 19480 + i32.const 28968 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -37844,7 +37995,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $2 i32.const 1 i32.and @@ -37863,7 +38014,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 19480 + i32.const 28968 local.get $0 i32.const 1 i32.and @@ -37892,7 +38043,7 @@ (func $__ZN6google8protobuf5ValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7388 + i32.const 8440 i32.store local.get $0 i32.const 0 @@ -37900,10 +38051,10 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7276 + i32.const 8328 i32.load if $if - i32.const 7276 + i32.const 8328 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if local.get $0 @@ -37918,12 +38069,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -37944,11 +38095,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $3 i32.load local.set $0 @@ -37959,7 +38110,7 @@ i32.eqz if $if local.get $3 - global.set $32 + global.set $34 return end ;; $if local.get $0 @@ -37968,7 +38119,7 @@ local.get $0 call $_free local.get $3 - global.set $32 + global.set $34 ) (func $_proxy_onCreate (type $1) @@ -37983,221 +38134,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 - local.set $5 - global.get $32 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $34 + local.set $6 + global.get $34 i32.const 32 i32.add - global.set $32 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $34 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 29004 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 29000 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 29016 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 29012 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 29004 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 29000 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 29008 + i32.load + i32.store + i32.const 29008 + local.get $4 + i32.store + local.get $11 + i32.const 29008 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 29000 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 29012 + i32.const 29012 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 19556 + i32.const 29044 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -38205,103 +38618,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8348 - i32.store - local.get $1 - i32.const 5512 - i32.const 80 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 + local.get $1 + i32.load offset=28 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) - local.get $5 + call_indirect $30 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 + call_indirect $30 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_10 + call_indirect $30 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -38339,71 +38737,71 @@ local.get $0 i32.store local.get $1 - i32.const 7876 + i32.const 8928 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 - local.get $0 + block $block_7 (result i32) local.get $0 - i32.load - i32.load offset=4 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $30 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 - global.set $32 + call_indirect $30 (type $0) + local.get $6 + global.set $34 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -38413,20 +38811,20 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 - global.set $32 + call_indirect $30 (type $0) + local.get $6 + global.set $34 ) (func $_proxy_onDelete (type $0) @@ -38434,12 +38832,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 call $__Z10getContextj local.tee $2 @@ -38448,18 +38846,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $32 + global.set $34 ) (func $_proxy_onDone (type $0) @@ -38473,11 +38871,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -38489,12 +38887,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -38519,9 +38917,9 @@ local.get $7 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) + call_indirect $30 (type $5) local.get $5 i32.load local.set $0 @@ -38532,7 +38930,7 @@ i32.eqz if $if local.get $5 - global.set $32 + global.set $34 return end ;; $if local.get $0 @@ -38541,7 +38939,7 @@ local.get $0 call $_free local.get $5 - global.set $32 + global.set $34 ) (func $_proxy_onGrpcCreateInitialMetadata (type $1) @@ -38557,11 +38955,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $_proxy_onGrpcReceive (type $5) @@ -38572,12 +38970,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -38601,9 +38999,9 @@ local.get $6 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) + call_indirect $30 (type $6) local.get $4 i32.load local.set $0 @@ -38614,7 +39012,7 @@ i32.eqz if $if local.get $4 - global.set $32 + global.set $34 return end ;; $if local.get $0 @@ -38623,7 +39021,7 @@ local.get $0 call $_free local.get $4 - global.set $32 + global.set $34 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $1) @@ -38639,11 +39037,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $1) @@ -38659,11 +39057,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $_proxy_onHttpCallResponse (type $18) @@ -38680,12 +39078,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $34 local.set $8 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $8 i32.const 8 i32.add @@ -38741,9 +39139,9 @@ local.get $12 i32.const 7 i32.and - i32.const 516 + i32.const 772 i32.add - call_indirect $28 (type $7) + call_indirect $30 (type $7) local.get $8 i32.load local.set $0 @@ -38782,7 +39180,7 @@ i32.eqz if $if_1 local.get $8 - global.set $32 + global.set $34 return end ;; $if_1 local.get $0 @@ -38791,7 +39189,7 @@ local.get $0 call $_free local.get $8 - global.set $32 + global.set $34 ) (func $_proxy_onLog (type $0) @@ -38807,11 +39205,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $_proxy_onQueueReady (type $1) @@ -38827,11 +39225,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $_proxy_onRequestBody (type $3) @@ -38856,7 +39254,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) ) (func $_proxy_onRequestHeaders (type $2) @@ -38873,7 +39271,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onRequestMetadata (type $2) @@ -38890,7 +39288,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onRequestTrailers (type $2) @@ -38907,7 +39305,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onResponseBody (type $3) @@ -38932,7 +39330,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) ) (func $_proxy_onResponseHeaders (type $2) @@ -38949,7 +39347,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onResponseMetadata (type $2) @@ -38966,7 +39364,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onResponseTrailers (type $2) @@ -38983,7 +39381,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $_proxy_onStart (type $7) @@ -39002,29 +39400,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $32 - local.set $7 - global.get $32 + global.get $34 + local.set $6 + global.get $34 i32.const 32 i32.add - global.set $32 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $34 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -39034,27 +39427,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 19516 + i32.const 29004 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 19512 + i32.const 29000 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -39073,7 +39466,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -39087,7 +39480,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -39095,16 +39488,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -39125,7 +39518,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -39134,22 +39527,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -39174,11 +39567,11 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $0 br $block end ;; $block_0 - i32.const 19552 + i32.const 29040 i32.load i32.eqz if $if_7 @@ -39217,7 +39610,7 @@ local.get $0 i32.store local.get $5 - i32.const 7804 + i32.const 8856 i32.store local.get $5 i32.const 68 @@ -39252,12 +39645,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -39269,7 +39662,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -39315,10 +39708,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -39332,20 +39725,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -39360,19 +39753,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -39382,12 +39775,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -39396,7 +39789,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -39406,53 +39799,36 @@ i32.add i32.const 0 i32.store8 - i32.const 19552 + i32.const 29040 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 8348 - i32.store - local.get $2 - i32.const 5512 - i32.const 80 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 + i32.load offset=28 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) - local.get $11 + call_indirect $30 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -39462,22 +39838,22 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -39487,40 +39863,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $30 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_17 + call_indirect $30 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -39559,7 +39935,7 @@ local.get $0 i32.store local.get $2 - i32.const 7804 + i32.const 8856 i32.store local.get $2 i32.const 68 @@ -39573,15 +39949,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -39594,12 +39970,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -39607,11 +39983,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -39657,10 +40033,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -39669,29 +40045,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_20 + call_indirect $30 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -39705,35 +40081,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $12 + call_indirect $30 (type $1) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $32 + local.get $6 + global.set $34 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -39744,8 +40120,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $32 + local.get $6 + global.set $34 ) (func $_proxy_onTick (type $0) @@ -39759,11 +40135,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZL14getRootContextj (type $2) @@ -39774,7 +40150,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 19516 + i32.const 29004 i32.load local.tee $1 i32.eqz @@ -39782,7 +40158,7 @@ i32.const 0 return end ;; $if - i32.const 19512 + i32.const 29000 i32.load local.get $1 local.get $1 @@ -39917,7 +40293,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) i32.eqz if $if_11 i32.const 0 @@ -39933,7 +40309,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $2) @@ -39950,7 +40326,7 @@ local.get $0 i32.load local.set $4 - i32.const 19516 + i32.const 29004 i32.load local.tee $2 i32.eqz @@ -39959,7 +40335,7 @@ i32.const 0 local.set $0 else - i32.const 19512 + i32.const 29000 i32.load local.get $2 local.get $2 @@ -40098,13 +40474,13 @@ i32.const 0 i32.store local.get $6 - i32.const 19528 + i32.const 29016 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 19524 + i32.const 29012 i32.load i32.const 1 i32.add @@ -40164,7 +40540,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 19516 + i32.const 29004 i32.load local.tee $1 i32.const -1 @@ -40201,7 +40577,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 19512 + i32.const 29000 i32.load local.get $0 i32.const 2 @@ -40218,14 +40594,14 @@ br $block_4 else local.get $3 - i32.const 19520 + i32.const 29008 i32.load i32.store - i32.const 19520 + i32.const 29008 local.get $3 i32.store local.get $2 - i32.const 19520 + i32.const 29008 i32.store local.get $3 i32.load @@ -40234,7 +40610,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 19512 + i32.const 29000 i32.load local.get $1 local.get $1 @@ -40276,8 +40652,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 19524 - i32.const 19524 + i32.const 29012 + i32.const 29012 i32.load i32.const 1 i32.add @@ -40853,7 +41229,7 @@ i32.xor local.set $6 block $block_3 - i32.const 19536 + i32.const 29024 i32.load local.tee $2 i32.eqz @@ -40862,7 +41238,7 @@ i32.const 0 local.set $5 else - i32.const 19532 + i32.const 29020 i32.load local.get $2 local.get $2 @@ -41210,13 +41586,13 @@ i32.const 0 i32.store local.get $12 - i32.const 19548 + i32.const 29036 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 19544 + i32.const 29032 i32.load i32.const 1 i32.add @@ -41276,7 +41652,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 19536 + i32.const 29024 i32.load local.tee $0 i32.const -1 @@ -41313,7 +41689,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 19532 + i32.const 29020 i32.load local.get $5 i32.const 2 @@ -41332,14 +41708,14 @@ br $block_13 else local.get $4 - i32.const 19540 + i32.const 29028 i32.load i32.store - i32.const 19540 + i32.const 29028 local.get $4 i32.store local.get $2 - i32.const 19540 + i32.const 29028 i32.store local.get $4 i32.load @@ -41348,7 +41724,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 19532 + i32.const 29020 i32.load local.get $0 local.get $0 @@ -41390,8 +41766,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 19544 - i32.const 19544 + i32.const 29032 + i32.const 29032 i32.load i32.const 1 i32.add @@ -41431,7 +41807,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 19536 + i32.const 29024 i32.load local.tee $0 i32.gt_u @@ -41457,10 +41833,10 @@ i32.gt_u i32.and local.set $3 - i32.const 19544 + i32.const 29032 i32.load f32.convert_i32_u - i32.const 19548 + i32.const 29036 f32.load f32.div f32.ceil @@ -41542,10 +41918,10 @@ local.get $0 i32.eqz if $if - i32.const 19532 + i32.const 29020 i32.load local.set $0 - i32.const 19532 + i32.const 29020 i32.const 0 i32.store local.get $0 @@ -41553,7 +41929,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 19536 + i32.const 29024 i32.const 0 i32.store return @@ -41567,11 +41943,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 8472 + i32.const 12512 i32.store local.get $1 - i32.const 5608 - i32.const 87 + i32.const 6664 + i32.const 152 call $___cxa_throw end ;; $if_1 local.get $0 @@ -41579,10 +41955,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 19532 + i32.const 29020 i32.load local.set $1 - i32.const 19532 + i32.const 29020 local.get $2 i32.store local.get $1 @@ -41590,13 +41966,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 19536 + i32.const 29024 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 19532 + i32.const 29020 i32.load local.get $1 i32.const 2 @@ -41612,7 +41988,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 19540 + i32.const 29028 i32.load local.tee $6 i32.eqz @@ -41622,7 +41998,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 19532 + i32.const 29020 i32.load local.get $0 local.get $0 @@ -41657,7 +42033,7 @@ i32.const 2 i32.shl i32.add - i32.const 19540 + i32.const 29028 i32.store local.get $6 i32.load @@ -41699,7 +42075,7 @@ local.get $4 else block $block (result i32) - i32.const 19532 + i32.const 29020 i32.load local.get $8 i32.const 2 @@ -41927,7 +42303,7 @@ i32.load i32.store local.get $1 - i32.const 19532 + i32.const 29020 i32.load local.get $8 i32.const 2 @@ -41936,7 +42312,7 @@ i32.load i32.load i32.store - i32.const 19532 + i32.const 29020 i32.load local.get $8 i32.const 2 @@ -41984,7 +42360,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 19516 + i32.const 29004 i32.load local.tee $0 i32.gt_u @@ -42010,10 +42386,10 @@ i32.gt_u i32.and local.set $3 - i32.const 19524 + i32.const 29012 i32.load f32.convert_i32_u - i32.const 19528 + i32.const 29016 f32.load f32.div f32.ceil @@ -42089,10 +42465,10 @@ local.get $0 i32.eqz if $if - i32.const 19512 + i32.const 29000 i32.load local.set $0 - i32.const 19512 + i32.const 29000 i32.const 0 i32.store local.get $0 @@ -42100,7 +42476,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 19516 + i32.const 29004 i32.const 0 i32.store return @@ -42114,11 +42490,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 8472 + i32.const 12512 i32.store local.get $1 - i32.const 5608 - i32.const 87 + i32.const 6664 + i32.const 152 call $___cxa_throw end ;; $if_1 local.get $0 @@ -42126,10 +42502,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 19512 + i32.const 29000 i32.load local.set $1 - i32.const 19512 + i32.const 29000 local.get $2 i32.store local.get $1 @@ -42137,13 +42513,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 19516 + i32.const 29004 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 19512 + i32.const 29000 i32.load local.get $1 i32.const 2 @@ -42159,7 +42535,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 19520 + i32.const 29008 i32.load local.tee $4 i32.eqz @@ -42169,7 +42545,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 19512 + i32.const 29000 i32.load local.get $0 local.get $0 @@ -42204,7 +42580,7 @@ i32.const 2 i32.shl i32.add - i32.const 19520 + i32.const 29008 i32.store local.get $4 i32.load @@ -42231,7 +42607,7 @@ local.get $0 else block $block (result i32) - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42290,7 +42666,7 @@ i32.load i32.store local.get $1 - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42299,7 +42675,7 @@ i32.load i32.load i32.store - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42346,7 +42722,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42405,7 +42781,7 @@ i32.load i32.store local.get $2 - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42414,7 +42790,7 @@ i32.load i32.load i32.store - i32.const 19512 + i32.const 29000 i32.load local.get $3 i32.const 2 @@ -42439,7 +42815,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 7804 + i32.const 8856 i32.store local.get $0 i32.load offset=148 @@ -42448,30 +42824,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -42495,30 +42871,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -42542,46 +42918,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 127 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_9 + call_indirect $30 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -42591,59 +42950,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 127 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $30 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -42651,19 +42993,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -42699,19 +43041,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $32 - local.set $6 - global.get $32 + global.get $34 + local.set $8 + global.get $34 i32.const 16 i32.add - global.set $32 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $34 block $block local.get $0 i32.load offset=84 @@ -42719,10 +43054,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -42730,7 +43062,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -42752,55 +43084,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -42808,13 +43140,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -42834,272 +43166,585 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $34 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8348 - i32.store - local.get $1 - i32.const 5512 - i32.const 80 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) - local.get $6 + call_indirect $30 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 - i32.load - local.set $0 - local.get $8 - i32.const 0 - i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $32 - return - end ;; $block - local.get $6 - global.set $32 - ) - - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=124 - local.tee $2 - if $if + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block local.get $0 - i32.load offset=120 - local.get $2 - local.get $2 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 i32.const -1 i32.add - local.tee $4 + local.tee $7 i32.and i32.eqz local.tee $6 - if $if_0 (result i32) + if $if_11 (result i32) local.get $1 - local.get $4 + local.get $7 i32.and else - local.get $2 + local.get $5 local.get $1 i32.gt_u - if $if_1 (result i32) + if $if_12 (result i32) local.get $1 else - local.get $2 - if $if_2 (result i32) + local.get $5 + if $if_13 (result i32) local.get $1 - local.get $2 + local.get $5 i32.rem_u else i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block - block $block_0 - local.get $6 - if $if_5 - loop $loop - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $6 - if $if_6 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_6 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block - unreachable - end ;; $loop - unreachable + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 else - loop $loop_0 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) local.get $4 - local.get $2 - i32.ge_u - if $if_8 (result i32) - local.get $2 - if $if_9 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 local.get $5 - i32.ne - br_if $block - end ;; $if_7 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_0 - local.get $3 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 - local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $34 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) local.get $1 - i32.const 127 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $30 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $34 + return + end ;; $block + local.get $8 + global.set $34 + ) + + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=124 + local.tee $2 + if $if + local.get $0 + i32.load offset=120 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $2 + if $if_2 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_3 + local.get $3 + i32.load + local.tee $3 + if $if_4 + block $block + block $block_0 + local.get $6 + if $if_5 + loop $loop + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $6 + if $if_6 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_6 + local.get $3 + i32.load + local.tee $3 + br_if $loop + br $block + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_7 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_8 (result i32) + local.get $2 + if $if_9 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $4 + end ;; $if_8 + local.get $5 + i32.ne + br_if $block + end ;; $if_7 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_0 + local.get $3 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) return end ;; $block end ;; $if_4 @@ -43242,11 +43887,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $1) @@ -43393,11 +44038,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $1) @@ -43544,11 +44189,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -43564,68 +44209,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $32 - local.set $6 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $6 + global.get $34 + local.set $8 + global.get $34 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $34 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -43638,24 +44274,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -43676,7 +44312,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -43685,22 +44321,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -43717,197 +44353,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8348 - i32.store - local.get $1 - i32.const 5512 - i32.const 80 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $8 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) - local.get $7 + call_indirect $30 (type $6) + local.get $6 i32.load - local.set $0 - local.get $7 + local.set $1 + local.get $6 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $6 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $8 - local.get $0 - i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $3 - if $if_15 (result i32) - local.get $1 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $7 local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_16 - local.get $5 - i32.load - local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $3 - i32.eq - local.tee $9 - local.get $3 - local.get $4 - i32.and - local.get $10 - i32.eq - i32.or - i32.eqz - br_if $block_2 - local.get $9 - if $if_19 - local.get $1 - local.get $5 - i32.load offset=8 - i32.eq - br_if $block_3 - end ;; $if_19 - local.get $5 + local.get $3 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $34 + return + end ;; $block_2 + local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $30 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $6 + local.get $0 + i32.const 120 + i32.add + local.set $7 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $7 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $11 + if $if_38 (result i32) + local.get $1 + local.get $3 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) + local.get $1 + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + if $if_41 + local.get $5 + i32.load + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $11 + local.get $3 + local.get $4 + i32.and + local.get $9 + i32.eq + i32.or + i32.eqz + br_if $block_6 + local.get $11 + if $if_44 + local.get $1 + local.get $5 + i32.load offset=8 + i32.eq + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -43916,82 +44863,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $7 + call_indirect $30 (type $1) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI21GrpcStreamHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -44005,82 +44952,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $32 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $34 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -44089,44 +45036,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $6 + call_indirect $30 (type $1) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI21GrpcStreamHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $32 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI21GrpcStreamHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $34 return end ;; $block - local.get $6 - global.set $32 + local.get $8 + global.set $34 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -44143,17 +45090,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $32 + global.get $34 local.set $8 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $8 + global.get $34 i32.const 16 i32.add - local.set $10 + global.set $34 local.get $8 i32.const 8 i32.add @@ -44161,31 +45103,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -44209,42 +45147,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -44253,39 +45191,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -44296,59 +45234,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8348 - i32.store - local.get $1 - i32.const 5512 - i32.const 80 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) + call_indirect $30 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $34 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $30 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -44361,133 +45610,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -44495,12 +45744,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -44508,9 +45757,9 @@ local.get $1 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) + call_indirect $30 (type $6) local.get $7 i32.load local.set $0 @@ -44518,58 +45767,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI21GrpcStreamHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -44582,82 +45831,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $32 + global.set $34 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -44689,378 +45938,11 @@ local.get $0 call $_free local.get $8 - global.set $32 - return - end ;; $block - local.get $8 - global.set $32 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 + global.set $34 return end ;; $block local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $34 ) (func $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $6) @@ -45073,12 +45955,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=8 local.set $3 @@ -45107,9 +45989,9 @@ local.get $7 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) + call_indirect $30 (type $6) local.get $5 i32.load local.set $1 @@ -45247,7 +46129,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $32 + global.set $34 return end ;; $block_0 local.get $0 @@ -45264,11 +46146,11 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI21GrpcStreamHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $32 + global.set $34 return end ;; $block local.get $5 - global.set $32 + global.set $34 ) (func $__Z10getContextj (type $2) @@ -45279,7 +46161,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 19516 + i32.const 29004 i32.load local.tee $1 i32.eqz @@ -45287,7 +46169,7 @@ i32.const 0 return end ;; $if - i32.const 19512 + i32.const 29000 i32.load local.get $1 local.get $1 @@ -45422,7 +46304,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) i32.eqz if $if_11 i32.const 0 @@ -45438,7 +46320,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -45454,14 +46336,14 @@ local.get $0 i32.load local.set $3 - i32.const 19516 + i32.const 29004 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 19512 + i32.const 29000 i32.load local.tee $4 local.get $2 @@ -45629,7 +46511,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 19520 + i32.const 29008 i32.eq br_if $block_2 local.get $3 @@ -45739,7 +46621,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 19512 + i32.const 29000 i32.load local.get $2 i32.const 2 @@ -45759,8 +46641,8 @@ local.get $8 i32.const 0 i32.store - i32.const 19524 - i32.const 19524 + i32.const 29012 + i32.const 29012 i32.load i32.const -1 i32.add @@ -45782,454 +46664,113 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $1) + (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 19516 + (local $9 i32) + global.get $34 + local.set $8 + global.get $34 + i32.const 16 + i32.add + global.set $34 + i32.const 29040 + i32.load + i32.eqz + if $if + i32.const 20 + call $__Znwm + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i64.const 0 + i64.store offset=8 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=16 + i32.const 29040 + local.get $3 + i32.store + i32.const 20 + call $__Znwm + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i64.const 0 + i64.store offset=8 align=4 + local.get $3 + i32.const 1065353216 + i32.store offset=16 + i32.const 29044 + local.get $3 + i32.store + end ;; $if + local.get $8 + local.set $3 + local.get $0 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz + if $if_0 + i32.const 29044 i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 19512 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 + local.set $6 + local.get $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block + block $block_0 + local.get $4 + i32.const 11 i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 19528 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 19524 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 19516 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 19512 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 19520 - i32.load - i32.store - i32.const 19520 - local.get $1 - i32.store - i32.const 19512 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 19520 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 19512 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 19524 - i32.const 19524 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $32 - local.set $4 - global.get $32 - i32.const 48 - i32.add - global.set $32 - i32.const 19552 - i32.load - i32.eqz - if $if - i32.const 20 - call $__Znwm - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i64.const 0 - i64.store offset=8 align=4 - local.get $3 - i32.const 1065353216 - i32.store offset=16 - i32.const 19552 - local.get $3 - i32.store - i32.const 20 - call $__Znwm - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i64.const 0 - i64.store offset=8 align=4 - local.get $3 - i32.const 1065353216 - i32.store offset=16 - i32.const 19556 - local.get $3 - i32.store - end ;; $if - local.get $4 - i32.const 24 - i32.add - local.set $3 - local.get $0 - i32.load offset=16 - if $if_0 - i32.const 19556 - i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $6 - local.get $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 - local.get $6 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 - block $block - block $block_0 - local.get $6 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 - if $if_3 (result i32) - local.get $3 - local.set $5 - br $block_0 + if $if_2 (result i32) + local.get $3 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $3 + local.set $5 + br $block_0 else local.get $3 end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -46244,7 +46785,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -46252,127 +46793,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 127 - i32.and - call_indirect $28 (type $2) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 127 + i32.and + call_indirect $30 (type $2) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 127 + local.get $5 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $30 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $32 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $34 return - end ;; $if_9 - i32.const 19552 + end ;; $if_7 + i32.const 29040 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -46380,31 +46887,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -46412,12 +46921,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -46425,12 +46934,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -46442,97 +46951,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 + local.get $1 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 local.set $5 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 127 - i32.and - call_indirect $28 (type $2) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 127 + i32.and + call_indirect $30 (type $2) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $30 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $32 + end ;; $if_13 + local.get $8 + global.set $34 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) @@ -47018,7 +47501,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -47035,8 +47518,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 6912 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -47234,345 +47720,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $32 - local.set $4 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $32 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $32 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $32 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $32 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -47585,794 +47745,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 8472 - i32.store - local.get $2 - i32.const 5608 - i32.const 87 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 6 + i32.store offset=28 + local.get $5 + i32.const 6912 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 7956 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 7956 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $2) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 - local.set $1 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 17 - i32.store - i32.const 19560 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 19564 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 7956 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 5000 - i32.const 75 - call $___cxa_throw - else local.get $1 - global.set $32 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 19564 - local.get $0 - i32.store - i32.const 111 - i32.const 18 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 31 - i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $4 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $32 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 8088 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $32 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 19564 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 19564 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 31 i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 16 - i32.add - global.set $32 - i32.const 19472 - i32.load8_s i32.eqz - if $if - i32.const 19472 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 19472 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 19568 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 19568 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $32 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) (param $0 i32) (param $1 i32) (local $2 i32) @@ -48383,269 +48571,439 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 12512 + i32.store + local.get $2 + i32.const 6664 + i32.const 152 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 8472 - i32.store - local.get $3 - i32.const 5608 - i32.const 87 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 + i32.const -1 i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 17192 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 14696 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $4) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 14699 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) - (param $0 i32) + i32.const 9008 + i32.store local.get $0 i32.load8_s offset=23 i32.const 0 @@ -48658,1611 +49016,2246 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $32 - local.set $0 - global.get $32 - i32.const 16 - i32.add - global.set $32 - i32.const 19572 - i64.const 0 - i64.store align=4 - i32.const 19580 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 20321 + i32.const 9008 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 19588 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 20321 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $2) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 19604 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $32 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $34 + local.set $1 + global.get $34 i32.const 16 i32.add - global.set $32 - local.get $0 + global.set $34 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $32 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 17 + i32.store + i32.const 29048 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 29052 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $32 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $3) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $32 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 9008 i32.store + local.get $1 local.get $3 - i32.const 14703 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 14728 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4976 + i32.const 71 + call $___cxa_throw + else + local.get $1 + global.set $34 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 29052 local.get $0 - i32.load offset=40 - i32.const 127 - i32.and - call_indirect $28 (type $2) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 176 + i32.const 18 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 31 + i32.and + i32.const 216 i32.add - i32.store offset=8 - local.get $3 - global.set $32 - local.get $2 + call_indirect $30 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 16 + i32.add + global.set $34 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $34 + return + end ;; $if + i32.const 9144 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $34 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 29052 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 29052 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 31 + i32.and + i32.const 216 i32.add - i32.store offset=28 + call_indirect $30 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + i32.const 28960 + i32.load8_s + i32.eqz + if $if + i32.const 28960 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 29056 + local.get $2 + i32.store + i32.const 28960 + i32.const 0 + i32.store + i32.const 28960 + i32.const 28960 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 29056 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 local.get $0 - i32.load offset=24 - local.set $3 - local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 + local.get $0 local.get $3 - i32.sub - local.get $4 + i64.load + i64.store align=4 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 8 i32.add i32.store offset=4 - local.get $0 - local.get $0 - i32.load + else local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $2 - i32.load offset=4 - i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 - local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $34 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 5016 - i64.load + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $0 - i64.load offset=16 - i64.eq + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 5024 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 5016 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 12512 + i32.store + local.get $3 + i32.const 6664 + i32.const 152 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 5016 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 5024 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 5016 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 5016 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 127 - i32.and - call_indirect $28 (type $2) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 5016 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 5024 - local.get $3 - i32.store - i32.const 5016 - local.get $0 - i64.load offset=16 - i64.store local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 - i32.store offset=4 - local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 5016 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 5024 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 5016 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block - end ;; $if + global.get $34 + local.set $2 + global.get $34 + i32.const 144 + i32.add + global.set $34 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 21019 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=24 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $34 local.get $0 - i32.load offset=20 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 144 + i32.add + global.set $34 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.store + local.get $2 + i32.const 128 + i32.const 18525 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $34 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 5016 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 5024 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 5016 - i32.eq - br_if $block - drop - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $34 + local.set $2 + global.get $34 + i32.const 144 + i32.add + global.set $34 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_1 + i32.store + local.get $2 + i32.const 128 + i32.const 18528 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $34 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_2 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $1) + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) (param $0 i32) - (param $1 i32) - (local $2 i32) - i32.const 5016 - i64.load local.get $0 - i64.load offset=16 - i64.eq + i32.load8_s offset=23 + i32.const 0 + i32.ge_s if $if - i32.const 5024 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 5016 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E - return - end ;; $block + return end ;; $if - local.get $2 - i32.load offset=28 - local.tee $0 - local.get $2 - i32.load offset=32 - i32.eq - if $if_1 - local.get $2 - local.get $1 - i32.const 92 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 92 - i32.store offset=4 - local.get $2 - local.get $0 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_1 + local.get $0 + i32.load offset=12 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $1) + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $34 + local.set $0 + global.get $34 + i32.const 16 + i32.add + global.set $34 + i32.const 29060 + i64.const 0 + i64.store align=4 + i32.const 29068 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 29814 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 29076 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 29814 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 29092 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $34 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) (param $0 i32) (param $1 i32) - (local $2 i32) - i32.const 5016 - i64.load + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 local.get $0 - i64.load offset=16 - i64.eq + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz if $if - i32.const 5024 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 + local.get $5 + global.set $34 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 if $if_0 local.get $2 i32.load offset=4 - i32.const 5016 - i32.eq - br_if $block + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 11 + i32.add + local.set $0 + br $block_0 end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=28 - local.tee $0 - local.get $2 - i32.load offset=32 - i32.eq - if $if_1 - local.get $2 + br $block + end ;; $block_0 + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $34 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 - i32.const 92 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select else local.get $0 - local.get $1 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 + local.get $3 + i32.const 3 i32.store - local.get $0 - i32.const 92 + local.get $3 + i32.const 18532 i32.store offset=4 - local.get $2 - local.get $0 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_1 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 18557 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 + local.get $0 + i32.load offset=40 + i32.const 127 + i32.and + call_indirect $30 (type $2) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $0 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $34 + local.get $2 ) - (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $16) + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (result i32) + (local $3 i32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i64) - (local $19 i64) - global.get $32 - local.set $6 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $6 - local.get $4 - i32.store - local.get $6 - local.get $3 - i32.const 1 - i32.and - local.tee $14 - i32.store8 offset=4 - local.get $2 - i32.const 0 - i32.le_s - if $if - local.get $6 - i32.load - local.set $0 - local.get $6 - global.set $32 - local.get $0 - return - end ;; $if - local.get $6 - i32.const 32 - i32.add - local.set $11 - local.get $6 - i32.const 8 - i32.add - local.set $12 + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 loop $loop - local.get $0 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - local.tee $3 - i32.load - i32.add - local.set $7 - block $block + block $block (result i32) block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - block $block_16 - block $block_17 - block $block_18 - block $block_19 - block $block_20 - block $block_21 - block $block_22 - block $block_23 - block $block_24 - block $block_25 - block $block_26 - block $block_27 - block $block_28 - block $block_29 - block $block_30 - block $block_31 - block $block_32 - block $block_33 - block $block_34 - block $block_35 - block $block_36 - block $block_37 - block $block_38 - block $block_39 - block $block_40 - block $block_41 - block $block_42 - block $block_43 - block $block_44 - block $block_45 - block $block_46 - block $block_47 - block $block_48 - block $block_49 - block $block_50 - block $block_51 - block $block_52 - block $block_53 - block $block_54 - block $block_55 - block $block_56 - block $block_57 - block $block_58 - block $block_59 - block $block_60 - block $block_61 - block $block_62 - block $block_63 - block $block_64 - block $block_65 - block $block_66 - block $block_67 - block $block_68 - block $block_69 - block $block_70 - block $block_71 - block $block_72 - block $block_73 - block $block_74 - block $block_75 - block $block_76 - block $block_77 - block $block_78 - block $block_79 - block $block_80 - block $block_81 - block $block_82 - block $block_83 - block $block_84 - block $block_85 - block $block_86 - block $block_87 - block $block_88 - block $block_89 - block $block_90 - block $block_91 - block $block_92 - block $block_93 - block $block_94 - block $block_95 - block $block_96 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=12 - local.tee $4 - br_table - $block_96 $block_91 $block_86 $block_81 $block_76 $block_71 $block_66 $block_61 $block_56 $block_51 $block_46 $block_41 $block_36 $block_31 $block_26 $block_21 - $block_16 $block_11 $block_0 $block_0 $block_6 $block_95 $block_90 $block_85 $block_80 $block_75 $block_70 $block_65 $block_60 $block_55 $block_50 $block_45 - $block_40 $block_35 $block_30 $block_25 $block_20 $block_15 $block_10 $block_0 $block_0 $block_5 $block_94 $block_89 $block_84 $block_79 $block_74 $block_69 - $block_64 $block_59 $block_54 $block_49 $block_44 $block_39 $block_34 $block_29 $block_24 $block_19 $block_14 $block_9 $block_0 $block_0 $block_4 $block_93 - $block_88 $block_83 $block_78 $block_73 $block_68 $block_63 $block_58 $block_53 $block_48 $block_43 $block_38 $block_33 $block_28 $block_23 $block_18 $block_13 - $block_8 $block_0 $block_0 $block_3 $block_92 $block_87 $block_82 $block_77 $block_72 $block_67 $block_62 $block_57 $block_52 $block_47 $block_42 $block_37 - $block_32 $block_27 $block_22 $block_17 $block_12 $block_7 $block_0 $block_0 $block_2 $block_1 - $block_0 ;; default - end ;; $block_96 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=8 - local.tee $3 - i32.const 5 - i32.shr_u - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.load - i32.const 1 - local.get $3 - i32.const 31 - i32.and - i32.shl - i32.and - if $if_0 - local.get $6 - i32.load - local.set $4 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=4 - local.tee $3 - i32.const 127 - i32.gt_u - if $if_1 - loop $loop_0 (result i32) - local.get $4 - local.get $3 - i32.const 128 - i32.or - i32.store8 - local.get $3 - i32.const 7 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $3 - i32.const 16383 - i32.gt_u - if $if_2 (result i32) - local.get $5 - local.set $3 - br $loop_0 - else - local.get $5 - end ;; $if_2 - end ;; $loop_0 - local.set $3 - end ;; $if_1 - local.get $4 - local.get $3 - i32.store8 - local.get $4 - local.get $7 - i64.load - i64.store offset=1 align=1 - local.get $6 - local.get $4 - i32.const 9 - i32.add - i32.store - end ;; $if_0 - br $block - end ;; $block_95 - local.get $7 - f64.load - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_3 - local.get $6 - i32.load - local.set $4 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=4 - local.tee $3 - i32.const 127 - i32.gt_u - if $if_4 - loop $loop_1 (result i32) - local.get $4 - local.get $3 - i32.const 128 - i32.or - i32.store8 - local.get $3 - i32.const 7 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $3 - i32.const 16383 - i32.gt_u - if $if_5 (result i32) - local.get $5 - local.set $3 - br $loop_1 - else - local.get $5 - end ;; $if_5 - end ;; $loop_1 - local.set $3 - end ;; $if_4 - local.get $4 - local.get $3 - i32.store8 - local.get $4 - local.get $7 - i64.load - i64.store offset=1 align=1 - local.get $6 - local.get $4 - i32.const 9 - i32.add - i32.store - end ;; $if_3 - br $block - end ;; $block_94 - local.get $7 - i32.load - i32.const 0 - i32.gt_s - if $if_6 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - local.set $10 - i32.const 0 - local.set $9 - local.get $6 - i32.load - local.set $3 - loop $loop_2 - local.get $10 - i32.load offset=4 - local.tee $4 - i32.const 127 - i32.gt_u - if $if_7 - loop $loop_3 (result i32) - local.get $3 - local.get $4 - i32.const 128 - i32.or - i32.store8 - local.get $4 - i32.const 7 - i32.shr_u - local.set $5 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 16383 - i32.gt_u - if $if_8 (result i32) - local.get $5 - local.set $4 - br $loop_3 - else - local.get $5 - end ;; $if_8 - end ;; $loop_3 - local.set $4 - end ;; $if_7 - local.get $3 - local.get $4 - i32.store8 - local.get $3 - local.get $7 - i32.load offset=8 - i32.const 8 - i32.add - local.get $9 - i32.const 3 - i32.shl - i32.add - i64.load - i64.store offset=1 align=1 - local.get $6 - local.get $3 - i32.const 9 - i32.add - local.tee $3 - i32.store - local.get $9 - i32.const 1 - i32.add - local.tee $9 - local.get $7 - i32.load - i32.lt_s - br_if $loop_2 - end ;; $loop_2 - end ;; $if_6 - br $block - end ;; $block_93 - local.get $7 - i32.load - if $if_9 - local.get $6 - i32.load - local.set $4 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=4 - local.tee $3 - i32.const 127 - i32.gt_u - if $if_10 - loop $loop_4 (result i32) - local.get $4 - local.get $3 - i32.const 128 - i32.or - i32.store8 - local.get $3 - i32.const 7 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $3 - i32.const 16383 - i32.gt_u - if $if_11 (result i32) - local.get $5 - local.set $3 - br $loop_4 - else - local.get $5 - end ;; $if_11 - end ;; $loop_4 - local.set $3 - end ;; $if_10 - local.get $4 - local.get $3 - i32.store8 - local.get $6 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.store - local.get $7 - i32.load offset=12 - local.tee $3 - i32.const 127 - i32.gt_u - if $if_12 - loop $loop_5 (result i32) - local.get $4 - local.get $3 - i32.const 128 - i32.or - i32.store8 - local.get $3 - i32.const 7 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $3 - i32.const 16383 - i32.gt_u - if $if_13 (result i32) - local.get $5 - local.set $3 - br $loop_5 - else - local.get $5 - end ;; $if_13 - end ;; $loop_5 - local.set $3 - end ;; $if_12 - local.get $4 - local.get $3 - i32.store8 - local.get $6 - local.get $4 - i32.const 1 - i32.add - local.tee $3 - i32.store - local.get $7 - i32.load - i32.const 0 - i32.gt_s - if $if_14 - i32.const 0 - local.set $4 - loop $loop_6 - local.get $3 - local.get $7 - i32.load offset=8 - i32.const 8 - i32.add - local.get $4 - i32.const 3 - i32.shl - i32.add - i64.load - i64.store align=1 - local.get $6 - local.get $3 - i32.const 8 - i32.add - local.tee $3 - i32.store - local.get $4 - i32.const 1 - i32.add - local.tee $4 - local.get $7 - i32.load - i32.lt_s - br_if $loop_6 - end ;; $loop_6 - end ;; $if_14 - end ;; $if_9 - br $block - end ;; $block_92 - local.get $0 - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=8 - i32.add - i32.load - local.get $8 - i32.const 20 - i32.mul - local.get $1 - i32.add - i32.load offset=4 - local.tee $3 - i32.const 3 - i32.shr_u - i32.eq - if $if_15 - local.get $6 - i32.load - local.set $4 - local.get $3 - i32.const 127 - i32.gt_u - if $if_16 - loop $loop_7 (result i32) - local.get $4 - local.get $3 - i32.const 128 - i32.or - i32.store8 - local.get $3 - i32.const 7 - i32.shr_u - local.set $5 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $3 - i32.const 16383 - i32.gt_u - if $if_17 (result i32) - local.get $5 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $6 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 8 + i32.add + local.tee $4 + i32.store offset=28 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 16 + i32.add + i32.store offset=28 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 5000 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4992 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 5000 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4992 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4992 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 127 + i32.and + call_indirect $30 (type $2) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4992 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 5000 + local.get $3 + i32.store + i32.const 4992 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 5000 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4992 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 5000 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4992 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 5000 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4992 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 157 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 157 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4992 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 5000 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4992 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 157 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 157 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i64) + (local $19 i64) + global.get $34 + local.set $6 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $6 + local.get $4 + i32.store + local.get $6 + local.get $3 + i32.const 1 + i32.and + local.tee $14 + i32.store8 offset=4 + local.get $2 + i32.const 0 + i32.le_s + if $if + local.get $6 + i32.load + local.set $0 + local.get $6 + global.set $34 + local.get $0 + return + end ;; $if + local.get $6 + i32.const 32 + i32.add + local.set $11 + local.get $6 + i32.const 8 + i32.add + local.set $12 + loop $loop + local.get $0 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + local.tee $3 + i32.load + i32.add + local.set $7 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + block $block_38 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=12 + local.tee $4 + br_table + $block_96 $block_91 $block_86 $block_81 $block_76 $block_71 $block_66 $block_61 $block_56 $block_51 $block_46 $block_41 $block_36 $block_31 $block_26 $block_21 + $block_16 $block_11 $block_0 $block_0 $block_6 $block_95 $block_90 $block_85 $block_80 $block_75 $block_70 $block_65 $block_60 $block_55 $block_50 $block_45 + $block_40 $block_35 $block_30 $block_25 $block_20 $block_15 $block_10 $block_0 $block_0 $block_5 $block_94 $block_89 $block_84 $block_79 $block_74 $block_69 + $block_64 $block_59 $block_54 $block_49 $block_44 $block_39 $block_34 $block_29 $block_24 $block_19 $block_14 $block_9 $block_0 $block_0 $block_4 $block_93 + $block_88 $block_83 $block_78 $block_73 $block_68 $block_63 $block_58 $block_53 $block_48 $block_43 $block_38 $block_33 $block_28 $block_23 $block_18 $block_13 + $block_8 $block_0 $block_0 $block_3 $block_92 $block_87 $block_82 $block_77 $block_72 $block_67 $block_62 $block_57 $block_52 $block_47 $block_42 $block_37 + $block_32 $block_27 $block_22 $block_17 $block_12 $block_7 $block_0 $block_0 $block_2 $block_1 + $block_0 ;; default + end ;; $block_96 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=8 + local.tee $3 + i32.const 5 + i32.shr_u + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.load + i32.const 1 + local.get $3 + i32.const 31 + i32.and + i32.shl + i32.and + if $if_0 + local.get $6 + i32.load + local.set $4 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=4 + local.tee $3 + i32.const 127 + i32.gt_u + if $if_1 + loop $loop_0 (result i32) + local.get $4 + local.get $3 + i32.const 128 + i32.or + i32.store8 + local.get $3 + i32.const 7 + i32.shr_u + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $3 + i32.const 16383 + i32.gt_u + if $if_2 (result i32) + local.get $5 + local.set $3 + br $loop_0 + else + local.get $5 + end ;; $if_2 + end ;; $loop_0 + local.set $3 + end ;; $if_1 + local.get $4 + local.get $3 + i32.store8 + local.get $4 + local.get $7 + i64.load + i64.store offset=1 align=1 + local.get $6 + local.get $4 + i32.const 9 + i32.add + i32.store + end ;; $if_0 + br $block + end ;; $block_95 + local.get $7 + f64.load + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_3 + local.get $6 + i32.load + local.set $4 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=4 + local.tee $3 + i32.const 127 + i32.gt_u + if $if_4 + loop $loop_1 (result i32) + local.get $4 + local.get $3 + i32.const 128 + i32.or + i32.store8 + local.get $3 + i32.const 7 + i32.shr_u + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $3 + i32.const 16383 + i32.gt_u + if $if_5 (result i32) + local.get $5 + local.set $3 + br $loop_1 + else + local.get $5 + end ;; $if_5 + end ;; $loop_1 + local.set $3 + end ;; $if_4 + local.get $4 + local.get $3 + i32.store8 + local.get $4 + local.get $7 + i64.load + i64.store offset=1 align=1 + local.get $6 + local.get $4 + i32.const 9 + i32.add + i32.store + end ;; $if_3 + br $block + end ;; $block_94 + local.get $7 + i32.load + i32.const 0 + i32.gt_s + if $if_6 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + local.set $10 + i32.const 0 + local.set $9 + local.get $6 + i32.load + local.set $3 + loop $loop_2 + local.get $10 + i32.load offset=4 + local.tee $4 + i32.const 127 + i32.gt_u + if $if_7 + loop $loop_3 (result i32) + local.get $3 + local.get $4 + i32.const 128 + i32.or + i32.store8 + local.get $4 + i32.const 7 + i32.shr_u + local.set $5 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 16383 + i32.gt_u + if $if_8 (result i32) + local.get $5 + local.set $4 + br $loop_3 + else + local.get $5 + end ;; $if_8 + end ;; $loop_3 + local.set $4 + end ;; $if_7 + local.get $3 + local.get $4 + i32.store8 + local.get $3 + local.get $7 + i32.load offset=8 + i32.const 8 + i32.add + local.get $9 + i32.const 3 + i32.shl + i32.add + i64.load + i64.store offset=1 align=1 + local.get $6 + local.get $3 + i32.const 9 + i32.add + local.tee $3 + i32.store + local.get $9 + i32.const 1 + i32.add + local.tee $9 + local.get $7 + i32.load + i32.lt_s + br_if $loop_2 + end ;; $loop_2 + end ;; $if_6 + br $block + end ;; $block_93 + local.get $7 + i32.load + if $if_9 + local.get $6 + i32.load + local.set $4 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=4 + local.tee $3 + i32.const 127 + i32.gt_u + if $if_10 + loop $loop_4 (result i32) + local.get $4 + local.get $3 + i32.const 128 + i32.or + i32.store8 + local.get $3 + i32.const 7 + i32.shr_u + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $3 + i32.const 16383 + i32.gt_u + if $if_11 (result i32) + local.get $5 + local.set $3 + br $loop_4 + else + local.get $5 + end ;; $if_11 + end ;; $loop_4 + local.set $3 + end ;; $if_10 + local.get $4 + local.get $3 + i32.store8 + local.get $6 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.store + local.get $7 + i32.load offset=12 + local.tee $3 + i32.const 127 + i32.gt_u + if $if_12 + loop $loop_5 (result i32) + local.get $4 + local.get $3 + i32.const 128 + i32.or + i32.store8 + local.get $3 + i32.const 7 + i32.shr_u + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $3 + i32.const 16383 + i32.gt_u + if $if_13 (result i32) + local.get $5 + local.set $3 + br $loop_5 + else + local.get $5 + end ;; $if_13 + end ;; $loop_5 + local.set $3 + end ;; $if_12 + local.get $4 + local.get $3 + i32.store8 + local.get $6 + local.get $4 + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $7 + i32.load + i32.const 0 + i32.gt_s + if $if_14 + i32.const 0 + local.set $4 + loop $loop_6 + local.get $3 + local.get $7 + i32.load offset=8 + i32.const 8 + i32.add + local.get $4 + i32.const 3 + i32.shl + i32.add + i64.load + i64.store align=1 + local.get $6 + local.get $3 + i32.const 8 + i32.add + local.tee $3 + i32.store + local.get $4 + i32.const 1 + i32.add + local.tee $4 + local.get $7 + i32.load + i32.lt_s + br_if $loop_6 + end ;; $loop_6 + end ;; $if_14 + end ;; $if_9 + br $block + end ;; $block_92 + local.get $0 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=8 + i32.add + i32.load + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + i32.load offset=4 + local.tee $3 + i32.const 3 + i32.shr_u + i32.eq + if $if_15 + local.get $6 + i32.load + local.set $4 + local.get $3 + i32.const 127 + i32.gt_u + if $if_16 + loop $loop_7 (result i32) + local.get $4 + local.get $3 + i32.const 128 + i32.or + i32.store8 + local.get $3 + i32.const 7 + i32.shr_u + local.set $5 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $3 + i32.const 16383 + i32.gt_u + if $if_17 (result i32) + local.get $5 local.set $3 br $loop_7 else @@ -54293,7 +55286,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) end ;; $if_190 local.tee $4 i32.store @@ -54439,7 +55432,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) end ;; $if_196 local.tee $4 i32.store @@ -54604,7 +55597,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) end ;; $if_202 local.tee $4 i32.store @@ -54774,7 +55767,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) end ;; $if_208 local.tee $4 i32.store @@ -54975,7 +55968,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $6 i32.load @@ -55036,7 +56029,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.store end ;; $if_214 br $block @@ -55176,7 +56169,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $6 i32.load @@ -55237,7 +56230,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.store end ;; $if_222 br $block @@ -55396,7 +56389,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $6 i32.load @@ -55456,7 +56449,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) end ;; $if_230 i32.store local.get $9 @@ -55619,7 +56612,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $3 local.get $6 i32.load @@ -55680,7 +56673,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.store end ;; $if_238 br $block @@ -59707,7 +60700,7 @@ i32.load local.set $4 local.get $11 - i32.const 7976 + i32.const 9028 i32.store local.get $11 local.get $4 @@ -59754,9 +60747,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 516 + i32.const 772 i32.add - call_indirect $28 (type $7) + call_indirect $30 (type $7) local.get $6 local.get $6 i32.load @@ -59775,7 +60768,7 @@ i32.const 3 i32.store local.get $11 - i32.const 14815 + i32.const 18644 i32.store offset=4 local.get $11 i32.const 571 @@ -59787,7 +60780,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 14857 + i32.const 18686 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -59807,24 +60800,24 @@ i32.load local.set $0 local.get $6 - global.set $32 + global.set $34 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 14815 + i32.const 18644 i32.store offset=4 local.get $1 i32.const 534 @@ -59836,12 +60829,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 14857 + i32.const 18686 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 14887 + i32.const 18716 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -59850,35 +60843,43 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 - i32.const 19504 + global.set $34 + i32.const 28992 i32.load8_s i32.eqz if $if - i32.const 19504 + i32.const 28992 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 19504 + i32.const 28992 + i32.const 0 + i32.store + i32.const 28992 + i32.const 28992 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 19648 + i32.const 29136 i32.load - i32.const 8096 + i32.const 9148 call $_pthread_equal if $if_1 local.get $0 @@ -59887,14 +60888,14 @@ i32.eq if $if_2 local.get $1 - global.set $32 + global.set $34 return end ;; $if_2 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 14815 + i32.const 18644 i32.store offset=4 local.get $1 i32.const 801 @@ -59906,53 +60907,56 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 14899 + i32.const 18728 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $34 return end ;; $if_1 - i32.const 19496 + i32.const 28984 i32.load8_s i32.eqz if $if_3 - i32.const 19496 + i32.const 28984 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 19496 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 19480 + i32.xor + if $if_4 + i32.const 28968 i64.const 0 i64.store - i32.const 19488 + i32.const 28976 i32.const 0 i32.store - i32.const 112 - i32.const 19480 + i32.const 177 + i32.const 28968 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 28984 + i32.const 0 + i32.store + i32.const 28984 + i32.const 28984 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 19648 - i32.const 8096 + i32.const 29136 + i32.const 9148 i32.store local.get $0 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 19648 + i32.const 29136 i32.const 0 i32.store local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -60013,7 +61017,7 @@ i32.and i32.const 216 i32.add - call_indirect $28 (type $8) + call_indirect $30 (type $8) local.get $0 i32.const 0 i32.store @@ -60040,31 +61044,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 15064 + i32.const 18893 i64.load align=1 i64.store align=1 local.get $1 - i32.const 15072 + i32.const 18901 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 15080 + i32.const 18909 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 15088 + i32.const 18917 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 15096 + i32.const 18925 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 15104 + i32.const 18933 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 15112 + i32.const 18941 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -60084,7 +61088,7 @@ i32.load local.set $2 local.get $0 - i32.const 20322 + i32.const 29805 i32.load8_s i32.const 1 i32.and @@ -60096,7 +61100,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $3) @@ -60109,19 +61113,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 80 i32.add - global.set $32 + global.set $34 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $3 if $if local.get $0 @@ -60138,7 +61142,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $32 + global.set $34 local.get $0 return end ;; $if @@ -60148,7 +61152,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $6 local.set $5 local.get $4 @@ -60156,7 +61160,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 7976 + i32.const 9028 i32.store local.get $3 local.get $2 @@ -60189,11 +61193,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $3 i32.load8_s offset=16 if $if_0 @@ -60201,7 +61205,7 @@ i32.const 3 i32.store local.get $4 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $4 i32.const 373 @@ -60213,7 +61217,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15026 + i32.const 18855 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -60226,7 +61230,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $32 + global.set $34 local.get $0 ) @@ -60238,12 +61242,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 112 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 96 i32.add @@ -60301,11 +61305,11 @@ local.get $0 i32.load i32.load offset=28 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) local.get $0 local.get $3 local.get $0 @@ -60315,7 +61319,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) if $if local.get $0 local.get $0 @@ -60323,7 +61327,7 @@ i32.load offset=32 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) if $if_0 local.get $3 i32.load8_s offset=24 @@ -60331,14 +61335,14 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $32 + global.set $34 return end ;; $if_0 local.get $6 i32.const 2 i32.store local.get $6 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $6 i32.const 121 @@ -60356,24 +61360,24 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 15153 + i32.const 18982 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.get $5 - i32.const 15147 + i32.const 18976 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.get $5 - i32.const 15160 + i32.const 18989 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.get $4 local.get $0 local.get $0 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $5 local.get $4 i32.load @@ -60404,18 +61408,18 @@ call $_free end ;; $if_1 local.get $5 - i32.const 15179 + i32.const 19008 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.get $4 local.get $0 local.get $0 i32.load i32.load offset=36 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $5 local.get $4 i32.load @@ -60464,7 +61468,7 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf12_GLOBAL__N_124ByteSizeConsistencyErrorEmmmRKNS0_11MessageLiteE (type $5) @@ -60475,12 +61479,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 96 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 48 i32.add @@ -60497,7 +61501,7 @@ i32.const 3 i32.store local.get $6 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $6 i32.const 68 @@ -60509,7 +61513,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 15261 + i32.const 19090 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $1 local.get $5 @@ -60517,15 +61521,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $1 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 15345 + i32.const 19174 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -60548,7 +61552,7 @@ i32.const 3 i32.store local.get $4 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $4 i32.const 75 @@ -60560,13 +61564,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15635 + i32.const 19464 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $32 + global.set $34 return end ;; $if_1 local.get $4 @@ -60577,7 +61581,7 @@ i32.const 3 i32.store local.get $0 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $0 i32.const 71 @@ -60589,9 +61593,9 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 15394 + i32.const 19223 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 15480 + i32.const 19309 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $0 local.get $5 @@ -60599,15 +61603,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $0 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 17121 + i32.const 23717 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -60625,7 +61629,7 @@ i32.const 3 i32.store local.get $4 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $4 i32.const 75 @@ -60637,13 +61641,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15635 + i32.const 19464 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $32 + global.set $34 ) (func $__ZNK6google8protobuf11MessageLite21AppendPartialToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE (type $1) @@ -60652,12 +61656,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -60678,7 +61682,7 @@ i32.load offset=48 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.tee $3 i32.const 0 i32.lt_s @@ -60687,7 +61691,7 @@ i32.const 2 i32.store local.get $2 - i32.const 14994 + i32.const 18823 i32.store offset=4 local.get $2 i32.const 289 @@ -60699,7 +61703,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 15221 + i32.const 19050 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEm @@ -60707,7 +61711,7 @@ local.get $2 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $1 @@ -60737,14 +61741,14 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) local.get $1 i32.sub local.tee $1 i32.eq if $if_2 local.get $2 - global.set $32 + global.set $34 return end ;; $if_2 local.get $3 @@ -60754,12 +61758,12 @@ i32.load offset=48 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.get $1 local.get $0 call $__ZN6google8protobuf12_GLOBAL__N_124ByteSizeConsistencyErrorEmmmRKNS0_11MessageLiteE local.get $2 - global.set $32 + global.set $34 ) (func $__ZNK6google8protobuf11MessageLite17SerializeToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE (type $1) @@ -60799,12 +61803,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=12 local.set $4 @@ -60820,7 +61824,7 @@ i32.ge_s if $if local.get $3 - global.set $32 + global.set $34 local.get $4 i32.const 4 i32.add @@ -60856,7 +61860,7 @@ i32.const 3 i32.store local.get $3 - i32.const 15688 + i32.const 19517 i32.store offset=4 local.get $3 i32.const 59 @@ -60868,9 +61872,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 15722 + i32.const 19551 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 15839 + i32.const 19668 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -60902,13 +61906,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5672 + i32.const 6736 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -60972,7 +61976,7 @@ i32.add local.set $0 local.get $3 - global.set $32 + global.set $34 local.get $0 ) @@ -61005,12 +62009,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 block $block local.get $1 i32.const 8 @@ -61059,7 +62063,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $32 + global.set $34 i32.const 1 return end ;; $block_4 @@ -61097,7 +62101,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $32 + global.set $34 local.get $0 return end ;; $block_3 @@ -61176,7 +62180,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $32 + global.set $34 i32.const 1 return end ;; $block_2 @@ -61262,7 +62266,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $32 + global.set $34 local.get $3 local.get $1 i32.const -8 @@ -61306,17 +62310,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $32 + global.set $34 local.get $0 return end ;; $block_0 local.get $2 - global.set $32 + global.set $34 i32.const 0 return end ;; $block local.get $2 - global.set $32 + global.set $34 i32.const 0 ) @@ -61480,12 +62484,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 block $block block $block_0 local.get $1 @@ -61624,7 +62628,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $32 + global.set $34 i32.const 1 return end ;; $if_2 @@ -61694,7 +62698,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $32 + global.set $34 i32.const 1 return end ;; $block_5 @@ -62250,17 +63254,17 @@ br $block end ;; $block_1 local.get $5 - global.set $32 + global.set $34 i32.const 0 return end ;; $block_0 local.get $5 - global.set $32 + global.set $34 i32.const 0 return end ;; $block local.get $5 - global.set $32 + global.set $34 local.get $0 ) @@ -62639,12 +63643,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.load offset=8 i32.const 4 @@ -62694,7 +63698,7 @@ i32.const 3 i32.store local.get $4 - i32.const 15887 + i32.const 19716 i32.store offset=4 local.get $4 i32.const 507 @@ -62706,7 +63710,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15923 + i32.const 19752 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -62758,7 +63762,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $32 + global.set $34 return end ;; $if_2 local.get $1 @@ -62840,7 +63844,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $6) @@ -62851,12 +63855,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.const 3 i32.shl @@ -62949,7 +63953,7 @@ i32.const 3 i32.store local.get $5 - i32.const 15887 + i32.const 19716 i32.store offset=4 local.get $5 i32.const 516 @@ -62961,7 +63965,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 15923 + i32.const 19752 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -63087,7 +64091,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_7 local.get $5 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal14WireFormatLite22WriteBytesMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) @@ -63098,12 +64102,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.load offset=8 i32.const 4 @@ -63153,7 +64157,7 @@ i32.const 3 i32.store local.get $4 - i32.const 15887 + i32.const 19716 i32.store offset=4 local.get $4 i32.const 531 @@ -63165,7 +64169,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15923 + i32.const 19752 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -63291,7 +64295,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -63384,7 +64388,7 @@ local.get $0 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $0 local.get $2 i32.load offset=8 @@ -63401,11 +64405,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) return end ;; $if_2 local.get $2 @@ -63474,11 +64478,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $1) @@ -63530,7 +64534,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) local.set $4 local.get $1 i32.load offset=8 @@ -63646,7 +64650,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) drop return end ;; $if_4 @@ -63656,11 +64660,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $4) @@ -63776,18 +64780,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $32 + global.set $34 i32.const 1 return end ;; $if @@ -63844,13 +64848,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 15969 + i32.const 19798 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 15981 + i32.const 19810 local.get $2 select local.set $3 @@ -63862,7 +64866,7 @@ i32.const 2 i32.store local.get $1 - i32.const 15887 + i32.const 19716 i32.store offset=4 local.get $1 i32.const 626 @@ -63874,21 +64878,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 15995 + i32.const 19824 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 16008 + i32.const 19837 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16027 + i32.const 19856 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16044 + i32.const 19873 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16057 + i32.const 19886 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16113 + i32.const 19942 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -63903,7 +64907,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $32 + global.set $34 i32.const 0 ) @@ -63943,11 +64947,11 @@ local.get $1 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $0 local.get $0 i32.load offset=12 @@ -64080,12 +65084,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $2 local.set $5 local.get $0 @@ -64128,7 +65132,7 @@ select local.set $7 local.get $5 - global.set $32 + global.set $34 local.get $7 return end ;; $block @@ -64251,7 +65255,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $32 + global.set $34 i64.const -1 return end ;; $if_9 @@ -64279,7 +65283,7 @@ local.get $2 i32.store local.get $5 - global.set $32 + global.set $34 local.get $1 i64.extend_i32_u ) @@ -64650,12 +65654,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $2 i32.const 28 i32.add @@ -64697,7 +65701,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $4 @@ -64724,7 +65728,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16121 + i32.const 19950 i32.store offset=4 local.get $2 i32.const 591 @@ -64736,7 +65740,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16156 + i32.const 19985 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -64829,7 +65833,7 @@ end ;; $block local.set $0 local.get $2 - global.set $32 + global.set $34 local.get $0 return end ;; $if_1 @@ -64845,7 +65849,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $32 + global.set $34 i32.const 0 return end ;; $if_5 @@ -64855,31 +65859,31 @@ i32.eq if $if_6 local.get $2 - global.set $32 + global.set $34 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $32 + global.set $34 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 16121 + i32.const 19950 i32.store offset=4 local.get $1 i32.const 190 @@ -64891,18 +65895,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 16193 + i32.const 20022 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 16260 + i32.const 20089 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $4) @@ -65042,7 +66046,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) drop i32.const 0 return @@ -65060,7 +66064,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) if $if_2 (result i32) local.get $0 local.get $0 @@ -65083,7 +66087,7 @@ i32.and i32.const 210 i32.add - call_indirect $28 (type $10) + call_indirect $30 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -65330,12 +66334,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $7 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $7 local.set $3 local.get $0 @@ -65408,7 +66412,7 @@ br $block end ;; $block_0 local.get $7 - global.set $32 + global.set $34 i32.const 0 return end ;; $block @@ -65421,7 +66425,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $32 + global.set $34 i32.const 1 ) @@ -65435,12 +66439,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $7 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $7 local.set $3 local.get $0 @@ -65513,7 +66517,7 @@ br $block end ;; $block_0 local.get $7 - global.set $32 + global.set $34 i32.const 0 return end ;; $block @@ -65526,7 +66530,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $32 + global.set $34 i32.const 1 ) @@ -65541,12 +66545,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $32 + global.get $34 local.set $7 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 i32.load offset=4 local.tee $6 @@ -65594,7 +66598,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $32 + global.set $34 local.get $0 return end ;; $block @@ -65764,7 +66768,7 @@ i32.and if $if_11 local.get $7 - global.set $32 + global.set $34 i32.const -1 return end ;; $if_11 @@ -65827,7 +66831,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $32 + global.set $34 i32.const -1 return end ;; $if_12 @@ -65835,7 +66839,7 @@ local.get $2 i32.store local.get $7 - global.set $32 + global.set $34 local.get $8 i32.wrap_i64 ) @@ -65849,12 +66853,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 block $block local.get $0 i32.load offset=4 @@ -65952,7 +66956,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $32 + global.set $34 i32.const 0 return end ;; $block_2 @@ -65993,7 +66997,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $32 + global.set $34 local.get $0 return end ;; $block_0 @@ -66152,12 +67156,12 @@ local.get $1 i32.store local.get $5 - global.set $32 + global.set $34 local.get $4 return end ;; $block local.get $5 - global.set $32 + global.set $34 i32.const 0 ) @@ -66166,12 +67170,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.store @@ -66202,7 +67206,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) if $if local.get $0 local.get $2 @@ -66230,19 +67234,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $1) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 local.get $1 i32.store @@ -66259,7 +67263,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -66284,11 +67288,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $0 local.get $0 i32.load offset=12 @@ -66313,12 +67317,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $3 local.set $6 local.get $0 @@ -66358,7 +67362,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $0 @@ -66398,7 +67402,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $32 + global.set $34 return end ;; $block end ;; $if @@ -66420,7 +67424,7 @@ i32.sub i32.store local.get $6 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -66469,11 +67473,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) local.get $0 i32.const 12 i32.add @@ -66525,7 +67529,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.const 1 i32.xor i32.const 1 @@ -66546,12 +67550,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 i32.const 8 i32.add @@ -66578,7 +67582,7 @@ i32.add i32.store local.get $3 - global.set $32 + global.set $34 return end ;; $if local.get $3 @@ -66622,7 +67626,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $0 @@ -66662,7 +67666,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $5 @@ -66683,7 +67687,7 @@ i32.sub i32.store local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $22) @@ -66697,12 +67701,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 i32.const 8 i32.add @@ -66729,7 +67733,7 @@ i32.add i32.store local.get $3 - global.set $32 + global.set $34 return end ;; $if local.get $3 @@ -66771,7 +67775,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $0 @@ -66811,7 +67815,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $32 + global.set $34 return end ;; $block local.get $6 @@ -66832,7 +67836,7 @@ i32.sub i32.store local.get $3 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $1) @@ -66844,12 +67848,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $6 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $6 i32.const 4 i32.add @@ -66939,7 +67943,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $0 @@ -66979,7 +67983,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $32 + global.set $34 return end ;; $block else @@ -67004,7 +68008,7 @@ i32.sub i32.store local.get $6 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $22) @@ -67018,12 +68022,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 4 i32.add @@ -67117,7 +68121,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.eqz br_if $block_0 local.get $0 @@ -67157,7 +68161,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $32 + global.set $34 return end ;; $block end ;; $if_1 @@ -67179,7 +68183,7 @@ i32.sub i32.store local.get $7 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $4) @@ -67334,12 +68338,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 80 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 48 i32.add @@ -67354,7 +68358,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $2 i32.const 132 @@ -67366,9 +68370,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16485 + i32.const 20314 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16529 + i32.const 20358 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67389,7 +68393,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $2 i32.const 134 @@ -67401,7 +68405,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16584 + i32.const 20413 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67421,14 +68425,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $32 + global.set $34 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $3 i32.const 135 @@ -67440,7 +68444,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 16454 + i32.const 20283 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -67455,7 +68459,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $32 + global.set $34 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -67476,12 +68480,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $5 i32.const 24 i32.add @@ -67496,7 +68500,7 @@ i32.const 3 i32.store local.get $3 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $3 i32.const 151 @@ -67508,7 +68512,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 16674 + i32.const 20503 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -67582,7 +68586,7 @@ i32.const 2 i32.store local.get $5 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $5 i32.const 164 @@ -67594,15 +68598,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 16751 + i32.const 20580 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16801 + i32.const 20630 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $32 + global.set $34 i32.const 0 return end ;; $block_0 @@ -67643,7 +68647,7 @@ i32.sub i32.store local.get $5 - global.set $32 + global.set $34 i32.const 1 ) @@ -67653,12 +68657,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 80 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 48 i32.add @@ -67671,7 +68675,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $2 i32.const 182 @@ -67683,7 +68687,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16454 + i32.const 20283 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67704,7 +68708,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $2 i32.const 183 @@ -67716,7 +68720,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16674 + i32.const 20503 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67746,7 +68750,7 @@ i32.const 3 i32.store local.get $3 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $3 i32.const 184 @@ -67758,7 +68762,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 16706 + i32.const 20535 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -67794,7 +68798,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $32 + global.set $34 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -67803,12 +68807,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 block $block (result i32) local.get $0 i32.load offset=4 @@ -67819,7 +68823,7 @@ i32.const 3 i32.store local.get $1 - i32.const 16405 + i32.const 20234 i32.store offset=4 local.get $1 i32.const 189 @@ -67831,7 +68835,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 16674 + i32.const 20503 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -67852,11 +68856,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $32 + global.set $34 local.get $3 else local.get $1 - global.set $32 + global.set $34 local.get $0 i32.const 255 i32.and @@ -67871,12 +68875,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 1040 i32.add - global.set $32 + global.set $34 local.get $2 local.get $1 i32.load @@ -67886,7 +68890,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 15989 + i32.const 19818 local.get $2 call $_vsnprintf local.tee $4 @@ -67898,7 +68902,7 @@ i32.le_s if $if_0 local.get $2 - global.set $32 + global.set $34 return end ;; $if_0 local.get $0 @@ -67919,7 +68923,7 @@ i32.store local.get $3 local.get $5 - i32.const 15989 + i32.const 19818 local.get $2 call $_vsnprintf local.tee $1 @@ -67941,19 +68945,19 @@ call $_free end ;; $if local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $1) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $2 local.get $1 i32.store @@ -67967,7 +68971,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $32 + global.set $34 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $3) @@ -67996,7 +69000,7 @@ i32.const 241 return end ;; $if - i32.const 8056 + i32.const 9108 i32.load local.set $13 local.get $0 @@ -68006,18 +69010,18 @@ i32.const -7 i32.add local.set $10 - i32.const 8084 + i32.const 9136 i32.load local.set $4 - i32.const 8064 + i32.const 9116 i32.load local.set $11 - i32.const 8068 + i32.const 9120 i32.load local.set $12 - i32.const 8072 + i32.const 9124 i32.load - i32.const 8040 + i32.const 9092 i32.load i32.add local.tee $8 @@ -68230,7 +69234,7 @@ local.get $3 local.get $14 i32.sub - i32.const 8044 + i32.const 9096 i32.load i32.ge_u if $if_7 @@ -68262,7 +69266,7 @@ local.get $3 local.get $8 i32.sub - i32.const 8044 + i32.const 9096 i32.load i32.lt_u if $if_9 (result i32) @@ -68310,17 +69314,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $1 i32.eqz if $if local.get $2 - global.set $32 + global.set $34 local.get $1 i32.eqz return @@ -68443,7 +69447,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $32 + global.set $34 local.get $1 local.get $0 local.get $6 @@ -68456,17 +69460,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $32 + global.get $34 local.set $0 - global.get $32 + global.get $34 i32.const 32 i32.add - global.set $32 + global.set $34 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 16863 + i32.const 20692 i32.store offset=4 local.get $0 i32.const 47 @@ -68478,13 +69482,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 16902 + i32.const 20731 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $32 + global.set $34 i32.const 0 ) @@ -68492,12 +69496,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $1 local.get $0 i32.load offset=60 @@ -68509,7 +69513,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 19716 + i32.const 29204 i32.const 0 local.get $0 i32.sub @@ -68518,8 +69522,135 @@ local.set $0 end ;; $if local.get $1 - global.set $32 + global.set $34 + local.get $0 + ) + + (func $___stdout_write (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 + local.get $0 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 + local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $___stdio_seek (type $12) + (param $0 i32) + (param $1 i64) + (param $2 i32) + (result i64) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.tee $4 local.get $0 + i32.load offset=60 + i32.store + local.get $4 + local.get $1 + i64.const 32 + i64.shr_u + i64.store32 offset=4 + local.get $4 + local.get $1 + i64.store32 offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $4 + local.get $2 + i32.store offset=16 + i32.const 140 + local.get $4 + call $___syscall140 + local.tee $0 + i32.const -4096 + i32.gt_u + if $if (result i32) + i32.const 29204 + i32.const 0 + local.get $0 + i32.sub + i32.store + i32.const -1 + else + local.get $0 + end ;; $if + i32.const 0 + i32.lt_s + if $if_0 (result i64) + local.get $3 + i64.const -1 + i64.store + i64.const -1 + else + local.get $3 + i64.load + end ;; $if_0 + local.set $1 + local.get $3 + global.set $34 + local.get $1 + ) + + (func $___errno_location (type $14) + (result i32) + i32.const 29204 ) (func $___stdio_write (type $3) @@ -68534,12 +69665,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $34 local.set $6 - global.get $32 + global.get $34 i32.const 48 i32.add - global.set $32 + global.set $34 local.get $6 i32.const 32 i32.add @@ -68590,7 +69721,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 19716 + i32.const 29204 i32.const 0 local.get $1 i32.sub @@ -68667,7 +69798,7 @@ i32.const -4096 i32.gt_u if $if_1 - i32.const 19716 + i32.const 29204 i32.const 0 local.get $1 i32.sub @@ -68727,135 +69858,89 @@ i32.store offset=20 end ;; $block local.get $6 - global.set $32 + global.set $34 local.get $2 ) - (func $___stdio_seek (type $12) - (param $0 i32) - (param $1 i64) - (param $2 i32) - (result i64) - (local $3 i32) - (local $4 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - local.get $0 - i32.load offset=60 - i32.store - local.get $4 - local.get $1 - i64.const 32 - i64.shr_u - i64.store32 offset=4 - local.get $4 - local.get $1 - i64.store32 offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $4 - local.get $2 - i32.store offset=16 - i32.const 140 - local.get $4 - call $___syscall140 - local.tee $0 - i32.const -4096 - i32.gt_u - if $if (result i32) - i32.const 19716 - i32.const 0 - local.get $0 - i32.sub - i32.store - i32.const -1 - else - local.get $0 - end ;; $if - i32.const 0 - i32.lt_s - if $if_0 (result i64) - local.get $3 - i64.const -1 - i64.store - i64.const -1 - else - local.get $3 - i64.load - end ;; $if_0 - local.set $1 - local.get $3 - global.set $32 - local.get $1 - ) - - (func $___errno_location (type $14) - (result i32) - i32.const 19716 - ) - - (func $___stdout_write (type $3) + (func $_strlen (type $2) (param $0 i32) - (param $1 i32) - (param $2 i32) (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $3 - i32.const 16 - i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 - local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 - local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $32 - local.get $0 + i32.sub ) (func $_memcmp (type $3) @@ -68909,6 +69994,133 @@ end ;; $if ) + (func $_frexp (type $23) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $4) (param $0 i32) (param $1 i32) @@ -69031,6 +70243,33 @@ local.get $0 ) + (func $_snprintf (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $34 + local.get $0 + ) + (func $_vsnprintf (type $17) (param $0 i32) (param $1 i32) @@ -69039,18 +70278,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $4 - global.get $32 + global.get $34 i32.const 160 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5368 + i32.const 5344 i32.const 144 call $_memcpy drop @@ -69064,7 +70303,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 19716 + i32.const 29204 i32.const 75 i32.store i32.const -1 @@ -69129,7 +70368,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $32 + global.set $34 local.get $0 ) @@ -69175,12 +70414,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $32 + global.get $34 local.set $21 - global.get $32 + global.get $34 i32.const 560 i32.add - global.set $32 + global.set $34 local.get $21 i32.const 32 i32.add @@ -69212,13 +70451,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 17086 + i32.const 20915 local.set $18 i32.const 1 else - i32.const 17089 - i32.const 17092 - i32.const 17087 + i32.const 20918 + i32.const 20921 + i32.const 20916 local.get $4 i32.const 1 i32.and @@ -69241,8 +70480,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 17113 - i32.const 17117 + i32.const 20942 + i32.const 20946 local.get $5 i32.const 32 i32.and @@ -69250,8 +70489,8 @@ i32.ne local.tee $3 select - i32.const 17105 - i32.const 17109 + i32.const 20934 + i32.const 20938 local.get $3 select local.get $1 @@ -69269,15 +70508,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -69285,7 +70524,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -69543,11 +70782,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -69555,14 +70794,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -69575,11 +70814,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -69587,7 +70826,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -70494,11 +71733,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -70506,7 +71745,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -70575,7 +71814,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -70599,9 +71838,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 17121 + i32.const 23717 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -70648,7 +71887,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -70678,7 +71917,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -70746,7 +71985,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -70758,9 +71997,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 17121 + i32.const 23717 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -70797,7 +72036,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -70821,13 +72060,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -70836,13 +72075,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $32 + global.set $34 local.get $2 local.get $0 local.get $0 @@ -70885,12 +72124,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 224 i32.add - global.set $32 + global.set $34 local.get $3 i32.const 160 i32.add @@ -71003,7 +72242,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) drop local.get $1 i32.const -1 @@ -71046,7 +72285,7 @@ end ;; $if local.set $0 local.get $3 - global.set $32 + global.set $34 local.get $0 ) @@ -71078,12 +72317,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $32 + global.get $34 local.set $15 - global.get $32 + global.get $34 i32.const -64 i32.sub - global.set $32 + global.set $34 local.get $15 i32.const 40 i32.add @@ -71132,7 +72371,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 19716 + i32.const 29204 i32.const 75 i32.store i32.const -1 @@ -71222,7 +72461,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -71435,7 +72674,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -71471,7 +72710,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -71661,7 +72900,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -71848,7 +73087,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 17069 + i32.const 20898 local.set $8 br $block_14 end ;; $block_25 @@ -71864,13 +73103,13 @@ i64.sub local.tee $25 i64.store - i32.const 17069 + i32.const 20898 local.set $8 i32.const 1 else - i32.const 17070 - i32.const 17071 - i32.const 17069 + i32.const 20899 + i32.const 20900 + i32.const 20898 local.get $7 i32.const 1 i32.and @@ -71894,7 +73133,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 17069 + i32.const 20898 local.set $8 br $block_16 end ;; $block_23 @@ -71910,7 +73149,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17069 + i32.const 20898 local.set $8 local.get $18 local.set $1 @@ -71919,7 +73158,7 @@ local.get $10 i32.load local.tee $5 - i32.const 17079 + i32.const 20908 local.get $5 select local.tee $6 @@ -71939,7 +73178,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17069 + i32.const 20898 local.set $8 local.get $1 local.get $6 @@ -71975,7 +73214,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -71990,7 +73229,7 @@ local.get $7 local.get $6 i32.const 129 - call_indirect $28 (type $11) + call_indirect $30 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -72000,7 +73239,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17069 + i32.const 20898 local.set $8 local.get $18 local.set $1 @@ -72028,11 +73267,11 @@ local.tee $8 select local.set $12 - i32.const 17069 + i32.const 20898 local.get $6 i32.const 4 i32.shr_u - i32.const 17069 + i32.const 20898 i32.add local.get $8 select @@ -72098,7 +73337,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -72129,7 +73368,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -72192,7 +73431,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -72225,11 +73464,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -72237,17 +73476,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -72255,7 +73494,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -72287,7 +73526,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -72328,11 +73567,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $32 + global.set $34 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -72349,7 +73588,7 @@ end ;; $if ) - (func $_getint_280 (type $2) + (func $_getint (type $2) (param $0 i32) (result i32) (local $1 i32) @@ -72391,7 +73630,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -72615,13 +73854,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 443 - call_indirect $28 (type $1) + i32.const 656 + call_indirect $30 (type $1) end ;; $block end ;; $if ) - (func $_fmt_x (type $23) + (func $_fmt_x (type $24) (param $0 i64) (param $1 i32) (param $2 i32) @@ -72657,7 +73896,7 @@ local.get $1 ) - (func $_fmt_o (type $24) + (func $_fmt_o (type $25) (param $0 i64) (param $1 i32) (result i32) @@ -72689,7 +73928,7 @@ local.get $1 ) - (func $_fmt_u (type $24) + (func $_fmt_u (type $25) (param $0 i64) (param $1 i32) (result i32) @@ -72762,19 +74001,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $32 + global.get $34 local.set $5 - global.get $32 + global.get $34 i32.const 256 i32.add - global.set $32 + global.set $34 local.get $4 i32.const 73728 i32.and @@ -72813,7 +74052,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -72830,10 +74069,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $32 + global.set $34 ) (func $_wctomb (type $4) @@ -72867,7 +74106,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 8284 + i32.const 9336 i32.load i32.load i32.eqz @@ -72884,7 +74123,7 @@ i32.const 1 br $block else - i32.const 19716 + i32.const 29204 i32.const 84 i32.store i32.const -1 @@ -72989,7 +74228,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 19716 + i32.const 29204 i32.const 84 i32.store i32.const -1 @@ -73041,7 +74280,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) drop br $block end ;; $if_0 @@ -73088,7 +74327,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) local.get $3 i32.lt_u br_if $block @@ -73169,76 +74408,6 @@ end ;; $if ) - (func $_frexp (type $25) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $3) (param $0 i32) (param $1 i32) @@ -73273,176 +74442,26 @@ local.get $2 ) - (func $_strlen (type $2) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $17) + (func $_fprintf (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $32 - local.set $4 - global.get $32 + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 i32.const 16 i32.add - global.set $32 - local.get $4 - local.get $3 + global.set $34 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 18405 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $32 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $34 ) (func $___overflow (type $0) @@ -73450,12 +74469,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 local.set $1 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $1 i32.const 10 i32.store8 @@ -73507,7 +74526,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) i32.const 1 i32.eq if $if_2 (result i32) @@ -73519,29 +74538,7 @@ drop end ;; $block local.get $1 - global.set $32 - ) - - (func $_fprintf (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 14576 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $32 + global.set $34 ) (func $_fflush (type $2) @@ -73565,10 +74562,10 @@ end ;; $block local.set $0 else - i32.const 8092 + i32.const 9140 i32.load if $if_1 (result i32) - i32.const 8092 + i32.const 9140 i32.load call $_fflush else @@ -73576,9 +74573,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 19720 + i32.const 29208 call $___lock - i32.const 19728 + i32.const 29216 i32.load local.tee $1 end ;; $block_0 @@ -73612,7 +74609,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 19720 + i32.const 29208 call $___unlock end ;; $if local.get $0 @@ -73643,7 +74640,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) drop local.get $0 i32.load offset=20 @@ -73673,7 +74670,7 @@ i32.and i32.const 214 i32.add - call_indirect $28 (type $12) + call_indirect $30 (type $12) drop end ;; $if local.get $0 @@ -73695,6 +74692,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $2) (param $0 i32) (result i32) @@ -73720,17 +74781,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $32 + global.get $34 local.set $17 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 19732 + i32.const 29220 i32.load local.tee $6 i32.const 16 @@ -73762,7 +74823,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.tee $3 i32.load offset=8 @@ -73775,7 +74836,7 @@ local.get $3 i32.eq if $if_1 - i32.const 19732 + i32.const 29220 local.get $6 i32.const 1 local.get $0 @@ -73785,7 +74846,7 @@ i32.and i32.store else - i32.const 19748 + i32.const 29236 i32.load local.get $4 i32.gt_u @@ -73825,12 +74886,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $32 + global.set $34 local.get $1 return end ;; $if_0 local.get $14 - i32.const 19740 + i32.const 29228 i32.load local.tee $13 i32.gt_u @@ -73909,7 +74970,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.tee $1 i32.load offset=8 @@ -73922,7 +74983,7 @@ local.get $1 i32.eq if $if_6 - i32.const 19732 + i32.const 29220 local.get $6 i32.const 1 local.get $0 @@ -73933,7 +74994,7 @@ local.tee $8 i32.store else - i32.const 19748 + i32.const 29236 i32.load local.get $2 i32.gt_u @@ -73983,7 +75044,7 @@ i32.store local.get $13 if $if_9 - i32.const 19752 + i32.const 29240 i32.load local.set $10 local.get $13 @@ -73992,7 +75053,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.set $2 local.get $8 @@ -74002,7 +75063,7 @@ local.tee $0 i32.and if $if_10 - i32.const 19748 + i32.const 29236 i32.load local.get $2 i32.const 8 @@ -74020,7 +75081,7 @@ local.set $4 end ;; $if_11 else - i32.const 19732 + i32.const 29220 local.get $0 local.get $8 i32.or @@ -74045,18 +75106,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 19740 + i32.const 29228 local.get $6 i32.store - i32.const 19752 + i32.const 29240 local.get $3 i32.store local.get $17 - global.set $32 + global.set $34 local.get $9 return end ;; $if_5 - i32.const 19736 + i32.const 29224 i32.load local.tee $11 if $if_12 (result i32) @@ -74119,7 +75180,7 @@ i32.add i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add i32.load local.tee $0 @@ -74169,7 +75230,7 @@ br $loop end ;; $block end ;; $loop - i32.const 19748 + i32.const 29236 i32.load local.tee $7 local.get $9 @@ -74293,7 +75354,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.tee $0 i32.load @@ -74306,7 +75367,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 19736 + i32.const 29224 local.get $11 i32.const 1 local.get $1 @@ -74318,7 +75379,7 @@ br $block_2 end ;; $if_25 else - i32.const 19748 + i32.const 29236 i32.load local.get $18 i32.gt_u @@ -74343,7 +75404,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 19748 + i32.const 29236 i32.load local.tee $0 local.get $3 @@ -74376,7 +75437,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 19748 + i32.const 29236 i32.load local.get $0 i32.gt_u @@ -74432,7 +75493,7 @@ i32.store local.get $13 if $if_33 - i32.const 19752 + i32.const 29240 i32.load local.set $4 local.get $13 @@ -74441,7 +75502,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.set $3 local.get $6 @@ -74451,7 +75512,7 @@ local.tee $0 i32.and if $if_34 - i32.const 19748 + i32.const 29236 i32.load local.get $3 i32.const 8 @@ -74469,7 +75530,7 @@ local.set $12 end ;; $if_35 else - i32.const 19732 + i32.const 29220 local.get $0 local.get $6 i32.or @@ -74494,15 +75555,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 19740 + i32.const 29228 local.get $10 i32.store - i32.const 19752 + i32.const 29240 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $32 + global.set $34 local.get $9 i32.const 8 i32.add @@ -74528,7 +75589,7 @@ i32.const -8 i32.and local.set $15 - i32.const 19736 + i32.const 29224 i32.load local.tee $4 if $if_37 (result i32) @@ -74608,7 +75669,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add i32.load local.tee $0 @@ -74773,7 +75834,7 @@ i32.add i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add i32.load local.set $0 @@ -74836,13 +75897,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 19740 + i32.const 29228 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 19748 + i32.const 29236 i32.load local.tee $12 local.get $2 @@ -74966,7 +76027,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.tee $0 i32.load @@ -74979,7 +76040,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 19736 + i32.const 29224 local.get $4 i32.const 1 local.get $3 @@ -74992,7 +76053,7 @@ br $block_9 end ;; $if_60 else - i32.const 19748 + i32.const 29236 i32.load local.get $8 i32.gt_u @@ -75021,7 +76082,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 19748 + i32.const 29236 i32.load local.tee $0 local.get $13 @@ -75054,7 +76115,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 19748 + i32.const 29236 i32.load local.get $0 i32.gt_u @@ -75128,10 +76189,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.set $3 - i32.const 19732 + i32.const 29220 i32.load local.tee $1 i32.const 1 @@ -75140,7 +76201,7 @@ local.tee $0 i32.and if $if_70 - i32.const 19748 + i32.const 29236 i32.load local.get $3 i32.const 8 @@ -75158,7 +76219,7 @@ local.set $11 end ;; $if_71 else - i32.const 19732 + i32.const 29220 local.get $0 local.get $1 i32.or @@ -75254,7 +76315,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.set $3 local.get $5 @@ -75274,7 +76335,7 @@ i32.and i32.eqz if $if_74 - i32.const 19736 + i32.const 29224 local.get $0 local.get $1 i32.or @@ -75355,7 +76416,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 19748 + i32.const 29236 i32.load local.get $4 i32.gt_u @@ -75378,7 +76439,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 19748 + i32.const 29236 i32.load local.tee $0 local.get $6 @@ -75411,7 +76472,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $32 + global.set $34 local.get $2 i32.const 8 i32.add @@ -75431,13 +76492,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 19740 + i32.const 29228 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 19752 + i32.const 29240 i32.load local.set $0 local.get $3 @@ -75447,13 +76508,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 19752 + i32.const 29240 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 19740 + i32.const 29228 local.get $2 i32.store local.get $1 @@ -75472,10 +76533,10 @@ i32.or i32.store offset=4 else - i32.const 19740 + i32.const 29228 i32.const 0 i32.store - i32.const 19752 + i32.const 29240 i32.const 0 i32.store local.get $0 @@ -75496,13 +76557,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 19744 + i32.const 29232 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 19744 + i32.const 29232 local.get $12 local.get $11 i32.sub @@ -75510,31 +76571,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 20204 + i32.const 29692 i32.load if $if_83 (result i32) - i32.const 20212 + i32.const 29700 i32.load else - i32.const 20212 + i32.const 29700 i32.const 4096 i32.store - i32.const 20208 + i32.const 29696 i32.const 4096 i32.store - i32.const 20216 + i32.const 29704 i32.const -1 i32.store - i32.const 20220 + i32.const 29708 i32.const -1 i32.store - i32.const 20224 + i32.const 29712 i32.const 0 i32.store - i32.const 20176 + i32.const 29664 i32.const 0 i32.store - i32.const 20204 + i32.const 29692 local.get $17 i32.const -16 i32.and @@ -75561,11 +76622,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 20172 + i32.const 29660 i32.load local.tee $2 if $if_85 - i32.const 20164 + i32.const 29652 i32.load local.tee $1 local.get $8 @@ -75587,7 +76648,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 20176 + i32.const 29664 i32.load i32.const 4 i32.and @@ -75598,12 +76659,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 19756 + i32.const 29244 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 20180 + i32.const 29668 local.set $2 loop $loop_5 block $block_20 @@ -75666,11 +76727,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 20164 + i32.const 29652 i32.load local.tee $4 local.get $0 - i32.const 20208 + i32.const 29696 i32.load local.tee $2 i32.const -1 @@ -75701,7 +76762,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 20172 + i32.const 29660 i32.load local.tee $1 if $if_92 @@ -75759,7 +76820,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 20212 + i32.const 29700 i32.load local.tee $1 local.get $6 @@ -75796,8 +76857,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 20176 - i32.const 20176 + i32.const 29664 + i32.const 29664 i32.load i32.const 4 i32.or @@ -75852,28 +76913,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 20164 - i32.const 20164 + i32.const 29652 + i32.const 29652 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 20168 + i32.const 29656 i32.load i32.gt_u if $if_98 - i32.const 20168 + i32.const 29656 local.get $1 i32.store end ;; $if_98 - i32.const 19756 + i32.const 29244 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 20180 + i32.const 29668 local.set $2 block $block_22 block $block_23 @@ -75931,7 +76992,7 @@ local.tee $1 i32.add local.set $2 - i32.const 19744 + i32.const 29232 i32.load local.get $3 i32.add @@ -75939,10 +77000,10 @@ local.get $1 i32.sub local.set $1 - i32.const 19756 + i32.const 29244 local.get $2 i32.store - i32.const 19744 + i32.const 29232 local.get $1 i32.store local.get $2 @@ -75955,8 +77016,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 19760 - i32.const 20220 + i32.const 29248 + i32.const 29708 i32.load i32.store br $block_21 @@ -75964,12 +77025,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 19748 + i32.const 29236 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 19748 + i32.const 29236 local.get $0 i32.store local.get $0 @@ -75979,7 +77040,7 @@ local.get $3 i32.add local.set $1 - i32.const 20180 + i32.const 29668 local.set $8 block $block_24 block $block_25 @@ -76060,14 +77121,14 @@ local.get $6 i32.eq if $if_104 - i32.const 19744 - i32.const 19744 + i32.const 29232 + i32.const 29232 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 19756 + i32.const 29244 local.get $5 i32.store local.get $5 @@ -76077,19 +77138,19 @@ i32.store offset=4 else block $block_26 - i32.const 19752 + i32.const 29240 i32.load local.get $3 i32.eq if $if_105 - i32.const 19740 - i32.const 19740 + i32.const 29228 + i32.const 29228 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 19752 + i32.const 29240 local.get $5 i32.store local.get $5 @@ -76134,7 +77195,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.tee $0 i32.ne @@ -76158,8 +77219,8 @@ local.get $6 i32.eq if $if_110 - i32.const 19732 - i32.const 19732 + i32.const 29220 + i32.const 29220 i32.load i32.const 1 local.get $1 @@ -76317,7 +77378,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.tee $0 i32.load @@ -76330,8 +77391,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 19736 - i32.const 19736 + i32.const 29224 + i32.const 29224 i32.load i32.const 1 local.get $1 @@ -76343,7 +77404,7 @@ br $block_27 end ;; $block_32 else - i32.const 19748 + i32.const 29236 i32.load local.get $8 i32.gt_u @@ -76368,7 +77429,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 19748 + i32.const 29236 i32.load local.tee $0 local.get $16 @@ -76402,7 +77463,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 19748 + i32.const 29236 i32.load local.get $0 i32.gt_u @@ -76454,10 +77515,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.set $2 - i32.const 19732 + i32.const 29220 i32.load local.tee $1 i32.const 1 @@ -76467,7 +77528,7 @@ i32.and if $if_128 block $block_33 - i32.const 19748 + i32.const 29236 i32.load local.get $2 i32.const 8 @@ -76486,7 +77547,7 @@ call $_abort end ;; $block_33 else - i32.const 19732 + i32.const 29220 local.get $0 local.get $1 i32.or @@ -76582,7 +77643,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.set $2 local.get $5 @@ -76594,7 +77655,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 19736 + i32.const 29224 i32.load local.tee $1 i32.const 1 @@ -76604,7 +77665,7 @@ i32.and i32.eqz if $if_132 - i32.const 19736 + i32.const 29224 local.get $0 local.get $1 i32.or @@ -76685,7 +77746,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 19748 + i32.const 29236 i32.load local.get $2 i32.gt_u @@ -76708,7 +77769,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 19748 + i32.const 29236 i32.load local.tee $0 local.get $9 @@ -76741,14 +77802,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $32 + global.set $34 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 20180 + i32.const 29668 local.set $2 loop $loop_10 block $block_35 @@ -76765,764 +77826,2689 @@ local.tee $7 local.get $6 i32.gt_u - br_if $block_35 - end ;; $if_138 - local.get $2 - i32.load offset=8 - local.set $2 - br $loop_10 - end ;; $block_35 - end ;; $loop_10 - i32.const 19756 - i32.const 0 + br_if $block_35 + end ;; $if_138 + local.get $2 + i32.load offset=8 + local.set $2 + br $loop_10 + end ;; $block_35 + end ;; $loop_10 + i32.const 29244 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 29232 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 29248 + i32.const 29708 + i32.load + i32.store + local.get $6 + i32.const 0 + local.get $7 + i32.const -47 + i32.add + local.tee $2 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.get $2 + i32.add + local.tee $1 + local.get $1 + local.get $6 + i32.const 16 + i32.add + i32.lt_u + select + local.tee $2 + i32.const 27 + i32.store offset=4 + local.get $2 + i32.const 29668 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + i32.const 29676 + i64.load align=4 + i64.store offset=16 align=4 + i32.const 29668 + local.get $0 + i32.store + i32.const 29672 + local.get $3 + i32.store + i32.const 29680 + i32.const 0 + i32.store + i32.const 29676 + local.get $2 + i32.const 8 + i32.add + i32.store + local.get $2 + i32.const 24 + i32.add + local.set $0 + loop $loop_11 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 7 + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $7 + i32.lt_u + if $if_139 + local.get $1 + local.set $0 + br $loop_11 + end ;; $if_139 + end ;; $loop_11 + local.get $2 + local.get $6 + i32.ne + if $if_140 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $6 + local.get $2 + local.get $6 + i32.sub + local.tee $4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $4 + i32.store + local.get $4 + i32.const 3 + i32.shr_u + local.set $0 + local.get $4 + i32.const 256 + i32.lt_u + if $if_141 + local.get $0 + i32.const 3 + i32.shl + i32.const 29260 + i32.add + local.set $2 + i32.const 29220 + i32.load + local.tee $1 + i32.const 1 + local.get $0 + i32.shl + local.tee $0 + i32.and + if $if_142 + i32.const 29236 + i32.load + local.get $2 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $0 + i32.gt_u + if $if_143 + call $_abort + else + local.get $1 + local.set $22 + local.get $0 + local.set $5 + end ;; $if_143 + else + i32.const 29220 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + i32.const 8 + i32.add + local.set $22 + local.get $2 + local.set $5 + end ;; $if_142 + local.get $22 + local.get $6 + i32.store + local.get $5 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $5 + i32.store offset=8 + local.get $6 + local.get $2 + i32.store offset=12 + br $block_21 + end ;; $if_141 + local.get $4 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_144 (result i32) + local.get $4 + i32.const 16777215 + i32.gt_u + if $if_145 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $2 + i32.shl + local.tee $0 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $3 + local.get $4 + i32.const 14 + local.get $0 + local.get $3 + i32.shl + local.tee $1 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.tee $0 + local.get $2 + local.get $3 + i32.or + i32.or + i32.sub + local.get $1 + local.get $0 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_145 + else + i32.const 0 + end ;; $if_144 + local.tee $3 + i32.const 2 + i32.shl + i32.const 29524 + i32.add + local.set $2 + local.get $6 + local.get $3 + i32.store offset=28 + local.get $6 + i32.const 0 + i32.store offset=20 + local.get $6 + i32.const 0 + i32.store offset=16 + i32.const 29224 + i32.load + local.tee $1 + i32.const 1 + local.get $3 + i32.shl + local.tee $0 + i32.and + i32.eqz + if $if_146 + i32.const 29224 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + local.get $6 + i32.store + local.get $6 + local.get $2 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_146 + local.get $2 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_147 + local.get $0 + local.set $10 + else + block $block_36 + local.get $4 + i32.const 0 + i32.const 25 + local.get $3 + i32.const 1 + i32.shr_u + i32.sub + local.get $3 + i32.const 31 + i32.eq + select + i32.shl + local.set $2 + loop $loop_12 + local.get $0 + i32.const 16 + i32.add + local.get $2 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.tee $1 + if $if_148 + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_149 + local.get $1 + local.set $10 + br $block_36 + else + local.get $1 + local.set $0 + br $loop_12 + end ;; $if_149 + unreachable + end ;; $if_148 + end ;; $loop_12 + i32.const 29236 + i32.load + local.get $3 + i32.gt_u + if $if_150 + call $_abort + else + local.get $3 + local.get $6 + i32.store + local.get $6 + local.get $0 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_150 + end ;; $block_36 + end ;; $if_147 + i32.const 29236 + i32.load + local.tee $0 + local.get $10 + i32.le_u + local.get $0 + local.get $10 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_151 + local.get $0 + local.get $6 + i32.store offset=12 + local.get $10 + local.get $6 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=8 + local.get $6 + local.get $10 + i32.store offset=12 + local.get $6 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_151 + end ;; $if_140 + end ;; $block_21 + else + i32.const 29236 + i32.load + local.tee $1 + i32.eqz + local.get $0 + local.get $1 + i32.lt_u + i32.or + if $if_152 + i32.const 29236 local.get $0 - i32.const 8 + i32.store + end ;; $if_152 + i32.const 29668 + local.get $0 + i32.store + i32.const 29672 + local.get $3 + i32.store + i32.const 29680 + i32.const 0 + i32.store + i32.const 29256 + i32.const 29692 + i32.load + i32.store + i32.const 29252 + i32.const -1 + i32.store + i32.const 29272 + i32.const 29260 + i32.store + i32.const 29268 + i32.const 29260 + i32.store + i32.const 29280 + i32.const 29268 + i32.store + i32.const 29276 + i32.const 29268 + i32.store + i32.const 29288 + i32.const 29276 + i32.store + i32.const 29284 + i32.const 29276 + i32.store + i32.const 29296 + i32.const 29284 + i32.store + i32.const 29292 + i32.const 29284 + i32.store + i32.const 29304 + i32.const 29292 + i32.store + i32.const 29300 + i32.const 29292 + i32.store + i32.const 29312 + i32.const 29300 + i32.store + i32.const 29308 + i32.const 29300 + i32.store + i32.const 29320 + i32.const 29308 + i32.store + i32.const 29316 + i32.const 29308 + i32.store + i32.const 29328 + i32.const 29316 + i32.store + i32.const 29324 + i32.const 29316 + i32.store + i32.const 29336 + i32.const 29324 + i32.store + i32.const 29332 + i32.const 29324 + i32.store + i32.const 29344 + i32.const 29332 + i32.store + i32.const 29340 + i32.const 29332 + i32.store + i32.const 29352 + i32.const 29340 + i32.store + i32.const 29348 + i32.const 29340 + i32.store + i32.const 29360 + i32.const 29348 + i32.store + i32.const 29356 + i32.const 29348 + i32.store + i32.const 29368 + i32.const 29356 + i32.store + i32.const 29364 + i32.const 29356 + i32.store + i32.const 29376 + i32.const 29364 + i32.store + i32.const 29372 + i32.const 29364 + i32.store + i32.const 29384 + i32.const 29372 + i32.store + i32.const 29380 + i32.const 29372 + i32.store + i32.const 29392 + i32.const 29380 + i32.store + i32.const 29388 + i32.const 29380 + i32.store + i32.const 29400 + i32.const 29388 + i32.store + i32.const 29396 + i32.const 29388 + i32.store + i32.const 29408 + i32.const 29396 + i32.store + i32.const 29404 + i32.const 29396 + i32.store + i32.const 29416 + i32.const 29404 + i32.store + i32.const 29412 + i32.const 29404 + i32.store + i32.const 29424 + i32.const 29412 + i32.store + i32.const 29420 + i32.const 29412 + i32.store + i32.const 29432 + i32.const 29420 + i32.store + i32.const 29428 + i32.const 29420 + i32.store + i32.const 29440 + i32.const 29428 + i32.store + i32.const 29436 + i32.const 29428 + i32.store + i32.const 29448 + i32.const 29436 + i32.store + i32.const 29444 + i32.const 29436 + i32.store + i32.const 29456 + i32.const 29444 + i32.store + i32.const 29452 + i32.const 29444 + i32.store + i32.const 29464 + i32.const 29452 + i32.store + i32.const 29460 + i32.const 29452 + i32.store + i32.const 29472 + i32.const 29460 + i32.store + i32.const 29468 + i32.const 29460 + i32.store + i32.const 29480 + i32.const 29468 + i32.store + i32.const 29476 + i32.const 29468 + i32.store + i32.const 29488 + i32.const 29476 + i32.store + i32.const 29484 + i32.const 29476 + i32.store + i32.const 29496 + i32.const 29484 + i32.store + i32.const 29492 + i32.const 29484 + i32.store + i32.const 29504 + i32.const 29492 + i32.store + i32.const 29500 + i32.const 29492 + i32.store + i32.const 29512 + i32.const 29500 + i32.store + i32.const 29508 + i32.const 29500 + i32.store + i32.const 29520 + i32.const 29508 + i32.store + i32.const 29516 + i32.const 29508 + i32.store + i32.const 29244 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 29232 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 29248 + i32.const 29708 + i32.load + i32.store + end ;; $if_99 + i32.const 29232 + i32.load + local.tee $0 + local.get $11 + i32.gt_u + if $if_153 + i32.const 29232 + local.get $0 + local.get $11 + i32.sub + local.tee $3 + i32.store + br $block_14 + end ;; $if_153 + end ;; $block_15 + i32.const 29204 + i32.const 12 + i32.store + br $block_12 + end ;; $block_14 + i32.const 29244 + i32.const 29244 + i32.load + local.tee $0 + local.get $11 + i32.add + local.tee $1 + i32.store + local.get $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.const 3 + i32.or + i32.store offset=4 + end ;; $block_13 + local.get $17 + global.set $34 + local.get $0 + i32.const 8 + i32.add + return + end ;; $block_12 + local.get $17 + global.set $34 + i32.const 0 + ) + + (func $_free (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + local.get $0 + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.const -8 + i32.add + local.tee $5 + i32.const 29236 + i32.load + local.tee $11 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $0 + i32.const 3 + i32.and + local.tee $12 + i32.const 1 + i32.eq + if $if_1 + call $_abort + end ;; $if_1 + local.get $5 + local.get $0 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.set $7 + local.get $0 + i32.const 1 + i32.and + if $if_2 + local.get $5 + local.tee $4 + local.set $3 + local.get $2 + local.set $1 + else + block $block + local.get $5 + i32.load + local.set $10 + local.get $12 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $5 + local.get $10 + i32.sub + local.tee $0 + local.get $11 + i32.lt_u + if $if_4 + call $_abort + end ;; $if_4 + local.get $2 + local.get $10 + i32.add + local.set $5 + i32.const 29240 + i32.load + local.get $0 + i32.eq + if $if_5 + local.get $7 + i32.load offset=4 + local.tee $4 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_6 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_6 + i32.const 29228 + local.get $5 + i32.store + local.get $7 + local.get $4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $5 + i32.add + local.get $5 + i32.store + return + end ;; $if_5 + local.get $10 + i32.const 3 + i32.shr_u + local.set $2 + local.get $10 + i32.const 256 + i32.lt_u + if $if_7 + local.get $0 + i32.load offset=12 + local.set $1 + local.get $0 + i32.load offset=8 + local.tee $3 + local.get $2 + i32.const 3 + i32.shl + i32.const 29260 + i32.add + local.tee $4 + i32.ne + if $if_8 + local.get $11 + local.get $3 + i32.gt_u + if $if_9 + call $_abort + end ;; $if_9 + local.get $0 + local.get $3 + i32.load offset=12 + i32.ne + if $if_10 + call $_abort + end ;; $if_10 + end ;; $if_8 + local.get $1 + local.get $3 + i32.eq + if $if_11 + i32.const 29220 + i32.const 29220 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_11 + local.get $1 + local.get $4 + i32.eq + if $if_12 + local.get $1 + i32.const 8 + i32.add + local.set $6 + else + local.get $11 + local.get $1 + i32.gt_u + if $if_13 + call $_abort + end ;; $if_13 + local.get $1 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_14 + local.get $4 + local.set $6 + else + call $_abort + end ;; $if_14 + end ;; $if_12 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $6 + local.get $3 + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_7 + local.get $0 + i32.load offset=24 + local.set $13 + local.get $0 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.eq + if $if_15 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.const 4 + i32.add + local.tee $10 + i32.load + local.tee $2 + if $if_16 + local.get $10 + local.set $6 + else + local.get $6 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + end ;; $if_16 + loop $loop + block $block_1 + local.get $2 + i32.const 20 i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.tee $1 + local.tee $10 + i32.load + local.tee $12 + i32.eqz + if $if_17 + local.get $2 + i32.const 16 + i32.add + local.tee $10 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_17 + local.get $10 + local.set $6 + local.get $12 + local.set $2 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $6 + i32.gt_u + if $if_18 + call $_abort + else + local.get $6 + i32.const 0 + i32.store + local.get $2 + local.set $8 + end ;; $if_18 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.gt_u + if $if_19 + call $_abort + end ;; $if_19 + local.get $0 + local.get $6 + i32.load offset=12 + i32.ne + if $if_20 + call $_abort + end ;; $if_20 + local.get $2 + i32.load offset=8 + local.get $0 + i32.eq + if $if_21 + local.get $6 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $6 + i32.store offset=8 + local.get $2 + local.set $8 + else + call $_abort + end ;; $if_21 + end ;; $if_15 + local.get $13 + if $if_22 + local.get $0 + i32.load offset=28 + local.tee $2 + i32.const 2 + i32.shl + i32.const 29524 + i32.add + local.tee $6 + i32.load + local.get $0 + i32.eq + if $if_23 + local.get $6 + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_24 + i32.const 29224 + i32.const 29224 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_24 + else + i32.const 29236 + i32.load + local.get $13 + i32.gt_u + if $if_25 + call $_abort + else + local.get $13 + i32.const 16 + i32.add + local.tee $2 + local.get $13 + i32.const 20 + i32.add + local.get $2 + i32.load + local.get $0 + i32.eq + select + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_26 local.get $0 - i32.add local.tee $4 - i32.store - i32.const 19744 - local.get $3 - i32.const -40 - i32.add - local.tee $2 - local.get $1 - i32.sub - local.tee $1 - i32.store - local.get $4 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_26 + end ;; $if_25 + end ;; $if_23 + i32.const 29236 + i32.load + local.tee $6 + local.get $8 + i32.gt_u + if $if_27 + call $_abort + end ;; $if_27 + local.get $8 + local.get $13 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $2 + if $if_28 + local.get $6 + local.get $2 + i32.gt_u + if $if_29 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=16 + local.get $2 + local.get $8 + i32.store offset=24 + end ;; $if_29 + end ;; $if_28 + local.get $0 + i32.load offset=20 + local.tee $2 + if $if_30 + i32.const 29236 + i32.load + local.get $2 + i32.gt_u + if $if_31 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=20 + local.get $2 + local.get $8 + i32.store offset=24 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_31 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_30 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_22 + end ;; $block + end ;; $if_2 + local.get $4 + local.get $7 + i32.ge_u + if $if_32 + call $_abort + end ;; $if_32 + local.get $7 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.and + i32.eqz + if $if_33 + call $_abort + end ;; $if_33 + local.get $0 + i32.const 2 + i32.and + if $if_34 + local.get $7 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $3 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $4 + i32.add + local.get $1 + i32.store + else + i32.const 29244 + i32.load + local.get $7 + i32.eq + if $if_35 + i32.const 29232 + i32.const 29232 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 29244 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $3 + i32.const 29240 + i32.load + i32.ne + if $if_36 + return + end ;; $if_36 + i32.const 29240 + i32.const 0 + i32.store + i32.const 29228 + i32.const 0 + i32.store + return + end ;; $if_35 + i32.const 29240 + i32.load + local.get $7 + i32.eq + if $if_37 + i32.const 29228 + i32.const 29228 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 29240 + local.get $4 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $4 + i32.add + local.get $0 + i32.store + return + end ;; $if_37 + local.get $0 + i32.const -8 + i32.and + local.get $1 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $6 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_38 + local.get $7 + i32.load offset=12 + local.set $1 + local.get $7 + i32.load offset=8 + local.tee $2 + local.get $6 + i32.const 3 + i32.shl + i32.const 29260 + i32.add + local.tee $0 + i32.ne + if $if_39 + i32.const 29236 + i32.load + local.get $2 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $7 + local.get $2 + i32.load offset=12 + i32.ne + if $if_41 + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $1 + local.get $2 + i32.eq + if $if_42 + i32.const 29220 + i32.const 29220 + i32.load + i32.const 1 + local.get $6 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_42 + local.get $0 + local.get $1 + i32.eq + if $if_43 + local.get $1 + i32.const 8 + i32.add + local.set $16 + else + i32.const 29236 + i32.load + local.get $1 + i32.gt_u + if $if_44 + call $_abort + end ;; $if_44 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $7 + i32.eq + if $if_45 + local.get $0 + local.set $16 + else + call $_abort + end ;; $if_45 + end ;; $if_43 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $16 + local.get $2 + i32.store + else + local.get $7 + i32.load offset=24 + local.set $8 + local.get $7 + i32.load offset=12 + local.tee $0 + local.get $7 + i32.eq + if $if_46 + block $block_3 + local.get $7 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.tee $0 + if $if_47 local.get $2 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 19760 - i32.const 20220 + local.set $1 + else + local.get $1 i32.load - i32.store - local.get $6 - i32.const 0 - local.get $7 - i32.const -47 - i32.add - local.tee $2 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_47 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $2 + i32.load + local.tee $6 + i32.eqz + if $if_48 + local.get $0 + i32.const 16 + i32.add + local.tee $2 + i32.load + local.tee $6 + i32.eqz + br_if $block_4 + end ;; $if_48 + local.get $2 + local.set $1 + local.get $6 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + i32.const 29236 + i32.load + local.get $1 + i32.gt_u + if $if_49 + call $_abort + else local.get $1 - i32.const 7 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_49 + end ;; $block_3 + else + i32.const 29236 + i32.load + local.get $7 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_50 + call $_abort + end ;; $if_50 + local.get $7 + local.get $1 + i32.load offset=12 + i32.ne + if $if_51 + call $_abort + end ;; $if_51 + local.get $0 + i32.load offset=8 + local.get $7 + i32.eq + if $if_52 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_52 + end ;; $if_46 + local.get $8 + if $if_53 + local.get $7 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 29524 + i32.add + local.tee $1 + i32.load + local.get $7 + i32.eq + if $if_54 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_55 + i32.const 29224 + i32.const 29224 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor i32.and - select - local.get $2 - i32.add - local.tee $1 - local.get $1 - local.get $6 + i32.store + br $block_2 + end ;; $if_55 + else + i32.const 29236 + i32.load + local.get $8 + i32.gt_u + if $if_56 + call $_abort + else + local.get $8 i32.const 16 i32.add - i32.lt_u - select - local.tee $2 - i32.const 27 - i32.store offset=4 - local.get $2 - i32.const 20180 - i64.load align=4 - i64.store offset=8 align=4 - local.get $2 - i32.const 20188 - i64.load align=4 - i64.store offset=16 align=4 - i32.const 20180 - local.get $0 - i32.store - i32.const 20184 - local.get $3 - i32.store - i32.const 20192 - i32.const 0 - i32.store - i32.const 20188 - local.get $2 - i32.const 8 + local.tee $0 + local.get $8 + i32.const 20 i32.add + local.get $0 + i32.load + local.get $7 + i32.eq + select + local.get $9 i32.store - local.get $2 - i32.const 24 - i32.add - local.set $0 - loop $loop_11 - local.get $0 - i32.const 4 - i32.add - local.tee $1 - i32.const 7 - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $7 - i32.lt_u - if $if_139 - local.get $1 - local.set $0 - br $loop_11 - end ;; $if_139 - end ;; $loop_11 - local.get $2 - local.get $6 - i32.ne - if $if_140 - local.get $2 - local.get $2 - i32.load offset=4 - i32.const -2 - i32.and - i32.store offset=4 - local.get $6 - local.get $2 - local.get $6 - i32.sub - local.tee $4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $4 - i32.store - local.get $4 - i32.const 3 - i32.shr_u - local.set $0 - local.get $4 - i32.const 256 - i32.lt_u - if $if_141 - local.get $0 - i32.const 3 - i32.shl - i32.const 19772 - i32.add - local.set $2 - i32.const 19732 - i32.load - local.tee $1 - i32.const 1 - local.get $0 - i32.shl - local.tee $0 - i32.and - if $if_142 - i32.const 19748 - i32.load - local.get $2 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.tee $0 - i32.gt_u - if $if_143 - call $_abort - else - local.get $1 - local.set $22 - local.get $0 - local.set $5 - end ;; $if_143 - else - i32.const 19732 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - i32.const 8 - i32.add - local.set $22 - local.get $2 - local.set $5 - end ;; $if_142 - local.get $22 - local.get $6 - i32.store - local.get $5 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $5 - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=12 - br $block_21 - end ;; $if_141 + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_56 + end ;; $if_54 + i32.const 29236 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_57 + call $_abort + end ;; $if_57 + local.get $9 + local.get $8 + i32.store offset=24 + local.get $7 + i32.load offset=16 + local.tee $0 + if $if_58 + local.get $1 + local.get $0 + i32.gt_u + if $if_59 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_59 + end ;; $if_58 + local.get $7 + i32.load offset=20 + local.tee $0 + if $if_60 + i32.const 29236 + i32.load + local.get $0 + i32.gt_u + if $if_61 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_61 + end ;; $if_60 + end ;; $if_53 + end ;; $if_38 + end ;; $block_2 + local.get $3 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $4 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 29240 + i32.load + local.get $3 + i32.eq + if $if_62 (result i32) + i32.const 29228 + local.get $5 + i32.store + return + else + local.get $5 + end ;; $if_62 + local.set $1 + end ;; $if_34 + local.get $1 + i32.const 3 + i32.shr_u + local.set $4 + local.get $1 + i32.const 256 + i32.lt_u + if $if_63 + local.get $4 + i32.const 3 + i32.shl + i32.const 29260 + i32.add + local.set $0 + i32.const 29220 + i32.load + local.tee $1 + i32.const 1 + local.get $4 + i32.shl + local.tee $4 + i32.and + if $if_64 + i32.const 29236 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.tee $1 + i32.gt_u + if $if_65 + call $_abort + else + local.get $4 + local.set $17 + local.get $1 + local.set $15 + end ;; $if_65 + else + i32.const 29220 + local.get $1 + local.get $4 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $17 + local.get $0 + local.set $15 + end ;; $if_64 + local.get $17 + local.get $3 + i32.store + local.get $15 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $15 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=12 + return + end ;; $if_63 + local.get $1 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_66 (result i32) + local.get $1 + i32.const 16777215 + i32.gt_u + if $if_67 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $5 + i32.shl + local.tee $4 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $4 + local.get $0 + i32.shl + local.tee $2 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $4 + local.get $1 + i32.const 14 + local.get $0 + local.get $5 + i32.or + local.get $4 + i32.or + i32.sub + local.get $2 + local.get $4 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_67 + else + i32.const 0 + end ;; $if_66 + local.tee $4 + i32.const 2 + i32.shl + i32.const 29524 + i32.add + local.set $0 + local.get $3 + local.get $4 + i32.store offset=28 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 0 + i32.store offset=16 + i32.const 29224 + i32.load + local.tee $5 + i32.const 1 + local.get $4 + i32.shl + local.tee $2 + i32.and + if $if_68 + block $block_5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_69 + local.get $0 + local.set $14 + else + block $block_6 + local.get $1 + i32.const 0 + i32.const 25 + local.get $4 + i32.const 1 + i32.shr_u + i32.sub + local.get $4 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $5 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + local.tee $4 + if $if_70 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $4 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_71 local.get $4 - i32.const 8 - i32.shr_u - local.tee $0 - if $if_144 (result i32) - local.get $4 - i32.const 16777215 - i32.gt_u - if $if_145 (result i32) - i32.const 31 - else - local.get $0 - local.get $0 - i32.const 1048320 - i32.add - i32.const 16 - i32.shr_u - i32.const 8 - i32.and - local.tee $2 - i32.shl - local.tee $0 - i32.const 520192 - i32.add - i32.const 16 - i32.shr_u - i32.const 4 - i32.and - local.set $3 - local.get $4 - i32.const 14 - local.get $0 - local.get $3 - i32.shl - local.tee $1 - i32.const 245760 - i32.add - i32.const 16 - i32.shr_u - i32.const 2 - i32.and - local.tee $0 - local.get $2 - local.get $3 - i32.or - i32.or - i32.sub - local.get $1 - local.get $0 - i32.shl - i32.const 15 - i32.shr_u - i32.add - local.tee $0 - i32.const 7 - i32.add - i32.shr_u - i32.const 1 - i32.and - local.get $0 - i32.const 1 - i32.shl - i32.or - end ;; $if_145 - else - i32.const 0 - end ;; $if_144 - local.tee $3 - i32.const 2 - i32.shl - i32.const 20036 - i32.add - local.set $2 - local.get $6 + local.set $14 + br $block_6 + else + local.get $4 + local.set $0 + br $loop_1 + end ;; $if_71 + unreachable + end ;; $if_70 + end ;; $loop_1 + i32.const 29236 + i32.load + local.get $2 + i32.gt_u + if $if_72 + call $_abort + else + local.get $2 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + br $block_5 + end ;; $if_72 + end ;; $block_6 + end ;; $if_69 + i32.const 29236 + i32.load + local.tee $0 + local.get $14 + i32.le_u + local.get $0 + local.get $14 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_73 + local.get $0 + local.get $3 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + local.get $14 + i32.store offset=12 + local.get $3 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_73 + end ;; $block_5 + else + i32.const 29224 + local.get $2 + local.get $5 + i32.or + i32.store + local.get $0 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + end ;; $if_68 + i32.const 29252 + i32.const 29252 + i32.load + i32.const -1 + i32.add + local.tee $0 + i32.store + local.get $0 + if $if_74 + return + end ;; $if_74 + i32.const 29676 + local.set $0 + loop $loop_2 + local.get $0 + i32.load + local.tee $4 + i32.const 8 + i32.add + local.set $0 + local.get $4 + br_if $loop_2 + end ;; $loop_2 + i32.const 29252 + i32.const -1 + i32.store + ) + + (func $_realloc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 29204 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 + ) + + (func $_try_realloc_chunk (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.tee $4 + local.get $0 + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 29236 + i32.load + local.tee $10 + local.get $0 + i32.le_u + i32.and + i32.and + i32.eqz + if $if + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 29700 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $3 + call $_dispose_chunk + local.get $0 + return + end ;; $if_4 + i32.const 29244 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 29232 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 + i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 29244 + local.get $2 + i32.store + i32.const 29232 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 29240 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 29228 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 29228 + local.get $3 + i32.store + i32.const 29240 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 29260 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 29220 + i32.const 29220 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 + block $block_1 + local.get $4 + i32.const 16 + i32.add + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 local.get $3 - i32.store offset=28 - local.get $6 - i32.const 0 - i32.store offset=20 - local.get $6 - i32.const 0 - i32.store offset=16 - i32.const 19736 + i32.const 20 + i32.add + local.tee $6 i32.load - local.tee $1 - i32.const 1 - local.get $3 - i32.shl - local.tee $0 - i32.and + local.tee $8 i32.eqz - if $if_146 - i32.const 19736 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - local.get $6 - i32.store - local.get $6 - local.get $2 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_146 - local.get $2 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_147 - local.get $0 - local.set $10 - else - block $block_36 - local.get $4 - i32.const 0 - i32.const 25 - local.get $3 - i32.const 1 - i32.shr_u - i32.sub - local.get $3 - i32.const 31 - i32.eq - select - i32.shl - local.set $2 - loop $loop_12 - local.get $0 - i32.const 16 - i32.add - local.get $2 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $3 - i32.load - local.tee $1 - if $if_148 - local.get $2 - i32.const 1 - i32.shl - local.set $2 - local.get $1 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_149 - local.get $1 - local.set $10 - br $block_36 - else - local.get $1 - local.set $0 - br $loop_12 - end ;; $if_149 - unreachable - end ;; $if_148 - end ;; $loop_12 - i32.const 19748 - i32.load - local.get $3 - i32.gt_u - if $if_150 - call $_abort - else - local.get $3 - local.get $6 - i32.store - local.get $6 - local.get $0 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_150 - end ;; $block_36 - end ;; $if_147 - i32.const 19748 - i32.load - local.tee $0 - local.get $10 - i32.le_u - local.get $0 - local.get $10 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_151 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $10 - local.get $6 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $6 - local.get $10 - i32.store offset=12 - local.get $6 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_151 - end ;; $if_140 - end ;; $block_21 - else - i32.const 19748 - i32.load - local.tee $1 - i32.eqz - local.get $0 - local.get $1 - i32.lt_u - i32.or - if $if_152 - i32.const 19748 - local.get $0 + if $if_19 + local.get $3 + i32.const 16 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 i32.store - end ;; $if_152 - i32.const 20180 - local.get $0 - i32.store - i32.const 20184 + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 local.get $3 - i32.store - i32.const 20192 - i32.const 0 - i32.store - i32.const 19768 - i32.const 20204 - i32.load - i32.store - i32.const 19764 - i32.const -1 - i32.store - i32.const 19784 - i32.const 19772 - i32.store - i32.const 19780 - i32.const 19772 - i32.store - i32.const 19792 - i32.const 19780 - i32.store - i32.const 19788 - i32.const 19780 - i32.store - i32.const 19800 - i32.const 19788 - i32.store - i32.const 19796 - i32.const 19788 - i32.store - i32.const 19808 - i32.const 19796 - i32.store - i32.const 19804 - i32.const 19796 - i32.store - i32.const 19816 - i32.const 19804 - i32.store - i32.const 19812 - i32.const 19804 - i32.store - i32.const 19824 - i32.const 19812 - i32.store - i32.const 19820 - i32.const 19812 - i32.store - i32.const 19832 - i32.const 19820 - i32.store - i32.const 19828 - i32.const 19820 - i32.store - i32.const 19840 - i32.const 19828 - i32.store - i32.const 19836 - i32.const 19828 - i32.store - i32.const 19848 - i32.const 19836 - i32.store - i32.const 19844 - i32.const 19836 - i32.store - i32.const 19856 - i32.const 19844 - i32.store - i32.const 19852 - i32.const 19844 - i32.store - i32.const 19864 - i32.const 19852 - i32.store - i32.const 19860 - i32.const 19852 - i32.store - i32.const 19872 - i32.const 19860 - i32.store - i32.const 19868 - i32.const 19860 - i32.store - i32.const 19880 - i32.const 19868 - i32.store - i32.const 19876 - i32.const 19868 - i32.store - i32.const 19888 - i32.const 19876 - i32.store - i32.const 19884 - i32.const 19876 - i32.store - i32.const 19896 - i32.const 19884 - i32.store - i32.const 19892 - i32.const 19884 - i32.store - i32.const 19904 - i32.const 19892 - i32.store - i32.const 19900 - i32.const 19892 - i32.store - i32.const 19912 - i32.const 19900 - i32.store - i32.const 19908 - i32.const 19900 - i32.store - i32.const 19920 - i32.const 19908 - i32.store - i32.const 19916 - i32.const 19908 - i32.store - i32.const 19928 - i32.const 19916 - i32.store - i32.const 19924 - i32.const 19916 - i32.store - i32.const 19936 - i32.const 19924 - i32.store - i32.const 19932 - i32.const 19924 - i32.store - i32.const 19944 - i32.const 19932 - i32.store - i32.const 19940 - i32.const 19932 - i32.store - i32.const 19952 - i32.const 19940 - i32.store - i32.const 19948 - i32.const 19940 - i32.store - i32.const 19960 - i32.const 19948 - i32.store - i32.const 19956 - i32.const 19948 - i32.store - i32.const 19968 - i32.const 19956 - i32.store - i32.const 19964 - i32.const 19956 - i32.store - i32.const 19976 - i32.const 19964 - i32.store - i32.const 19972 - i32.const 19964 - i32.store - i32.const 19984 - i32.const 19972 - i32.store - i32.const 19980 - i32.const 19972 - i32.store - i32.const 19992 - i32.const 19980 - i32.store - i32.const 19988 - i32.const 19980 - i32.store - i32.const 20000 - i32.const 19988 - i32.store - i32.const 19996 - i32.const 19988 - i32.store - i32.const 20008 - i32.const 19996 - i32.store - i32.const 20004 - i32.const 19996 - i32.store - i32.const 20016 - i32.const 20004 - i32.store - i32.const 20012 - i32.const 20004 - i32.store - i32.const 20024 - i32.const 20012 - i32.store - i32.const 20020 - i32.const 20012 - i32.store - i32.const 20032 - i32.const 20020 - i32.store - i32.const 20028 - i32.const 20020 - i32.store - i32.const 19756 - i32.const 0 - local.get $0 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.tee $1 - local.get $0 - i32.add - local.tee $4 - i32.store - i32.const 19744 + i32.store offset=12 local.get $3 - i32.const -40 - i32.add - local.tee $2 - local.get $1 - i32.sub - local.tee $1 - i32.store - local.get $4 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 local.get $2 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 19760 - i32.const 20220 - i32.load + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 29524 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 i32.store - end ;; $if_99 - i32.const 19744 + local.get $5 + i32.eqz + if $if_26 + i32.const 29224 + i32.const 29224 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 29236 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 29236 i32.load - local.tee $0 - local.get $11 + local.tee $2 + local.get $5 i32.gt_u - if $if_153 - i32.const 19744 - local.get $0 - local.get $11 - i32.sub - local.tee $3 - i32.store - br $block_14 - end ;; $if_153 - end ;; $block_15 - i32.const 19716 - i32.const 12 - i32.store - br $block_12 - end ;; $block_14 - i32.const 19756 - i32.const 19756 - i32.load - local.tee $0 + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 29236 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 local.get $11 i32.add local.tee $1 - i32.store local.get $1 - local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 i32.or i32.store offset=4 local.get $0 local.get $11 - i32.const 3 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 i32.or i32.store offset=4 - end ;; $block_13 - local.get $17 - global.set $32 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 local.get $0 - i32.const 8 - i32.add return - end ;; $block_12 - local.get $17 - global.set $32 + end ;; $block i32.const 0 ) - (func $_free (type $0) + (func $_dispose_chunk (type $1) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -77537,670 +80523,624 @@ (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) - (local $17 i32) - local.get $0 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.const -8 - i32.add - local.tee $5 - i32.const 19748 - i32.load - local.tee $11 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $0 - i32.const -4 - i32.add - i32.load - local.tee $0 - i32.const 3 - i32.and - local.tee $12 - i32.const 1 - i32.eq - if $if_1 - call $_abort - end ;; $if_1 - local.get $5 local.get $0 - i32.const -8 - i32.and - local.tee $2 + local.get $1 i32.add - local.set $7 + local.set $6 local.get $0 + i32.load offset=4 + local.tee $8 i32.const 1 i32.and - if $if_2 - local.get $5 - local.tee $4 - local.set $3 - local.get $2 - local.set $1 + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 else block $block - local.get $5 + local.get $0 i32.load - local.set $10 - local.get $12 + local.set $4 + local.get $8 + i32.const 3 + i32.and i32.eqz - if $if_3 + if $if_0 return - end ;; $if_3 - local.get $5 - local.get $10 + end ;; $if_0 + local.get $0 + local.get $4 i32.sub local.tee $0 - local.get $11 + i32.const 29236 + i32.load + local.tee $11 i32.lt_u - if $if_4 + if $if_1 call $_abort - end ;; $if_4 - local.get $2 - local.get $10 + end ;; $if_1 + local.get $1 + local.get $4 i32.add - local.set $5 - i32.const 19752 + local.set $1 + i32.const 29240 i32.load local.get $0 i32.eq - if $if_5 - local.get $7 + if $if_2 + local.get $6 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 3 i32.and i32.const 3 i32.ne - if $if_6 + if $if_3 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_6 - i32.const 19740 - local.get $5 + end ;; $if_3 + i32.const 29228 + local.get $1 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $5 i32.const -2 i32.and i32.store offset=4 local.get $0 - local.get $5 + local.get $1 i32.const 1 i32.or i32.store offset=4 - local.get $0 - local.get $5 - i32.add - local.get $5 + local.get $6 + local.get $1 i32.store return - end ;; $if_5 - local.get $10 + end ;; $if_2 + local.get $4 i32.const 3 i32.shr_u - local.set $2 - local.get $10 + local.set $8 + local.get $4 i32.const 256 i32.lt_u - if $if_7 + if $if_4 local.get $0 i32.load offset=12 - local.set $1 + local.set $2 local.get $0 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $4 + local.get $8 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add - local.tee $4 + local.tee $5 i32.ne - if $if_8 + if $if_5 local.get $11 - local.get $3 + local.get $4 i32.gt_u - if $if_9 + if $if_6 call $_abort - end ;; $if_9 + end ;; $if_6 local.get $0 - local.get $3 + local.get $4 i32.load offset=12 i32.ne - if $if_10 + if $if_7 call $_abort - end ;; $if_10 - end ;; $if_8 - local.get $1 - local.get $3 + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 i32.eq - if $if_11 - i32.const 19732 - i32.const 19732 + if $if_8 + i32.const 29220 + i32.const 29220 i32.load i32.const 1 - local.get $2 + local.get $8 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_11 - local.get $1 - local.get $4 + end ;; $if_8 + local.get $2 + local.get $5 i32.eq - if $if_12 - local.get $1 + if $if_9 + local.get $2 i32.const 8 i32.add - local.set $6 + local.set $3 else local.get $11 - local.get $1 + local.get $2 i32.gt_u - if $if_13 + if $if_10 call $_abort - end ;; $if_13 - local.get $1 + end ;; $if_10 + local.get $2 i32.const 8 i32.add - local.tee $4 + local.tee $5 i32.load local.get $0 i32.eq - if $if_14 - local.get $4 - local.set $6 + if $if_11 + local.get $5 + local.set $3 else call $_abort - end ;; $if_14 - end ;; $if_12 - local.get $3 - local.get $1 + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 i32.store offset=12 - local.get $6 local.get $3 + local.get $4 i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_7 + end ;; $if_4 local.get $0 i32.load offset=24 - local.set $13 + local.set $10 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $0 i32.eq - if $if_15 + if $if_12 block $block_0 local.get $0 i32.const 16 i32.add - local.tee $6 + local.tee $4 i32.const 4 i32.add - local.tee $10 + local.tee $8 i32.load - local.tee $2 - if $if_16 - local.get $10 - local.set $6 + local.tee $3 + if $if_13 + local.get $8 + local.set $4 else - local.get $6 + local.get $4 i32.load - local.tee $2 + local.tee $3 i32.eqz br_if $block_0 - end ;; $if_16 + end ;; $if_13 loop $loop block $block_1 - local.get $2 + local.get $3 i32.const 20 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz - if $if_17 - local.get $2 + if $if_14 + local.get $3 i32.const 16 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz br_if $block_1 - end ;; $if_17 - local.get $10 - local.set $6 + end ;; $if_14 + local.get $8 + local.set $4 local.get $12 - local.set $2 + local.set $3 br $loop end ;; $block_1 end ;; $loop local.get $11 - local.get $6 + local.get $4 i32.gt_u - if $if_18 + if $if_15 call $_abort else - local.get $6 + local.get $4 i32.const 0 i32.store - local.get $2 - local.set $8 - end ;; $if_18 + local.get $3 + local.set $7 + end ;; $if_15 end ;; $block_0 else local.get $11 local.get $0 i32.load offset=8 - local.tee $6 + local.tee $4 i32.gt_u - if $if_19 + if $if_16 call $_abort - end ;; $if_19 + end ;; $if_16 local.get $0 - local.get $6 + local.get $4 i32.load offset=12 i32.ne - if $if_20 + if $if_17 call $_abort - end ;; $if_20 - local.get $2 + end ;; $if_17 + local.get $3 i32.load offset=8 local.get $0 i32.eq - if $if_21 - local.get $6 - local.get $2 + if $if_18 + local.get $4 + local.get $3 i32.store offset=12 - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.store offset=8 - local.get $2 - local.set $8 + local.get $3 + local.set $7 else call $_abort - end ;; $if_21 - end ;; $if_15 - local.get $13 - if $if_22 + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 local.get $0 i32.load offset=28 - local.tee $2 + local.tee $3 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add - local.tee $6 + local.tee $4 i32.load local.get $0 i32.eq - if $if_23 - local.get $6 - local.get $8 + if $if_20 + local.get $4 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_24 - i32.const 19736 - i32.const 19736 + if $if_21 + i32.const 29224 + i32.const 29224 i32.load i32.const 1 - local.get $2 + local.get $3 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_24 + end ;; $if_21 else - i32.const 19748 + i32.const 29236 i32.load - local.get $13 + local.get $10 i32.gt_u - if $if_25 + if $if_22 call $_abort else - local.get $13 + local.get $10 i32.const 16 i32.add - local.tee $2 - local.get $13 + local.tee $3 + local.get $10 i32.const 20 i32.add - local.get $2 + local.get $3 i32.load local.get $0 i32.eq select - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_26 + if $if_23 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_26 - end ;; $if_25 - end ;; $if_23 - i32.const 19748 + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 29236 i32.load - local.tee $6 - local.get $8 + local.tee $4 + local.get $7 i32.gt_u - if $if_27 + if $if_24 call $_abort - end ;; $if_27 - local.get $8 - local.get $13 + end ;; $if_24 + local.get $7 + local.get $10 i32.store offset=24 local.get $0 i32.load offset=16 - local.tee $2 - if $if_28 - local.get $6 - local.get $2 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 i32.gt_u - if $if_29 + if $if_26 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=16 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 - end ;; $if_29 - end ;; $if_28 + end ;; $if_26 + end ;; $if_25 local.get $0 i32.load offset=20 - local.tee $2 - if $if_30 - i32.const 19748 + local.tee $3 + if $if_27 + i32.const 29236 i32.load - local.get $2 + local.get $3 i32.gt_u - if $if_31 + if $if_28 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=20 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_31 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_30 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_22 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 end ;; $block - end ;; $if_2 - local.get $4 - local.get $7 - i32.ge_u - if $if_32 + end ;; $if + local.get $6 + i32.const 29236 + i32.load + local.tee $8 + i32.lt_u + if $if_29 call $_abort - end ;; $if_32 - local.get $7 + end ;; $if_29 + local.get $6 i32.load offset=4 local.tee $0 - i32.const 1 - i32.and - i32.eqz - if $if_33 - call $_abort - end ;; $if_33 - local.get $0 i32.const 2 i32.and - if $if_34 - local.get $7 + if $if_30 + local.get $6 local.get $0 i32.const -2 i32.and i32.store offset=4 - local.get $3 - local.get $1 + local.get $2 + local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $1 - local.get $4 + local.get $2 + local.get $5 i32.add - local.get $1 + local.get $5 i32.store else - i32.const 19756 + i32.const 29244 i32.load - local.get $7 + local.get $6 i32.eq - if $if_35 - i32.const 19744 - i32.const 19744 + if $if_31 + i32.const 29232 + i32.const 29232 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 19756 - local.get $3 + i32.const 29244 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 - local.get $3 - i32.const 19752 + local.get $2 + i32.const 29240 i32.load i32.ne - if $if_36 + if $if_32 return - end ;; $if_36 - i32.const 19752 + end ;; $if_32 + i32.const 29240 i32.const 0 i32.store - i32.const 19740 + i32.const 29228 i32.const 0 i32.store return - end ;; $if_35 - i32.const 19752 + end ;; $if_31 + i32.const 29240 i32.load - local.get $7 + local.get $6 i32.eq - if $if_37 - i32.const 19740 - i32.const 19740 + if $if_33 + i32.const 29228 + i32.const 29228 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 19752 - local.get $4 + i32.const 29240 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $2 i32.add local.get $0 i32.store return - end ;; $if_37 + end ;; $if_33 local.get $0 i32.const -8 i32.and - local.get $1 + local.get $5 i32.add local.set $5 local.get $0 i32.const 3 i32.shr_u - local.set $6 + local.set $4 block $block_2 local.get $0 i32.const 256 i32.lt_u - if $if_38 - local.get $7 + if $if_34 + local.get $6 i32.load offset=12 local.set $1 - local.get $7 - i32.load offset=8 - local.tee $2 local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.tee $0 i32.ne - if $if_39 - i32.const 19748 - i32.load - local.get $2 + if $if_35 + local.get $8 + local.get $3 i32.gt_u - if $if_40 + if $if_36 call $_abort - end ;; $if_40 - local.get $7 - local.get $2 + end ;; $if_36 + local.get $6 + local.get $3 i32.load offset=12 i32.ne - if $if_41 + if $if_37 call $_abort - end ;; $if_41 - end ;; $if_39 + end ;; $if_37 + end ;; $if_35 local.get $1 - local.get $2 + local.get $3 i32.eq - if $if_42 - i32.const 19732 - i32.const 19732 + if $if_38 + i32.const 29220 + i32.const 29220 i32.load i32.const 1 - local.get $6 + local.get $4 i32.shl i32.const -1 i32.xor i32.and i32.store br $block_2 - end ;; $if_42 + end ;; $if_38 local.get $0 local.get $1 i32.eq - if $if_43 + if $if_39 local.get $1 i32.const 8 i32.add - local.set $16 + local.set $14 else - i32.const 19748 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_44 + if $if_40 call $_abort - end ;; $if_44 + end ;; $if_40 local.get $1 i32.const 8 i32.add local.tee $0 i32.load - local.get $7 + local.get $6 i32.eq - if $if_45 + if $if_41 local.get $0 - local.set $16 + local.set $14 else call $_abort - end ;; $if_45 - end ;; $if_43 - local.get $2 + end ;; $if_41 + end ;; $if_39 + local.get $3 local.get $1 i32.store offset=12 - local.get $16 - local.get $2 + local.get $14 + local.get $3 i32.store else - local.get $7 + local.get $6 i32.load offset=24 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=12 local.tee $0 - local.get $7 + local.get $6 i32.eq - if $if_46 + if $if_42 block $block_3 - local.get $7 + local.get $6 i32.const 16 i32.add local.tee $1 i32.const 4 i32.add - local.tee $2 + local.tee $3 i32.load local.tee $0 - if $if_47 - local.get $2 + if $if_43 + local.get $3 local.set $1 else local.get $1 @@ -78208,38 +81148,37 @@ local.tee $0 i32.eqz br_if $block_3 - end ;; $if_47 + end ;; $if_43 loop $loop_0 block $block_4 local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz - if $if_48 + if $if_44 local.get $0 i32.const 16 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz br_if $block_4 - end ;; $if_48 - local.get $2 + end ;; $if_44 + local.get $3 local.set $1 - local.get $6 + local.get $4 local.set $0 br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 19748 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_49 + if $if_45 call $_abort else local.get $1 @@ -78247,30 +81186,29 @@ i32.store local.get $0 local.set $9 - end ;; $if_49 + end ;; $if_45 end ;; $block_3 else - i32.const 19748 - i32.load - local.get $7 + local.get $8 + local.get $6 i32.load offset=8 local.tee $1 i32.gt_u - if $if_50 + if $if_46 call $_abort - end ;; $if_50 - local.get $7 + end ;; $if_46 + local.get $6 local.get $1 i32.load offset=12 i32.ne - if $if_51 + if $if_47 call $_abort - end ;; $if_51 + end ;; $if_47 local.get $0 i32.load offset=8 - local.get $7 + local.get $6 i32.eq - if $if_52 + if $if_48 local.get $1 local.get $0 i32.store offset=12 @@ -78281,30 +81219,30 @@ local.set $9 else call $_abort - end ;; $if_52 - end ;; $if_46 - local.get $8 - if $if_53 - local.get $7 + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 i32.load offset=28 local.tee $0 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.tee $1 i32.load - local.get $7 + local.get $6 i32.eq - if $if_54 + if $if_50 local.get $1 local.get $9 i32.store local.get $9 i32.eqz - if $if_55 - i32.const 19736 - i32.const 19736 + if $if_51 + i32.const 29224 + i32.const 29224 i32.load i32.const 1 local.get $0 @@ -78314,25 +81252,25 @@ i32.and i32.store br $block_2 - end ;; $if_55 + end ;; $if_51 else - i32.const 19748 + i32.const 29236 i32.load - local.get $8 + local.get $7 i32.gt_u - if $if_56 + if $if_52 call $_abort else - local.get $8 + local.get $7 i32.const 16 i32.add local.tee $0 - local.get $8 + local.get $7 i32.const 20 i32.add local.get $0 i32.load - local.get $7 + local.get $6 i32.eq select local.get $9 @@ -78340,27 +81278,27 @@ local.get $9 i32.eqz br_if $block_2 - end ;; $if_56 - end ;; $if_54 - i32.const 19748 + end ;; $if_52 + end ;; $if_50 + i32.const 29236 i32.load local.tee $1 local.get $9 i32.gt_u - if $if_57 + if $if_53 call $_abort - end ;; $if_57 + end ;; $if_53 local.get $9 - local.get $8 - i32.store offset=24 local.get $7 + i32.store offset=24 + local.get $6 i32.load offset=16 local.tee $0 - if $if_58 + if $if_54 local.get $1 local.get $0 i32.gt_u - if $if_59 + if $if_55 call $_abort else local.get $9 @@ -78369,17 +81307,17 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_59 - end ;; $if_58 - local.get $7 + end ;; $if_55 + end ;; $if_54 + local.get $6 i32.load offset=20 local.tee $0 - if $if_60 - i32.const 19748 + if $if_56 + i32.const 29236 i32.load local.get $0 i32.gt_u - if $if_61 + if $if_57 call $_abort else local.get $9 @@ -78388,111 +81326,108 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_61 - end ;; $if_60 - end ;; $if_53 - end ;; $if_38 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 end ;; $block_2 - local.get $3 + local.get $2 local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $4 + local.get $2 local.get $5 i32.add local.get $5 i32.store - i32.const 19752 + i32.const 29240 i32.load - local.get $3 + local.get $2 i32.eq - if $if_62 (result i32) - i32.const 19740 + if $if_58 + i32.const 29228 local.get $5 i32.store return - else - local.get $5 - end ;; $if_62 - local.set $1 - end ;; $if_34 - local.get $1 + end ;; $if_58 + end ;; $if_30 + local.get $5 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 256 i32.lt_u - if $if_63 - local.get $4 + if $if_59 + local.get $1 i32.const 3 i32.shl - i32.const 19772 + i32.const 29260 i32.add local.set $0 - i32.const 19732 + i32.const 29220 i32.load - local.tee $1 + local.tee $5 i32.const 1 - local.get $4 + local.get $1 i32.shl - local.tee $4 + local.tee $1 i32.and - if $if_64 - i32.const 19748 + if $if_60 + i32.const 29236 i32.load local.get $0 i32.const 8 i32.add - local.tee $4 - i32.load local.tee $1 + i32.load + local.tee $5 i32.gt_u - if $if_65 + if $if_61 call $_abort else - local.get $4 - local.set $17 local.get $1 local.set $15 - end ;; $if_65 + local.get $5 + local.set $13 + end ;; $if_61 else - i32.const 19732 + i32.const 29220 local.get $1 - local.get $4 + local.get $5 i32.or i32.store local.get $0 i32.const 8 i32.add - local.set $17 - local.get $0 local.set $15 - end ;; $if_64 - local.get $17 - local.get $3 - i32.store + local.get $0 + local.set $13 + end ;; $if_60 local.get $15 - local.get $3 + local.get $2 + i32.store + local.get $13 + local.get $2 i32.store offset=12 - local.get $3 - local.get $15 + local.get $2 + local.get $13 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 i32.store offset=12 return - end ;; $if_63 - local.get $1 + end ;; $if_59 + local.get $5 i32.const 8 i32.shr_u local.tee $0 - if $if_66 (result i32) - local.get $1 + if $if_62 (result i32) + local.get $5 i32.const 16777215 i32.gt_u - if $if_67 (result i32) + if $if_63 (result i32) i32.const 31 else local.get $0 @@ -78503,9 +81438,9 @@ i32.shr_u i32.const 8 i32.and - local.tee $5 + local.tee $3 i32.shl - local.tee $4 + local.tee $1 i32.const 520192 i32.add i32.const 16 @@ -78513,27 +81448,27 @@ i32.const 4 i32.and local.set $0 - local.get $4 + local.get $1 local.get $0 i32.shl - local.tee $2 + local.tee $4 i32.const 245760 i32.add i32.const 16 i32.shr_u i32.const 2 i32.and - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 14 local.get $0 - local.get $5 + local.get $3 i32.or - local.get $4 + local.get $1 i32.or i32.sub - local.get $2 local.get $4 + local.get $1 i32.shl i32.const 15 i32.shr_u @@ -78548,203 +81483,164 @@ i32.const 1 i32.shl i32.or - end ;; $if_67 + end ;; $if_63 else i32.const 0 - end ;; $if_66 - local.tee $4 + end ;; $if_62 + local.tee $1 i32.const 2 i32.shl - i32.const 20036 + i32.const 29524 i32.add local.set $0 - local.get $3 - local.get $4 + local.get $2 + local.get $1 i32.store offset=28 - local.get $3 + local.get $2 i32.const 0 i32.store offset=20 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - i32.const 19736 - i32.load - local.tee $5 - i32.const 1 - local.get $4 - i32.shl - local.tee $2 - i32.and - if $if_68 - block $block_5 + block $block_5 + i32.const 29224 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 29224 + local.get $3 + local.get $4 + i32.or + i32.store local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_69 - local.get $0 - local.set $14 - else - block $block_6 - local.get $1 - i32.const 0 - i32.const 25 - local.get $4 - i32.const 1 - i32.shr_u - i32.sub - local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 i32.const 31 - i32.eq - select + i32.shr_u + i32.const 2 i32.shl - local.set $5 - loop $loop_1 - local.get $0 - i32.const 16 - i32.add - local.get $5 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - local.tee $4 - if $if_70 - local.get $5 - i32.const 1 - i32.shl - local.set $5 - local.get $4 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_71 - local.get $4 - local.set $14 - br $block_6 - else - local.get $4 - local.set $0 - br $loop_1 - end ;; $if_71 - unreachable - end ;; $if_70 - end ;; $loop_1 - i32.const 19748 + i32.add + local.tee $4 i32.load - local.get $2 - i32.gt_u - if $if_72 - call $_abort - else - local.get $2 - local.get $3 - i32.store - local.get $3 - local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 - i32.store offset=12 - local.get $3 + local.tee $1 + if $if_66 local.get $3 - i32.store offset=8 - br $block_5 - end ;; $if_72 - end ;; $block_6 - end ;; $if_69 - i32.const 19748 - i32.load - local.tee $0 - local.get $14 - i32.le_u - local.get $0 - local.get $14 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_73 - local.get $0 - local.get $3 - i32.store offset=12 - local.get $14 - local.get $3 - i32.store offset=8 - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - local.get $14 - i32.store offset=12 - local.get $3 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_73 - end ;; $block_5 - else - i32.const 19736 - local.get $2 - local.get $5 - i32.or - i32.store + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 29236 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 29236 + i32.load + local.tee $1 local.get $0 - local.get $3 - i32.store - local.get $3 + i32.le_u + local.get $1 local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 i32.store offset=12 - local.get $3 - local.get $3 + local.get $0 + local.get $2 i32.store offset=8 - end ;; $if_68 - i32.const 19764 - i32.const 19764 - i32.load - i32.const -1 - i32.add - local.tee $0 - i32.store - local.get $0 - if $if_74 - return - end ;; $if_74 - i32.const 20188 - local.set $0 - loop $loop_2 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 local.get $0 - i32.load - local.tee $4 - i32.const 8 - i32.add - local.set $0 - local.get $4 - br_if $loop_2 - end ;; $loop_2 - i32.const 19764 - i32.const -1 - i32.store + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 ) (func $__ZSt18uncaught_exceptionv (type $14) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -78752,7 +81648,7 @@ (func $__ZNKSt3__217bad_function_call4whatEv (type $2) (param $0 i32) (result i32) - i32.const 17123 + i32.const 20950 ) (func $__ZNSt3__212__next_primeEm (type $2) @@ -78768,12 +81664,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $3 local.tee $8 i32.const 4 @@ -79644,3401 +82540,28895 @@ i32.add local.tee $2 local.tee $1 - if $if_70 (result i32) + if $if_70 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_70 + local.tee $1 + local.get $2 + i32.lt_u + if $if_71 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_71 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_72 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_72 + local.get $4 + i32.const 106 + i32.add + local.tee $2 + local.tee $1 + if $if_73 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_73 + local.tee $1 + local.get $2 + i32.lt_u + if $if_74 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_74 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_75 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_75 + local.get $4 + i32.const 108 + i32.add + local.tee $2 + local.tee $1 + if $if_76 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_76 + local.tee $1 + local.get $2 + i32.lt_u + if $if_77 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_77 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_78 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_78 + local.get $4 + i32.const 112 + i32.add + local.tee $2 + local.tee $1 + if $if_79 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_79 + local.tee $1 + local.get $2 + i32.lt_u + if $if_80 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_80 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_81 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_81 + local.get $4 + i32.const 120 + i32.add + local.tee $2 + local.tee $1 + if $if_82 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_82 + local.tee $1 + local.get $2 + i32.lt_u + if $if_83 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_83 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_84 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_84 + local.get $4 + i32.const 126 + i32.add + local.tee $2 + local.tee $1 + if $if_85 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_85 + local.tee $1 + local.get $2 + i32.lt_u + if $if_86 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_86 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_87 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_87 + local.get $4 + i32.const 130 + i32.add + local.tee $2 + local.tee $1 + if $if_88 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_88 + local.tee $1 + local.get $2 + i32.lt_u + if $if_89 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_89 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_90 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_90 + local.get $4 + i32.const 136 + i32.add + local.tee $2 + local.tee $1 + if $if_91 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_91 + local.tee $1 + local.get $2 + i32.lt_u + if $if_92 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_92 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_93 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_93 + local.get $4 + i32.const 138 + i32.add + local.tee $2 + local.tee $1 + if $if_94 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_94 + local.tee $1 + local.get $2 + i32.lt_u + if $if_95 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_95 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_96 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_96 + local.get $4 + i32.const 142 + i32.add + local.tee $2 + local.tee $1 + if $if_97 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_97 + local.tee $1 + local.get $2 + i32.lt_u + if $if_98 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_98 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_99 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_99 + local.get $4 + i32.const 148 + i32.add + local.tee $2 + local.tee $1 + if $if_100 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_100 + local.tee $1 + local.get $2 + i32.lt_u + if $if_101 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_101 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_102 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_102 + local.get $4 + i32.const 150 + i32.add + local.tee $2 + local.tee $1 + if $if_103 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_70 + end ;; $if_103 local.tee $1 local.get $2 i32.lt_u - if $if_71 + if $if_104 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_71 + end ;; $if_104 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_72 + if $if_105 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_72 + end ;; $if_105 local.get $4 - i32.const 106 + i32.const 156 i32.add local.tee $2 local.tee $1 - if $if_73 (result i32) + if $if_106 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_73 + end ;; $if_106 local.tee $1 local.get $2 i32.lt_u - if $if_74 + if $if_107 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_74 + end ;; $if_107 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_75 + if $if_108 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_75 + end ;; $if_108 local.get $4 - i32.const 108 + i32.const 162 i32.add local.tee $2 local.tee $1 - if $if_76 (result i32) + if $if_109 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_76 + end ;; $if_109 local.tee $1 local.get $2 i32.lt_u - if $if_77 + if $if_110 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_77 + end ;; $if_110 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_78 + if $if_111 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_78 + end ;; $if_111 local.get $4 - i32.const 112 + i32.const 166 i32.add local.tee $2 local.tee $1 - if $if_79 (result i32) + if $if_112 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_79 + end ;; $if_112 local.tee $1 local.get $2 i32.lt_u - if $if_80 + if $if_113 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_80 + end ;; $if_113 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_81 + if $if_114 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_81 + end ;; $if_114 local.get $4 - i32.const 120 + i32.const 168 i32.add local.tee $2 local.tee $1 - if $if_82 (result i32) + if $if_115 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_82 + end ;; $if_115 local.tee $1 local.get $2 i32.lt_u - if $if_83 + if $if_116 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_83 + end ;; $if_116 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_84 + if $if_117 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_84 + end ;; $if_117 local.get $4 - i32.const 126 + i32.const 172 i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_118 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_118 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_119 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_119 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_120 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_120 local.get $4 - i32.const 130 + i32.const 178 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_123 local.get $4 - i32.const 136 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_126 local.get $4 - i32.const 138 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_129 local.get $4 - i32.const 142 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_132 local.get $4 - i32.const 148 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_135 local.get $4 - i32.const 150 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_104 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_104 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_105 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_105 + end ;; $if_138 local.get $4 - i32.const 156 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_106 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_106 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_107 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_107 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_108 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_108 + end ;; $if_141 local.get $4 - i32.const 162 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_109 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_109 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_110 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $34 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 29048 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 29744 + i32.const 29716 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 29048 + i32.load + i32.eqz + if $if_0 + i32.const 29048 + i32.const 1 + i32.store + local.get $0 + i32.const 423 + call_indirect $30 (type $0) + i32.const 29048 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $2) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 18457 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 18457 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 12492 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $34 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $4 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $4 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.set $4 + local.get $2 + if $if_3 + local.get $4 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_4 + end ;; $if_0 + local.get $5 + global.set $34 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $34 + local.set $8 + global.get $34 + i32.const 16 + i32.add + global.set $34 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $34 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $34 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $34 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $34 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 17626 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $34 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 17626 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEi (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 21019 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $34 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 1072 + i32.add + global.set $34 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 29792 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 21158 + i32.store + i32.const 21108 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5504 + local.get $0 + local.get $5 + i32.const 5504 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 194 + i32.add + call_indirect $30 (type $3) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 127 + i32.and + call_indirect $30 (type $2) + local.set $0 + local.get $4 + i32.const 21158 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 21022 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 21158 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 21067 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 21146 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 4496 + i32.add + global.set $34 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $34 + local.get $0 + ) + + (func $_abort_message (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $1 + i32.store + i32.const 9144 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5528 + i32.const 5512 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 7 + i32.and + i32.const 764 + i32.add + call_indirect $30 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 780 + i32.add + call_indirect $30 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 772 + i32.add + call_indirect $30 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 780 + i32.add + call_indirect $30 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 772 + i32.add + call_indirect $30 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 780 + i32.add + call_indirect $30 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 7 + i32.and + i32.const 764 + i32.add + call_indirect $30 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 21337 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 21340 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 21345 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 21359 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 29792 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 19 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 31 + i32.and + i32.const 216 + i32.add + call_indirect $30 (type $8) + i32.const 21297 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 26692 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21393 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21398 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21403 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21408 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21420 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21434 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21440 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21455 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21459 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21472 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21477 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21491 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_110 - local.get $3 - local.get $1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21501 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21510 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21528 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21534 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21546 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21557 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21561 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21571 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21582 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21592 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21602 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21611 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21620 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21625 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21640 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 80 + i32.add + global.set $34 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 26393 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 26396 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 26405 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 26408 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 26411 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 26414 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 26417 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 26208 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 26172 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 26047 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 25103 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 25106 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 25113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 25116 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 25122 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 25125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $34 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 21620 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $34 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 9500 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $4 + i32.const 21655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 21661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9588 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 21805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 21820 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21850 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 21863 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21876 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 21750 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 21760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 21773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21780 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21788 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21796 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 21946 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9632 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22014 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9676 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 22031 + i32.const 22029 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 9720 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 22098 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 22096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + end ;; $block + local.get $3 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 22084 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9764 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $34 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9808 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 22211 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9852 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 352 + i32.add + global.set $34 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 22740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_111 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_111 - local.get $4 - i32.const 166 - i32.add - local.tee $2 - local.tee $1 - if $if_112 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 22031 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_112 - local.tee $1 - local.get $2 - i32.lt_u - if $if_113 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_113 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_114 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 22029 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_114 - local.get $4 - i32.const 168 - i32.add - local.tee $2 - local.tee $1 - if $if_115 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_115 - local.tee $1 - local.get $2 - i32.lt_u - if $if_116 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_116 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_117 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_117 - local.get $4 - i32.const 172 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_118 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_118 - local.tee $1 - local.get $2 - i32.lt_u - if $if_119 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 + i32.store + local.get $8 + i32.const 22029 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 - local.get $4 - i32.const 178 - i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 - local.tee $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 22743 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 22746 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 22748 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 22748 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 180 - i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 + i32.store local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 - i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 i32.add - local.tee $2 local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 + br $block_37 + end ;; $block_38 local.get $4 - i32.const 192 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 - local.get $1 local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 local.get $4 - i32.const 196 - i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 22758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 22760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 - local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 - local.get $4 - i32.const 198 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_139 - local.tee $1 + i32.store + local.get $13 + i32.const 22096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 - local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 22762 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 22765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 22767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 22770 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 22772 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 22775 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 22778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 22781 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 22784 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 22787 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 22209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 22630 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 22791 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 22096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 22794 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 22797 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 22797 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 22800 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 22630 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 22803 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 22805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 22808 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 22810 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 22813 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 22817 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 22819 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 22822 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 22822 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 22817 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 22825 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 22828 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 22830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 22833 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 22836 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 22840 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 22840 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 22849 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 22849 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 22858 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 160 + i32.add + global.set $34 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 22313 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 22321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 22325 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 21403 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 21408 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 21420 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 21434 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 21440 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 29814 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 22329 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 22331 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 22333 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 22336 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 22339 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 21501 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 21510 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 21337 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9896 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9940 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 22395 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9984 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 22456 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10028 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 22515 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10072 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 22575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 22580 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10116 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 22630 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10160 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 24986 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 24989 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 288 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 24839 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 22031 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 24842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 22029 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 24845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 22743 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 24848 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 22746 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 24851 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 22758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 24854 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 22762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 24857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 22765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 24860 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 22767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 24863 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 22770 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 24866 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 22772 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 24869 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 22775 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 24872 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 22778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 24875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 24878 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 22781 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 24881 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 22784 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 24884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 22787 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 24887 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 22209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 24890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 22630 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 24893 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 22791 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 24896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 22096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 24899 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 22794 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 24902 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 22800 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 24905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 22805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 24908 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 22808 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 24911 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 22810 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 24914 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 22817 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 24917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 22819 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 24920 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 22828 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 24923 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 22830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 24926 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 22833 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 24929 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 22836 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 24627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 23766 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 22740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 23770 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 22740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 23354 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 23357 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 23360 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10204 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22864 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10248 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10292 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 23015 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10336 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10380 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 23077 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10424 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 21557 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 22211 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 23203 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10468 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $5 + i32.const 23215 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $6 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 23262 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10512 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 23279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 23285 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 23343 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $26) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $6 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10556 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 23363 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 23375 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 23379 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10600 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 23582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10644 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 23473 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 23479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10688 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 23479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 23593 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10732 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10776 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 23659 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 23717 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10820 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 23832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 23835 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10864 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 23773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23838 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23849 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23859 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23870 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23880 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23891 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23901 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23911 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23929 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23939 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23949 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23960 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23970 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23981 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23992 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24003 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24013 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24024 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24035 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24046 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24058 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24068 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24078 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23929 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24089 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24111 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24126 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24068 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24137 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24147 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24160 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24171 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24181 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24192 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24204 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24214 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24225 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24204 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24236 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24247 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24257 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24267 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24278 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24289 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24301 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10908 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 24313 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 24377 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10952 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 24393 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10996 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11040 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 23773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 24556 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11084 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 23773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 24569 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 24576 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11128 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 24630 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11172 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 24728 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11216 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11260 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 24786 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 24789 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $5 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11304 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 24932 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 24937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $34 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11348 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 24986 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 11392 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $30 (type $4) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11436 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 25193 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 25511 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 25451 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 25189 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 25193 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $4 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 25255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11480 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 25196 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 25316 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 25319 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 25322 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11524 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11568 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 25325 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 25333 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11612 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 25388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 25397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11656 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11700 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 22760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11744 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 21805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 21820 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 25607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 25678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 25728 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 25778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 21750 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 21760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 21760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 25564 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 25578 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 25592 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11788 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11832 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 25940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11876 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 48 + i32.add + global.set $34 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 26000 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 21661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $3 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11920 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 26050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 21661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11964 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 26106 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 21661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 26182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 26189 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $1 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22313 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 12008 + i32.store + local.get $0 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 + i32.load + i32.load offset=16 + local.set $3 + local.get $2 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and + if $if + local.get $4 + i32.const 26218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 end ;; $if - local.get $8 - global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 26225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 + local.get $2 + i32.const 26235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12052 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12096 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $26) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $34 + local.set $6 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $6 + i32.const 8 + i32.add + local.set $7 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 12140 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 i32.load + i32.load offset=16 local.set $4 - local.get $1 - local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop local.get $0 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $2 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and if $if - local.get $0 + local.get $6 + i32.const 26218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $_memcpy - drop + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 end ;; $if - ) - - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) - (param $0 i32) - loop $loop - i32.const 19560 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 20256 - i32.const 20228 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 19560 - i32.load - i32.eqz + local.get $4 + i32.const 2 + i32.and if $if_0 - i32.const 19560 - i32.const 1 - i32.store + local.get $7 + i32.const 26225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.const 358 - call_indirect $28 (type $0) - i32.const 19560 - i32.const -1 - i32.store + i32.load offset=20 + local.set $4 end ;; $if_0 - ) - - (func $__Znwm (type $2) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - i32.const 1 - local.get $0 - select - local.set $1 - loop $loop (result i32) + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 26235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 20312 - i32.const 20312 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 local.get $0 - i32.const 31 - i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 26420 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 26423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $34 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) + (result i32) (local $2 i32) - i32.const 14628 - call $_strlen - local.tee $2 - i32.const 13 + global.get $34 + local.set $2 + global.get $34 + i32.const 16 i32.add - call $__Znwm - local.tee $1 + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - i32.store local.get $1 + i64.load align=4 + i64.store local.get $2 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add - local.tee $1 - i32.const 14628 local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 i32.const 1 - i32.add - call $_memcpy - drop + i32.store8 offset=5 local.get $0 - local.get $1 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12184 i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 26476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.const 8452 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $34 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) + (result i32) + (local $2 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 16 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12228 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store offset=8 + local.get $2 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 16 + global.get $34 + local.set $2 + global.get $34 + i32.const 32 i32.add - global.set $32 + global.set $34 local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 - local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.const 26540 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm local.get $3 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - i32.add + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.load8_s - i32.store8 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $32 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $34 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12272 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $34 + local.set $2 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 + local.get $2 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add local.tee $3 - if $if (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if - local.tee $4 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $4 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 - local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.set $4 - local.get $2 - if $if_3 - local.get $4 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $2 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_4 - end ;; $if_0 - local.get $5 - global.set $32 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $32 - local.set $8 - global.get $32 + (result i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 i32.const 16 i32.add - global.set $32 - i32.const -18 + global.set $34 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.sub + i32.load + local.set $1 + local.get $3 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 - local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + global.set $34 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 1 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12316 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $32 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 24789 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 - local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $34 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $3 + global.get $34 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add - local.get $2 - select - local.tee $7 + global.set $34 local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 local.get $0 - else local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 + i32.load + i32.const 2 i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 local.get $0 - i32.load - else + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 + i32.const 26821 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 local.get $0 - i32.const 4 - i32.add - local.tee $3 i32.load - i32.const 1 + i32.const 2 i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 + local.get $0 + i32.load + i32.const 1 + i32.add i32.store local.get $0 - local.get $1 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 br $block - end ;; $block_0 + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 - local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 local.get $0 i32.load + i32.const 2 i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 - local.get $2 - global.set $32 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $5 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 + i32.store local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $32 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 - local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 local.get $3 - local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 - local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + global.set $34 local.get $0 - local.get $2 - i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $1) + (param $0 i32) + (param $1 i32) local.get $0 - local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 + local.get $0 + local.get $1 + i32.load offset=336 + local.get $1 + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 - local.set $5 - global.get $32 - i32.const 16 + local.get $0 + i32.const 332 i32.add - global.set $32 + local.tee $3 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $0 + local.get $4 + i32.ge_u + br_if $block_0 + local.get $3 + i32.load + local.get $0 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 - local.get $3 + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $2) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load i32.sub - local.get $2 - i32.lt_u - if $if_0 + if $if local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 i32.sub - local.get $3 - local.get $3 i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $4 - i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 i32.load8_s - i32.store8 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $32 - local.get $0 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $27) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $27) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $32 - local.set $3 - global.get $32 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $34 + local.set $7 + global.get $34 i32.const 16 i32.add - global.set $32 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $34 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 13797 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $32 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $34 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $28) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 9544 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 13797 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEi (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 12360 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $32 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $34 + local.set $2 + global.get $34 i32.const 16 i32.add - global.set $32 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 + local.get $5 i32.const 255 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 504 + i32.add + call_indirect $30 (type $1) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 17192 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $32 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $32 - local.set $1 - global.get $32 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $34 + local.set $3 + global.get $34 + i32.const -64 + i32.sub + global.set $34 + local.get $3 + i32.const 56 i32.add - global.set $32 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 22027 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 17331 - i32.store - i32.const 17281 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5528 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5528 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 194 - i32.add - call_indirect $28 (type $3) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 127 - i32.and - call_indirect $28 (type $2) - local.set $0 - local.get $1 - i32.const 17331 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 17195 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 17331 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 17240 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $30 (type $1) end ;; $if - i32.const 17319 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $32 - local.set $1 - global.get $32 - i32.const 16 - i32.add - global.set $32 - block $block (result i32) - i32.const 0 - i32.const 20304 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 235 - call_indirect $28 (type $8) - i32.const 20304 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 17470 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 26218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 20308 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 26225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 26235 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 26420 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 26423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $32 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $34 ) - (func $_abort_message (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $32 + global.get $34 local.set $2 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12404 i32.store - i32.const 8088 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $34 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $32 + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $0 + local.get $2 + i32.const 26759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5552 - i32.const 5536 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 508 - i32.add - call_indirect $28 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $32 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $34 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $2) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $34 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 26855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 26880 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 26900 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 26922 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $34 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 26940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 516 - i32.add - call_indirect $28 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $32 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9544 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12448 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 32 + i32.add + global.set $34 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 26981 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 27006 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $34 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27069 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 516 - i32.add - call_indirect $28 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 508 - i32.add - call_indirect $28 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $32 - local.set $0 - global.get $32 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 i32.const 16 i32.add - global.set $32 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 20308 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 17519 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $32 - end ;; $if + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) - (local $1 i32) - global.get $32 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 + i32.const 16 + i32.add + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27129 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $32 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $34 + local.set $2 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 20308 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 17569 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $32 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $34 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 8452 + i32.const 12492 i32.store local.get $0 i32.const 4 @@ -83070,9 +111460,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -83087,7 +111475,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -83101,10 +111490,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -83114,20 +111506,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -83144,72 +111536,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -83223,10 +111685,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -83248,7 +111711,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -83388,145 +111853,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -83538,10 +112008,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -83606,20 +112077,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -83641,9 +112116,9 @@ local.get $6 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) + call_indirect $30 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -83695,9 +112170,9 @@ local.get $8 i32.const 3 i32.and - i32.const 524 + i32.const 780 i32.add - call_indirect $28 (type $13) + call_indirect $30 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -83747,9 +112222,9 @@ local.get $7 i32.const 7 i32.and - i32.const 516 + i32.const 772 i32.add - call_indirect $28 (type $7) + call_indirect $30 (type $7) ) (func $___cxa_can_catch (type $3) @@ -83759,12 +112234,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $34 local.set $3 - global.get $32 + global.get $34 i32.const 16 i32.add - global.set $32 + global.set $34 local.get $3 local.get $2 i32.load @@ -83781,7 +112256,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) local.tee $0 if $if local.get $2 @@ -83790,7 +112265,7 @@ i32.store end ;; $if local.get $3 - global.set $32 + global.set $34 local.get $0 i32.const 1 i32.and @@ -83802,8 +112277,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5552 - i32.const 5640 + i32.const 5528 + i32.const 6696 call $___dynamic_cast i32.const 0 i32.ne @@ -84265,7 +112740,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $31 + global.get $33 i32.load local.tee $2 i32.add @@ -84303,7 +112778,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $31 + global.get $33 local.get $1 i32.store local.get $2 @@ -84317,10 +112792,10 @@ local.get $0 i32.const 127 i32.and - call_indirect $28 (type $2) + call_indirect $30 (type $2) ) - (func $dynCall_iidiiii (type $26) + (func $dynCall_iidiiii (type $29) (param $0 i32) (param $1 i32) (param $2 f64) @@ -84340,7 +112815,7 @@ i32.and i32.const 128 i32.add - call_indirect $28 (type $11) + call_indirect $30 (type $11) ) (func $dynCall_iii (type $3) @@ -84355,7 +112830,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $4) + call_indirect $30 (type $4) ) (func $dynCall_iiii (type $17) @@ -84372,7 +112847,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $3) + call_indirect $30 (type $3) ) (func $dynCall_vi (type $1) @@ -84380,11 +112855,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $30 (type $0) ) (func $dynCall_vii (type $6) @@ -84394,11 +112869,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $30 (type $1) ) (func $dynCall_viii (type $5) @@ -84412,9 +112887,9 @@ local.get $0 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $6) + call_indirect $30 (type $6) ) (func $dynCall_viiii (type $7) @@ -84430,9 +112905,9 @@ local.get $0 i32.const 7 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $5) + call_indirect $30 (type $5) ) (func $dynCall_viiiii (type $13) @@ -84450,12 +112925,12 @@ local.get $0 i32.const 7 i32.and - i32.const 516 + i32.const 772 i32.add - call_indirect $28 (type $7) + call_indirect $30 (type $7) ) - (func $dynCall_viiiiii (type $27) + (func $dynCall_viiiiii (type $28) (param $0 i32) (param $1 i32) (param $2 i32) @@ -84472,9 +112947,9 @@ local.get $0 i32.const 3 i32.and - i32.const 524 + i32.const 780 i32.add - call_indirect $28 (type $13) + call_indirect $30 (type $13) ) (func $b0 (type $2) @@ -84610,7 +113085,7 @@ i32.and i32.const 210 i32.add - call_indirect $28 (type $10) + call_indirect $30 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -84642,7 +113117,7 @@ i32.and i32.const 214 i32.add - call_indirect $28 (type $12) + call_indirect $30 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -84667,9 +113142,9 @@ i64.shl i64.or local.get $4 - i32.const 528 - call_indirect $28 (type $9) + i32.const 784 + call_indirect $30 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\91\04\80\08\c0\a8\c1\02\a0\a8\01\b0\a8\01" + ;; "\00\02\00\04\00\80\02\91\06\80\08\d0\f2\c1\02\b0\f2\01\c0\f2\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.cc b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.cc index b13a4528a2052..53f2fa977b49a 100644 --- a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.cc +++ b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.cc @@ -9,8 +9,8 @@ class ServiceContext : public RootContext { explicit ServiceContext(uint32_t id, StringView root_id) : RootContext(id, root_id) {} void onStart(WasmDataPtr /* vm_configuration */) override { - callout_success_counter_ = defineMetric(MetricType::Counter, "test_callout_successes"); - callout_failure_counter_ = defineMetric(MetricType::Counter, "test_callout_failures"); + CHECK_RESULT(defineMetric(MetricType::Counter, "test_callout_successes", &callout_success_counter_)); + CHECK_RESULT(defineMetric(MetricType::Counter, "test_callout_failures", &callout_failure_counter_)); } void incrementCalloutSuccesses(uint32_t inc_amount = 1U) { @@ -52,16 +52,16 @@ class CalloutResponseHandler : public GrpcCallHandler { continueRequest(); } + void onFailure(GrpcStatus status, std::unique_ptr error_message) override { request_context_->setEffectiveContext(); logInfo(std::string("failure ") + std::to_string(static_cast(status)) + - std::string(error_message->view())); + " " + std::string(error_message->view())); service_context_->incrementCalloutFailures(); - // TODO wasm engine must support fail closed: expose abortRequest() or similar - continueRequest(); + sendLocalResponse(502, error_message->view(), "", {}, status); } private: diff --git a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wasm b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wasm index ad2a61b2ea687..9e85fb9c468da 100644 Binary files a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wat b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wat index 213993316a3df..884a7264de82a 100644 --- a/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/grpc_callout_cpp.wat @@ -14,24 +14,29 @@ (type $12 (func (param i32 i64 i32) (result i64))) (type $13 (func (param i32 i32 i32 i32 i32 i32))) (type $14 (func (result i32))) - (type $15 (func (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (type $16 (func (param i32 i64))) - (type $17 (func (param i32 i32 i32 i32 i32) (result i32))) - (type $18 (func (param i32 i32 i32 i32) (result i32))) - (type $19 (func (param i32 i32 i32 i32 i32 i32 i32 i32))) - (type $20 (func (param i64 i32))) - (type $21 (func (param f64 i32))) - (type $22 (func (param i32 i32) (result i64))) - (type $23 (func (param i64 i32 i32) (result i32))) - (type $24 (func (param i64 i32) (result i32))) + (type $15 (func (param i32 i32 i32 i32) (result i32))) + (type $16 (func (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $17 (func (param i32 i64) (result i32))) + (type $18 (func (param i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $19 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $20 (func (param i32 i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param i64 i32))) + (type $22 (func (param f64 i32))) + (type $23 (func (param i32 i32) (result i64))) + (type $24 (func (param i32 i64))) (type $25 (func (param f64 i32) (result f64))) - (type $26 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $27 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $26 (func (param i64 i32 i32) (result i32))) + (type $27 (func (param i64 i32) (result i32))) + (type $28 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $29 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $30 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $31 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -43,20 +48,22 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_continueRequest" (func $_proxy_continueRequest)) - (import "env" "_proxy_defineMetric" (func $_proxy_defineMetric (param i32 i32 i32) (result i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_continueRequest" (func $_proxy_continueRequest (result i32))) + (import "env" "_proxy_defineMetric" (func $_proxy_defineMetric (param i32 i32 i32 i32) (result i32))) (import "env" "_proxy_grpcCall" (func $_proxy_grpcCall (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_incrementMetric" (func $_proxy_incrementMetric (param i32 i64))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_incrementMetric" (func $_proxy_incrementMetric (param i32 i64) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_sendLocalResponse" (func $_proxy_sendLocalResponse (param i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_setEffectiveContext" (func $_proxy_setEffectiveContext (param i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $30 i32)) - (import "env" "DYNAMICTOP_PTR" (global $31 i32)) - (import "env" "memory" (memory $29 256 256)) - (import "env" "table" (table $28 529 529 funcref)) + (import "env" "__table_base" (global $34 i32)) + (import "env" "DYNAMICTOP_PTR" (global $35 i32)) + (import "env" "memory" (memory $33 256 256)) + (import "env" "table" (table $32 793 793 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -109,43 +116,42 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $32 (mut i32) (i32.const 22096)) - (global $33 (mut i32) (i32.const 5264976)) - (elem $34 $28 (global.get $30) + (global $36 (mut i32) (i32.const 31424)) + (global $37 (mut i32) (i32.const 5274304)) + (elem $38 $32 (global.get $34) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14RequestContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv $__ZN7Context9asContextEv - $__ZN7Context6asRootEv $__ZNK10DataSource3NewEv $__ZN7Context6asRootEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK10DataSource12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZN7Context6asRootEv - $__ZNK3Any3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK21GrpcService_EnvoyGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK21GrpcService_EnvoyGrpc12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv - $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials12ByteSizeLongEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv - $__ZNK28GrpcService_GoogleGrpc_Empty3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv - $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv - $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK38GrpcService_GoogleGrpc_CallCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv - $__ZNK22GrpcService_GoogleGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK22GrpcService_GoogleGrpc12ByteSizeLongEv $__ZNK22GrpcService_GoogleGrpc13GetCachedSizeEv $__ZNK23GrpcService_HeaderValue3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv - $__ZNK11GrpcService3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK11GrpcService12ByteSizeLongEv $__ZNK11GrpcService13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv - $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv - $__ZNK3Any13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv - $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZN7Context6asRootEv - $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZNK10DataSource3NewEv $__ZN7Context6asRootEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv + $__ZNK10DataSource13IsInitializedEv $__ZNK10DataSource12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK3Any3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv + $__ZNK21GrpcService_EnvoyGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK21GrpcService_EnvoyGrpc12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials12ByteSizeLongEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv + $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv $__ZNK28GrpcService_GoogleGrpc_Empty3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials12ByteSizeLongEv $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials13GetCachedSizeEv + $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv + $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv + $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK38GrpcService_GoogleGrpc_CallCredentials12ByteSizeLongEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK22GrpcService_GoogleGrpc3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK22GrpcService_GoogleGrpc12ByteSizeLongEv $__ZNK22GrpcService_GoogleGrpc13GetCachedSizeEv + $__ZNK23GrpcService_HeaderValue3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK3Any12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK11GrpcService3NewEv $__ZNK10DataSource13IsInitializedEv $__ZNK11GrpcService12ByteSizeLongEv $__ZNK11GrpcService13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK10DataSource13GetCachedSizeEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv + $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK3Any13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv + $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK37GrpcService_GoogleGrpc_SslCredentials13GetCachedSizeEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv + $__ZNK10DataSource13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info $__ZNK10DataSource3NewEPN6google8protobuf5ArenaE - $__ZN10DataSource27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK3Any3NewEPN6google8protobuf5ArenaE $__ZN3Any27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK21GrpcService_EnvoyGrpc3NewEPN6google8protobuf5ArenaE $__ZN21GrpcService_EnvoyGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEPN6google8protobuf5ArenaE $__ZN37GrpcService_GoogleGrpc_SslCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE - $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEPN6google8protobuf5ArenaE $__ZN41GrpcService_GoogleGrpc_ChannelCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEPN6google8protobuf5ArenaE $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE - $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEPN6google8protobuf5ArenaE $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEPN6google8protobuf5ArenaE $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEPN6google8protobuf5ArenaE $__ZN38GrpcService_GoogleGrpc_CallCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK22GrpcService_GoogleGrpc3NewEPN6google8protobuf5ArenaE $__ZN22GrpcService_GoogleGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE - $__ZNK23GrpcService_HeaderValue3NewEPN6google8protobuf5ArenaE $__ZN23GrpcService_HeaderValue27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK11GrpcService3NewEPN6google8protobuf5ArenaE $__ZN11GrpcService27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $b2 $b2 $b2 $b2 - $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 - $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 - $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK10DataSource3NewEPN6google8protobuf5ArenaE $__ZN10DataSource27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK3Any3NewEPN6google8protobuf5ArenaE $__ZN3Any27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK21GrpcService_EnvoyGrpc3NewEPN6google8protobuf5ArenaE $__ZN21GrpcService_EnvoyGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials3NewEPN6google8protobuf5ArenaE $__ZN37GrpcService_GoogleGrpc_SslCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK28GrpcService_GoogleGrpc_Empty3NewEPN6google8protobuf5ArenaE $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials3NewEPN6google8protobuf5ArenaE $__ZN41GrpcService_GoogleGrpc_ChannelCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials3NewEPN6google8protobuf5ArenaE $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials3NewEPN6google8protobuf5ArenaE $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin3NewEPN6google8protobuf5ArenaE $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials3NewEPN6google8protobuf5ArenaE $__ZN38GrpcService_GoogleGrpc_CallCredentials27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK22GrpcService_GoogleGrpc3NewEPN6google8protobuf5ArenaE $__ZN22GrpcService_GoogleGrpc27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK23GrpcService_HeaderValue3NewEPN6google8protobuf5ArenaE $__ZN23GrpcService_HeaderValue27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE + $__ZNK11GrpcService3NewEPN6google8protobuf5ArenaE $__ZN11GrpcService27MergePartialFromCodedStreamEPN6google8protobuf2io16CodedInputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek $b6 $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL22InitDefaultsDataSourceEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL15InitDefaultsAnyEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL33InitDefaultsGrpcService_EnvoyGrpcEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL49InitDefaultsGrpcService_GoogleGrpc_SslCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL57InitDefaultsGrpcService_GoogleGrpc_GoogleLocalCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL40InitDefaultsGrpcService_GoogleGrpc_EmptyEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL53InitDefaultsGrpcService_GoogleGrpc_ChannelCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL85InitDefaultsGrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL71InitDefaultsGrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL80InitDefaultsGrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL50InitDefaultsGrpcService_GoogleGrpc_CallCredentialsEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL34InitDefaultsGrpcService_GoogleGrpcEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL35InitDefaultsGrpcService_HeaderValueEv $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL23InitDefaultsGrpcServiceEv $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv - $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 $b6 $b6 + $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14RequestContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv - $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN14RequestContextD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv - $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN11RootContextD2Ev $__ZN14ServiceContextD0Ev $__ZN7Context8onCreateEv $__ZN14ServiceContextD0Ev $__ZN10DataSourceD2Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN14RequestContextD0Ev $__ZN11RootContextD2Ev $__ZN14ServiceContextD0Ev $__ZN7Context8onCreateEv $__ZN14ServiceContextD0Ev $__ZN10DataSourceD2Ev $__ZN10DataSourceD0Ev $__ZN10DataSource5ClearEv $__ZN3AnyD2Ev $__ZN3AnyD0Ev $__ZN3Any5ClearEv $__ZN21GrpcService_EnvoyGrpcD2Ev $__ZN21GrpcService_EnvoyGrpcD0Ev $__ZN21GrpcService_EnvoyGrpc5ClearEv $__ZN37GrpcService_GoogleGrpc_SslCredentialsD2Ev $__ZN37GrpcService_GoogleGrpc_SslCredentialsD0Ev $__ZN37GrpcService_GoogleGrpc_SslCredentials5ClearEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD2Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentialsD0Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN28GrpcService_GoogleGrpc_EmptyD2Ev $__ZN28GrpcService_GoogleGrpc_EmptyD0Ev $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials5ClearEv $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD2Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentialsD0Ev $__ZN41GrpcService_GoogleGrpc_ChannelCredentials5ClearEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD2Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsD0Ev $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials5ClearEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsD2Ev @@ -154,20 +160,48 @@ $__ZN11GrpcService5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN14RequestContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv - $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN22CalloutResponseHandlerD0Ev - $__ZN22CalloutResponseHandlerD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv + $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN7Context8onCreateEv $__ZN22CalloutResponseHandlerD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev + $__ZN22CalloutResponseHandlerD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN22CalloutResponseHandlerD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv - $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 + $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectI10DataSourceEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv + $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 - $b8 $__ZN15GrpcCallHandlerIN6google8protobuf5ValueEE9onSuccessENSt3__210unique_ptrI8WasmDataNS4_14default_deleteIS6_EEEE $__ZN22CalloutResponseHandler9onSuccessEON6google8protobuf5ValueE $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN14ServiceContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK10DataSource11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN10DataSource21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK10DataSource24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE - $__ZNK3Any11GetTypeNameEv $__ZN3Any21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK3Any24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK21GrpcService_EnvoyGrpc11GetTypeNameEv $__ZN21GrpcService_EnvoyGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK21GrpcService_EnvoyGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials11GetTypeNameEv $__ZN37GrpcService_GoogleGrpc_SslCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE - $__ZNK37GrpcService_GoogleGrpc_SslCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials11GetTypeNameEv $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty11GetTypeNameEv $__ZN28GrpcService_GoogleGrpc_Empty21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials11GetTypeNameEv - $__ZN41GrpcService_GoogleGrpc_ChannelCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials11GetTypeNameEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials11GetTypeNameEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE - $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin11GetTypeNameEv $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials11GetTypeNameEv $__ZN38GrpcService_GoogleGrpc_CallCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK38GrpcService_GoogleGrpc_CallCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK22GrpcService_GoogleGrpc11GetTypeNameEv $__ZN22GrpcService_GoogleGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE - $__ZNK22GrpcService_GoogleGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK23GrpcService_HeaderValue11GetTypeNameEv $__ZN23GrpcService_HeaderValue21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK23GrpcService_HeaderValue24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK11GrpcService11GetTypeNameEv $__ZN11GrpcService21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK11GrpcService24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double $b8 $b8 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZN15GrpcCallHandlerIN6google8protobuf5ValueEE9onSuccessENSt3__210unique_ptrI8WasmDataNS4_14default_deleteIS6_EEEE $__ZN22CalloutResponseHandler9onSuccessEON6google8protobuf5ValueE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN14ServiceContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj + $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK10DataSource11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN10DataSource21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK10DataSource24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK3Any11GetTypeNameEv $__ZN3Any21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE + $__ZNK3Any24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK21GrpcService_EnvoyGrpc11GetTypeNameEv $__ZN21GrpcService_EnvoyGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK21GrpcService_EnvoyGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK37GrpcService_GoogleGrpc_SslCredentials11GetTypeNameEv $__ZN37GrpcService_GoogleGrpc_SslCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK37GrpcService_GoogleGrpc_SslCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials11GetTypeNameEv + $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK28GrpcService_GoogleGrpc_Empty11GetTypeNameEv $__ZN28GrpcService_GoogleGrpc_Empty21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK45GrpcService_GoogleGrpc_GoogleLocalCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials11GetTypeNameEv $__ZN41GrpcService_GoogleGrpc_ChannelCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK41GrpcService_GoogleGrpc_ChannelCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE + $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials11GetTypeNameEv $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials11GetTypeNameEv $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin11GetTypeNameEv $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE + $__ZNK68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK38GrpcService_GoogleGrpc_CallCredentials11GetTypeNameEv $__ZN38GrpcService_GoogleGrpc_CallCredentials21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK38GrpcService_GoogleGrpc_CallCredentials24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK22GrpcService_GoogleGrpc11GetTypeNameEv $__ZN22GrpcService_GoogleGrpc21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK22GrpcService_GoogleGrpc24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK23GrpcService_HeaderValue11GetTypeNameEv + $__ZN23GrpcService_HeaderValue21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK23GrpcService_HeaderValue24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK11GrpcService11GetTypeNameEv $__ZN11GrpcService21CheckTypeAndMergeFromERKN6google8protobuf11MessageLiteE $__ZNK11GrpcService24SerializeWithCachedSizesEPN6google8protobuf2io17CodedOutputStreamE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE + $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 @@ -175,18 +209,24 @@ $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN22CalloutResponseHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b9 $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE - $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN22CalloutResponseHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b9 $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi + $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b10 $b10 $b10 + $b10 $b10 $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $35 $29 (i32.const 1024) - "$;\00\00);\00\001;\00\007;") - (data $36 $29 (i32.const 1168) + (data $39 $33 (i32.const 1024) + "mI\00\00rI\00\00zI\00\00\80I") + (data $40 $33 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $37 $29 (i32.const 1488) + (data $41 $33 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -216,312 +256,468 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $38 $29 (i32.const 3472) + (data $42 $33 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $39 $29 (i32.const 3632) + (data $43 $33 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $40 $29 (i32.const 3681) + (data $44 $33 (i32.const 3681) "\0b") - (data $41 $29 (i32.const 3690) + (data $45 $33 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $42 $29 (i32.const 3739) + (data $46 $33 (i32.const 3739) "\0c") - (data $43 $29 (i32.const 3751) + (data $47 $33 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $44 $29 (i32.const 3797) + (data $48 $33 (i32.const 3797) "\0e") - (data $45 $29 (i32.const 3809) + (data $49 $33 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $46 $29 (i32.const 3855) + (data $50 $33 (i32.const 3855) "\10") - (data $47 $29 (i32.const 3867) + (data $51 $33 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $48 $29 (i32.const 3922) + (data $52 $33 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $49 $29 (i32.const 3971) + (data $53 $33 (i32.const 3971) "\0b") - (data $50 $29 (i32.const 3983) + (data $54 $33 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $51 $29 (i32.const 4029) + (data $55 $33 (i32.const 4029) "\0c") - (data $52 $29 (i32.const 4041) + (data $56 $33 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00X!\00\00M\"\00\00\80!\00\00D\"\00\00p\11\00\00\00\00\00\00\80" - "!\00\003\"\00\00x\11\00\00\00\00\00\00X!\00\00=#\00\00\ec!\00\00\fe\"\00\00\00\00\00\00\01\00\00\00\98\11\00\00\00\00\00\00X!\00\00\a8#\00\00\80!\00\00|#\00\00\b8" - "\11\00\00\00\00\00\00\80!\00\00c#\00\00\c0\11\00\00\00\00\00\00X!\00\007$\00\00\80!\00\00\be#\00\00\e0\11\00\00\00\00\00\00X!\00\00\99$\00\00X!\00\00<%\00\00\80" - "!\00\00\9e$\00\00\00\12\00\00\00\00\00\00\80!\00\00\d4%\00\00p\11\00\00\00\00\00\00\80!\00\00\c3%\00\00\18\12\00\00\00\00\00\00X!\00\00\0f&\00\00X!\00\00_&\00\00\80" - "!\00\00\99'\00\00\d8\13\00\00\00\00\00\00\80!\00\00\b7'\00\00\d8\13\00\00\00\00\00\00\80!\00\00\f5'\00\00\d8\13\00\00\00\00\00\00\80!\00\003(\00\00\d8\13\00\00\00\00\00\00\80" - "!\00\00\89(\00\00\d8\13\00\00\00\00\00\00\80!\00\00\d6(\00\00\d8\13\00\00\00\00\00\00\80!\00\00\1f)\00\00\d8\13\00\00\00\00\00\00\80!\00\00\e8)\00\00\d8\13\00\00\00\00\00\00\80" - "!\00\00\0f+\00\00\d8\13\00\00\00\00\00\00\80!\00\00\dc+\00\00\d8\13\00\00\00\00\00\00\80!\00\00\ba,\00\00\d8\13\00\00\00\00\00\00\80!\00\00o-\00\00\d8\13\00\00\00\00\00\00\80" - "!\00\00\da-\00\00\d8\13\00\00\00\00\00\00\80!\00\00\00.\00\00\d8\13\00\00\00\00\00\00\80!\00\00\cb7\00\00\d8\13\00\00\00\00\00\00\80!\00\00\ad6\00\00H\13\00\00\00\00\00\00\80" - "!\00\00j0\00\00X\13\00\00\00\00\00\00\80!\00\00\9a0\00\00h\13\00\00\00\00\00\00\80!\00\00`1\00\00\d8\13\00\00\00\00\00\00\80!\00\00z6\00\00\d8\13\00\00\00\00\00\00\ec" - "!\00\0085\00\00\00\00\00\00\01\00\00\00\a0\13\00\00\00\00\00\00X!\00\00\a55\00\00\80!\00\00\946\00\00\d8\13\00\00\00\00\00\00\80!\00\00\1f8\00\00\c8\15\00\00\00\00\00\00\ff" - "\ff\ff\ff\ff\ff\ff\ff") - (data $53 $29 (i32.const 5080) - "X!\00\00$=\00\00\80!\00\00\12C\00\00\00\14\00\00\00\00\00\00\80!\00\00\ceC\00\00\00\14\00\00\00\00\00\00X!\00\00\9aD\00\00\05") - (data $54 $29 (i32.const 5140) - "j") - (data $55 $29 (i32.const 5164) - "\08\00\00\00\01\00\00\00{Q") - (data $56 $29 (i32.const 5188) - "\02") - (data $57 $29 (i32.const 5203) - "\ff\ff\ff\ff\ff") - (data $58 $29 (i32.const 5272) - "\05") - (data $59 $29 (i32.const 5284) - "j") - (data $60 $29 (i32.const 5308) - "\09\00\00\00\01\00\00\00\d8G\00\00\00\04") - (data $61 $29 (i32.const 5332) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00<%\00\00\e11\00\00d%\00\00\d81\00\00p\11\00\00\00\00\00\00d" + "%\00\00\c71\00\00x\11\00\00\00\00\00\00<%\00\00\d52\00\00\801\00\00\962\00\00\00\00\00\00\01\00\00\00\98\11\00\00\00\00\00\00<%\00\00@3\00\00d%\00\00\143\00\00\b8" + "\11\00\00\00\00\00\00d%\00\00\fb2\00\00\c0\11\00\00\00\00\00\00<%\00\00V3\00\00d%\00\00l3\00\00p\11\00\00\00\00\00\00d%\00\00[3\00\00\e8\11\00\00\00\00\00\00<" + "%\00\00T4\00\00<%\00\00\a64\00\00d%\00\00\e05\00\00\a8\13\00\00\00\00\00\00d%\00\00\fe5\00\00\a8\13\00\00\00\00\00\00d%\00\00<6\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00z6\00\00\a8\13\00\00\00\00\00\00d%\00\00\d06\00\00\a8\13\00\00\00\00\00\00d%\00\00\1d7\00\00\a8\13\00\00\00\00\00\00d%\00\00f7\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00/8\00\00\a8\13\00\00\00\00\00\00d%\00\00V9\00\00\a8\13\00\00\00\00\00\00d%\00\00#:\00\00\a8\13\00\00\00\00\00\00d%\00\00\01;\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00\b6;\00\00\a8\13\00\00\00\00\00\00d%\00\00!<\00\00\a8\13\00\00\00\00\00\00d%\00\00G<\00\00\a8\13\00\00\00\00\00\00d%\00\00\14F\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00\f6D\00\00\18\13\00\00\00\00\00\00d%\00\00\b3>\00\00(\13\00\00\00\00\00\00d%\00\00\e3>\00\008\13\00\00\00\00\00\00d%\00\00\a9?\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00\c3D\00\00\a8\13\00\00\00\00\00\00\801\00\00\81C\00\00\00\00\00\00\01\00\00\00p\13\00\00\00\00\00\00<%\00\00\eeC\00\00d%\00\00\ddD\00\00\a8\13\00\00\00\00\00\00d" + "%\00\00hF\00\00\98\15\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $57 $33 (i32.const 5032) + "<%\00\00mK\00\00d%\00\00[Q\00\00\d0\13\00\00\00\00\00\00d%\00\00\17R\00\00\d0\13\00\00\00\00\00\00<%\00\00\e3R\00\00\05") + (data $58 $33 (i32.const 5092) + "f") + (data $59 $33 (i32.const 5116) + "\08\00\00\00\01\00\00\00Hl\00\00\00\04") + (data $60 $33 (i32.const 5140) "\01") - (data $62 $29 (i32.const 5347) + (data $61 $33 (i32.const 5155) "\n\ff\ff\ff\ff") - (data $63 $29 (i32.const 5452) + (data $62 $33 (i32.const 5224) + "\05") + (data $63 $33 (i32.const 5236) + "f") + (data $64 $33 (i32.const 5260) + "\09\00\00\00\01\00\00\00\e6u") + (data $65 $33 (i32.const 5284) + "\02") + (data $66 $33 (i32.const 5299) + "\ff\ff\ff\ff\ff") + (data $67 $33 (i32.const 5404) "\n") - (data $64 $29 (i32.const 5491) + (data $68 $33 (i32.const 5443) "\ff\ff\ff\ff\ff") - (data $65 $29 (i32.const 5560) - "\80!\00\00\13E\00\00\c8\15\00\00\00\00\00\00X!\00\00\d5E\00\00\80!\00\005F\00\00\e0\15\00\00\00\00\00\00\80!\00\00\e2E\00\00\f0\15\00\00\00\00\00\00X!\00\00\03F\00\00" - "\80!\00\00\10F\00\00\d0\15\00\00\00\00\00\00\80!\00\00\17G\00\00\c8\15\00\00\00\00\00\00\80!\00\00'G\00\00\08\16\00\00\00\00\00\00\80!\00\00\\G\00\00\e0\15\00\00\00\00\00\00" - "\80!\00\008G\00\00(\16\00\00\00\00\00\00\80!\00\00~G\00\00\e0\15\00\00\00\00\00\00\d0!\00\00\a6G\00\00\d0!\00\00\a8G\00\00\80!\00\00\aaG\00\00\d0\15") - (data $66 $29 (i32.const 5756) + (data $69 $33 (i32.const 5512) + "d%\00\00ZS\00\00\98\15\00\00\00\00\00\00<%\00\00\1cT\00\00d%\00\00|T\00\00\b0\15\00\00\00\00\00\00d%\00\00)T\00\00\c0\15\00\00\00\00\00\00<%\00\00JT\00\00" + "d%\00\00WT\00\00\a0\15\00\00\00\00\00\00d%\00\00\0cV\00\00\e8\15\00\00\00\00\00\00<%\00\00;V\00\00d%\00\00\efV\00\00\e8\15\00\00\00\00\00\00d%\00\002W\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\7fW\00\00\e8\15\00\00\00\00\00\00d%\00\00\c5W\00\00\e8\15\00\00\00\00\00\00d%\00\00\f5W\00\00\e8\15\00\00\00\00\00\00d%\00\003X\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00dX\00\00\e8\15\00\00\00\00\00\00d%\00\00\b4X\00\00\e8\15\00\00\00\00\00\00d%\00\00\edX\00\00\e8\15\00\00\00\00\00\00d%\00\00(Y\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00dY\00\00\e8\15\00\00\00\00\00\00d%\00\00\a7Y\00\00\e8\15\00\00\00\00\00\00d%\00\00\d5Y\00\00\e8\15\00\00\00\00\00\00d%\00\00\08Z\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\c4Z\00\00\e8\15\00\00\00\00\00\00d%\00\00\f1Z\00\00\e8\15\00\00\00\00\00\00d%\00\00\"[\00\00\e8\15\00\00\00\00\00\00d%\00\00`[\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\d8[\00\00\e8\15\00\00\00\00\00\00d%\00\00\9d[\00\00\e8\15\00\00\00\00\00\00d%\00\00\1f\\\00\00\e8\15\00\00\00\00\00\00d%\00\00h\\\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\c3\\\00\00\e8\15\00\00\00\00\00\00d%\00\00\ee\\\00\00\e8\15\00\00\00\00\00\00d%\00\00(]\00\00\e8\15\00\00\00\00\00\00d%\00\00\\]\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\ac]\00\00\e8\15\00\00\00\00\00\00d%\00\00\db]\00\00\e8\15\00\00\00\00\00\00d%\00\00\14^\00\00\e8\15\00\00\00\00\00\00d%\00\00M^\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00r`\00\00\e8\15\00\00\00\00\00\00d%\00\00\c0`\00\00\e8\15\00\00\00\00\00\00d%\00\00\fb`\00\00\e8\15\00\00\00\00\00\00d%\00\00'a\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00qa\00\00\e8\15\00\00\00\00\00\00d%\00\00\a6a\00\00\e8\15\00\00\00\00\00\00d%\00\00\d9a\00\00\e8\15\00\00\00\00\00\00d%\00\00\10b\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00Eb\00\00\e8\15\00\00\00\00\00\00d%\00\00\dbb\00\00\e8\15\00\00\00\00\00\00d%\00\00\0dc\00\00\e8\15\00\00\00\00\00\00d%\00\00?c\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\97c\00\00\e8\15\00\00\00\00\00\00d%\00\00\dfc\00\00\e8\15\00\00\00\00\00\00d%\00\00\17d\00\00\e8\15\00\00\00\00\00\00d%\00\00ed\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\a4d\00\00\e8\15\00\00\00\00\00\00d%\00\00\e7d\00\00\e8\15\00\00\00\00\00\00d%\00\00\18e\00\00\e8\15\00\00\00\00\00\00d%\00\00Rf\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\92f\00\00\e8\15\00\00\00\00\00\00d%\00\00\c5f\00\00\e8\15\00\00\00\00\00\00d%\00\00\fff\00\00\e8\15\00\00\00\00\00\00d%\00\008g\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00ug\00\00\e8\15\00\00\00\00\00\00d%\00\00\f2g\00\00\e8\15\00\00\00\00\00\00d%\00\00\1eh\00\00\e8\15\00\00\00\00\00\00d%\00\00Th\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\a8h\00\00\e8\15\00\00\00\00\00\00d%\00\00\e0h\00\00\e8\15\00\00\00\00\00\00d%\00\00#i\00\00\e8\15\00\00\00\00\00\00d%\00\00Ti\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00\84i\00\00\e8\15\00\00\00\00\00\00d%\00\00\bfi\00\00\e8\15\00\00\00\00\00\00d%\00\00\01j\00\00\e8\15\00\00\00\00\00\00d%\00\00\f0j\00\00" + "\e8\15\00\00\00\00\00\00d%\00\00{k\00\00\98\15\00\00\00\00\00\00d%\00\00\8bk\00\00\10\1a\00\00\00\00\00\00d%\00\00\9ck\00\00\b0\15\00\00\00\00\00\00d%\00\00\bek\00\00" + "0\1a\00\00\00\00\00\00d%\00\00\e2k\00\00\b0\15\00\00\00\00\00\00d1\00\00\nl\00\00d1\00\00\0cl\00\00d1\00\00\0el\00\00d%\00\00\10l\00\00\a0\15") + (data $70 $33 (i32.const 6796) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\d0\11\00\00\07\00\00\00\08\00\00\00\09\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\n\00\00\00\09\00\00\00" - "\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\e8\11\00\00\0b\00\00\00\0c\00\00\00\0b\00\00\00\03\00\00\00\0d\00\00\00\0e\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\00\00\00\00\08\12\00\00" - "\0f\00\00\00\10\00\00\00\0d\00\00\00\04\00\00\00\11\00\00\00\12\00\00\00\02\00\00\00\04\00\00\00\0e\00\00\00\00\00\00\00(\12\00\00\13\00\00\00\14\00\00\00\0f\00\00\00\10\00\00\00\01\00\00\00" - "\02\00\00\00\05\00\00\00\06\00\00\00\15\00\00\00\07\00\00\00\01\00\00\00\08\00\00\00\09\00\00\00\n\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00\18\12\00\00\13\00\00\00\16\00\00\00\0f\00\00\00" - "\10\00\00\00\01\00\00\00\02\00\00\00\05\00\00\00\0b\00\00\00\15\00\00\00\07\00\00\00\01\00\00\00\08\00\00\00\09\00\00\00\n\00\00\00\02\00\00\00\03\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $67 $29 (i32.const 6148) - "H\12\00\00\17\00\00\00\18\00\00\00\0c\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00\19\00\00\00\14\00\00\00\0d\00\00\00\0e\00\00\00\06\00\00\00\15\00\00\00\0f\00\00\00\07\00\00\00" - "\16\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\02") - (data $68 $29 (i32.const 6244) - "X\12\00\00\1a\00\00\00\1b\00\00\00\10\00\00\00\18\00\00\00\08\00\00\00\12\00\00\00\13\00\00\00\1c\00\00\00\19\00\00\00\0d\00\00\00\11\00\00\00\09\00\00\00\1a\00\00\00\12\00\00\00\07\00\00\00" - "\1b\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\03") - (data $69 $29 (i32.const 6340) - "h\12\00\00\1d\00\00\00\1e\00\00\00\13\00\00\00\1c\00\00\00\n\00\00\00\12\00\00\00\13\00\00\00\1f\00\00\00\1d\00\00\00\0d\00\00\00\14\00\00\00\0b\00\00\00\1e\00\00\00\15\00\00\00\07\00\00\00" - "\1f\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\01\00\00\00\04\00\00\00\f0\17\00\00\00\00\00\00x\12\00\00 \00\00\00!\00\00\00\16\00\00\00 \00\00\00\0c\00\00\00\12\00\00\00\13\00\00\00" - "\"\00\00\00!\00\00\00\0d\00\00\00\17\00\00\00\0d\00\00\00\"\00\00\00\18\00\00\00\07\00\00\00#\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\05") - (data $70 $29 (i32.const 6532) - "\88\12\00\00#\00\00\00$\00\00\00\19\00\00\00$\00\00\00\0e\00\00\00\12\00\00\00\13\00\00\00%\00\00\00%\00\00\00\0d\00\00\00\1a\00\00\00\0f\00\00\00&\00\00\00\1b\00\00\00\07\00\00\00" - "'\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\06") - (data $71 $29 (i32.const 6628) - "\98\12\00\00&\00\00\00'\00\00\00\1c\00\00\00(\00\00\00\10\00\00\00\12\00\00\00\13\00\00\00(\00\00\00)\00\00\00\0d\00\00\00\1d\00\00\00\11\00\00\00*\00\00\00\1e\00\00\00\07\00\00\00" - "+\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\03\00\00\00\07\00\00\00\10\19\00\00\d0\19\00\00p\19\00\00\00\00\00\00\a8\12\00\00)\00\00\00*\00\00\00\1f\00\00\00,\00\00\00\12\00\00\00" - "\12\00\00\00\13\00\00\00+\00\00\00-\00\00\00\0d\00\00\00 \00\00\00\13\00\00\00.\00\00\00!\00\00\00\07\00\00\00/\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\08") - (data $72 $29 (i32.const 6828) - "\b8\12\00\00,\00\00\00-\00\00\00\"\00\00\000\00\00\00\14\00\00\00\12\00\00\00\13\00\00\00.\00\00\001\00\00\00\0d\00\00\00#\00\00\00\15\00\00\002\00\00\00$\00\00\00\07\00\00\00" - "3\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\09") - (data $73 $29 (i32.const 6924) - "\c8\12\00\00/\00\00\000\00\00\00%\00\00\004\00\00\00\16\00\00\00\12\00\00\00\13\00\00\001\00\00\005\00\00\00\0d\00\00\00&\00\00\00\17\00\00\006\00\00\00'\00\00\00\07\00\00\00" - "7\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\02\00\00\00\n\00\00\00X\1d\00\00P\18\00\00\00\00\00\00\d8\12\00\002\00\00\003\00\00\00(\00\00\008\00\00\00\18\00\00\00\12\00\00\00" - "\13\00\00\004\00\00\009\00\00\00\0d\00\00\00)\00\00\00\19\00\00\00:\00\00\00*\00\00\00\07\00\00\00;\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\04\00\00\00\0b\00\00\00\d0\19\00\00" - "\98\1a\00\00\f8\1a\00\00X\1b\00\00\00\00\00\00\e8\12\00\005\00\00\006\00\00\00+\00\00\00<\00\00\00\1a\00\00\00\12\00\00\00\13\00\00\007\00\00\00=\00\00\00\0d\00\00\00,\00\00\00" - "\1b\00\00\00>\00\00\00-\00\00\00\07\00\00\00?\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\03\00\00\00\0c\00\00\000\1a\00\00\bc\1b\00\00X\1d\00\00\00\00\00\00\f8\12\00\008\00\00\00" - "9\00\00\00.\00\00\00@\00\00\00\1c\00\00\00\12\00\00\00\13\00\00\00:\00\00\00A\00\00\00\0d\00\00\00/\00\00\00\1d\00\00\00B\00\00\000\00\00\00\07\00\00\00C\00\00\00\03\00\00\00" - "\17\00\00\00\ff\ff\ff\ff\00\00\00\00\0d") - (data $74 $29 (i32.const 7332) - "\08\13\00\00;\00\00\00<\00\00\001\00\00\00D\00\00\00\1e\00\00\00\12\00\00\00\13\00\00\00=\00\00\00E\00\00\00\0d\00\00\002\00\00\00\1f\00\00\00F\00\00\003\00\00\00\07\00\00\00" - "G\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\03\00\00\00\0e\00\00\00\b0\18\00\00(\1c\00\00\90\1c\00\00\00\00\00\00\18\13\00\00>\00\00\00?\00\00\004\00\00\00H\00\00\00 \00\00\00" - "\12\00\00\00\13\00\00\00@\00\00\00I\00\00\00\0d\00\00\005\00\00\00!\00\00\00J\00\00\006\00\00\00\07\00\00\00K\00\00\00\03\00\00\00\17\00\00\00\ff\ff\ff\ff\00\00\00\00\0f") - (data $75 $29 (i32.const 7532) - "H\13\00\00A\00\00\00B\00\00\007\00\00\00L\00\00\00\"\00\00\00M\00\00\00\13\00\00\00C\00\00\00N\00\00\00\0d\00\00\008\00\00\00#\00\00\00O\00\00\009\00\00\00\07\00\00\00" - "P\00\00\00\04\00\00\00\17\00\00\00Q\00\00\00R\00\00\00\00\00\00\00\a8\13\00\00D\00\00\00E\00\00\00:\00\00\00S\00\00\00$\00\00\00T\00\00\00U\00\00\00F\00\00\00V\00\00\00" - "\0d\00\00\00;\00\00\00%\00\00\00W\00\00\00<\00\00\00\07\00\00\00X\00\00\00\03\00\00\00\17\00\00\00\00\00\00\00(\13\00\00G\00\00\00H\00\00\00=\00\00\00Y\00\00\00&\00\00\00" - "Z\00\00\00[\00\00\00I\00\00\00\\\00\00\00\0d\00\00\00>\00\00\00'\00\00\00]\00\00\00?\00\00\00\07\00\00\00^\00\00\00\03\00\00\00\17\00\00\00\00\00\00\008\13\00\00A\00\00\00" - "J\00\00\007\00\00\00L\00\00\00\"\00\00\00M\00\00\00\13\00\00\00C\00\00\00N\00\00\00\0d\00\00\008\00\00\00#\00\00\00O\00\00\009\00\00\00\07\00\00\00P\00\00\00\04\00\00\00" - "\17\00\00\00_\00\00\00`\00\00\00\00\00\00\00x\13\00\00K\00\00\00L\00\00\00@\00\00\00a\00\00\00(\00\00\00b\00\00\00c\00\00\00M\00\00\00d\00\00\00\0d\00\00\00A\00\00\00" - ")\00\00\00e\00\00\00B\00\00\00\07\00\00\00f\00\00\00\03\00\00\00\17\00\00\00\00\00\00\00h\13\00\00A\00\00\00N\00\00\007\00\00\00L\00\00\00\"\00\00\00M\00\00\00\13\00\00\00" - "C\00\00\00N\00\00\00\0d\00\00\008\00\00\00#\00\00\00O\00\00\009\00\00\00\07\00\00\00P\00\00\00\04\00\00\00\17\00\00\00Q\00\00\00R\00\00\00\00\00\00\00x\11\00\00\01\00\00\00" - "O\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00g\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00" - "\06\00\00\00\00\00\00\00\b8\13\00\00P\00\00\00Q\00\00\00h\00\00\00\00\00\00\00\e0\13\00\00R\00\00\00S\00\00\00\05\00\00\00C\00\00\00\01\00\00\00\06\00\00\00i\00\00\00\00\00\00\00" - "\f0\13\00\00R\00\00\00T\00\00\00\07\00\00\00D\00\00\00\02\00\00\00\06\00\00\00i") - (data $76 $29 (i32.const 8209) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00lQ\00\00qQ\00\00\10\0d\00\00\08\14\00\00\98\14") - (data $77 $29 (i32.const 8448) - "\fcN") - (data $78 $29 (i32.const 8508) - "\b8\15\00\00U\00\00\00V\00\00\00k\00\00\00\10\00\00\00\00\00\00\00\d0\15\00\00W\00\00\00X\00\00\00Y\00\00\00Z\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\00\00\00\00" - "\f8\15\00\00W\00\00\00[\00\00\00Y\00\00\00Z\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\00\00\00\00\08\16\00\00\\\00\00\00]\00\00\00l\00\00\00\00\00\00\00\18\16\00\00" - "\\\00\00\00^\00\00\00l\00\00\00\00\00\00\00H\16\00\00W\00\00\00_\00\00\00Y\00\00\00Z\00\00\00\0c\00\00\00\00\00\00\00h\16\00\00W\00\00\00`\00\00\00Y\00\00\00Z\00\00\00" - "\0b\00\00\00\03\00\00\00\04\00\00\00\06\00\00\00callout_cluster\00request\00service\00method\0014Request" - "Context\007Context\0011ContextBase\00/home/jplev_google_com/envoy/api/" - "wasm/cpp/proxy_wasm_intrinsics_lite.pb.h\00CHECK failed: value != " - "NULL: \00/home/jplev_google_com/envoy/api/wasm/cpp/struct_lite.pb." - "h\00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE" - "\00NSt3__221__basic_string_commonILb1EEE\0022CalloutResponseHandler\00" - "15GrpcCallHandlerIN6google8protobuf5ValueEE\0019GrpcCallHandlerBas" - "e\00NSt3__210__function6__funcI3$_0NS_9allocatorIS2_EEFNS_10unique" - "_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEE\00NSt3_" - "_210__function6__baseIFNS_10unique_ptrI7ContextNS_14default_dele" - "teIS3_EEEEjP11RootContextEEE\003$_0\00NSt3__210__function6__funcI3$_" - "1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_d" - "eleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEE\00" - "NSt3__210__function6__baseIFNS_10unique_ptrI11RootContextNS_14de" - "fault_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcE" - "EEEEEE\0014ServiceContext\0011RootContext\00test_callout_successes\00tes" - "t_callout_failures\003$_1\00/home/jplev_google_com/envoy/api/wasm/cp" - "p/proxy_wasm_intrinsics_lite.pb.cc\00N6google8protobuf8internal29I" - "nternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_t" - "raitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLite" - "EE9ContainerE\00DataSource.filename\00DataSource.inline_string\00/usr/" - "local/include/google/protobuf/arenastring.h\00CHECK failed: initia" - "l_value != NULL: \00DataSource\0010DataSource\00Any.type_url\00Any\003Any\00" - "GrpcService.EnvoyGrpc.cluster_name\00GrpcService.EnvoyGrpc\0021GrpcS" - "ervice_EnvoyGrpc\00GrpcService.GoogleGrpc.SslCredentials\0037GrpcSer" - "vice_GoogleGrpc_SslCredentials\00GrpcService.GoogleGrpc.GoogleLoca" - "lCredentials\0045GrpcService_GoogleGrpc_GoogleLocalCredentials\00Grp" - "cService.GoogleGrpc.Empty\0028GrpcService_GoogleGrpc_Empty\00GrpcSer" - "vice.GoogleGrpc.ChannelCredentials\0041GrpcService_GoogleGrpc_Chan" - "nelCredentials\00GrpcService.GoogleGrpc.CallCredentials.ServiceAcc" - "ountJWTAccessCredentials.json_key\00GrpcService.GoogleGrpc.CallCre" - "dentials.ServiceAccountJWTAccessCredentials\0073GrpcService_Google" - "Grpc_CallCredentials_ServiceAccountJWTAccessCredentials\00GrpcServ" - "ice.GoogleGrpc.CallCredentials.GoogleIAMCredentials.authorizatio" - "n_token\00GrpcService.GoogleGrpc.CallCredentials.GoogleIAMCredenti" - "als.authority_selector\00GrpcService.GoogleGrpc.CallCredentials.Go" - "ogleIAMCredentials\0059GrpcService_GoogleGrpc_CallCredentials_Goog" - "leIAMCredentials\00GrpcService.GoogleGrpc.CallCredentials.Metadata" - "CredentialsFromPlugin.name\00GrpcService.GoogleGrpc.CallCredential" - "s.MetadataCredentialsFromPlugin\0068GrpcService_GoogleGrpc_CallCre" - "dentials_MetadataCredentialsFromPlugin\00GrpcService.GoogleGrpc.Ca" - "llCredentials.access_token\00GrpcService.GoogleGrpc.CallCredential" - "s.google_refresh_token\00GrpcService.GoogleGrpc.CallCredentials\0038" - "GrpcService_GoogleGrpc_CallCredentials\00GrpcService.GoogleGrpc.ta" - "rget_uri\00GrpcService.GoogleGrpc.stat_prefix\00GrpcService.GoogleGr" - "pc.credentials_factory_name\00GrpcService.GoogleGrpc\0022GrpcService" - "_GoogleGrpc\00GrpcService.HeaderValue.key\00GrpcService.HeaderValue." - "value\00GrpcService.HeaderValue\0023GrpcService_HeaderValue\00GrpcServ" - "ice\0011GrpcService\00/home/jplev_google_com/envoy/api/wasm/cpp/stru" - "ct_lite.pb.cc\00/usr/local/include/google/protobuf/repeated_field." - "h\00CHECK failed: (index) >= (0): \00CHECK failed: (index) < (curren" - "t_size_): \00/usr/local/include/google/protobuf/map.h\00CHECK failed" - ": (bucket_index_ & 1) == (0): \00CHECK failed: m_->index_of_first_" - "non_null_ == m_->num_buckets_ || m_->table_[m_->index_of_first_n" - "on_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHECK failed:" - " node_ != NULL && m_ != NULL: \00google.protobuf.Value.string_valu" - "e\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed: (&from) !" - "= (this): \00CHECK failed: (&other) != (this): \00N6google8protobuf2" - "7Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8internal12MapEnt" - "ryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_stringIc" - "NS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireF" - "ormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12" - "MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLite" - "ENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEE" - "ENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHEC" - "K failed: (it.m_) == (this): \00CHECK failed: TableEntryIsNonEmpty" - "List(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK failed: GetA" - "renaNoVirtual() == NULL: \00CHECK failed: index_of_first_non_null_" - " == num_buckets_ || table_[index_of_first_non_null_] != NULL: \00C" - "HECK failed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK fai" - "led: (count) <= (kMaxLength): \00CHECK failed: (result.bucket_inde" - "x_) == (b & ~static_cast(1)): \00CHECK failed: (table_[" - "b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !" - "TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->size()" - "): \00CHECK failed: (new_num_buckets) >= (kMinTableSize): \00CHECK f" - "ailed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == (0): " - "\00CHECK failed: table_[b] == table_[b + 1] && (b & 1) == 0: \00N6go" - "ogle8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS" - "2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashI" - "NSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE" - "EE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local/include/g" - "oogle/protobuf/stubs/casts.h\00down_cast\00google.protobuf.Struct\00N6" - "google8protobuf6StructE\00N6google8protobuf5ValueE\00N6google8protob" - "uf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_" - "11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9a" - "llocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_1" - "1ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google.prot" - "obuf.ListValue\00N6google8protobuf9ListValueE\00google.protobuf.Valu" - "e\00no context factory for root_id: \00N6google8protobuf14FatalExcep" - "tionE\00google/protobuf/stubs/common.cc\00This program requires vers" - "ion \00%d.%d.%d\00 of the Protocol Buffer runtime library, but the i" - "nstalled version is \00. Please update your library. If you comp" - "iled the program yourself, make sure that your headers are from " - "the same version of Protocol Buffers as your link-time library. " - " (Version verification failed in \"\00\".)\00This program was compiled" - " against version \00 of the Protocol Buffer runtime library, which" - " is not compatible with the installed version (\00). Contact the " - "program author for an update. If you compiled the program yours" - "elf, make sure that your headers are from the same version of Pr" - "otocol Buffers as your link-time library. (Version verification" - " failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL" - "\00allocator::allocate(size_t n) 'n' exceeds maximum supported " - "size\00%u\00%lu\00google/protobuf/arena.cc\00CHECK failed: (min_bytes) <" - "= (std::numeric_limits::max() - kBlockHeaderSize): \00goog" - "le/protobuf/generated_message_util.cc\00Not implemented field numb" - "er \00 with type \00CHECK failed: (scc->visit_status.load(std::memor" - "y_order_relaxed)) == (SCCInfoBase::kRunning): \00google/protobuf/m" - "essage_lite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot det" - "ermine missing fields for lite message)\00N6google8protobuf11Messa" - "geLiteE\00parse\00Can't \00 message of type \"\00\" because it is missing " - "required fields: \00Exceeded maximum protobuf size of 2GB: \00CHECK " - "failed: (byte_size_before_serialization) == (byte_size_after_ser" - "ialization): \00 was modified concurrently during serialization.\00C" - "HECK failed: (bytes_produced_by_serialization) == (byte_size_bef" - "ore_serialization): \00Byte size calculation and serialization wer" - "e inconsistent. This may indicate a bug in protocol buffers or " - "it may be caused by concurrent modification of \00This shouldn't b" - "e called if all the sizes are equal.\00google/protobuf/repeated_fi" - "eld.cc\00CHECK failed: (new_size) <= ((std::numeric_limits" - "::max() - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requ" - "ested size is too large to fit into size_t.\00google/protobuf/wire" - "_format_lite.cc\00CHECK failed: (value.size()) <= (kint32max): \00se" - "rializing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 da" - "ta when \00 a protocol \00buffer. Use the 'bytes' type if you intend" - " to send raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK f" - "ailed: (buffer_size) >= (0): \00A protocol message was rejected be" - "cause it was too big (more than \00 bytes). To increase the limit" - " (or to disable these warnings), see CodedInputStream::SetTotalB" - "ytesLimit() in google/protobuf/io/coded_stream.h.\00google/protobu" - "f/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0):" - " \00CHECK failed: (last_returned_size_) > (0): \00BackUp() can only " - "be called after a successful Next().\00CHECK failed: (count) <= (l" - "ast_returned_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00C" - "HECK failed: target_ != NULL: \00CHECK failed: (count) <= (target_" - "->size()): \00Cannot allocate buffer larger than kint32max for \00St" - "ringOutputStream.\00N6google8protobuf2io18StringOutputStreamE\00goog" - "le/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doe" - "sn't support aliasing. Reaching here usually means a ZeroCopyOut" - "putStream implementation bug.\00N6google8protobuf2io20ZeroCopyOutp" - "utStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00" - "std::bad_function_call\00NSt3__217bad_function_callE\00mutex lock fa" - "iled\00%d\00terminating with %s exception of type %s: %s\00terminating" - " with %s exception of type %s\00terminating with %s foreign except" - "ion\00terminating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type" - "_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cx" - "xabiv117__class_type_infoE\00pthread_once failure in __cxa_get_glo" - "bals_fast()\00cannot create pthread key for __cxa_get_globals()\00ca" - "nnot zero out thread value for __cxa_get_globals()\00terminate_han" - "dler unexpectedly returned\00St11logic_error\00St12length_error\00N10_" - "_cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_info" - "E\00N10__cxxabiv123__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__v" - "mi_class_type_infoE") + "\n\00\00\00\01\00\00\00\02") + (data $71 $33 (i32.const 6948) + "\e0\11\00\00\00\00\00\00\f8\11\00\00\0b\00\00\00\0c\00\00\00\0b\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0d\00\00\00\05\00\00\00\01\00\00\00\06\00\00\00\07\00\00\00" + "\08\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00\e8\11\00\00\0b\00\00\00\0e\00\00\00\0b\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\09\00\00\00\0d\00\00\00\05\00\00\00\01\00\00\00" + "\06\00\00\00\07\00\00\00\08\00\00\00\02\00\00\00\01") + (data $72 $33 (i32.const 7108) + "\08\12\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $73 $33 (i32.const 7132) + "\18\12\00\00\0f\00\00\00\10\00\00\00\n\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\11\00\00\00\10\00\00\00\0b\00\00\00\0c\00\00\00\04\00\00\00\11\00\00\00\0d\00\00\00\05\00\00\00" + "\12\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\02") + (data $74 $33 (i32.const 7228) + "(\12\00\00\12\00\00\00\13\00\00\00\0e\00\00\00\14\00\00\00\06\00\00\00\0e\00\00\00\0f\00\00\00\14\00\00\00\15\00\00\00\0b\00\00\00\0f\00\00\00\07\00\00\00\16\00\00\00\10\00\00\00\05\00\00\00" + "\17\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\03") + (data $75 $33 (i32.const 7324) + "8\12\00\00\15\00\00\00\16\00\00\00\11\00\00\00\18\00\00\00\08\00\00\00\0e\00\00\00\0f\00\00\00\17\00\00\00\19\00\00\00\0b\00\00\00\12\00\00\00\09\00\00\00\1a\00\00\00\13\00\00\00\05\00\00\00" + "\1b\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\01\00\00\00\04\00\00\00\c8\1b\00\00\00\00\00\00H\12\00\00\18\00\00\00\19\00\00\00\14\00\00\00\1c\00\00\00\n\00\00\00\0e\00\00\00\0f\00\00\00" + "\1a\00\00\00\1d\00\00\00\0b\00\00\00\15\00\00\00\0b\00\00\00\1e\00\00\00\16\00\00\00\05\00\00\00\1f\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\05") + (data $76 $33 (i32.const 7516) + "X\12\00\00\1b\00\00\00\1c\00\00\00\17\00\00\00 \00\00\00\0c\00\00\00\0e\00\00\00\0f\00\00\00\1d\00\00\00!\00\00\00\0b\00\00\00\18\00\00\00\0d\00\00\00\"\00\00\00\19\00\00\00\05\00\00\00" + "#\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\06") + (data $77 $33 (i32.const 7612) + "h\12\00\00\1e\00\00\00\1f\00\00\00\1a\00\00\00$\00\00\00\0e\00\00\00\0e\00\00\00\0f\00\00\00 \00\00\00%\00\00\00\0b\00\00\00\1b\00\00\00\0f\00\00\00&\00\00\00\1c\00\00\00\05\00\00\00" + "'\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\07\00\00\00\e8\1c\00\00\a8\1d\00\00H\1d\00\00\00\00\00\00x\12\00\00!\00\00\00\"\00\00\00\1d\00\00\00(\00\00\00\10\00\00\00" + "\0e\00\00\00\0f\00\00\00#\00\00\00)\00\00\00\0b\00\00\00\1e\00\00\00\11\00\00\00*\00\00\00\1f\00\00\00\05\00\00\00+\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\08") + (data $78 $33 (i32.const 7812) + "\88\12\00\00$\00\00\00%\00\00\00 \00\00\00,\00\00\00\12\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00-\00\00\00\0b\00\00\00!\00\00\00\13\00\00\00.\00\00\00\"\00\00\00\05\00\00\00" + "/\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\09") + (data $79 $33 (i32.const 7908) + "\98\12\00\00'\00\00\00(\00\00\00#\00\00\000\00\00\00\14\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\001\00\00\00\0b\00\00\00$\00\00\00\15\00\00\002\00\00\00%\00\00\00\05\00\00\00" + "3\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\02\00\00\00\n\00\00\000!\00\00(\1c\00\00\00\00\00\00\a8\12\00\00*\00\00\00+\00\00\00&\00\00\004\00\00\00\16\00\00\00\0e\00\00\00" + "\0f\00\00\00,\00\00\005\00\00\00\0b\00\00\00'\00\00\00\17\00\00\006\00\00\00(\00\00\00\05\00\00\007\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\04\00\00\00\0b\00\00\00\a8\1d\00\00" + "p\1e\00\00\d0\1e\00\000\1f\00\00\00\00\00\00\b8\12\00\00-\00\00\00.\00\00\00)\00\00\008\00\00\00\18\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\009\00\00\00\0b\00\00\00*\00\00\00" + "\19\00\00\00:\00\00\00+\00\00\00\05\00\00\00;\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\0c\00\00\00\08\1e\00\00\94\1f\00\000!\00\00\00\00\00\00\c8\12\00\000\00\00\00" + "1\00\00\00,\00\00\00<\00\00\00\1a\00\00\00\0e\00\00\00\0f\00\00\002\00\00\00=\00\00\00\0b\00\00\00-\00\00\00\1b\00\00\00>\00\00\00.\00\00\00\05\00\00\00?\00\00\00\03\00\00\00" + "\13\00\00\00\ff\ff\ff\ff\00\00\00\00\0d") + (data $80 $33 (i32.const 8316) + "\d8\12\00\003\00\00\004\00\00\00/\00\00\00@\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\005\00\00\00A\00\00\00\0b\00\00\000\00\00\00\1d\00\00\00B\00\00\001\00\00\00\05\00\00\00" + "C\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\03\00\00\00\0e\00\00\00\88\1c\00\00\00 \00\00h \00\00\00\00\00\00\e8\12\00\006\00\00\007\00\00\002\00\00\00D\00\00\00\1e\00\00\00" + "\0e\00\00\00\0f\00\00\008\00\00\00E\00\00\00\0b\00\00\003\00\00\00\1f\00\00\00F\00\00\004\00\00\00\05\00\00\00G\00\00\00\03\00\00\00\13\00\00\00\ff\ff\ff\ff\00\00\00\00\0f") + (data $81 $33 (i32.const 8516) + "\18\13\00\009\00\00\00:\00\00\005\00\00\00H\00\00\00 \00\00\00I\00\00\00\0f\00\00\00;\00\00\00J\00\00\00\0b\00\00\006\00\00\00!\00\00\00K\00\00\007\00\00\00\05\00\00\00" + "L\00\00\00\04\00\00\00\13\00\00\00M\00\00\00N\00\00\00\00\00\00\00x\13\00\00<\00\00\00=\00\00\008\00\00\00O\00\00\00\"\00\00\00P\00\00\00Q\00\00\00>\00\00\00R\00\00\00" + "\0b\00\00\009\00\00\00#\00\00\00S\00\00\00:\00\00\00\05\00\00\00T\00\00\00\03\00\00\00\13\00\00\00\00\00\00\00\f8\12\00\00?\00\00\00@\00\00\00;\00\00\00U\00\00\00$\00\00\00" + "V\00\00\00W\00\00\00A\00\00\00X\00\00\00\0b\00\00\00<\00\00\00%\00\00\00Y\00\00\00=\00\00\00\05\00\00\00Z\00\00\00\03\00\00\00\13\00\00\00\00\00\00\00\08\13\00\009\00\00\00" + "B\00\00\005\00\00\00H\00\00\00 \00\00\00I\00\00\00\0f\00\00\00;\00\00\00J\00\00\00\0b\00\00\006\00\00\00!\00\00\00K\00\00\007\00\00\00\05\00\00\00L\00\00\00\04\00\00\00" + "\13\00\00\00[\00\00\00\\\00\00\00\00\00\00\00H\13\00\00C\00\00\00D\00\00\00>\00\00\00]\00\00\00&\00\00\00^\00\00\00_\00\00\00E\00\00\00`\00\00\00\0b\00\00\00?\00\00\00" + "'\00\00\00a\00\00\00@\00\00\00\05\00\00\00b\00\00\00\03\00\00\00\13\00\00\00\00\00\00\008\13\00\009\00\00\00F\00\00\005\00\00\00H\00\00\00 \00\00\00I\00\00\00\0f\00\00\00" + ";\00\00\00J\00\00\00\0b\00\00\006\00\00\00!\00\00\00K\00\00\007\00\00\00\05\00\00\00L\00\00\00\04\00\00\00\13\00\00\00M\00\00\00N\00\00\00\00\00\00\00x\11\00\00\01\00\00\00" + "G\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00c\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00" + "\06") + (data $82 $33 (i32.const 9104) + "\01\00\00\00`\1a\00\00\00\00\00\00\88\13\00\00H\00\00\00I\00\00\00d\00\00\00\00\00\00\00\b0\13\00\00J\00\00\00K\00\00\00\05\00\00\00A\00\00\00\01\00\00\00\06\00\00\00e\00\00\00" + "\00\00\00\00\c0\13\00\00J\00\00\00L\00\00\00\07\00\00\00B\00\00\00\02\00\00\00\06\00\00\00e") + (data $83 $33 (i32.const 9209) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\d8u\00\00\e6u\00\00\10\0d\00\00\d8\13\00\00h\14") + (data $84 $33 (i32.const 9448) + "ls") + (data $85 $33 (i32.const 9508) + "\88\15\00\00M\00\00\00N\00\00\00g\00\00\00\00\00\00\00\a0\15\00\00O\00\00\00P\00\00\00Q\00\00\00R\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\c8\15\00\00" + "O\00\00\00S\00\00\00Q\00\00\00R\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\d8\15\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00C\00\00\00D\00\00\00" + "E\00\00\00T\00\00\00U\00\00\00\00\00\00\00\e8\15\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\10\00\00\00D\00\00\00E\00\00\00T\00\00\00V\00\00\00\00\00\00\00\f0\15\00\00" + "(\00\00\00)\00\00\00*\00\00\00+\00\00\00F\00\00\00D\00\00\00G\00\00\00T\00\00\00W") + (data $86 $33 (i32.const 9741) + "\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00H\00\00\00D\00\00\00E\00\00\00T\00\00\00X\00\00\00\00\00\00\00\10\16\00\00,\00\00\00)\00\00\00*\00\00\00+\00\00\00I" + "\00\00\00J\00\00\00E\00\00\00T\00\00\00Y\00\00\00\00\00\00\00 \16\00\00-\00\00\00)\00\00\00*\00\00\00+\00\00\00K\00\00\00L\00\00\00E\00\00\00T\00\00\00Z\00\00\00\00" + "\00\00\000\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00M\00\00\00D\00\00\00N\00\00\00T\00\00\00[\00\00\00\00\00\00\00@\16\00\00(\00\00\00)\00\00\00*\00\00\00+" + "\00\00\00O\00\00\00D\00\00\00E\00\00\00T\00\00\00\\\00\00\00\00\00\00\00P\16\00\00.\00\00\00/\00\00\000\00\00\001\00\00\00P\00\00\00Q\00\00\00E\00\00\00T\00\00\00]" + "\00\00\00\00\00\00\00`\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00R\00\00\00D\00\00\00E\00\00\00T\00\00\00^\00\00\00\00\00\00\00p\16\00\00(\00\00\00)\00\00\00*" + "\00\00\00+\00\00\00S\00\00\00D\00\00\00E\00\00\00T\00\00\00_\00\00\00\00\00\00\00\80\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00T\00\00\00D\00\00\00E\00\00\00T" + "\00\00\00`\00\00\00\00\00\00\00\90\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00U\00\00\00D\00\00\00E\00\00\00T\00\00\00a\00\00\00\00\00\00\00\a0\16\00\00(\00\00\00)" + "\00\00\00*\00\00\00+\00\00\00V\00\00\00D\00\00\00E\00\00\00T\00\00\00b\00\00\00\00\00\00\00\b0\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00W\00\00\00D\00\00\00E" + "\00\00\00T\00\00\00c\00\00\00\00\00\00\00\c0\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00X\00\00\00D\00\00\00E\00\00\00T\00\00\00d\00\00\00\00\00\00\00\d0\16\00\00(" + "\00\00\00)\00\00\00*\00\00\00+\00\00\00Y\00\00\00D\00\00\00E\00\00\00T\00\00\00e\00\00\00\00\00\00\00\e0\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00Z\00\00\00D" + "\00\00\00E\00\00\00T\00\00\00f\00\00\00\00\00\00\00\f0\16\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00[\00\00\00D\00\00\00E\00\00\00T\00\00\00g") + (data $87 $33 (i32.const 10445) + "\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\\\00\00\00D\00\00\00E\00\00\00T\00\00\00h\00\00\00\00\00\00\00\10\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00]" + "\00\00\00D\00\00\00E\00\00\00T\00\00\00i\00\00\00\00\00\00\00 \17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00^\00\00\00D\00\00\00E\00\00\00T\00\00\00j\00\00\00\00" + "\00\00\000\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00_\00\00\00D\00\00\00E\00\00\00T\00\00\00k\00\00\00\00\00\00\00@\17\00\00(\00\00\00)\00\00\00*\00\00\00+" + "\00\00\00`\00\00\00D\00\00\00E\00\00\00T\00\00\00l\00\00\00\00\00\00\00P\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00a\00\00\00D\00\00\00E\00\00\00T\00\00\00m" + "\00\00\00\00\00\00\00`\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00b\00\00\00D\00\00\00E\00\00\00T\00\00\00n\00\00\00\00\00\00\00p\17\00\00(\00\00\00)\00\00\00*" + "\00\00\00+\00\00\00c\00\00\00D\00\00\00E\00\00\00T\00\00\00o\00\00\00\00\00\00\00\80\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00d\00\00\00D\00\00\00E\00\00\00T" + "\00\00\00p\00\00\00\00\00\00\00\90\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00e\00\00\00D\00\00\00f\00\00\00T\00\00\00q\00\00\00\00\00\00\00\a0\17\00\00(\00\00\00)" + "\00\00\00*\00\00\00+\00\00\00g\00\00\00D\00\00\00E\00\00\00T\00\00\00r\00\00\00\00\00\00\00\b0\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00h\00\00\00D\00\00\00E" + "\00\00\00T\00\00\00s\00\00\00\00\00\00\00\c0\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00i\00\00\00D\00\00\00j\00\00\00T\00\00\00t\00\00\00\00\00\00\00\d0\17\00\00(" + "\00\00\00)\00\00\00*\00\00\00+\00\00\00k\00\00\00D\00\00\00E\00\00\00T\00\00\00u\00\00\00\00\00\00\00\e0\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00l\00\00\00D" + "\00\00\00E\00\00\00T\00\00\00v\00\00\00\00\00\00\00\f0\17\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00m\00\00\00D\00\00\00E\00\00\00T\00\00\00w") + (data $88 $33 (i32.const 11149) + "\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00n\00\00\00D\00\00\00o\00\00\00T\00\00\00x\00\00\00\00\00\00\00\10\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00p" + "\00\00\00D\00\00\00E\00\00\00T\00\00\00y\00\00\00\00\00\00\00 \18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00q\00\00\00D\00\00\00E\00\00\00T\00\00\00z\00\00\00\00" + "\00\00\000\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00r\00\00\00D\00\00\00E\00\00\00T\00\00\00{\00\00\00\00\00\00\00@\18\00\00(\00\00\00)\00\00\00*\00\00\00+" + "\00\00\00s\00\00\00D\00\00\00E\00\00\00T\00\00\00|\00\00\00\00\00\00\00P\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00t\00\00\00D\00\00\00E\00\00\00T\00\00\00}" + "\00\00\00\00\00\00\00`\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00u\00\00\00D\00\00\00E\00\00\00T\00\00\00~\00\00\00\00\00\00\00p\18\00\00(\00\00\00)\00\00\00*" + "\00\00\00+\00\00\00v\00\00\00D\00\00\00E\00\00\00T\00\00\00\7f\00\00\00\00\00\00\00\80\18\00\002\00\00\003\00\00\004\00\00\005\00\00\00w\00\00\00x\00\00\00E\00\00\00T" + "\00\00\00\80\00\00\00\00\00\00\00\90\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00y\00\00\00D\00\00\00E\00\00\00T\00\00\00\81\00\00\00\00\00\00\00\a0\18\00\00(\00\00\00)" + "\00\00\00*\00\00\00+\00\00\00z\00\00\00D\00\00\00{\00\00\00T\00\00\00\82\00\00\00\00\00\00\00\b0\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00|\00\00\00D\00\00\00E" + "\00\00\00T\00\00\00\83\00\00\00\00\00\00\00\c0\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00}\00\00\00D\00\00\00E\00\00\00T\00\00\00\84\00\00\00\00\00\00\00\d0\18\00\00(" + "\00\00\00)\00\00\00*\00\00\00+\00\00\00~\00\00\00D\00\00\00E\00\00\00T\00\00\00\85\00\00\00\00\00\00\00\e0\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\7f\00\00\00D" + "\00\00\00E\00\00\00T\00\00\00\86\00\00\00\00\00\00\00\f0\18\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\80\00\00\00D\00\00\00E\00\00\00T\00\00\00\87") + (data $89 $33 (i32.const 11853) + "\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\81\00\00\00D\00\00\00\82\00\00\00T\00\00\00\88\00\00\00\00\00\00\00\10\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\83" + "\00\00\00D\00\00\00\84\00\00\00T\00\00\00\89\00\00\00\00\00\00\00 \19\00\006\00\00\00)\00\00\00*\00\00\00+\00\00\00\85\00\00\00\86\00\00\00E\00\00\00T\00\00\00\8a\00\00\00\00" + "\00\00\000\19\00\007\00\00\008\00\00\00*\00\00\00+\00\00\00\87\00\00\00\88\00\00\00E\00\00\00T\00\00\00\8b\00\00\00\00\00\00\00@\19\00\00(\00\00\00)\00\00\00*\00\00\00+" + "\00\00\00\89\00\00\00D\00\00\00E\00\00\00T\00\00\00\8c\00\00\00\00\00\00\00P\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\8a\00\00\00D\00\00\00E\00\00\00T\00\00\00\8d" + "\00\00\00\00\00\00\00`\19\00\009\00\00\00:\00\00\00;\00\00\00+\00\00\00\8b\00\00\00\8c\00\00\00E\00\00\00T\00\00\00\8e\00\00\00\00\00\00\00p\19\00\00(\00\00\00)\00\00\00*" + "\00\00\00+\00\00\00\8d\00\00\00D\00\00\00E\00\00\00T\00\00\00\8f\00\00\00\00\00\00\00\80\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\8e\00\00\00D\00\00\00E\00\00\00T" + "\00\00\00\90\00\00\00\00\00\00\00\90\19\00\00<\00\00\00)\00\00\00=\00\00\00+\00\00\00\8f\00\00\00\90\00\00\00E\00\00\00T\00\00\00\91\00\00\00\00\00\00\00\a0\19\00\00(\00\00\00)" + "\00\00\00*\00\00\00+\00\00\00\91\00\00\00D\00\00\00E\00\00\00T\00\00\00\92\00\00\00\00\00\00\00\b0\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\92\00\00\00D\00\00\00E" + "\00\00\00T\00\00\00\93\00\00\00\00\00\00\00\c0\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\93\00\00\00D\00\00\00E\00\00\00T\00\00\00\94\00\00\00\00\00\00\00\d0\19\00\00(" + "\00\00\00)\00\00\00*\00\00\00+\00\00\00\94\00\00\00D\00\00\00E\00\00\00T\00\00\00\95\00\00\00\00\00\00\00\e0\19\00\00>\00\00\00)\00\00\00?\00\00\00+\00\00\00\95\00\00\00\96" + "\00\00\00E\00\00\00T\00\00\00\96\00\00\00\00\00\00\00\f0\19\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\97\00\00\00D\00\00\00E\00\00\00T\00\00\00\97") + (data $90 $33 (i32.const 12557) + "\1a\00\00(\00\00\00)\00\00\00*\00\00\00+\00\00\00\98\00\00\00D\00\00\00E\00\00\00T\00\00\00\98\00\00\00\00\00\00\00\10\1a\00\00\99\00\00\00\9a\00\00\00h\00\00\00\00\00\00\00 " + "\1a\00\00\99\00\00\00\9b\00\00\00h\00\00\00\00\00\00\00P\1a\00\00O\00\00\00\9c\00\00\00Q\00\00\00R\00\00\00\0c\00\00\00\00\00\00\00x\1a\00\00O\00\00\00\9d\00\00\00Q\00\00\00R" + "\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00callout_cluster\00request\00service\00method\0014Requ" + "estContext\007Context\0011ContextBase\00/home/piotrsikora/Google/envoy" + "/api/wasm/cpp/proxy_wasm_intrinsics_lite.pb.h\00CHECK failed: valu" + "e != NULL: \00/home/piotrsikora/Google/envoy/api/wasm/cpp/struct_l" + "ite.pb.h\00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocato" + "rIcEEEE\00NSt3__221__basic_string_commonILb1EEE\0022CalloutResponseH" + "andler\0015GrpcCallHandlerIN6google8protobuf5ValueEE\0019GrpcCallHan" + "dlerBase\003$_0\0014ServiceContext\0011RootContext\00test_callout_succes" + "ses\00defineMetric(MetricType::Counter, \"test_callout_successes\", " + "&callout_success_counter_)\00test_callout_failures\00defineMetric(Me" + "tricType::Counter, \"test_callout_failures\", &callout_failure_cou" + "nter_)\003$_1\00/home/piotrsikora/Google/envoy/api/wasm/cpp/proxy_wa" + "sm_intrinsics_lite.pb.cc\00N6google8protobuf8internal29InternalMet" + "adataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEEN" + "S3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9Contain" + "erE\00DataSource.filename\00DataSource.inline_string\00/usr/local/incl" + "ude/google/protobuf/arenastring.h\00CHECK failed: initial_value !=" + " NULL: \00DataSource\0010DataSource\00Any.type_url\00Any\003Any\00GrpcServic" + "e.EnvoyGrpc.cluster_name\00GrpcService.EnvoyGrpc\0021GrpcService_Env" + "oyGrpc\00GrpcService.GoogleGrpc.SslCredentials\0037GrpcService_Googl" + "eGrpc_SslCredentials\00GrpcService.GoogleGrpc.GoogleLocalCredentia" + "ls\0045GrpcService_GoogleGrpc_GoogleLocalCredentials\00GrpcService.G" + "oogleGrpc.Empty\0028GrpcService_GoogleGrpc_Empty\00GrpcService.Googl" + "eGrpc.ChannelCredentials\0041GrpcService_GoogleGrpc_ChannelCredent" + "ials\00GrpcService.GoogleGrpc.CallCredentials.ServiceAccountJWTAcc" + "essCredentials.json_key\00GrpcService.GoogleGrpc.CallCredentials.S" + "erviceAccountJWTAccessCredentials\0073GrpcService_GoogleGrpc_CallC" + "redentials_ServiceAccountJWTAccessCredentials\00GrpcService.Google" + "Grpc.CallCredentials.GoogleIAMCredentials.authorization_token\00Gr" + "pcService.GoogleGrpc.CallCredentials.GoogleIAMCredentials.author" + "ity_selector\00GrpcService.GoogleGrpc.CallCredentials.GoogleIAMCre" + "dentials\0059GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCrede" + "ntials\00GrpcService.GoogleGrpc.CallCredentials.MetadataCredential" + "sFromPlugin.name\00GrpcService.GoogleGrpc.CallCredentials.Metadata" + "CredentialsFromPlugin\0068GrpcService_GoogleGrpc_CallCredentials_M" + "etadataCredentialsFromPlugin\00GrpcService.GoogleGrpc.CallCredenti" + "als.access_token\00GrpcService.GoogleGrpc.CallCredentials.google_r" + "efresh_token\00GrpcService.GoogleGrpc.CallCredentials\0038GrpcServic" + "e_GoogleGrpc_CallCredentials\00GrpcService.GoogleGrpc.target_uri\00G" + "rpcService.GoogleGrpc.stat_prefix\00GrpcService.GoogleGrpc.credent" + "ials_factory_name\00GrpcService.GoogleGrpc\0022GrpcService_GoogleGrp" + "c\00GrpcService.HeaderValue.key\00GrpcService.HeaderValue.value\00Grpc" + "Service.HeaderValue\0023GrpcService_HeaderValue\00GrpcService\0011Grpc" + "Service\00/home/piotrsikora/Google/envoy/api/wasm/cpp/struct_lite." + "pb.cc\00/usr/local/include/google/protobuf/repeated_field.h\00CHECK " + "failed: (index) >= (0): \00CHECK failed: (index) < (current_size_)" + ": \00/usr/local/include/google/protobuf/map.h\00CHECK failed: (bucke" + "t_index_ & 1) == (0): \00CHECK failed: m_->index_of_first_non_null" + "_ == m_->num_buckets_ || m_->table_[m_->index_of_first_non_null_" + "] != NULL: \00CHECK failed: !tree->empty(): \00CHECK failed: node_ !" + "= NULL && m_ != NULL: \00google.protobuf.Value.string_value\00google" + ".protobuf.Struct.FieldsEntry.key\00CHECK failed: (&from) != (this)" + ": \00CHECK failed: (&other) != (this): \00N6google8protobuf27Struct_" + "FieldsEntry_DoNotUseE\00N6google8protobuf8internal12MapEntryLiteIN" + "S0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4_11ch" + "ar_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLit" + "e9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12MapEntry" + "ImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__2" + "12basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5Va" + "lueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed" + ": (it.m_) == (this): \00CHECK failed: TableEntryIsNonEmptyList(b):" + " \00CHECK failed: TableEntryIsTree(b): \00CHECK failed: GetArenaNoVi" + "rtual() == NULL: \00CHECK failed: index_of_first_non_null_ == num_" + "buckets_ || table_[index_of_first_non_null_] != NULL: \00CHECK fai" + "led: find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed: (co" + "unt) <= (kMaxLength): \00CHECK failed: (result.bucket_index_) == (" + "b & ~static_cast(1)): \00CHECK failed: (table_[b]) == (" + "table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !TableEnt" + "ryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->size()): \00CHEC" + "K failed: (new_num_buckets) >= (kMinTableSize): \00CHECK failed: n" + " >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == (0): \00CHECK f" + "ailed: table_[b] == table_[b + 1] && (b & 1) == 0: \00N6google8pro" + "tobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9alloc" + "atorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt3__21" + "2basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == " + "NULL || dynamic_cast(f) != NULL\00/usr/local/include/google/pr" + "otobuf/stubs/casts.h\00down_cast\00google.protobuf.Struct\00N6google8p" + "rotobuf6StructE\00N6google8protobuf5ValueE\00N6google8protobuf8inter" + "nal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11Messag" + "eLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocator" + "IcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE1" + "5MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google.protobuf.Lis" + "tValue\00N6google8protobuf9ListValueE\00google.protobuf.Value\00no con" + "text factory for root_id: \00N6google8protobuf14FatalExceptionE\00go" + "ogle/protobuf/stubs/common.cc\00This program requires version \00%d." + "%d.%d\00 of the Protocol Buffer runtime library, but the installed" + " version is \00. Please update your library. If you compiled the" + " program yourself, make sure that your headers are from the same" + " version of Protocol Buffers as your link-time library. (Versio" + "n verification failed in \"\00\".)\00This program was compiled against" + " version \00 of the Protocol Buffer runtime library, which is not " + "compatible with the installed version (\00). Contact the program " + "author for an update. If you compiled the program yourself, mak" + "e sure that your headers are from the same version of Protocol B" + "uffers as your link-time library. (Version verification failed " + "in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocat" + "or::allocate(size_t n) 'n' exceeds maximum supported size\00%u\00" + "%lu\00google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= (std::" + "numeric_limits::max() - kBlockHeaderSize): \00google/proto" + "buf/generated_message_util.cc\00Not implemented field number \00 wit" + "h type \00CHECK failed: (scc->visit_status.load(std::memory_order_" + "relaxed)) == (SCCInfoBase::kRunning): \00google/protobuf/message_l" + "ite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot determine m" + "issing fields for lite message)\00N6google8protobuf11MessageLiteE\00" + "parse\00Can't \00 message of type \"\00\" because it is missing required" + " fields: \00Exceeded maximum protobuf size of 2GB: \00CHECK failed: " + "(byte_size_before_serialization) == (byte_size_after_serializati" + "on): \00 was modified concurrently during serialization.\00CHECK fai" + "led: (bytes_produced_by_serialization) == (byte_size_before_seri" + "alization): \00Byte size calculation and serialization were incons" + "istent. This may indicate a bug in protocol buffers or it may b" + "e caused by concurrent modification of \00This shouldn't be called" + " if all the sizes are equal.\00google/protobuf/repeated_field.cc\00C" + "HECK failed: (new_size) <= ((std::numeric_limits::max() " + "- kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requested si" + "ze is too large to fit into size_t.\00google/protobuf/wire_format_" + "lite.cc\00CHECK failed: (value.size()) <= (kint32max): \00serializin" + "g\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 data when " + "\00 a protocol \00buffer. Use the 'bytes' type if you intend to send" + " raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed: (" + "buffer_size) >= (0): \00A protocol message was rejected because it" + " was too big (more than \00 bytes). To increase the limit (or to " + "disable these warnings), see CodedInputStream::SetTotalBytesLimi" + "t() in google/protobuf/io/coded_stream.h.\00google/protobuf/io/zer" + "o_copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK " + "failed: (last_returned_size_) > (0): \00BackUp() can only be calle" + "d after a successful Next().\00CHECK failed: (count) <= (last_retu" + "rned_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK fai" + "led: target_ != NULL: \00CHECK failed: (count) <= (target_->size()" + "): \00Cannot allocate buffer larger than kint32max for \00StringOutp" + "utStream.\00N6google8protobuf2io18StringOutputStreamE\00google/proto" + "buf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't sup" + "port aliasing. Reaching here usually means a ZeroCopyOutputStrea" + "m implementation bug.\00N6google8protobuf2io20ZeroCopyOutputStream" + "E\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad_f" + "unction_call\00NSt3__217bad_function_callE\00mutex lock failed\00%d\00te" + "rminating with %s exception of type %s: %s\00terminating with %s e" + "xception of type %s\00terminating with %s foreign exception\00termin" + "ating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9" + "type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__" + "class_type_infoE\00terminate_handler unexpectedly returned\00_Z\00___Z" + "\00_block_invoke\00invocation function for block in \00void\00bool\00char\00" + "signed char\00unsigned char\00short\00unsigned short\00int\00unsigned int\00" + "long\00unsigned long\00long long\00__int128\00unsigned __int128\00float\00lo" + "ng double\00__float128\00...\00decimal64\00decimal128\00decimal32\00decimal1" + "6\00char32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr_t\00[abi:\00]\00N" + "12_GLOBAL__N_116itanium_demangle10AbiTagAttrE\00N12_GLOBAL__N_116i" + "tanium_demangle4NodeE\00allocator\00basic_string\00string\00istream\00ostr" + "eam\00iostream\00std::allocator\00std::basic_string\00std::string\00std::i" + "stream\00std::ostream\00std::iostream\00N12_GLOBAL__N_116itanium_deman" + "gle19SpecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_116itanium_de" + "mangle20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_" + "116itanium_demangle13ReferenceTypeE\00objc_object\00*\00id<\00>\00N12_GLOB" + "AL__N_116itanium_demangle11PointerTypeE\00N12_GLOBAL__N_116itanium" + "_demangle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116itanium_d" + "emangle12TemplateArgsE\00N12_GLOBAL__N_116itanium_demangle13Parame" + "terPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_" + "demangle15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116itanium_demangl" + "e16FloatLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_demangle16Fl" + "oatLiteralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_demangle16FloatL" + "iteralImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_demangle8Bool" + "ExprE\00-\00N12_GLOBAL__N_116itanium_demangle14IntegerLiteralE\00N12_G" + "LOBAL__N_116itanium_demangle20TemplateArgumentPackE\00gs\00&=\00=\00alig" + "nof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*" + "\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00N12_GLOBA" + "L__N_116itanium_demangle9ThrowExprE\00N12_GLOBAL__N_116itanium_dem" + "angle12InitListExprE\00N12_GLOBAL__N_116itanium_demangle13NodeArra" + "yNodeE\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle13EnclosingE" + "xprE\00sizeof...(\00N12_GLOBAL__N_116itanium_demangle22ParameterPack" + "ExpansionE\00N12_GLOBAL__N_116itanium_demangle19SizeofParamPackExp" + "rE\00static_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8CastExprE\00re" + "interpret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_demangle15Co" + "nditionalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL" + "__N_116itanium_demangle7NewExprE\00N12_GLOBAL__N_116itanium_demang" + "le11PostfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_demangle15Br" + "acedRangeExprE\00N12_GLOBAL__N_116itanium_demangle10BracedExprE\00_G" + "LOBAL__N\00(anonymous namespace)\00N12_GLOBAL__N_116itanium_demangle" + "8NameTypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18ArraySubscriptE" + "xprE\00.\00N12_GLOBAL__N_116itanium_demangle10MemberExprE\00srN\00sr\00::\00" + "N12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameE\00dn\00on\00op" + "erator&&\00operator&\00operator&=\00operator=\00operator()\00operator,\00ope" + "rator~\00operator delete[]\00operator*\00operator/\00operator/=\00operator" + "^\00operator^=\00operator==\00operator>=\00operator>\00operator[]\00operator" + "<=\00operator<<\00operator<<=\00operator<\00operator-\00operator-=\00operato" + "r*=\00operator--\00operator new[]\00operator!=\00operator!\00operator new\00" + "operator||\00operator|\00operator|=\00operator->*\00operator+\00operator+=" + "\00operator++\00operator->\00operator?\00operator%\00operator%=\00operator>>" + "\00operator>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_116itanium_de" + "mangle15LiteralOperatorE\00operator delete\00operator \00N12_GLOBAL__N" + "_116itanium_demangle22ConversionOperatorTypeE\00N12_GLOBAL__N_116i" + "tanium_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_demangle13Qua" + "lifiedNameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_116itanium_dem" + "angle10DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_demangle14Conv" + "ersionExprE\00N12_GLOBAL__N_116itanium_demangle8CallExprE\00const_ca" + "st\00N12_GLOBAL__N_116itanium_demangle10PrefixExprE\00) \00 (\00N12_GLOB" + "AL__N_116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00e" + "o\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs" + "\00rS\00... \00 ...\00N12_GLOBAL__N_116itanium_demangle8FoldExprE\00fp\00fL\00" + "N12_GLOBAL__N_116itanium_demangle13FunctionParamE\00N12_GLOBAL__N_" + "116itanium_demangle24ForwardTemplateReferenceE\00Ts\00struct\00Tu\00unio" + "n\00Te\00enum\00N12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefT" + "ypeE\00StL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle16StdQualifie" + "dNameE\00DC\00N12_GLOBAL__N_116itanium_demangle21StructuredBindingNa" + "meE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_demangle15Closu" + "reTypeNameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_demangle15Unname" + "dTypeNameE\00string literal\00N12_GLOBAL__N_116itanium_demangle9Loca" + "lNameE\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDtorNameE\00basi" + "c_istream\00basic_ostream\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_istream" + " >\00std::basic_ostream >\00std::basic_iostream >\00N12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitut" + "ionE\00N12_GLOBAL__N_116itanium_demangle10NestedNameE\00::*\00N12_GLOB" + "AL__N_116itanium_demangle19PointerToMemberTypeE\00[\00N12_GLOBAL__N_" + "116itanium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itan" + "ium_demangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__N_116itanium" + "_demangle15PixelVectorTypeE\00decltype(\00double\00unsigned long long\00" + "objcproto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_116itanium_de" + "mangle8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17VendorExtQua" + "lTypeE\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoNameE\00Do\00noex" + "cept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_demangle12Fu" + "nctionTypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle20DynamicExc" + "eptionSpecE\00noexcept(\00N12_GLOBAL__N_116itanium_demangle12Noexcep" + "tSpecE\00N12_GLOBAL__N_116itanium_demangle11SpecialNameE\00N12_GLOBA" + "L__N_116itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_" + "116itanium_demangle16FunctionEncodingE\00 [enable_if:\00N12_GLOBAL__" + "N_116itanium_demangle12EnableIfAttrE\00thread-local wrapper routin" + "e for \00reference temporary for \00guard variable for \00non-virtual " + "thunk to \00virtual thunk to \00thread-local initialization routine " + "for \00construction vtable for \00-in-\00N12_GLOBAL__N_116itanium_dema" + "ngle21CtorVtableSpecialNameE\00covariant return thunk to \00typeinfo" + " name for \00typeinfo for \00VTT for \00vtable for \00St11logic_error\00St" + "12length_error\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119" + "__pointer_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00v\00c" + "\00h\00N10__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_grpc_callout_cpp_cc - i32.const 20040 + i32.const 29368 i64.const 0 i64.store align=4 - i32.const 20048 + i32.const 29376 i64.const 0 i64.store align=4 - i32.const 20056 + i32.const 29384 i32.const 1065353216 i32.store - i32.const 20060 + i32.const 29388 i64.const 0 i64.store align=4 - i32.const 20068 + i32.const 29396 i64.const 0 i64.store align=4 - i32.const 20076 + i32.const 29404 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -531,39 +727,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $32 + global.get $36 local.set $1 local.get $0 - global.get $32 + global.get $36 i32.add - global.set $32 - global.get $32 + global.set $36 + global.get $36 i32.const 15 i32.add i32.const -16 i32.and - global.set $32 + global.set $36 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $32 + global.get $36 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $32 + global.set $36 ) (func $establishStackSpace (type $1) (param $0 i32) (param $1 i32) local.get $0 - global.set $32 + global.set $36 local.get $1 - global.set $33 + global.set $37 ) (func $__ZN14RequestContext16onRequestHeadersEv (type $4) @@ -579,12 +775,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 128 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 120 i32.add @@ -673,13 +869,13 @@ local.get $6 i32.store offset=52 local.get $1 - i32.const 8740 + i32.const 12728 i32.store offset=40 local.get $1 i32.const 7 i32.store offset=44 local.get $1 - i32.const 8748 + i32.const 12736 i32.store offset=32 local.get $1 i32.const 6 @@ -690,7 +886,7 @@ i32.const 0 i32.store offset=4 local.get $2 - i32.const 5840 + i32.const 6880 i32.store local.get $2 local.get $0 @@ -732,11 +928,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 local.get $1 call $__ZN6google8protobuf5ValueD2Ev @@ -748,7 +944,7 @@ local.get $4 call $__ZN11GrpcServiceD2Ev local.get $1 - global.set $32 + global.set $36 i32.const 1 return end ;; $if_1 @@ -758,7 +954,7 @@ local.get $4 call $__ZN11GrpcServiceD2Ev local.get $1 - global.set $32 + global.set $36 i32.const 1 ) @@ -769,12 +965,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 24 i32.add @@ -784,7 +980,7 @@ local.get $2 i32.const 0 i32.store offset=8 - i32.const 8716 + i32.const 12704 call $_strlen local.tee $3 i32.const -17 @@ -834,7 +1030,7 @@ br $block end ;; $block_0 local.get $1 - i32.const 8716 + i32.const 12704 local.get $3 call $_memcpy drop @@ -847,7 +1043,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 i32.const 12 @@ -870,7 +1066,7 @@ local.get $1 i32.store offset=8 local.get $4 - global.set $32 + global.set $36 return end ;; $if_2 local.get $1 @@ -885,6 +1081,18 @@ local.get $1 i32.const 0 i32.store offset=4 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $1 + i32.load + call $_free + local.get $1 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $1 i32.const 0 @@ -894,9 +1102,6 @@ i32.store8 offset=11 end ;; $if_3 local.get $1 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $1 local.get $2 i64.load align=4 i64.store align=4 @@ -911,7 +1116,7 @@ i32.const 0 i32.store offset=8 local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Value16set_string_valueEPKc (type $0) @@ -921,12 +1126,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=20 i32.const 3 @@ -938,7 +1143,7 @@ i32.const 3 i32.store offset=20 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 end ;; $if local.get $5 @@ -950,7 +1155,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 8732 + i32.const 12720 call $_strlen local.tee $3 i32.const -17 @@ -1000,7 +1205,7 @@ br $block end ;; $block_0 local.get $2 - i32.const 8732 + i32.const 12720 local.get $3 call $_memcpy drop @@ -1030,7 +1235,7 @@ local.tee $2 i32.load local.tee $0 - i32.const 20008 + i32.const 29336 i32.eq if $if_4 local.get $2 @@ -1048,14 +1253,14 @@ i32.ge_s if $if_5 local.get $5 - global.set $32 + global.set $36 return end ;; $if_5 local.get $1 i32.load call $_free local.get $5 - global.set $32 + global.set $36 ) (func $__ZN11RootContext15grpcCallHandlerENSt3__217basic_string_viewIcNS0_11char_traitsIcEEEES4_S4_RKN6google8protobuf11MessageLiteEjNS0_10unique_ptrI19GrpcCallHandlerBaseNS0_14default_deleteISB_EEEE (type $13) @@ -1069,12 +1274,12 @@ (local $7 i64) (local $8 i64) (local $9 i64) - global.get $32 + global.get $36 local.set $6 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $1 i64.load align=4 local.set $7 @@ -1150,7 +1355,7 @@ i32.eqz if $if_0 local.get $6 - global.set $32 + global.set $36 return end ;; $if_0 local.get $5 @@ -1183,20 +1388,20 @@ i32.eqz if $if_1 local.get $6 - global.set $32 + global.set $36 return end ;; $if_1 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $6 - global.set $32 + global.set $36 ) (func $__ZN14RequestContextD0Ev (type $0) @@ -1246,12 +1451,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $2 i32.eqz if $if @@ -1259,7 +1464,7 @@ i32.const 3 i32.store local.get $3 - i32.const 10039 + i32.const 13694 i32.store offset=4 local.get $3 i32.const 370 @@ -1271,7 +1476,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 10088 + i32.const 13743 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -1289,7 +1494,7 @@ local.get $1 i32.store local.get $3 - global.set $32 + global.set $36 return end ;; $if_0 local.get $1 @@ -1302,13 +1507,13 @@ i64.const 16 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 97 + i32.const 158 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -1317,7 +1522,7 @@ local.get $1 i32.store local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv (type $0) @@ -1848,11 +2053,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 8636 + i32.const 12624 i32.store local.get $2 - i32.const 5656 - i32.const 92 + i32.const 6688 + i32.const 153 call $___cxa_throw end ;; $if_1 local.get $1 @@ -2180,12 +2385,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load i32.load offset=20 @@ -2204,15 +2409,15 @@ local.get $0 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $2 call $__ZN6google8protobuf5ValueD2Ev local.get $2 - global.set $32 + global.set $36 ) (func $__ZN22CalloutResponseHandler9onFailureE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $3) @@ -2226,28 +2431,35 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + (local $10 i32) + (local $11 i32) + (local $12 i32) + global.get $36 local.set $3 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $3 - i32.const 48 + global.get $36 + i32.const 96 i32.add - local.set $6 + global.set $36 local.get $3 - i32.const 36 + i32.const 84 i32.add local.set $8 local.get $3 - i32.const 24 + i32.const 72 + i32.add + local.set $9 + local.get $3 + i32.const 60 i32.add local.set $7 local.get $3 - i32.const 12 + i32.const 48 i32.add - local.set $5 + local.set $10 + local.get $3 + i32.const 24 + i32.add + local.set $6 local.get $0 i32.load offset=12 i32.const -64 @@ -2270,57 +2482,74 @@ local.get $3 i32.const 0 i32.store8 offset=8 - local.get $7 + local.get $10 local.get $1 call $__ZNSt3__29to_stringEi - local.get $8 + local.get $9 local.get $3 - local.get $7 + local.get $10 i32.load - local.get $7 - local.get $7 + local.get $10 + local.get $10 i32.load8_s offset=11 - local.tee $1 + local.tee $4 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 select - local.get $7 + local.get $10 i32.load offset=4 - local.get $1 + local.get $4 i32.const 255 i32.and - local.get $4 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $1 + local.tee $4 + i64.load align=4 + i64.store align=4 + local.get $9 + local.get $4 + i32.load offset=8 + i32.store offset=8 + local.get $4 + i64.const 0 + i64.store align=4 + local.get $4 + i32.const 0 + i32.store offset=8 + local.get $8 + local.get $9 + i32.const 22390 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $4 i64.load align=4 i64.store align=4 local.get $8 - local.get $1 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $1 + local.get $4 i64.const 0 i64.store align=4 - local.get $1 + local.get $4 i32.const 0 i32.store offset=8 local.get $2 i32.load - local.tee $1 + local.tee $4 i32.load - local.set $9 - local.get $1 + local.set $12 + local.get $4 i32.load offset=4 - local.set $4 - local.get $5 + local.set $5 + local.get $6 i64.const 0 i64.store align=4 - local.get $5 + local.get $6 i32.const 0 i32.store offset=8 - local.get $4 + local.get $5 i32.const -17 i32.gt_u if $if @@ -2328,130 +2557,131 @@ end ;; $if block $block block $block_0 - local.get $4 + local.get $5 i32.const 11 i32.lt_u if $if_0 (result i32) - local.get $5 + local.get $6 i32.const 11 i32.add - local.tee $2 - local.get $4 + local.tee $11 + local.get $5 i32.store8 - local.get $4 + local.get $5 if $if_1 (result i32) - local.get $5 - local.set $1 + local.get $6 + local.set $4 br $block_0 else - local.get $5 + local.get $6 end ;; $if_1 else + local.get $6 local.get $5 - local.get $4 i32.const 16 i32.add i32.const -16 i32.and - local.tee $2 + local.tee $11 call $__Znwm - local.tee $1 + local.tee $4 i32.store - local.get $5 - local.get $2 + local.get $6 + local.get $11 i32.const -2147483648 i32.or i32.store offset=8 + local.get $6 local.get $5 - local.get $4 i32.store offset=4 - local.get $5 + local.get $6 i32.const 11 i32.add - local.set $2 + local.set $11 br $block_0 end ;; $if_0 - local.set $1 + local.set $4 br $block end ;; $block_0 - local.get $1 - local.get $9 local.get $4 + local.get $12 + local.get $5 call $_memcpy drop end ;; $block - local.get $1 local.get $4 + local.get $5 i32.add i32.const 0 i32.store8 - local.get $6 + local.get $7 local.get $8 - local.get $5 + local.get $6 i32.load - local.get $5 - local.get $2 + local.get $6 + local.get $11 i32.load8_s - local.tee $1 + local.tee $4 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 select - local.get $5 + local.get $6 i32.load offset=4 - local.get $1 + local.get $4 i32.const 255 i32.and - local.get $4 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $1 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $6 - local.get $1 + local.get $7 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $1 + local.get $4 i64.const 0 i64.store align=4 - local.get $1 + local.get $4 i32.const 0 i32.store offset=8 i32.const 2 - local.get $6 + local.get $7 i32.load - local.get $6 - local.get $6 + local.get $7 + local.get $7 i32.load8_s offset=11 - local.tee $1 + local.tee $4 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 select - local.get $6 + local.get $7 i32.load offset=4 - local.get $1 + local.get $4 i32.const 255 i32.and - local.get $4 + local.get $5 select call $_proxy_log - local.get $6 + drop + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_2 - local.get $6 + local.get $7 i32.load call $_free end ;; $if_2 - local.get $2 + local.get $11 i32.load8_s i32.const 0 i32.lt_s if $if_3 - local.get $5 + local.get $6 i32.load call $_free end ;; $if_3 @@ -2464,48 +2694,143 @@ i32.load call $_free end ;; $if_4 - local.get $7 + local.get $9 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $7 + local.get $9 i32.load call $_free end ;; $if_5 - local.get $3 + local.get $10 i32.load8_s offset=11 i32.const 0 - i32.ge_s + i32.lt_s if $if_6 - local.get $0 - i32.load offset=16 - i32.load offset=164 - i64.const 1 - call $_proxy_incrementMetric - call $_proxy_continueRequest - local.get $3 - global.set $32 - return + local.get $10 + i32.load + call $_free end ;; $if_6 local.get $3 - i32.load - call $_free + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_7 + local.get $3 + i32.load + call $_free + end ;; $if_7 local.get $0 i32.load offset=16 i32.load offset=164 i64.const 1 call $_proxy_incrementMetric - call $_proxy_continueRequest + drop + local.get $2 + i32.load + local.tee $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store offset=40 + local.get $3 + local.get $2 + i32.store offset=44 + local.get $3 + i32.const 30182 + i32.store offset=16 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 0 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $9 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $8 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $9 + local.get $8 + local.get $3 + local.get $1 + call $__Z17sendLocalResponsejNSt3__217basic_string_viewIcNS_11char_traitsIcEEEES3_RKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEE10GrpcStatus + local.get $3 + i32.load + local.tee $1 + i32.eqz + if $if_8 + local.get $3 + global.set $36 + return + end ;; $if_8 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $0 + i32.eq + if $if_9 (result i32) + local.get $1 + else + loop $loop + local.get $0 + i32.const -12 + i32.add + local.tee $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_10 + local.get $2 + i32.load + call $_free + end ;; $if_10 + local.get $0 + i32.const -24 + i32.add + local.tee $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_11 + local.get $0 + i32.load + call $_free + end ;; $if_11 + local.get $0 + local.get $1 + i32.ne + br_if $loop + end ;; $loop + local.get $3 + i32.load + end ;; $if_9 + local.set $0 + local.get $3 + local.get $1 + i32.store offset=4 + local.get $0 + call $_free local.get $3 - global.set $32 + global.set $36 ) (func $__ZN22CalloutResponseHandler9onSuccessEON6google8protobuf5ValueE (type $1) (param $0 i32) (param $1 i32) (local $2 i32) - (local $3 i32) local.get $0 i32.load offset=12 i32.const -64 @@ -2515,7 +2840,7 @@ drop local.get $1 i32.load offset=8 - i32.const 20008 + i32.const 29336 local.get $1 i32.load offset=20 i32.const 3 @@ -2523,190 +2848,412 @@ select local.tee $1 i32.load8_s offset=11 - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s - local.set $2 + if $if + local.get $1 + i32.load offset=4 + local.set $2 + local.get $1 + i32.load + local.set $1 + else + local.get $2 + i32.const 255 + i32.and + local.set $2 + end ;; $if i32.const 1 local.get $1 - i32.load - local.get $1 - local.get $2 - select - local.get $1 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and local.get $2 - select call $_proxy_log + drop local.get $0 i32.load offset=16 i32.load offset=160 i64.const 1 call $_proxy_incrementMetric + drop call $_proxy_continueRequest + drop ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5904 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5904 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $2) + (func $__Z17sendLocalResponsejNSt3__217basic_string_viewIcNS_11char_traitsIcEEEES3_RKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEE10GrpcStatus (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $2 i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 - i32.const 72 - call $__Znwm - local.tee $1 - i64.const 0 - i64.store offset=4 align=4 - local.get $1 - i64.const 0 - i64.store offset=12 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=20 - local.get $1 - i64.const 0 - i64.store offset=24 align=4 - local.get $1 - i64.const 0 - i64.store offset=32 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=40 - local.get $1 - i64.const 0 - i64.store offset=44 align=4 - local.get $1 - i64.const 0 - i64.store offset=52 align=4 - local.get $1 - i32.const 1065353216 - i32.store offset=60 - local.get $1 - i32.const -64 - i32.sub + local.tee $7 local.get $2 - i32.store - local.get $1 - local.get $3 - i32.store offset=68 - local.get $1 - i32.const 5760 - i32.store - local.get $0 - local.get $1 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 i32.load offset=4 - i32.const 9369 + local.tee $8 i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4600 - ) - - (func $__ZN11ContextBaseD2Ev (type $0) - (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 5872 - i32.store - local.get $0 - i32.load offset=52 - local.tee $1 if $if - loop $loop - local.get $1 - i32.load - local.set $2 - local.get $1 - i32.const 24 - i32.add - call $__ZN6google8protobuf6StructD2Ev - local.get $1 - i32.load8_s offset=23 - i32.const 0 - i32.lt_s - if $if_0 - local.get $1 - i32.load offset=12 - call $_free - end ;; $if_0 - local.get $1 - call $_free - local.get $2 - if $if_1 - local.get $2 - local.set $1 - br $loop - end ;; $if_1 - end ;; $loop - end ;; $if - local.get $0 - i32.load offset=44 - local.set $1 - local.get $0 - i32.const 0 - i32.store offset=44 - local.get $1 - if $if_2 + i32.const 502 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 local.get $1 - call $_free - end ;; $if_2 - local.get $0 - i32.load offset=32 - local.tee $1 - if $if_3 - loop $loop_0 - local.get $1 - i32.load - local.set $2 - local.get $1 - i32.const 40 - i32.add - call $__ZN6google8protobuf5ValueD2Ev - local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.const 0 + i32.const 0 + local.get $3 + call $_proxy_sendLocalResponse + drop + return + end ;; $if + local.get $7 + local.tee $4 + local.set $2 + i32.const 4 + local.set $9 + loop $loop + local.get $2 + i32.load8_s offset=23 + local.tee $5 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $2 + i32.load offset=16 + else + local.get $5 + i32.const 255 + i32.and + end ;; $if_0 + local.get $2 + i32.load8_s offset=11 + local.tee $5 + i32.const 0 + i32.lt_s + if $if_1 (result i32) + local.get $2 + i32.load offset=4 + else + local.get $5 + i32.const 255 + i32.and + end ;; $if_1 + local.get $9 + i32.const 10 + i32.add + i32.add + i32.add + local.set $9 + local.get $2 + i32.const 24 + i32.add + local.tee $2 + local.get $8 + i32.ne + br_if $loop + end ;; $loop + local.get $9 + call $_malloc + local.tee $2 + local.get $8 + local.get $4 + i32.sub + i32.const 24 + i32.div_s + i32.store + local.get $4 + local.set $5 + local.get $2 + i32.const 4 + i32.add + local.set $6 + loop $loop_0 + local.get $6 + local.get $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $5 + i32.load offset=4 + else + local.get $4 + i32.const 255 + i32.and + end ;; $if_2 + i32.store + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.get $5 + i32.load8_s offset=23 + local.tee $6 + i32.const 0 + i32.lt_s + if $if_3 (result i32) + local.get $5 + i32.load offset=16 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_3 + i32.store + local.get $2 + i32.const 12 + i32.add + local.set $6 + local.get $5 + i32.const 24 + i32.add + local.tee $5 + local.get $8 + i32.ne + if $if_4 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_4 + end ;; $loop_0 + local.get $7 + local.set $2 + loop $loop_1 + local.get $6 + local.get $2 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_5 (result i32) + local.get $2 + i32.load offset=4 + local.set $4 + local.get $2 + i32.load + else + local.get $4 + i32.const 255 + i32.and + local.set $4 + local.get $2 + end ;; $if_5 + local.get $4 + call $_memcpy + drop + local.get $2 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_6 (result i32) + local.get $2 + i32.load offset=4 + else + local.get $4 + i32.const 255 + i32.and + end ;; $if_6 + local.get $6 + i32.add + local.tee $4 + i32.const 0 + i32.store8 + local.get $4 + i32.const 1 + i32.add + local.tee $7 + local.get $2 + i32.const 12 + i32.add + local.tee $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_7 (result i32) + local.get $2 + i32.load offset=16 + local.set $4 + local.get $5 + i32.load + else + local.get $4 + i32.const 255 + i32.and + local.set $4 + local.get $5 + end ;; $if_7 + local.get $4 + call $_memcpy + drop + local.get $5 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_8 (result i32) + local.get $2 + i32.load offset=16 + else + local.get $4 + i32.const 255 + i32.and + end ;; $if_8 + local.get $7 + i32.add + local.tee $4 + i32.const 1 + i32.add + local.set $6 + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + i32.const 24 + i32.add + local.tee $2 + local.get $8 + i32.ne + br_if $loop_1 + end ;; $loop_1 + i32.const 502 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.const 0 + local.get $9 + local.get $3 + call $_proxy_sendLocalResponse + drop + ) + + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 72 + call $__Znwm + local.tee $1 + i64.const 0 + i64.store offset=4 align=4 + local.get $1 + i64.const 0 + i64.store offset=12 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=20 + local.get $1 + i64.const 0 + i64.store offset=24 align=4 + local.get $1 + i64.const 0 + i64.store offset=32 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=40 + local.get $1 + i64.const 0 + i64.store offset=44 align=4 + local.get $1 + i64.const 0 + i64.store offset=52 align=4 + local.get $1 + i32.const 1065353216 + i32.store offset=60 + local.get $1 + i32.const -64 + i32.sub + local.get $2 + i32.store + local.get $1 + local.get $3 + i32.store offset=68 + local.get $1 + i32.const 6800 + i32.store + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZN11ContextBaseD2Ev (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 6912 + i32.store + local.get $0 + i32.load offset=52 + local.tee $1 + if $if + loop $loop + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.const 24 + i32.add + call $__ZN6google8protobuf6StructD2Ev + local.get $1 + i32.load8_s offset=23 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load offset=12 + call $_free + end ;; $if_0 + local.get $1 + call $_free + local.get $2 + if $if_1 + local.get $2 + local.set $1 + br $loop + end ;; $if_1 + end ;; $loop + end ;; $if + local.get $0 + i32.load offset=44 + local.set $1 + local.get $0 + i32.const 0 + i32.store offset=44 + local.get $1 + if $if_2 + local.get $1 + call $_free + end ;; $if_2 + local.get $0 + i32.load offset=32 + local.tee $1 + if $if_3 + loop $loop_0 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.const 40 + i32.add + call $__ZN6google8protobuf5ValueD2Ev + local.get $1 i32.load8_s offset=35 i32.const 0 i32.lt_s @@ -2791,79 +3338,57 @@ call $_free ) - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5948 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5948 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ (type $2) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) - local.get $2 - i32.load - local.set $1 local.get $3 i32.load - local.set $4 + local.set $5 local.get $3 i32.load offset=4 - local.set $3 + local.set $4 i32.const 168 call $__Znwm - local.tee $2 + local.tee $3 i64.const 0 i64.store offset=4 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=12 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=20 - local.get $2 + local.get $3 i64.const 0 i64.store offset=24 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=32 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=40 - local.get $2 + local.get $3 i64.const 0 i64.store offset=44 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=52 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=60 - local.get $2 + local.get $3 i32.const -64 i32.sub - local.get $1 - i32.store local.get $2 - i32.const 6064 i32.store - local.get $2 + local.get $3 + i32.const 7032 + i32.store + local.get $3 i32.const 68 i32.add local.tee $1 @@ -2872,7 +3397,7 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const -17 i32.gt_u if $if @@ -2880,121 +3405,100 @@ end ;; $if block $block block $block_0 - local.get $3 + local.get $4 i32.const 11 i32.lt_u if $if_0 - local.get $2 local.get $3 + local.get $4 i32.store8 offset=79 - local.get $3 + local.get $4 br_if $block_0 else local.get $1 - local.get $3 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and - local.tee $5 + local.tee $2 call $__Znwm local.tee $1 i32.store + local.get $3 local.get $2 - local.get $5 i32.const -2147483648 i32.or i32.store offset=76 - local.get $2 local.get $3 + local.get $4 i32.store offset=72 br $block_0 end ;; $if_0 br $block end ;; $block_0 local.get $1 + local.get $5 local.get $4 - local.get $3 call $_memcpy drop end ;; $block local.get $1 - local.get $3 + local.get $4 i32.add i32.const 0 i32.store8 - local.get $2 + local.get $3 i64.const 0 i64.store offset=80 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=88 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=96 - local.get $2 + local.get $3 i64.const 0 i64.store offset=100 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=108 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=116 - local.get $2 + local.get $3 i64.const 0 i64.store offset=120 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=128 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=136 - local.get $2 + local.get $3 i64.const 0 i64.store offset=140 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=148 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=156 - local.get $2 - i32.const 5992 + local.get $3 + i32.const 6960 i32.store local.get $0 - local.get $2 + local.get $3 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 9743 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4664 - ) - (func $__ZN11RootContextD2Ev (type $0) (param $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) local.get $0 - i32.const 6064 + i32.const 7032 i32.store local.get $0 i32.load offset=148 @@ -3003,30 +3507,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -3050,30 +3554,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -3097,46 +3601,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 127 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else + call_indirect $32 (type $0) + end ;; $if_8 + local.get $1 + call $_free + local.get $2 + if $if_9 local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_9 - end ;; $if_8 - local.get $1 - call $_free - local.get $3 - if $if_10 - local.get $3 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -3146,59 +3633,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 127 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $32 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -3206,19 +3676,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -3243,18 +3713,36 @@ (func $__ZN14ServiceContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $1) (param $0 i32) (param $1 i32) - local.get $0 i32.const 0 - i32.const 9698 + i32.const 13178 i32.const 22 - call $_proxy_defineMetric - i32.store offset=160 local.get $0 + i32.const 160 + i32.add + call $_proxy_defineMetric + if $if + i32.const 5 + i32.const 13201 + i32.const 86 + call $_proxy_log + drop + call $_abort + end ;; $if i32.const 0 - i32.const 9721 + i32.const 13288 i32.const 21 + local.get $0 + i32.const 164 + i32.add call $_proxy_defineMetric - i32.store offset=164 + if $if_0 + i32.const 5 + i32.const 13310 + i32.const 85 + call $_proxy_log + drop + call $_abort + end ;; $if_0 ) (func $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ (type $7) @@ -3271,19 +3759,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $32 - local.set $6 - global.get $32 + global.get $36 + local.set $8 + global.get $36 i32.const 16 i32.add - global.set $32 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $36 block $block local.get $0 i32.load offset=84 @@ -3291,10 +3772,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -3302,7 +3780,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -3324,55 +3802,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -3380,13 +3858,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -3406,316 +3884,629 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $36 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8512 - i32.store - local.get $1 - i32.const 5560 - i32.const 85 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=20 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) - local.get $6 + call_indirect $32 (type $2) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 - i32.load - local.set $0 - local.get $8 - i32.const 0 - i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $32 - return - end ;; $block - local.get $6 - global.set $32 - ) - - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=124 - local.tee $2 - if $if + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block local.get $0 - i32.load offset=120 - local.get $2 - local.get $2 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 i32.const -1 i32.add - local.tee $4 + local.tee $7 i32.and i32.eqz local.tee $6 - if $if_0 (result i32) + if $if_11 (result i32) local.get $1 - local.get $4 + local.get $7 i32.and else - local.get $2 + local.get $5 local.get $1 i32.gt_u - if $if_1 (result i32) + if $if_12 (result i32) local.get $1 else - local.get $2 - if $if_2 (result i32) + local.get $5 + if $if_13 (result i32) local.get $1 - local.get $2 + local.get $5 i32.rem_u else i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block - block $block_0 - local.get $6 - if $if_5 - loop $loop - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $6 - if $if_6 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_6 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block - unreachable - end ;; $loop - unreachable + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 else - loop $loop_0 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) local.get $4 - local.get $2 - i32.ge_u - if $if_8 (result i32) - local.get $2 - if $if_9 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 local.get $5 - i32.ne - br_if $block - end ;; $if_7 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_0 - local.get $3 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 - local.get $0 - local.get $1 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - return - end ;; $block - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $0 - i32.load offset=144 - local.tee $2 - i32.eqz - if $if_10 - return - end ;; $if_10 - local.get $0 - i32.load offset=140 - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $5 - if $if_11 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $2 - local.get $1 - i32.gt_u - if $if_12 (result i32) + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $36 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) local.get $1 + local.get $7 + i32.and else - local.get $2 - if $if_13 (result i32) + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) local.get $1 - local.get $2 - i32.rem_u else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $3 + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $32 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $36 + return + end ;; $block + local.get $8 + global.set $36 + ) + + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=124 + local.tee $2 + if $if + local.get $0 + i32.load offset=120 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $2 + if $if_2 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_3 + local.get $3 + i32.load + local.tee $3 + if $if_4 + block $block + block $block_0 + local.get $6 + if $if_5 + loop $loop + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $6 + if $if_6 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_6 + local.get $3 + i32.load + local.tee $3 + br_if $loop + br $block + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_7 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_8 (result i32) + local.get $2 + if $if_9 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $4 + end ;; $if_8 + local.get $5 + i32.ne + br_if $block + end ;; $if_7 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_0 + local.get $3 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $32 (type $0) + return + end ;; $block + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $0 + i32.load offset=144 + local.tee $2 + i32.eqz + if $if_10 + return + end ;; $if_10 + local.get $0 + i32.load offset=140 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $5 + if $if_11 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $2 + if $if_13 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 i32.const 2 i32.shl i32.add @@ -3814,11 +4605,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $1) @@ -3965,11 +4756,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $1) @@ -4116,11 +4907,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $3) @@ -4136,68 +4927,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $32 - local.set $6 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $6 + global.get $36 + local.set $8 + global.get $36 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $36 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -4210,24 +4992,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -4248,7 +5030,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -4257,22 +5039,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -4289,197 +5071,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8512 - i32.store - local.get $1 - i32.const 5560 - i32.const 85 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $8 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) - local.get $7 + call_indirect $32 (type $3) + local.get $6 i32.load - local.set $0 - local.get $7 + local.set $1 + local.get $6 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $6 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $8 - local.get $0 - i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $3 - if $if_15 (result i32) - local.get $1 - local.get $3 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $36 + return + end ;; $block_2 + local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $32 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $6 + local.get $0 + i32.const 120 + i32.add + local.set $7 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $7 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $11 + if $if_38 (result i32) + local.get $1 + local.get $3 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) + local.get $1 + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -4488,82 +5581,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $7 + call_indirect $32 (type $1) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -4577,82 +5670,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $32 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $36 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -4661,44 +5754,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $6 + call_indirect $32 (type $1) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $32 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $36 return end ;; $block - local.get $6 - global.set $32 + local.get $8 + global.set $36 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $2) @@ -4715,17 +5808,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $32 + global.get $36 local.set $8 - global.get $32 - i32.const 32 - i32.add - global.set $32 - local.get $8 + global.get $36 i32.const 16 i32.add - local.set $10 + global.set $36 local.get $8 i32.const 8 i32.add @@ -4733,31 +5821,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -4781,42 +5865,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -4825,39 +5909,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -4868,59 +5952,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8512 - i32.store - local.get $1 - i32.const 5560 - i32.const 85 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) + call_indirect $32 (type $3) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $36 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $32 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -4933,133 +6328,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -5067,12 +6462,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -5080,9 +6475,9 @@ local.get $1 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) + call_indirect $32 (type $3) local.get $7 i32.load local.set $0 @@ -5090,58 +6485,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -5154,82 +6549,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $32 + global.set $36 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -5261,378 +6656,11 @@ local.get $0 call $_free local.get $8 - global.set $32 + global.set $36 return end ;; $block local.get $8 - global.set $32 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $36 ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $1) @@ -5979,11 +7007,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_28 local.get $1 call $_free @@ -5999,12 +7027,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=8 local.set $3 @@ -6033,9 +7061,9 @@ local.get $7 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) + call_indirect $32 (type $3) local.get $5 i32.load local.set $1 @@ -6173,7 +7201,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $32 + global.set $36 return end ;; $block_0 local.get $0 @@ -6190,11 +7218,11 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $32 + global.set $36 return end ;; $block local.get $5 - global.set $32 + global.set $36 ) (func $__GLOBAL__sub_I_grpc_callout_cpp_cc (type $8) @@ -6202,118 +7230,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 - i32.const -64 - i32.sub - global.set $32 + global.get $36 + i32.const 48 + i32.add + global.set $36 local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5904 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $0 - i32.const 5948 - i32.store - local.get $0 + i32.const 6936 + i32.store offset=12 local.get $0 - i32.store offset=16 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 + local.get $1 + i32.const 7096 + i32.store offset=12 local.get $0 - i32.const 20849 - i32.store offset=48 + i32.const 30182 + i32.store local.get $0 i32.const 0 - i32.store offset=52 + i32.store offset=4 local.get $0 - i32.const 56 + i32.const 40 i32.add - local.tee $1 + local.tee $3 local.get $0 - i64.load offset=48 align=4 + i64.load align=4 i64.store align=4 local.get $2 - local.get $0 local.get $1 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ - local.get $0 - i32.load offset=16 - local.tee $1 - local.get $0 - i32.eq + local.get $1 + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $1 local.get $3 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $1 - if $if_0 - local.get $1 - i32.load - i32.load offset=20 - local.set $3 - local.get $1 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_0 + call_indirect $32 (type $0) end ;; $if local.get $2 - i32.load offset=16 + i32.load offset=12 + i32.load offset=4 local.tee $1 - local.get $2 - i32.eq - if $if_1 - local.get $1 - i32.load - i32.load offset=16 - local.set $2 - local.get $1 - local.get $2 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $0 - global.set $32 - return - end ;; $if_1 - local.get $1 i32.eqz - if $if_2 + if $if_0 local.get $0 - global.set $32 + global.set $36 return - end ;; $if_2 - local.get $1 + end ;; $if_0 + local.get $2 i32.load - i32.load offset=20 - local.set $2 local.get $1 - local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 - global.set $32 + global.set $36 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $4) @@ -6328,7 +7319,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $4) @@ -6380,17 +7371,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4672 + i32.const 4624 i64.const 16 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 98 + i32.const 159 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -6411,34 +7402,34 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL22InitDefaultsDataSourceEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19424 - i32.const 6152 + global.set $36 + i32.const 28752 + i32.const 7136 i32.store - i32.const 19428 + i32.const 28756 i32.const 0 i32.store - i32.const 19436 + i32.const 28764 i32.const 0 i32.store - i32.const 6128 + i32.const 7112 i32.load if $if - i32.const 6128 + i32.const 7112 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19440 + i32.const 28768 i32.const 0 i32.store - i32.const 99 - i32.const 19424 + i32.const 160 + i32.const 28752 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -6447,7 +7438,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6152 + i32.const 7136 i32.store local.get $0 i32.load offset=16 @@ -6503,7 +7494,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6152 + i32.const 7136 i32.store local.get $0 i32.load offset=16 @@ -6558,11 +7549,11 @@ i32.const 10 i32.store8 offset=11 local.get $0 - i32.const 10126 + i32.const 13781 i64.load align=1 i64.store align=1 local.get $0 - i32.const 10134 + i32.const 13789 i32.load16_s align=1 i32.store16 offset=8 align=1 local.get $0 @@ -6636,18 +7627,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4680 + i32.const 5032 + i32.const 4632 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN10DataSource9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -6664,12 +7655,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 32 i32.add @@ -6722,7 +7713,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $4 @@ -6808,7 +7799,7 @@ local.get $6 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq br_if $block_7 else @@ -6818,14 +7809,14 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 br $block_7 end ;; $if_2 br $block_6 end ;; $block_7 local.get $6 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -6848,9 +7839,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_3 i32.load8_s offset=11 i32.const 0 @@ -6867,9 +7858,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_5 i32.load8_s offset=11 local.tee $5 @@ -6884,7 +7875,7 @@ i32.and end ;; $if_6 i32.const 0 - i32.const 9994 + i32.const 13649 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -6906,7 +7897,7 @@ local.get $6 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq br_if $block_9 else @@ -6916,14 +7907,14 @@ i32.const 2 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 br $block_9 end ;; $if_7 br $block_8 end ;; $block_9 local.get $6 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -6952,7 +7943,7 @@ local.get $6 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq br_if $block_11 else @@ -6962,14 +7953,14 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 br $block_11 end ;; $if_8 br $block_10 end ;; $block_11 local.get $6 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -6992,9 +7983,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_9 i32.load8_s offset=11 i32.const 0 @@ -7011,9 +8002,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_11 i32.load8_s offset=11 local.tee $5 @@ -7028,7 +8019,7 @@ i32.and end ;; $if_12 i32.const 0 - i32.const 10014 + i32.const 13669 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -7115,7 +8106,7 @@ i32.ge_s if $if_15 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_15 @@ -7123,7 +8114,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -7138,7 +8129,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -7245,7 +8236,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 9994 + i32.const 13649 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -7257,7 +8248,7 @@ local.get $0 i32.load offset=8 else - i32.const 20008 + i32.const 29336 end ;; $if_1 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -7304,7 +8295,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10014 + i32.const 13669 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -7316,7 +8307,7 @@ local.get $0 i32.load offset=8 else - i32.const 20008 + i32.const 29336 end ;; $if_5 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -7326,7 +8317,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -7345,7 +8336,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -7399,7 +8390,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -7431,12 +8422,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.eqz if $if @@ -7444,7 +8435,7 @@ i32.const 3 i32.store local.get $2 - i32.const 10039 + i32.const 13694 i32.store offset=4 local.get $2 i32.const 376 @@ -7456,7 +8447,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 10088 + i32.const 13743 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -7471,7 +8462,7 @@ local.get $3 i32.store local.get $2 - global.set $32 + global.set $36 ) (func $__ZN10DataSource9MergeFromERKS_ (type $1) @@ -7481,12 +8472,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -7495,7 +8486,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 832 @@ -7507,7 +8498,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -7588,7 +8579,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne br_if $block_0 else @@ -7598,7 +8589,7 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 8 @@ -7621,7 +8612,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne br_if $block_0 else @@ -7631,7 +8622,7 @@ i32.const 2 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 8 @@ -7654,7 +8645,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne br_if $block_0 else @@ -7664,7 +8655,7 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 8 @@ -7674,21 +8665,21 @@ br $block end ;; $block_1 local.get $3 - global.set $32 + global.set $36 return end ;; $block_0 local.get $1 local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $0 local.get $2 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI10DataSourceJEEEPT_PS1_DpOT0_ (type $4) @@ -7702,26 +8693,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4680 + i32.const 4632 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 100 + i32.const 161 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6152 + i32.const 7136 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6152 + i32.const 7136 i32.store end ;; $if local.get $0 @@ -7730,10 +8721,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6128 + i32.const 7112 i32.load if $if_2 - i32.const 6128 + i32.const 7112 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -7751,46 +8742,46 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL15InitDefaultsAnyEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19464 - i32.const 6248 + global.set $36 + i32.const 28792 + i32.const 7232 i32.store - i32.const 19468 + i32.const 28796 i32.const 0 i32.store - i32.const 19480 + i32.const 28808 i32.const 0 i32.store - i32.const 6224 + i32.const 7208 i32.load if $if - i32.const 6224 + i32.const 7208 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19472 - i32.const 20008 + i32.const 28800 + i32.const 29336 i32.store - i32.const 19476 - i32.const 20008 + i32.const 28804 + i32.const 29336 i32.store - i32.const 99 - i32.const 19464 + i32.const 160 + i32.const 28792 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -7799,12 +8790,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6248 + i32.const 7232 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -7826,7 +8817,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -7906,11 +8897,11 @@ i32.const 3 i32.store8 offset=11 local.get $0 - i32.const 10163 + i32.const 13818 i32.load16_s align=1 i32.store16 align=1 local.get $0 - i32.const 10165 + i32.const 13820 i32.load8_s i32.store8 offset=2 local.get $0 @@ -7939,7 +8930,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -7966,7 +8957,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if_1 local.get $1 @@ -8030,18 +9021,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4696 + i32.const 5032 + i32.const 4648 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN3Any9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -8059,12 +9050,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 32 i32.add @@ -8117,7 +9108,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $4 @@ -8199,11 +9190,11 @@ local.get $8 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $8 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -8226,11 +9217,11 @@ local.get $7 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_3 (result i32) local.get $7 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -8265,7 +9256,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 10150 + i32.const 13805 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -8352,7 +9343,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_7 @@ -8360,7 +9351,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -8376,7 +9367,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -8534,7 +9525,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10150 + i32.const 13805 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -8568,7 +9559,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -8587,7 +9578,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -8627,12 +9618,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -8641,7 +9632,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 1072 @@ -8653,7 +9644,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -8732,7 +9723,7 @@ i32.ne if $if_4 local.get $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -8763,7 +9754,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $36 return end ;; $if_7 local.get $1 @@ -8776,11 +9767,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $36 return end ;; $if_8 local.get $0 - i32.const 20008 + i32.const 29336 i32.eq if $if_9 local.get $2 @@ -8792,7 +9783,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI3AnyJEEEPT_PS1_DpOT0_ (type $4) @@ -8806,26 +9797,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4696 + i32.const 4648 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 101 + i32.const 162 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6248 + i32.const 7232 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6248 + i32.const 7232 i32.store end ;; $if local.get $0 @@ -8834,51 +9825,51 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 6224 + i32.const 7208 i32.load if $if_2 - i32.const 6224 + i32.const 7208 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL33InitDefaultsGrpcService_EnvoyGrpcEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19488 - i32.const 6344 + global.set $36 + i32.const 28816 + i32.const 7328 i32.store - i32.const 19492 + i32.const 28820 i32.const 0 i32.store - i32.const 19500 + i32.const 28828 i32.const 0 i32.store - i32.const 6320 + i32.const 7304 i32.load if $if - i32.const 6320 + i32.const 7304 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19496 - i32.const 20008 + i32.const 28824 + i32.const 29336 i32.store - i32.const 99 - i32.const 19488 + i32.const 160 + i32.const 28816 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -8887,12 +9878,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6344 + i32.const 7328 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -8959,12 +9950,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6344 + i32.const 7328 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -9044,19 +10035,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10207 + i32.const 13862 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10215 + i32.const 13870 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10223 + i32.const 13878 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10227 + i32.const 13882 i32.load8_s i32.store8 offset=20 local.get $1 @@ -9085,7 +10076,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -9149,18 +10140,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4712 + i32.const 5032 + i32.const 4664 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN21GrpcService_EnvoyGrpc9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -9177,12 +10168,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 32 i32.add @@ -9235,7 +10226,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $4 @@ -9301,11 +10292,11 @@ local.get $7 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $7 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -9340,7 +10331,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 10172 + i32.const 13827 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -9427,7 +10418,7 @@ i32.ge_s if $if_6 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_6 @@ -9435,7 +10426,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -9451,7 +10442,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -9565,7 +10556,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10172 + i32.const 13827 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -9579,7 +10570,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -9598,7 +10589,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -9631,12 +10622,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -9645,7 +10636,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 1272 @@ -9657,7 +10648,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -9728,7 +10719,7 @@ i32.eqz if $if_3 local.get $3 - global.set $32 + global.set $36 return end ;; $if_3 local.get $0 @@ -9741,11 +10732,11 @@ i32.eq if $if_4 local.get $3 - global.set $32 + global.set $36 return end ;; $if_4 local.get $0 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $2 @@ -9757,7 +10748,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_5 local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI21GrpcService_EnvoyGrpcJEEEPT_PS1_DpOT0_ (type $4) @@ -9771,26 +10762,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4712 + i32.const 4664 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 16 - i32.const 102 + i32.const 163 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6344 + i32.const 7328 i32.store else i32.const 16 call $__Znwm local.tee $0 - i32.const 6344 + i32.const 7328 i32.store end ;; $if local.get $0 @@ -9799,60 +10790,60 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6320 + i32.const 7304 i32.load if $if_2 - i32.const 6320 + i32.const 7304 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL49InitDefaultsGrpcService_GoogleGrpc_SslCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19504 - i32.const 6440 + global.set $36 + i32.const 28832 + i32.const 7424 i32.store - i32.const 19508 + i32.const 28836 i32.const 0 i32.store - i32.const 19524 + i32.const 28852 i32.const 0 i32.store - i32.const 6416 + i32.const 7400 i32.load if $if - i32.const 6416 + i32.const 7400 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19512 + i32.const 28840 i64.const 0 i64.store - i32.const 19520 + i32.const 28848 i32.const 0 i32.store - i32.const 99 - i32.const 19504 + i32.const 160 + i32.const 28832 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19512 - i32.const 19424 + i32.const 28840 + i32.const 28752 i32.store - i32.const 19516 - i32.const 19424 + i32.const 28844 + i32.const 28752 i32.store - i32.const 19520 - i32.const 19424 + i32.const 28848 + i32.const 28752 i32.store ) @@ -9861,10 +10852,10 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6440 + i32.const 7424 i32.store local.get $0 - i32.const 19504 + i32.const 28832 i32.ne if $if local.get $0 @@ -9875,11 +10866,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 local.get $0 i32.load offset=12 @@ -9889,11 +10880,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 local.get $0 i32.load offset=16 @@ -9903,11 +10894,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 end ;; $if local.get $0 @@ -9958,10 +10949,10 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6440 + i32.const 7424 i32.store local.get $0 - i32.const 19504 + i32.const 28832 i32.ne if $if local.get $0 @@ -9972,11 +10963,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 local.get $0 i32.load offset=12 @@ -9986,11 +10977,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 local.get $0 i32.load offset=16 @@ -10000,11 +10991,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 end ;; $if local.get $0 @@ -10068,27 +11059,27 @@ i32.const 37 i32.store offset=4 local.get $1 - i32.const 10253 + i32.const 13908 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10261 + i32.const 13916 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10269 + i32.const 13924 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10277 + i32.const 13932 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10285 + i32.const 13940 i32.load align=1 i32.store offset=32 align=1 local.get $1 - i32.const 10289 + i32.const 13944 i32.load8_s i32.store8 offset=36 local.get $1 @@ -10125,11 +11116,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if local.get $0 i32.const 0 @@ -10144,11 +11135,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 local.get $0 i32.const 0 @@ -10163,11 +11154,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 local.get $0 i32.const 0 @@ -10212,18 +11203,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4728 + i32.const 5032 + i32.const 4680 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN37GrpcService_GoogleGrpc_SslCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -10239,12 +11230,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $3 i32.const 40 i32.add @@ -10301,7 +11292,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8176 + i32.const 9176 i32.store local.get $4 local.get $5 @@ -10684,7 +11675,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_7 @@ -10692,7 +11683,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -10706,7 +11697,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -10726,7 +11717,7 @@ end ;; $if local.set $1 local.get $0 - i32.const 19504 + i32.const 28832 i32.eq if $if_0 local.get $0 @@ -10830,7 +11821,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 19504 + i32.const 28832 i32.ne if $if local.get $0 @@ -10866,7 +11857,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -10885,7 +11876,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -10925,12 +11916,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -10939,7 +11930,7 @@ i32.const 3 i32.store local.get $4 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $4 i32.const 1542 @@ -10951,7 +11942,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11005,11 +11996,11 @@ drop end ;; $if_0 local.get $1 - i32.const 19504 + i32.const 28832 i32.eq if $if_2 local.get $4 - global.set $32 + global.set $36 return end ;; $if_2 local.get $1 @@ -11032,7 +12023,7 @@ end ;; $if_4 local.get $3 local.get $2 - i32.const 19424 + i32.const 28752 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ @@ -11057,7 +12048,7 @@ end ;; $if_6 local.get $3 local.get $2 - i32.const 19424 + i32.const 28752 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ @@ -11068,7 +12059,7 @@ i32.eqz if $if_7 local.get $4 - global.set $32 + global.set $36 return end ;; $if_7 local.get $0 @@ -11089,12 +12080,12 @@ end ;; $if_8 local.get $0 local.get $2 - i32.const 19424 + i32.const 28752 local.get $2 select call $__ZN10DataSource9MergeFromERKS_ local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI37GrpcService_GoogleGrpc_SslCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -11106,7 +12097,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 6440 + i32.const 7424 i32.store local.get $0 i32.const 0 @@ -11114,10 +12105,10 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 6416 + i32.const 7400 i32.load if $if_0 - i32.const 6416 + i32.const 7400 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_0 local.get $0 @@ -11135,20 +12126,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4728 + i32.const 4680 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 24 - i32.const 103 + i32.const 164 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6440 + i32.const 7424 i32.store local.get $0 i32.const 0 @@ -11156,10 +12147,10 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 6416 + i32.const 7400 i32.load if $if_3 - i32.const 6416 + i32.const 7400 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_3 local.get $0 @@ -11173,31 +12164,31 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL57InitDefaultsGrpcService_GoogleGrpc_GoogleLocalCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19528 - i32.const 6536 + global.set $36 + i32.const 28856 + i32.const 7520 i32.store - i32.const 19532 + i32.const 28860 i32.const 0 i32.store - i32.const 19536 + i32.const 28864 i32.const 0 i32.store - i32.const 6512 + i32.const 7496 i32.load if $if - i32.const 6512 + i32.const 7496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 99 - i32.const 19528 + i32.const 160 + i32.const 28856 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -11206,7 +12197,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6536 + i32.const 7520 i32.store local.get $0 i32.load offset=4 @@ -11256,7 +12247,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6536 + i32.const 7520 i32.store local.get $0 i32.load offset=4 @@ -11319,31 +12310,31 @@ i32.const 45 i32.store offset=4 local.get $1 - i32.const 10331 + i32.const 13986 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10339 + i32.const 13994 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10347 + i32.const 14002 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10355 + i32.const 14010 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10363 + i32.const 14018 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10371 + i32.const 14026 i32.load align=1 i32.store offset=40 align=1 local.get $1 - i32.const 10375 + i32.const 14030 i32.load8_s i32.store8 offset=44 local.get $1 @@ -11409,18 +12400,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4744 + i32.const 5032 + i32.const 4696 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -11435,12 +12426,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $2 i32.const 32 i32.add @@ -11493,7 +12484,7 @@ i32.store offset=8 end ;; $if local.get $2 - i32.const 8176 + i32.const 9176 i32.store local.get $2 local.get $3 @@ -11622,7 +12613,7 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $36 local.get $1 return end ;; $if_3 @@ -11630,7 +12621,7 @@ i32.load call $_free local.get $2 - global.set $32 + global.set $36 local.get $1 ) @@ -11644,7 +12635,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -11681,7 +12672,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -11700,7 +12691,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -11738,12 +12729,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -11752,7 +12743,7 @@ i32.const 3 i32.store local.get $2 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $2 i32.const 1696 @@ -11764,7 +12755,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11778,7 +12769,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -11821,7 +12812,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm drop local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI45GrpcService_GoogleGrpc_GoogleLocalCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -11833,7 +12824,7 @@ i32.const 12 call $__Znwm local.tee $0 - i32.const 6536 + i32.const 7520 i32.store local.get $0 i32.const 0 @@ -11841,14 +12832,14 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6512 + i32.const 7496 i32.load i32.eqz if $if_0 local.get $0 return end ;; $if_0 - i32.const 6512 + i32.const 7496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 return @@ -11859,20 +12850,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4744 + i32.const 4696 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 16 - i32.const 104 + i32.const 165 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6536 + i32.const 7520 i32.store local.get $0 i32.const 0 @@ -11880,45 +12871,45 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6512 + i32.const 7496 i32.load i32.eqz if $if_3 local.get $0 return end ;; $if_3 - i32.const 6512 + i32.const 7496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL40InitDefaultsGrpcService_GoogleGrpc_EmptyEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19544 - i32.const 6632 + global.set $36 + i32.const 28872 + i32.const 7616 i32.store - i32.const 19548 + i32.const 28876 i32.const 0 i32.store - i32.const 19552 + i32.const 28880 i32.const 0 i32.store - i32.const 6608 + i32.const 7592 i32.load if $if - i32.const 6608 + i32.const 7592 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 99 - i32.const 19544 + i32.const 160 + i32.const 28872 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -11927,7 +12918,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6632 + i32.const 7616 i32.store local.get $0 i32.load offset=4 @@ -11977,7 +12968,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6632 + i32.const 7616 i32.store local.get $0 i32.load offset=4 @@ -12040,19 +13031,19 @@ i32.const 28 i32.store offset=4 local.get $1 - i32.const 10425 + i32.const 14080 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10433 + i32.const 14088 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10441 + i32.const 14096 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10449 + i32.const 14104 i32.load align=1 i32.store offset=24 align=1 local.get $1 @@ -12079,18 +13070,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4760 + i32.const 5032 + i32.const 4712 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN28GrpcService_GoogleGrpc_Empty9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -12100,12 +13091,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -12114,7 +13105,7 @@ i32.const 3 i32.store local.get $2 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $2 i32.const 1838 @@ -12126,7 +13117,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12140,7 +13131,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -12183,7 +13174,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm drop local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI28GrpcService_GoogleGrpc_EmptyJEEEPT_PS1_DpOT0_ (type $4) @@ -12195,7 +13186,7 @@ i32.const 12 call $__Znwm local.tee $0 - i32.const 6632 + i32.const 7616 i32.store local.get $0 i32.const 0 @@ -12203,14 +13194,14 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6608 + i32.const 7592 i32.load i32.eqz if $if_0 local.get $0 return end ;; $if_0 - i32.const 6608 + i32.const 7592 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 return @@ -12221,20 +13212,20 @@ local.get $0 i32.load offset=48 if $if_2 - i32.const 4760 + i32.const 4712 i64.const 16 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $0 i32.const 16 - i32.const 105 + i32.const 166 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6632 + i32.const 7616 i32.store local.get $0 i32.const 0 @@ -12242,48 +13233,48 @@ local.get $0 i32.const 0 i32.store offset=8 - i32.const 6608 + i32.const 7592 i32.load i32.eqz if $if_3 local.get $0 return end ;; $if_3 - i32.const 6608 + i32.const 7592 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL53InitDefaultsGrpcService_GoogleGrpc_ChannelCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19560 - i32.const 6736 + global.set $36 + i32.const 28888 + i32.const 7720 i32.store - i32.const 19564 + i32.const 28892 i32.const 0 i32.store - i32.const 19572 + i32.const 28900 i32.const 0 i32.store - i32.const 6704 + i32.const 7688 i32.load if $if - i32.const 6704 + i32.const 7688 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19576 + i32.const 28904 i32.const 0 i32.store - i32.const 99 - i32.const 19560 + i32.const 160 + i32.const 28888 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -12292,7 +13283,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6736 + i32.const 7720 i32.store block $block block $block_0 @@ -12314,11 +13305,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_0 end ;; $block_2 local.get $0 @@ -12330,11 +13321,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -12346,11 +13337,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -12428,27 +13419,27 @@ i32.const 41 i32.store offset=4 local.get $1 - i32.const 10485 + i32.const 14140 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10493 + i32.const 14148 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10501 + i32.const 14156 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10509 + i32.const 14164 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10517 + i32.const 14172 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10525 + i32.const 14180 i32.load8_s i32.store8 offset=40 local.get $1 @@ -12497,11 +13488,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if br $block end ;; $block_1 @@ -12515,11 +13506,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 br $block end ;; $block_0 @@ -12533,11 +13524,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 end ;; $block local.get $0 @@ -12583,18 +13574,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4776 + i32.const 5032 + i32.const 4728 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN41GrpcService_GoogleGrpc_ChannelCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -12610,12 +13601,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $3 i32.const 40 i32.add @@ -12672,7 +13663,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8176 + i32.const 9176 i32.store local.get $4 local.get $5 @@ -12775,11 +13766,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_11 end ;; $block_12 local.get $0 @@ -12791,11 +13782,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_11 local.get $0 i32.const 1 @@ -12896,11 +13887,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_18 end ;; $block_19 local.get $0 @@ -12912,11 +13903,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_18 local.get $0 i32.const 2 @@ -13017,11 +14008,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_25 end ;; $block_26 local.get $0 @@ -13033,11 +14024,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_25 local.get $0 i32.const 3 @@ -13196,7 +14187,7 @@ i32.ge_s if $if_4 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_4 @@ -13204,7 +14195,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -13220,7 +14211,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -13290,7 +14281,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -13384,7 +14375,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -13403,7 +14394,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -13436,12 +14427,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -13450,7 +14441,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 2156 @@ -13462,7 +14453,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -13555,11 +14546,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_5 end ;; $block_6 local.get $0 @@ -13570,11 +14561,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 end ;; $block_5 local.get $0 @@ -13592,7 +14583,7 @@ if $if_3 (result i32) br $block_4 else - i32.const 19504 + i32.const 28832 end ;; $if_3 br $block_3 end ;; $block_4 @@ -13604,7 +14595,7 @@ local.get $1 call $__ZN37GrpcService_GoogleGrpc_SslCredentials9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block_1 block $block_9 (result i32) @@ -13635,11 +14626,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_11 end ;; $block_12 local.get $0 @@ -13650,11 +14641,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 end ;; $block_11 local.get $0 @@ -13672,7 +14663,7 @@ if $if_5 (result i32) br $block_10 else - i32.const 19544 + i32.const 28872 end ;; $if_5 br $block_9 end ;; $block_10 @@ -13684,7 +14675,7 @@ local.get $1 call $__ZN28GrpcService_GoogleGrpc_Empty9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block_0 block $block_15 (result i32) @@ -13715,11 +14706,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_17 end ;; $block_18 local.get $0 @@ -13730,11 +14721,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_6 end ;; $block_17 local.get $0 @@ -13752,7 +14743,7 @@ if $if_7 (result i32) br $block_16 else - i32.const 19528 + i32.const 28856 end ;; $if_7 br $block_15 end ;; $block_16 @@ -13764,11 +14755,11 @@ local.get $1 call $__ZN45GrpcService_GoogleGrpc_GoogleLocalCredentials9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI41GrpcService_GoogleGrpc_ChannelCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -13782,26 +14773,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4776 + i32.const 4728 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 106 + i32.const 167 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6736 + i32.const 7720 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6736 + i32.const 7720 i32.store end ;; $if local.get $0 @@ -13810,10 +14801,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 6704 + i32.const 7688 i32.load if $if_2 - i32.const 6704 + i32.const 7688 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -13824,37 +14815,37 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL85InitDefaultsGrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19600 - i32.const 6832 + global.set $36 + i32.const 28928 + i32.const 7816 i32.store - i32.const 19604 + i32.const 28932 i32.const 0 i32.store - i32.const 19624 + i32.const 28952 i32.const 0 i32.store - i32.const 6808 + i32.const 7792 i32.load if $if - i32.const 6808 + i32.const 7792 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19608 - i32.const 20008 + i32.const 28936 + i32.const 29336 i32.store - i32.const 19616 + i32.const 28944 i64.const 0 i64.store - i32.const 99 - i32.const 19600 + i32.const 160 + i32.const 28928 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -13863,12 +14854,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6832 + i32.const 7816 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -13935,12 +14926,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6832 + i32.const 7816 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -14020,45 +15011,45 @@ i32.const 73 i32.store offset=4 local.get $1 - i32.const 10654 + i32.const 14309 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10662 + i32.const 14317 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10670 + i32.const 14325 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10678 + i32.const 14333 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10686 + i32.const 14341 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 10694 + i32.const 14349 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 10702 + i32.const 14357 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 10710 + i32.const 14365 i64.load align=1 i64.store offset=56 align=1 local.get $1 i32.const -64 i32.sub - i32.const 10718 + i32.const 14373 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10726 + i32.const 14381 i32.load8_s i32.store8 offset=72 local.get $1 @@ -14087,7 +15078,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -14154,18 +15145,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4792 + i32.const 5032 + i32.const 4744 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -14182,12 +15173,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $3 i32.const 48 i32.add @@ -14244,7 +15235,7 @@ i32.add local.tee $2 local.tee $6 - i32.const 8176 + i32.const 9176 i32.store local.get $6 local.get $4 @@ -14369,11 +15360,11 @@ local.get $6 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_4 (result i32) local.get $6 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $6 i32.load @@ -14408,7 +15399,7 @@ local.get $2 local.get $5 i32.const 0 - i32.const 10571 + i32.const 14226 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ i32.eqz br_if $block @@ -14495,7 +15486,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_8 @@ -14503,7 +15494,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -14520,7 +15511,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -14659,7 +15650,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10571 + i32.const 14226 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -14683,7 +15674,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -14702,7 +15693,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -14743,12 +15734,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -14757,7 +15748,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 2393 @@ -14769,7 +15760,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -14848,7 +15839,7 @@ i32.ne if $if_4 local.get $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -14868,14 +15859,14 @@ i64.eq if $if_6 local.get $3 - global.set $32 + global.set $36 return end ;; $if_6 local.get $0 local.get $6 i64.store offset=16 local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI73GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -14889,26 +15880,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4792 + i32.const 4744 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 32 - i32.const 107 + i32.const 168 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6832 + i32.const 7816 i32.store else i32.const 32 call $__Znwm local.tee $0 - i32.const 6832 + i32.const 7816 i32.store end ;; $if local.get $0 @@ -14917,14 +15908,14 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 6808 + i32.const 7792 i32.load if $if_2 - i32.const 6808 + i32.const 7792 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i64.const 0 @@ -14934,37 +15925,37 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL71InitDefaultsGrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19632 - i32.const 6928 + global.set $36 + i32.const 28960 + i32.const 7912 i32.store - i32.const 19636 + i32.const 28964 i32.const 0 i32.store - i32.const 19648 + i32.const 28976 i32.const 0 i32.store - i32.const 6904 + i32.const 7888 i32.load if $if - i32.const 6904 + i32.const 7888 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19640 - i32.const 20008 + i32.const 28968 + i32.const 29336 i32.store - i32.const 19644 - i32.const 20008 + i32.const 28972 + i32.const 29336 i32.store - i32.const 99 - i32.const 19632 + i32.const 160 + i32.const 28960 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -14973,12 +15964,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 6928 + i32.const 7912 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -15000,7 +15991,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -15091,39 +16082,39 @@ i32.const 59 i32.store offset=4 local.get $1 - i32.const 10963 + i32.const 14618 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10971 + i32.const 14626 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10979 + i32.const 14634 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10987 + i32.const 14642 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 10995 + i32.const 14650 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11003 + i32.const 14658 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11011 + i32.const 14666 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 11019 + i32.const 14674 i32.load16_s align=1 i32.store16 offset=56 align=1 local.get $1 - i32.const 11021 + i32.const 14676 i32.load8_s i32.store8 offset=58 local.get $1 @@ -15150,18 +16141,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4808 + i32.const 5032 + i32.const 4760 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -15179,12 +16170,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 32 i32.add @@ -15237,7 +16228,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $5 @@ -15321,11 +16312,11 @@ local.get $8 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $8 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -15360,7 +16351,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 10804 + i32.const 14459 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -15377,11 +16368,11 @@ local.get $9 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_4 (result i32) local.get $9 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -15416,7 +16407,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 10884 + i32.const 14539 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -15503,7 +16494,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_8 @@ -15511,7 +16502,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -15555,7 +16546,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10804 + i32.const 14459 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -15598,7 +16589,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 10884 + i32.const 14539 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 2 @@ -15612,7 +16603,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -15631,7 +16622,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -15664,12 +16655,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -15678,7 +16669,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 2632 @@ -15690,7 +16681,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -15769,7 +16760,7 @@ i32.ne if $if_4 local.get $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -15800,7 +16791,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $36 return end ;; $if_7 local.get $1 @@ -15813,11 +16804,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $36 return end ;; $if_8 local.get $0 - i32.const 20008 + i32.const 29336 i32.eq if $if_9 local.get $2 @@ -15829,7 +16820,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI59GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -15843,26 +16834,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4808 + i32.const 4760 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 108 + i32.const 169 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 6928 + i32.const 7912 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 6928 + i32.const 7912 i32.store end ;; $if local.get $0 @@ -15871,54 +16862,54 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 6904 + i32.const 7888 i32.load if $if_2 - i32.const 6904 + i32.const 7888 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL80InitDefaultsGrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19656 - i32.const 7028 + global.set $36 + i32.const 28984 + i32.const 8012 i32.store - i32.const 19660 + i32.const 28988 i32.const 0 i32.store - i32.const 19672 + i32.const 29000 i32.const 0 i32.store - i32.const 7000 + i32.const 7984 i32.load if $if - i32.const 7000 + i32.const 7984 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19664 - i32.const 20008 + i32.const 28992 + i32.const 29336 i32.store - i32.const 19676 + i32.const 29004 i32.const 0 i32.store - i32.const 99 - i32.const 19656 + i32.const 160 + i32.const 28984 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -15927,12 +16918,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7028 + i32.const 8012 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -15970,11 +16961,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -15986,11 +16977,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -16068,41 +17059,41 @@ i32.const 68 i32.store offset=4 local.get $1 - i32.const 11159 + i32.const 14814 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11167 + i32.const 14822 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11175 + i32.const 14830 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11183 + i32.const 14838 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11191 + i32.const 14846 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11199 + i32.const 14854 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11207 + i32.const 14862 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 11215 + i32.const 14870 i64.load align=1 i64.store offset=56 align=1 local.get $1 i32.const -64 i32.sub - i32.const 11223 + i32.const 14878 i32.load align=1 i32.store align=1 local.get $1 @@ -16132,7 +17123,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -16177,11 +17168,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 br $block end ;; $block_0 @@ -16195,11 +17186,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 end ;; $block local.get $0 @@ -16245,18 +17236,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4824 + i32.const 5032 + i32.const 4776 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -16273,12 +17264,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $4 i32.const 40 i32.add @@ -16335,7 +17326,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $5 @@ -16419,11 +17410,11 @@ local.get $8 i32.load local.tee $3 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $8 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -16458,7 +17449,7 @@ local.get $2 local.get $3 i32.const 0 - i32.const 11085 + i32.const 14740 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -16496,11 +17487,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_10 local.get $0 i32.const 2 @@ -16600,11 +17591,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_16 local.get $0 i32.const 3 @@ -16760,7 +17751,7 @@ i32.ge_s if $if_6 local.get $4 - global.set $32 + global.set $36 local.get $1 return end ;; $if_6 @@ -16768,7 +17759,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $36 local.get $1 ) @@ -16786,7 +17777,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -16894,7 +17885,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -17074,7 +18065,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11085 + i32.const 14740 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -17113,7 +18104,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -17132,7 +18123,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -17165,12 +18156,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -17179,7 +18170,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 2962 @@ -17191,7 +18182,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -17270,7 +18261,7 @@ i32.ne if $if_4 local.get $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -17320,11 +18311,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_6 end ;; $block_4 local.get $0 @@ -17342,7 +18333,7 @@ if $if_7 (result i32) br $block_3 else - i32.const 19880 + i32.const 29208 end ;; $if_7 br $block_2 end ;; $block_3 @@ -17354,7 +18345,7 @@ local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ local.get $3 - global.set $32 + global.set $36 return end ;; $block_0 block $block_7 (result i32) @@ -17383,11 +18374,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_8 end ;; $block_9 local.get $0 @@ -17405,7 +18396,7 @@ if $if_9 (result i32) br $block_8 else - i32.const 19464 + i32.const 28792 end ;; $if_9 br $block_7 end ;; $block_8 @@ -17417,11 +18408,11 @@ local.get $1 call $__ZN3Any9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI68GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPluginJEEEPT_PS1_DpOT0_ (type $4) @@ -17435,26 +18426,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4824 + i32.const 4776 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 109 + i32.const 170 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 7028 + i32.const 8012 i32.store else i32.const 24 call $__Znwm local.tee $0 - i32.const 7028 + i32.const 8012 i32.store end ;; $if local.get $0 @@ -17463,14 +18454,14 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7000 + i32.const 7984 i32.load if $if_2 - i32.const 7000 + i32.const 7984 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 0 @@ -17480,34 +18471,34 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL50InitDefaultsGrpcService_GoogleGrpc_CallCredentialsEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19688 - i32.const 7136 + global.set $36 + i32.const 29016 + i32.const 8120 i32.store - i32.const 19692 + i32.const 29020 i32.const 0 i32.store - i32.const 19700 + i32.const 29028 i32.const 0 i32.store - i32.const 7100 + i32.const 8084 i32.load if $if - i32.const 7100 + i32.const 8084 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19704 + i32.const 29032 i32.const 0 i32.store - i32.const 99 - i32.const 19688 + i32.const 160 + i32.const 29016 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -17516,7 +18507,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7136 + i32.const 8120 i32.store local.get $0 i32.load offset=16 @@ -17572,7 +18563,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7136 + i32.const 8120 i32.store local.get $0 i32.load offset=16 @@ -17641,27 +18632,27 @@ i32.const 38 i32.store offset=4 local.get $1 - i32.const 11411 + i32.const 15066 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11419 + i32.const 15074 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11427 + i32.const 15082 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11435 + i32.const 15090 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11443 + i32.const 15098 i32.load align=1 i32.store offset=32 align=1 local.get $1 - i32.const 11447 + i32.const 15102 i32.load16_s align=1 i32.store16 offset=36 align=1 local.get $1 @@ -17729,18 +18720,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4840 + i32.const 5032 + i32.const 4792 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN38GrpcService_GoogleGrpc_CallCredentials9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -17757,12 +18748,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $4 i32.const 40 i32.add @@ -17819,7 +18810,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $5 @@ -17913,7 +18904,7 @@ local.get $7 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq br_if $block_15 else @@ -17923,14 +18914,14 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 br $block_15 end ;; $if_2 br $block_14 end ;; $block_15 local.get $7 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -17953,9 +18944,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_3 i32.load8_s offset=11 i32.const 0 @@ -17972,9 +18963,9 @@ i32.load offset=8 local.tee $3 else - i32.const 20008 + i32.const 29336 local.set $3 - i32.const 20008 + i32.const 29336 end ;; $if_5 i32.load8_s offset=11 local.tee $2 @@ -17989,7 +18980,7 @@ i32.and end ;; $if_6 i32.const 0 - i32.const 11299 + i32.const 14954 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -18094,7 +19085,7 @@ local.get $7 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq br_if $block_19 else @@ -18104,14 +19095,14 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 br $block_19 end ;; $if_8 br $block_18 end ;; $block_19 local.get $7 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $7 i32.load @@ -18134,9 +19125,9 @@ i32.load offset=8 local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_9 i32.load8_s offset=11 i32.const 0 @@ -18153,9 +19144,9 @@ i32.load offset=8 local.tee $3 else - i32.const 20008 + i32.const 29336 local.set $3 - i32.const 20008 + i32.const 29336 end ;; $if_11 i32.load8_s offset=11 local.tee $2 @@ -18170,7 +19161,7 @@ i32.and end ;; $if_12 i32.const 0 - i32.const 11351 + i32.const 15006 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -18519,7 +19510,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $32 + global.set $36 local.get $1 return end ;; $if_18 @@ -18527,7 +19518,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $36 local.get $1 ) @@ -18546,7 +19537,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -18587,7 +19578,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -18618,7 +19609,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -18718,7 +19709,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -18959,7 +19950,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11299 + i32.const 14954 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -18971,7 +19962,7 @@ local.get $0 i32.load offset=8 else - i32.const 20008 + i32.const 29336 end ;; $if_1 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -19019,7 +20010,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11351 + i32.const 15006 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -19031,7 +20022,7 @@ local.get $0 i32.load offset=8 else - i32.const 20008 + i32.const 29336 end ;; $if_5 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -19080,7 +20071,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -19099,7 +20090,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -19146,7 +20137,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -19175,18 +20166,18 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_1 br $block end ;; $block_3 local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -19215,11 +20206,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 br $block end ;; $block_1 @@ -19231,11 +20222,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_5 br $block end ;; $block_0 @@ -19247,11 +20238,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_6 end ;; $block local.get $0 @@ -19266,12 +20257,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -19280,7 +20271,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 3433 @@ -19292,7 +20283,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -19377,7 +20368,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne br_if $block_1 else @@ -19387,7 +20378,7 @@ i32.const 1 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 8 @@ -19423,7 +20414,7 @@ i32.const 2 i32.eq br_if $block_10 - i32.const 19544 + i32.const 28872 end ;; $if_3 br $block_9 end ;; $block_10 @@ -19450,7 +20441,7 @@ local.tee $0 i32.load local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne br_if $block_1 else @@ -19460,7 +20451,7 @@ i32.const 3 i32.store offset=16 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 i32.const 8 @@ -19496,7 +20487,7 @@ i32.const 4 i32.eq br_if $block_12 - i32.const 19600 + i32.const 28928 end ;; $if_5 br $block_11 end ;; $block_12 @@ -19536,7 +20527,7 @@ i32.const 5 i32.eq br_if $block_14 - i32.const 19632 + i32.const 28960 end ;; $if_6 br $block_13 end ;; $block_14 @@ -19576,7 +20567,7 @@ i32.const 6 i32.eq br_if $block_16 - i32.const 19656 + i32.const 28984 end ;; $if_7 br $block_15 end ;; $block_16 @@ -19590,7 +20581,7 @@ br $block end ;; $block_2 local.get $3 - global.set $32 + global.set $36 return end ;; $block_1 local.get $1 @@ -19603,7 +20594,7 @@ call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE end ;; $block local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI38GrpcService_GoogleGrpc_CallCredentialsJEEEPT_PS1_DpOT0_ (type $4) @@ -19617,26 +20608,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4840 + i32.const 4792 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 110 + i32.const 171 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 7136 + i32.const 8120 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 7136 + i32.const 8120 i32.store end ;; $if local.get $0 @@ -19645,10 +20636,10 @@ local.get $0 i32.const 0 i32.store offset=12 - i32.const 7100 + i32.const 8084 i32.load if $if_2 - i32.const 7100 + i32.const 8084 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 @@ -19659,31 +20650,31 @@ (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL34InitDefaultsGrpcService_GoogleGrpcEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19736 + global.set $36 + i32.const 29064 call $__ZN22GrpcService_GoogleGrpcC2Ev - i32.const 99 - i32.const 19736 + i32.const 160 + i32.const 29064 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19772 - i32.const 19560 + i32.const 29100 + i32.const 28888 i32.store - i32.const 19776 - i32.const 19880 + i32.const 29104 + i32.const 29208 i32.store ) (func $__ZN22GrpcService_GoogleGrpcC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7240 + i32.const 8224 i32.store local.get $0 i32.const 0 @@ -19697,20 +20688,20 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 7208 + i32.const 8192 i32.load if $if - i32.const 7208 + i32.const 8192 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=24 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=28 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=32 local.get $0 i64.const 0 @@ -19724,7 +20715,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.const 7240 + i32.const 8224 i32.store local.get $0 call $__ZN22GrpcService_GoogleGrpc10SharedDtorEv @@ -19757,11 +20748,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 local.get $2 i32.const 1 @@ -19854,19 +20845,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 11608 + i32.const 15263 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11616 + i32.const 15271 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11624 + i32.const 15279 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 11628 + i32.const 15283 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -19900,7 +20891,7 @@ local.get $0 i32.load offset=24 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -19927,7 +20918,7 @@ local.get $0 i32.load offset=28 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if_1 local.get $1 @@ -19954,7 +20945,7 @@ local.get $0 i32.load offset=32 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if_3 local.get $1 @@ -19988,11 +20979,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_5 local.get $0 i32.const 0 @@ -20007,11 +20998,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_6 local.get $0 i32.const 0 @@ -20056,18 +21047,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4856 + i32.const 5032 + i32.const 4808 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN22GrpcService_GoogleGrpc9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -20087,12 +21078,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $4 i32.const 40 i32.add @@ -20149,7 +21140,7 @@ i32.add local.tee $3 local.tee $2 - i32.const 8176 + i32.const 9176 i32.store local.get $2 local.get $6 @@ -20249,11 +21240,11 @@ local.get $8 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $8 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -20288,7 +21279,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 11491 + i32.const 15146 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -20535,11 +21526,11 @@ local.get $9 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_8 (result i32) local.get $9 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -20574,7 +21565,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 11525 + i32.const 15180 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -20591,11 +21582,11 @@ local.get $10 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_10 (result i32) local.get $10 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $10 i32.load @@ -20630,7 +21621,7 @@ local.get $3 local.get $2 i32.const 0 - i32.const 11560 + i32.const 15215 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -20801,7 +21792,7 @@ i32.ge_s if $if_15 local.get $4 - global.set $32 + global.set $36 local.get $1 return end ;; $if_15 @@ -20809,7 +21800,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $36 local.get $1 ) @@ -20826,7 +21817,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -21021,7 +22012,7 @@ local.set $1 end ;; $if_6 local.get $0 - i32.const 19736 + i32.const 29064 i32.eq if $if_7 local.get $0 @@ -21135,7 +22126,7 @@ local.get $3 local.get $2 i32.const 1 - i32.const 11491 + i32.const 15146 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -21145,7 +22136,7 @@ call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE end ;; $if_0 local.get $0 - i32.const 19736 + i32.const 29064 i32.eq local.tee $5 i32.eqz @@ -21220,7 +22211,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11525 + i32.const 15180 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 4 @@ -21263,7 +22254,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11560 + i32.const 15215 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 5 @@ -21290,7 +22281,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -21309,7 +22300,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -21348,12 +22339,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $2 i32.const 24 i32.add @@ -21366,7 +22357,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $3 i32.const 1505 @@ -21378,7 +22369,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11902 + i32.const 15559 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -21400,7 +22391,7 @@ i32.load local.set $0 local.get $2 - global.set $32 + global.set $36 local.get $0 return end ;; $if_0 @@ -21408,7 +22399,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $2 i32.const 1506 @@ -21420,7 +22411,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11933 + i32.const 15590 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -21436,7 +22427,7 @@ i32.load local.set $0 local.get $2 - global.set $32 + global.set $36 local.get $0 ) @@ -21447,12 +22438,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -21461,7 +22452,7 @@ i32.const 3 i32.store local.get $4 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $4 i32.const 3854 @@ -21473,7 +22464,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -21559,7 +22550,7 @@ i32.ne if $if_4 local.get $3 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -21598,7 +22589,7 @@ i32.ne if $if_8 local.get $3 - i32.const 20008 + i32.const 29336 i32.eq if $if_9 local.get $5 @@ -21637,7 +22628,7 @@ i32.ne if $if_12 local.get $3 - i32.const 20008 + i32.const 29336 i32.eq if $if_13 local.get $5 @@ -21651,11 +22642,11 @@ end ;; $if_12 end ;; $if_11 local.get $1 - i32.const 19736 + i32.const 29064 i32.eq if $if_14 local.get $4 - global.set $32 + global.set $36 return end ;; $if_14 local.get $1 @@ -21678,7 +22669,7 @@ end ;; $if_16 local.get $2 local.get $3 - i32.const 19560 + i32.const 28888 local.get $3 select call $__ZN41GrpcService_GoogleGrpc_ChannelCredentials9MergeFromERKS_ @@ -21689,7 +22680,7 @@ i32.eqz if $if_17 local.get $4 - global.set $32 + global.set $36 return end ;; $if_17 local.get $0 @@ -21710,12 +22701,12 @@ end ;; $if_18 local.get $0 local.get $3 - i32.const 19880 + i32.const 29208 local.get $3 select call $__ZN6google8protobuf6Struct9MergeFromERKS1_ local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldI38GrpcService_GoogleGrpc_CallCredentialsE11TypeHandlerEEEvRKS2_ (type $1) @@ -21727,12 +22718,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -21741,7 +22732,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $2 i32.const 1586 @@ -21753,7 +22744,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12359 + i32.const 16016 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -21765,7 +22756,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $1 @@ -21873,14 +22864,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $36 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerI38GrpcService_GoogleGrpc_CallCredentialsE5MergeERKS3_PS3_ (type $1) @@ -21899,12 +22890,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $3 @@ -21915,7 +22906,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $1 i32.const 1567 @@ -21927,20 +22918,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 14230 + i32.const 17887 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $36 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -22006,7 +22997,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI22GrpcService_GoogleGrpcJEEEPT_PS1_DpOT0_ (type $4) @@ -22028,17 +23019,17 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4856 + i32.const 4808 i64.const 48 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 48 - i32.const 111 + i32.const 172 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 call $__ZN22GrpcService_GoogleGrpcC2Ev @@ -22051,7 +23042,7 @@ local.get $0 i32.load offset=24 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -22073,7 +23064,7 @@ local.get $0 i32.load offset=28 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -22095,7 +23086,7 @@ local.get $0 i32.load offset=32 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -22115,7 +23106,7 @@ call $_free end ;; $if_3 local.get $0 - i32.const 19736 + i32.const 29064 i32.eq if $if_5 return @@ -22128,11 +23119,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_6 local.get $0 i32.load offset=40 @@ -22145,46 +23136,46 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL35InitDefaultsGrpcService_HeaderValueEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19784 - i32.const 7336 + global.set $36 + i32.const 29112 + i32.const 8320 i32.store - i32.const 19788 + i32.const 29116 i32.const 0 i32.store - i32.const 19800 + i32.const 29128 i32.const 0 i32.store - i32.const 7312 + i32.const 8296 i32.load if $if - i32.const 7312 + i32.const 8296 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19792 - i32.const 20008 + i32.const 29120 + i32.const 29336 i32.store - i32.const 19796 - i32.const 20008 + i32.const 29124 + i32.const 29336 i32.store - i32.const 99 - i32.const 19784 + i32.const 160 + i32.const 29112 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) @@ -22193,12 +23184,12 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7336 + i32.const 8320 i32.store local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -22220,7 +23211,7 @@ local.get $0 i32.load offset=12 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -22311,23 +23302,23 @@ i32.const 23 i32.store offset=4 local.get $1 - i32.const 11714 + i32.const 15369 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11722 + i32.const 15377 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11730 + i32.const 15385 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 11734 + i32.const 15389 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 - i32.const 11736 + i32.const 15391 i32.load8_s i32.store8 offset=22 local.get $1 @@ -22354,18 +23345,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4872 + i32.const 5032 + i32.const 4824 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN23GrpcService_HeaderValue9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -22383,12 +23374,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 32 i32.add @@ -22441,7 +23432,7 @@ i32.store offset=8 end ;; $if local.get $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $5 @@ -22525,11 +23516,11 @@ local.get $8 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 (result i32) local.get $8 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $8 i32.load @@ -22564,7 +23555,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 11656 + i32.const 15311 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -22581,11 +23572,11 @@ local.get $9 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_4 (result i32) local.get $9 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr21CreateInstanceNoArenaEPKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE local.get $9 i32.load @@ -22620,7 +23611,7 @@ local.get $2 local.get $4 i32.const 0 - i32.const 11684 + i32.const 15339 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -22707,7 +23698,7 @@ i32.ge_s if $if_8 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_8 @@ -22715,7 +23706,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -22759,7 +23750,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11656 + i32.const 15311 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 1 @@ -22802,7 +23793,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 11684 + i32.const 15339 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 2 @@ -22816,7 +23807,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -22835,7 +23826,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -22868,12 +23859,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -22882,7 +23873,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 4111 @@ -22894,7 +23885,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -22973,7 +23964,7 @@ i32.ne if $if_4 local.get $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_5 local.get $5 @@ -23004,7 +23995,7 @@ i32.eqz if $if_7 local.get $3 - global.set $32 + global.set $36 return end ;; $if_7 local.get $1 @@ -23017,11 +24008,11 @@ i32.eq if $if_8 local.get $3 - global.set $32 + global.set $36 return end ;; $if_8 local.get $0 - i32.const 20008 + i32.const 29336 i32.eq if $if_9 local.get $2 @@ -23033,7 +24024,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_9 local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI23GrpcService_HeaderValueJEEEPT_PS1_DpOT0_ (type $4) @@ -23047,26 +24038,26 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4872 + i32.const 4824 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 - i32.const 112 + i32.const 173 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 - i32.const 7336 + i32.const 8320 i32.store else i32.const 20 call $__Znwm local.tee $0 - i32.const 7336 + i32.const 8320 i32.store end ;; $if local.get $0 @@ -23075,42 +24066,42 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7312 + i32.const 8296 i32.load if $if_2 - i32.const 7312 + i32.const 8296 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=8 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=12 local.get $0 ) (func $__ZN49protobuf_proxy_5fwasm_5fintrinsics_5flite_2eprotoL23InitDefaultsGrpcServiceEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19808 + global.set $36 + i32.const 29136 call $__ZN11GrpcServiceC2Ev - i32.const 99 - i32.const 19808 + i32.const 160 + i32.const 29136 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ ) (func $__ZN11GrpcServiceC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7440 + i32.const 8424 i32.store local.get $0 i32.const 0 @@ -23124,7 +24115,7 @@ local.get $0 i32.const 0 i32.store offset=20 - i32.const 7408 + i32.const 8392 i32.load i32.eqz if $if @@ -23133,7 +24124,7 @@ i32.store offset=32 return end ;; $if - i32.const 7408 + i32.const 8392 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE local.get $0 i32.const 0 @@ -23147,7 +24138,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.const 7440 + i32.const 8424 i32.store block $block block $block_0 @@ -23168,11 +24159,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block_0 end ;; $block_1 local.get $0 @@ -23184,11 +24175,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_0 local.get $0 i32.const 0 @@ -23223,11 +24214,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 local.get $2 i32.const 1 @@ -23320,15 +24311,15 @@ i32.const 11 i32.store offset=4 local.get $1 - i32.const 11764 + i32.const 15419 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11772 + i32.const 15427 i32.load16_s align=1 i32.store16 offset=8 align=1 local.get $1 - i32.const 11774 + i32.const 15429 i32.load8_s i32.store8 offset=10 local.get $1 @@ -23380,11 +24371,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if br $block end ;; $block_0 @@ -23398,11 +24389,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 end ;; $block local.get $0 @@ -23448,18 +24439,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4888 + i32.const 5032 + i32.const 4840 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN11GrpcService9MergeFromERKS_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -23476,12 +24467,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $4 i32.const 40 i32.add @@ -23538,7 +24529,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 8176 + i32.const 9176 i32.store local.get $3 local.get $6 @@ -23644,11 +24635,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_11 local.get $0 i32.const 1 @@ -23748,11 +24739,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block_17 local.get $0 i32.const 2 @@ -24067,7 +25058,7 @@ i32.ge_s if $if_7 local.get $4 - global.set $32 + global.set $36 local.get $1 return end ;; $if_7 @@ -24075,7 +25066,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $36 local.get $1 ) @@ -24096,7 +25087,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -24134,7 +25125,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -24288,7 +25279,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -24473,7 +25464,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -24492,7 +25483,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -24532,12 +25523,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -24546,7 +25537,7 @@ i32.const 3 i32.store local.get $3 - i32.const 9748 + i32.const 13401 i32.store offset=4 local.get $3 i32.const 4428 @@ -24558,7 +25549,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -24655,11 +25646,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_2 end ;; $block_4 local.get $0 @@ -24677,7 +25668,7 @@ if $if_3 (result i32) br $block_3 else - i32.const 19488 + i32.const 28816 end ;; $if_3 br $block_2 end ;; $block_3 @@ -24689,7 +25680,7 @@ local.get $1 call $__ZN21GrpcService_EnvoyGrpc9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block_0 block $block_7 (result i32) @@ -24718,11 +25709,11 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 end ;; $block_9 local.get $0 @@ -24740,7 +25731,7 @@ if $if_5 (result i32) br $block_8 else - i32.const 19736 + i32.const 29064 end ;; $if_5 br $block_7 end ;; $block_8 @@ -24752,11 +25743,11 @@ local.get $1 call $__ZN22GrpcService_GoogleGrpc9MergeFromERKS_ local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldI23GrpcService_HeaderValueE11TypeHandlerEEEvRKS2_ (type $1) @@ -24768,12 +25759,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -24782,7 +25773,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $2 i32.const 1586 @@ -24794,7 +25785,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12359 + i32.const 16016 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -24806,7 +25797,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $1 @@ -24914,14 +25905,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $36 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerI23GrpcService_HeaderValueE5MergeERKS3_PS3_ (type $1) @@ -24940,12 +25931,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $5 @@ -24956,7 +25947,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $2 i32.const 1567 @@ -24968,20 +25959,20 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 14230 + i32.const 17887 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $2 - global.set $32 + global.set $36 return end ;; $if local.get $5 i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -24999,7 +25990,7 @@ local.tee $3 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if_1 local.get $1 @@ -25026,7 +26017,7 @@ local.get $3 i32.load offset=12 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if_3 local.get $1 @@ -25094,7 +26085,7 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageI11GrpcServiceJEEEPT_PS1_DpOT0_ (type $4) @@ -25116,17 +26107,17 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4888 + i32.const 4840 i64.const 40 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 40 - i32.const 113 + i32.const 174 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $0 call $__ZN11GrpcServiceC2Ev @@ -25158,11 +26149,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if br $block end ;; $block_0 @@ -25176,11 +26167,11 @@ local.set $2 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_0 end ;; $block local.get $0 @@ -25190,69 +26181,69 @@ (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $0 - global.set $32 - i32.const 19868 + global.set $36 + i32.const 29196 i32.const 0 i32.store - i32.const 19860 - i32.const 20008 + i32.const 29188 + i32.const 29336 i32.store - i32.const 19864 + i32.const 29192 i32.const 0 i32.store - i32.const 19872 + i32.const 29200 i32.const 0 i32.store - i32.const 19856 - i32.const 7536 + i32.const 29184 + i32.const 8520 i32.store - i32.const 19880 + i32.const 29208 call $__ZN6google8protobuf6StructC2Ev - i32.const 99 - i32.const 19880 + i32.const 160 + i32.const 29208 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19912 - i32.const 7624 + i32.const 29240 + i32.const 8608 i32.store - i32.const 19916 + i32.const 29244 i32.const 0 i32.store - i32.const 19928 + i32.const 29256 i32.const 0 i32.store - i32.const 7512 + i32.const 8496 i32.load if $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 19932 + i32.const 29260 i32.const 0 i32.store - i32.const 99 - i32.const 19912 + i32.const 160 + i32.const 29240 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19968 + i32.const 29296 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 99 - i32.const 19968 + i32.const 160 + i32.const 29296 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 19864 - i32.const 19912 + i32.const 29192 + i32.const 29240 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7872 + i32.const 8856 i32.store local.get $0 i64.const 0 @@ -25270,20 +26261,20 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 7512 + i32.const 8496 i32.load i32.eqz if $if return end ;; $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7704 + i32.const 8688 i32.store local.get $0 i32.const 4 @@ -25297,13 +26288,13 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 7512 + i32.const 8496 i32.load i32.eqz if $if return end ;; $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -25314,14 +26305,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 - i32.const 7704 + i32.const 8688 i32.store local.get $0 i32.load offset=4 @@ -25343,7 +26334,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $2 i32.const 915 @@ -25355,7 +26346,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12970 + i32.const 16627 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -25392,11 +26383,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -25450,14 +26441,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $36 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -25489,19 +26480,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 14257 + i32.const 17914 i64.load align=1 i64.store align=1 local.get $1 - i32.const 14265 + i32.const 17922 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 14273 + i32.const 17930 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 14281 + i32.const 17938 i32.load8_s i32.store8 offset=24 local.get $1 @@ -25599,18 +26590,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4904 + i32.const 5032 + i32.const 4856 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -25627,12 +26618,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $3 i32.const 40 i32.add @@ -25689,7 +26680,7 @@ i32.add local.tee $2 local.tee $4 - i32.const 8176 + i32.const 9176 i32.store local.get $4 local.get $5 @@ -25988,7 +26979,7 @@ i32.ge_s if $if_7 local.get $3 - global.set $32 + global.set $36 local.get $1 return end ;; $if_7 @@ -25996,7 +26987,7 @@ i32.load call $_free local.get $3 - global.set $32 + global.set $36 local.get $1 ) @@ -26013,7 +27004,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -26122,7 +27113,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -26141,7 +27132,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -26182,7 +27173,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -26333,7 +27324,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -26443,18 +27434,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $1 i32.const 1 i32.and @@ -26526,7 +27517,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) select local.set $3 local.get $4 @@ -26549,12 +27540,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4920 + i32.const 4872 i64.const 32 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -26571,13 +27562,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 7784 + i32.const 8768 i32.store local.get $1 local.get $7 @@ -26600,11 +27591,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $2 i32.const 16 i32.add @@ -26633,7 +27624,7 @@ i32.load offset=72 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -26675,7 +27666,7 @@ i32.load offset=76 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -26736,22 +27727,22 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $32 + global.set $36 local.get $5 return end ;; $block @@ -26759,7 +27750,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $32 + global.set $36 local.get $5 ) @@ -26771,12 +27762,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $2 i32.const 24 i32.add @@ -26805,7 +27796,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $3 i32.const 418 @@ -26817,7 +27808,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12059 + i32.const 15716 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -26840,7 +27831,7 @@ i32.le_u if $if_1 local.get $2 - global.set $32 + global.set $36 return end ;; $if_1 local.get $5 @@ -26874,7 +27865,7 @@ br $block end ;; $block_0 local.get $2 - global.set $32 + global.set $36 return end ;; $block local.get $1 @@ -26892,7 +27883,7 @@ local.get $3 i32.store local.get $2 - global.set $32 + global.set $36 return end ;; $if_3 local.get $3 @@ -26903,7 +27894,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 427 @@ -26915,7 +27906,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12176 + i32.const 15833 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -26927,7 +27918,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -26939,12 +27930,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load i32.load offset=16 @@ -26954,7 +27945,7 @@ local.get $1 i32.store local.get $2 - global.set $32 + global.set $36 return end ;; $if local.get $2 @@ -26986,7 +27977,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 451 @@ -26998,7 +27989,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12016 + i32.const 15673 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -27086,7 +28077,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $6) @@ -27101,12 +28092,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 24 i32.add @@ -27134,7 +28125,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $3 i32.const 476 @@ -27146,7 +28137,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12207 + i32.const 15864 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -27255,12 +28246,12 @@ i32.ne local.set $0 local.get $3 - global.set $32 + global.set $36 local.get $0 return end ;; $block_1 local.get $3 - global.set $32 + global.set $36 i32.const 1 ) @@ -27278,12 +28269,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $36 local.set $10 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $2 i32.load local.get $2 @@ -27469,7 +28460,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $32 + global.set $36 return end ;; $block_0 end ;; $if_2 @@ -27589,7 +28580,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $32 + global.set $36 return end ;; $block else @@ -27609,7 +28600,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $32 + global.set $36 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $5) @@ -27793,7 +28784,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 7952 + i32.const 8936 i32.store local.get $0 i32.load offset=12 @@ -27803,7 +28794,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -27833,18 +28824,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 7952 + i32.const 8936 i32.store local.get $0 i32.load offset=12 @@ -27856,7 +28847,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -27888,11 +28879,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 call $_free ) @@ -27917,7 +28908,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $0 i32.const 0 @@ -27926,7 +28917,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 7536 + i32.const 8520 i32.store local.get $0 ) @@ -27946,7 +28937,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 20008 + i32.const 29336 i32.ne if $if local.get $1 @@ -28021,18 +29012,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4936 + i32.const 5032 + i32.const 4888 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -28046,12 +29037,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $2 local.set $4 local.get $0 @@ -28122,13 +29113,13 @@ local.get $5 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -28278,7 +29269,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $32 + global.set $36 i32.const 0 return end ;; $block_0 @@ -28289,12 +29280,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $32 + global.set $36 i32.const 1 return end ;; $block local.get $4 - global.set $32 + global.set $36 local.get $0 ) @@ -28318,7 +29309,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -28371,7 +29362,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -28404,7 +29395,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -28415,7 +29406,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -28440,7 +29431,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -28493,7 +29484,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) i32.load offset=16 local.tee $0 i32.const 1 @@ -28529,7 +29520,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $2 i32.const 10 @@ -28548,7 +29539,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $4 local.get $2 i32.const 18 @@ -28609,7 +29600,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) ) (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $4) @@ -28624,19 +29615,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 5032 + i32.const 4984 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 7624 + i32.const 8608 i32.store local.get $1 local.get $0 @@ -28644,10 +29635,10 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 7512 + i32.const 8496 i32.load if $if_2 - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_2 local.get $1 @@ -28656,7 +29647,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 7624 + i32.const 8608 i32.store local.get $0 i32.const 0 @@ -28664,10 +29655,10 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7512 + i32.const 8496 i32.load if $if_3 - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_3 end ;; $if @@ -28690,12 +29681,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $4 i32.const 48 i32.add @@ -28752,7 +29743,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 8176 + i32.const 9176 i32.store local.get $5 local.get $6 @@ -28957,7 +29948,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 20008 + i32.const 29336 i32.store end ;; $if_5 local.get $0 @@ -28979,12 +29970,12 @@ local.get $5 i32.load local.tee $3 - i32.const 20008 + i32.const 29336 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -29005,9 +29996,9 @@ i32.load local.tee $2 else - i32.const 20008 + i32.const 29336 local.set $2 - i32.const 20008 + i32.const 29336 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -29024,9 +30015,9 @@ i32.load local.tee $3 else - i32.const 20008 + i32.const 29336 local.set $3 - i32.const 20008 + i32.const 29336 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -29041,7 +30032,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 12251 + i32.const 15908 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -29391,7 +30382,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $32 + global.set $36 local.get $1 return end ;; $if_18 @@ -29399,7 +30390,7 @@ i32.load call $_free local.get $4 - global.set $32 + global.set $36 local.get $1 ) @@ -29438,7 +30429,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 20008 + i32.const 29336 i32.eq local.get $1 i32.eqz @@ -29487,11 +30478,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $block local.get $0 i32.const 0 @@ -29518,12 +30509,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4984 + i32.const 4936 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -29549,12 +30540,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 96 i32.add - global.set $32 + global.set $36 local.get $2 i32.const 72 i32.add @@ -29615,7 +30606,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 8176 + i32.const 9176 i32.store local.get $7 local.get $4 @@ -29781,7 +30772,7 @@ local.get $6 select i32.const 0 - i32.const 12286 + i32.const 15943 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -29802,11 +30793,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -29909,7 +30900,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $32 + global.set $36 local.get $1 return end ;; $if_11 @@ -29917,7 +30908,7 @@ i32.load call $_free local.get $2 - global.set $32 + global.set $36 local.get $1 ) @@ -29941,12 +30932,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4904 + i32.const 4856 i64.const 32 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -29962,7 +30953,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 7704 + i32.const 8688 i32.store local.get $0 local.get $1 @@ -29976,13 +30967,13 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 7512 + i32.const 8496 i32.load i32.eqz if $if return end ;; $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -29996,12 +30987,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 block $block block $block_0 local.get $1 @@ -30025,12 +31016,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $32 + global.set $36 i32.const 0 return end ;; $if @@ -30053,14 +31044,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -30069,7 +31060,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -30088,7 +31079,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -30103,12 +31094,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -30117,7 +31108,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -30176,7 +31167,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $32 + global.set $36 i32.const 1 return end ;; $block_3 @@ -30186,7 +31177,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $32 + global.set $36 local.get $0 return end ;; $if_7 @@ -30194,10 +31185,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $32 + global.set $36 i32.const 0 return end ;; $if_2 @@ -30215,46 +31206,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -30263,7 +31267,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -30274,7 +31278,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $2 i32.const 0 @@ -30283,9 +31287,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 7536 + i32.const 8520 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -30293,22 +31297,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -30318,22 +31320,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 20008 + i32.load + local.tee $5 + i32.const 29336 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -30352,9 +31354,9 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -30366,7 +31368,7 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -30386,8 +31388,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -30396,12 +31399,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -30412,19 +31413,19 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $32 + global.set $36 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $32 + global.set $36 local.get $5 ) @@ -30435,12 +31436,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=8 local.set $4 @@ -30474,7 +31475,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $32 + global.set $36 local.get $2 i32.const 16 i32.add @@ -30487,7 +31488,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $32 + global.set $36 local.get $0 i32.const 16 i32.add @@ -30500,12 +31501,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $2 i32.const 32 i32.add @@ -30527,7 +31528,7 @@ i32.eqz if $if local.get $2 - global.set $32 + global.set $36 return end ;; $if local.get $2 @@ -30578,7 +31579,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $6) @@ -30592,9 +31593,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -30604,7 +31605,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $2 i32.const 0 @@ -30613,7 +31614,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 7536 + i32.const 8520 i32.store end ;; $if local.get $0 @@ -30624,17 +31625,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -30670,7 +31669,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -30680,28 +31679,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 20008 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 20008 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 29336 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 29336 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -30710,6 +31711,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -30719,20 +31732,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -30740,34 +31750,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 + local.get $3 i32.const 63 i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -30782,8 +31792,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -30792,28 +31803,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -30832,12 +31841,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4936 + i32.const 4888 i64.const 24 local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -30856,7 +31865,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $0 i32.const 0 @@ -30865,7 +31874,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 7536 + i32.const 8520 i32.store local.get $0 ) @@ -30881,12 +31890,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 block $block local.get $0 local.get $1 @@ -31180,17 +32189,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $1) @@ -31202,12 +32211,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -31216,7 +32225,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $4 i32.const 796 @@ -31228,7 +32237,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -31357,7 +32366,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 20008 + i32.const 29336 i32.store end ;; $if_4 local.get $2 @@ -31377,7 +32386,7 @@ local.get $0 i32.load local.tee $2 - i32.const 20008 + i32.const 29336 i32.eq if $if_6 local.get $0 @@ -31390,7 +32399,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $32 + global.set $36 return end ;; $block_3 local.get $1 @@ -31453,7 +32462,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 19880 + i32.const 29208 end ;; $if_8 br $block_7 end ;; $block_8 @@ -31507,7 +32516,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 19968 + i32.const 29296 end ;; $if_10 br $block_9 end ;; $block_10 @@ -31521,11 +32530,11 @@ br $block end ;; $block_0 local.get $4 - global.set $32 + global.set $36 return end ;; $block local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $1) @@ -31536,12 +32545,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -31550,7 +32559,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $3 i32.const 341 @@ -31562,7 +32571,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -31652,7 +32661,7 @@ i32.eqz if $if_2 local.get $3 - global.set $32 + global.set $36 return end ;; $if_2 local.get $0 @@ -31721,7 +32730,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $1) @@ -31731,12 +32740,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -31745,7 +32754,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $2 i32.const 1040 @@ -31757,7 +32766,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12325 + i32.const 15982 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -31778,7 +32787,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -31828,7 +32837,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $1) @@ -31840,12 +32849,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.eq @@ -31854,7 +32863,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $2 i32.const 1586 @@ -31866,7 +32875,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12359 + i32.const 16016 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -31878,7 +32887,7 @@ i32.eqz if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $1 @@ -31986,14 +32995,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $32 + global.set $36 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $1) @@ -32012,7 +33021,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 7624 + i32.const 8608 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -32075,12 +33084,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 80 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 48 i32.add @@ -32094,7 +33103,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 601 @@ -32106,7 +33115,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12856 + i32.const 16513 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -32168,7 +33177,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 607 @@ -32180,7 +33189,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12890 + i32.const 16547 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -32223,7 +33232,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $3 i32.const 612 @@ -32235,7 +33244,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12934 + i32.const 16591 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -32327,7 +33336,7 @@ i32.ne if $if_5 local.get $3 - global.set $32 + global.set $36 return end ;; $if_5 local.get $1 @@ -32337,7 +33346,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $32 + global.set $36 return end ;; $if_6 local.get $0 @@ -32365,7 +33374,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $5) @@ -33278,12 +34287,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $3 @@ -33304,7 +34313,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $1 i32.const 495 @@ -33316,7 +34325,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12970 + i32.const 16627 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -33327,13 +34336,13 @@ i32.eqz if $if_1 local.get $1 - global.set $32 + global.set $36 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $3) @@ -33346,12 +34355,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 16 i32.add @@ -33382,7 +34391,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $32 + global.set $36 return end ;; $if block $block @@ -33504,12 +34513,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5728 + i32.const 6768 i64.const 24 local.get $3 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -33549,7 +34558,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $6) @@ -33569,7 +34578,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 7624 + i32.const 8608 i32.store offset=16 local.get $0 i32.const 0 @@ -33577,10 +34586,10 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 7512 + i32.const 8496 i32.load if $if_0 - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_0 local.get $0 @@ -33595,12 +34604,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5728 + i32.const 6768 i64.const 40 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -33626,7 +34635,7 @@ i32.load local.set $0 local.get $2 - i32.const 7624 + i32.const 8608 i32.store offset=16 local.get $2 local.get $0 @@ -33634,10 +34643,10 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 7512 + i32.const 8496 i32.load if $if_4 - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if_4 local.get $2 @@ -33661,12 +34670,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 7 i32.le_u @@ -33675,7 +34684,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 765 @@ -33687,7 +34696,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13440 + i32.const 17097 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -33827,13 +34836,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $32 + global.set $36 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $2) @@ -33846,12 +34855,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 112 i32.add - global.set $32 + global.set $36 local.get $5 i32.const 48 i32.add @@ -33876,7 +34885,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $4 i32.const 672 @@ -33888,7 +34897,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 13014 + i32.const 16671 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -33914,7 +34923,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $4 i32.const 678 @@ -33926,7 +34935,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 13115 + i32.const 16772 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -33960,7 +34969,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $32 + global.set $36 return end ;; $if_3 i32.const 0 @@ -34000,7 +35009,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $32 + global.set $36 return end ;; $if_5 else @@ -34008,7 +35017,7 @@ i32.const 3 i32.store local.get $6 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $6 i32.const 878 @@ -34020,7 +35029,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 13171 + i32.const 16828 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -34052,7 +35061,7 @@ i32.const 3 i32.store local.get $5 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $5 i32.const 685 @@ -34064,7 +35073,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13211 + i32.const 16868 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -34100,7 +35109,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $1) @@ -34116,12 +35125,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 96 i32.add - global.set $32 + global.set $36 local.get $5 i32.const 72 i32.add @@ -34181,7 +35190,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 837 @@ -34193,7 +35202,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13333 + i32.const 16990 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -34209,12 +35218,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5728 + i32.const 6768 i64.const 16 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -34457,7 +35466,7 @@ local.get $6 i32.store local.get $5 - global.set $32 + global.set $36 return end ;; $if_11 local.get $11 @@ -34465,7 +35474,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 848 @@ -34477,7 +35486,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13398 + i32.const 17055 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -34499,7 +35508,7 @@ local.get $6 i32.store local.get $5 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $2) @@ -34510,12 +35519,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $1 i32.load offset=16 local.tee $6 @@ -34539,7 +35548,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $4 i32.const 713 @@ -34551,7 +35560,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 13286 + i32.const 16943 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -34597,7 +35606,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $32 + global.set $36 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $2) @@ -34607,12 +35616,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $1 local.get $4 local.get $2 @@ -34628,7 +35637,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $32 + global.set $36 return end ;; $if local.get $1 @@ -34641,12 +35650,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5728 + i32.const 6768 i64.const 24 local.get $2 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -34706,7 +35715,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $32 + global.set $36 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $5) @@ -35296,12 +36305,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $4 local.get $1 i32.load @@ -35327,7 +36336,7 @@ i32.load if $if local.get $4 - global.set $32 + global.set $36 return end ;; $if local.get $0 @@ -35340,12 +36349,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5728 + i32.const 6768 i64.const 24 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -35397,10 +36406,10 @@ i32.add i32.store offset=12 local.get $4 - global.set $32 + global.set $36 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $17) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -35818,12 +36827,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $3 i32.const 24 i32.add @@ -35836,7 +36845,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $2 i32.const 926 @@ -35848,7 +36857,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13493 + i32.const 17150 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -35864,7 +36873,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $3 i32.const 927 @@ -35876,7 +36885,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13528 + i32.const 17185 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -35899,7 +36908,7 @@ call $_memset drop local.get $3 - global.set $32 + global.set $36 local.get $0 return end ;; $if_1 @@ -35915,13 +36924,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5728 + i32.const 6768 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -35933,7 +36942,7 @@ call $_memset drop local.get $3 - global.set $32 + global.set $36 local.get $0 ) @@ -35947,12 +36956,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $2 i32.const 2 i32.shl @@ -36080,13 +37089,13 @@ local.get $0 if $if_4 local.get $4 - global.set $32 + global.set $36 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $1) @@ -36094,7 +37103,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 7872 + i32.const 8856 i32.store local.get $0 local.get $1 @@ -36119,13 +37128,13 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 7512 + i32.const 8496 i32.load i32.eqz if $if return end ;; $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) @@ -36176,17 +37185,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 5000 + i32.const 4952 i64.const 24 local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 114 + i32.const 175 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -36256,12 +37265,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 28 i32.add @@ -36283,7 +37292,7 @@ i32.eqz if $if local.get $1 - global.set $32 + global.set $36 return end ;; $if loop $loop @@ -36340,7 +37349,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -36355,12 +37364,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 i32.eqz @@ -36372,7 +37381,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $32 + global.set $36 return end ;; $if loop $loop @@ -36458,7 +37467,7 @@ i32.const 3 i32.store local.get $5 - i32.const 11975 + i32.const 15632 i32.store offset=4 local.get $5 i32.const 527 @@ -36470,7 +37479,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13565 + i32.const 17222 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -36677,7 +37686,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -36705,14 +37714,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 - i32.const 7872 + i32.const 8856 i32.store local.get $0 i32.load offset=4 @@ -36734,7 +37743,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11790 + i32.const 15445 i32.store offset=4 local.get $1 i32.const 150 @@ -36746,7 +37755,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12970 + i32.const 16627 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -36789,14 +37798,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $36 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -36828,19 +37837,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 13923 + i32.const 17580 i64.load align=1 i64.store align=1 local.get $1 - i32.const 13931 + i32.const 17588 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 13939 + i32.const 17596 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 13943 + i32.const 17600 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -36910,18 +37919,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 - i32.const 4984 + i32.const 5032 + i32.const 4936 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -36938,12 +37947,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 + global.get $36 local.set $6 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $6 i32.const 12 i32.add @@ -37008,12 +38017,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4920 + i32.const 4872 i64.const 32 local.get $4 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -37030,13 +38039,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 7784 + i32.const 8768 i32.store local.get $2 local.get $7 @@ -37055,11 +38064,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -37073,7 +38082,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) select local.set $3 local.get $5 @@ -37100,7 +38109,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 12286 + i32.const 15943 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -37117,11 +38126,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) br $block end ;; $if_0 i32.const -1 @@ -37217,12 +38226,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4920 + i32.const 4872 i64.const 32 local.get $5 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -37239,13 +38248,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 20008 + i32.const 29336 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 7784 + i32.const 8768 i32.store local.get $2 local.get $4 @@ -37264,11 +38273,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -37282,7 +38291,7 @@ i32.load offset=20 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) select local.set $3 local.get $10 @@ -37308,7 +38317,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 12286 + i32.const 15943 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -37325,11 +38334,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -37341,7 +38350,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -37360,7 +38369,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -37385,7 +38394,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $32 + global.set $36 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $3) @@ -39149,7 +40158,7 @@ i32.const 2 ) - (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $18) + (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -39418,7 +40427,7 @@ i32.add ) - (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $17) + (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -40401,13 +41410,13 @@ i32.add local.tee $2 i32.load - i32.const 20008 + i32.const 29336 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 20008 + i32.const 29336 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -40418,12 +41427,12 @@ local.get $3 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 20008 + i32.const 29336 i32.eq if $if_2 local.get $2 @@ -40471,7 +41480,7 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $1 local.get $0 i32.load offset=8 @@ -40491,7 +41500,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 19864 + i32.const 29192 i32.load local.get $0 select @@ -40505,12 +41514,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $3 @@ -40521,7 +41530,7 @@ i32.const 3 i32.store local.get $1 - i32.const 11850 + i32.const 15507 i32.store offset=4 local.get $1 i32.const 1567 @@ -40533,20 +41542,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 14230 + i32.const 17887 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $36 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -40612,7 +41621,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -40620,7 +41629,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7624 + i32.const 8608 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -40672,7 +41681,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 7624 + i32.const 8608 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -40737,19 +41746,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 14312 + i32.const 17969 i64.load align=1 i64.store align=1 local.get $1 - i32.const 14320 + i32.const 17977 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 14328 + i32.const 17985 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 14332 + i32.const 17989 i32.load8_s i32.store8 offset=20 local.get $1 @@ -40817,18 +41826,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 5080 i32.const 5032 + i32.const 4984 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 13823 - i32.const 13864 + i32.const 17480 + i32.const 17521 i32.const 92 - i32.const 13913 + i32.const 17570 call $___assert_fail end ;; $if ) @@ -40891,7 +41900,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 12251 + i32.const 15908 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop i32.const 3 @@ -40903,7 +41912,7 @@ local.get $0 i32.load offset=8 else - i32.const 20008 + i32.const 29336 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -40953,7 +41962,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $2 i32.const 1 i32.and @@ -40972,7 +41981,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 20008 + i32.const 29336 local.get $0 i32.const 1 i32.and @@ -41001,7 +42010,7 @@ (func $__ZN6google8protobuf5ValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 7624 + i32.const 8608 i32.store local.get $0 i32.const 0 @@ -41009,10 +42018,10 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 7512 + i32.const 8496 i32.load if $if - i32.const 7512 + i32.const 8496 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if local.get $0 @@ -41027,12 +42036,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -41053,11 +42062,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $3 i32.load local.set $0 @@ -41068,7 +42077,7 @@ i32.eqz if $if local.get $3 - global.set $32 + global.set $36 return end ;; $if local.get $0 @@ -41077,7 +42086,7 @@ local.get $0 call $_free local.get $3 - global.set $32 + global.set $36 ) (func $_proxy_onCreate (type $1) @@ -41092,221 +42101,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 - local.set $5 - global.get $32 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $36 + local.set $6 + global.get $36 i32.const 32 i32.add - global.set $32 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $36 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 29372 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 29368 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 29384 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 29380 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 29372 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 29368 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 29376 + i32.load + i32.store + i32.const 29376 + local.get $4 + i32.store + local.get $11 + i32.const 29376 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 29368 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 29380 + i32.const 29380 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 20084 + i32.const 29412 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -41314,103 +42585,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 8512 - i32.store - local.get $1 - i32.const 5560 - i32.const 85 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + local.get $1 + i32.load offset=28 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) - local.get $5 + call_indirect $32 (type $2) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 + call_indirect $32 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_10 + call_indirect $32 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -41448,71 +42704,71 @@ local.get $0 i32.store local.get $1 - i32.const 8040 + i32.const 9024 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 255 + i32.and + i32.const 248 + i32.add + call_indirect $32 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 - global.set $32 + call_indirect $32 (type $0) + local.get $6 + global.set $36 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -41522,20 +42778,20 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - local.get $5 - global.set $32 + call_indirect $32 (type $0) + local.get $6 + global.set $36 ) (func $_proxy_onDelete (type $0) @@ -41543,12 +42799,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 call $__Z10getContextj local.tee $2 @@ -41557,18 +42813,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $32 + global.set $36 ) (func $_proxy_onDone (type $0) @@ -41582,11 +42838,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -41598,12 +42854,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -41626,11 +42882,11 @@ local.get $2 local.get $5 local.get $7 - i32.const 7 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) + call_indirect $32 (type $2) local.get $5 i32.load local.set $0 @@ -41641,7 +42897,7 @@ i32.eqz if $if local.get $5 - global.set $32 + global.set $36 return end ;; $if local.get $0 @@ -41650,7 +42906,7 @@ local.get $0 call $_free local.get $5 - global.set $32 + global.set $36 ) (func $_proxy_onGrpcCreateInitialMetadata (type $1) @@ -41666,11 +42922,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $_proxy_onGrpcReceive (type $2) @@ -41681,12 +42937,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -41710,9 +42966,9 @@ local.get $6 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) + call_indirect $32 (type $3) local.get $4 i32.load local.set $0 @@ -41723,7 +42979,7 @@ i32.eqz if $if local.get $4 - global.set $32 + global.set $36 return end ;; $if local.get $0 @@ -41732,7 +42988,7 @@ local.get $0 call $_free local.get $4 - global.set $32 + global.set $36 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $1) @@ -41748,11 +43004,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $1) @@ -41768,14 +43024,14 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) - (func $_proxy_onHttpCallResponse (type $19) + (func $_proxy_onHttpCallResponse (type $20) (param $0 i32) (param $1 i32) (param $2 i32) @@ -41789,12 +43045,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $32 + global.get $36 local.set $8 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $8 i32.const 8 i32.add @@ -41850,9 +43106,9 @@ local.get $12 i32.const 7 i32.and - i32.const 516 + i32.const 780 i32.add - call_indirect $28 (type $7) + call_indirect $32 (type $7) local.get $8 i32.load local.set $0 @@ -41891,7 +43147,7 @@ i32.eqz if $if_1 local.get $8 - global.set $32 + global.set $36 return end ;; $if_1 local.get $0 @@ -41900,7 +43156,7 @@ local.get $0 call $_free local.get $8 - global.set $32 + global.set $36 ) (func $_proxy_onLog (type $0) @@ -41916,11 +43172,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $_proxy_onQueueReady (type $1) @@ -41936,11 +43192,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $_proxy_onRequestBody (type $5) @@ -41965,7 +43221,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) ) (func $_proxy_onRequestHeaders (type $4) @@ -41982,7 +43238,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onRequestMetadata (type $4) @@ -41999,7 +43255,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onRequestTrailers (type $4) @@ -42016,7 +43272,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onResponseBody (type $5) @@ -42041,7 +43297,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) ) (func $_proxy_onResponseHeaders (type $4) @@ -42058,7 +43314,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onResponseMetadata (type $4) @@ -42075,7 +43331,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onResponseTrailers (type $4) @@ -42092,7 +43348,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $_proxy_onStart (type $7) @@ -42111,29 +43367,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $32 - local.set $7 - global.get $32 + global.get $36 + local.set $6 + global.get $36 i32.const 32 i32.add - global.set $32 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $36 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -42143,27 +43394,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 20044 + i32.const 29372 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 20040 + i32.const 29368 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -42182,7 +43433,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -42196,7 +43447,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -42204,16 +43455,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -42234,7 +43485,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -42243,22 +43494,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -42283,11 +43534,11 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $0 br $block end ;; $block_0 - i32.const 20080 + i32.const 29408 i32.load i32.eqz if $if_7 @@ -42326,7 +43577,7 @@ local.get $0 i32.store local.get $5 - i32.const 6064 + i32.const 7032 i32.store local.get $5 i32.const 68 @@ -42361,12 +43612,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -42378,7 +43629,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -42424,10 +43675,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -42441,20 +43692,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -42469,19 +43720,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -42491,12 +43742,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -42505,7 +43756,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -42515,53 +43766,36 @@ i32.add i32.const 0 i32.store8 - i32.const 20080 + i32.const 29408 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 8512 - i32.store - local.get $2 - i32.const 5560 - i32.const 85 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=28 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) - local.get $11 + call_indirect $32 (type $2) + local.get $10 i32.load local.tee $1 i32.load @@ -42571,22 +43805,22 @@ local.get $2 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -42596,40 +43830,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $32 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_17 + call_indirect $32 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -42668,7 +43902,7 @@ local.get $0 i32.store local.get $2 - i32.const 6064 + i32.const 7032 i32.store local.get $2 i32.const 68 @@ -42682,15 +43916,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -42703,12 +43937,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -42716,11 +43950,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -42766,10 +44000,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -42778,29 +44012,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - end ;; $if_20 + call_indirect $32 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -42814,35 +44048,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) - local.get $12 + call_indirect $32 (type $1) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $32 + local.get $6 + global.set $36 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -42853,8 +44087,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $32 + local.get $6 + global.set $36 ) (func $_proxy_onTick (type $0) @@ -42868,11 +44102,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $__ZL14getRootContextj (type $4) @@ -42883,7 +44117,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 20044 + i32.const 29372 i32.load local.tee $1 i32.eqz @@ -42891,7 +44125,7 @@ i32.const 0 return end ;; $if - i32.const 20040 + i32.const 29368 i32.load local.get $1 local.get $1 @@ -43026,7 +44260,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) i32.eqz if $if_11 i32.const 0 @@ -43042,7 +44276,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $4) @@ -43059,7 +44293,7 @@ local.get $0 i32.load local.set $4 - i32.const 20044 + i32.const 29372 i32.load local.tee $2 i32.eqz @@ -43068,7 +44302,7 @@ i32.const 0 local.set $0 else - i32.const 20040 + i32.const 29368 i32.load local.get $2 local.get $2 @@ -43207,13 +44441,13 @@ i32.const 0 i32.store local.get $6 - i32.const 20056 + i32.const 29384 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 20052 + i32.const 29380 i32.load i32.const 1 i32.add @@ -43273,7 +44507,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 20044 + i32.const 29372 i32.load local.tee $1 i32.const -1 @@ -43310,7 +44544,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 20040 + i32.const 29368 i32.load local.get $0 i32.const 2 @@ -43327,14 +44561,14 @@ br $block_4 else local.get $3 - i32.const 20048 + i32.const 29376 i32.load i32.store - i32.const 20048 + i32.const 29376 local.get $3 i32.store local.get $2 - i32.const 20048 + i32.const 29376 i32.store local.get $3 i32.load @@ -43343,7 +44577,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 20040 + i32.const 29368 i32.load local.get $1 local.get $1 @@ -43385,8 +44619,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 20052 - i32.const 20052 + i32.const 29380 + i32.const 29380 i32.load i32.const 1 i32.add @@ -43962,7 +45196,7 @@ i32.xor local.set $6 block $block_3 - i32.const 20064 + i32.const 29392 i32.load local.tee $2 i32.eqz @@ -43971,7 +45205,7 @@ i32.const 0 local.set $5 else - i32.const 20060 + i32.const 29388 i32.load local.get $2 local.get $2 @@ -44319,13 +45553,13 @@ i32.const 0 i32.store local.get $12 - i32.const 20076 + i32.const 29404 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 20072 + i32.const 29400 i32.load i32.const 1 i32.add @@ -44385,7 +45619,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 20064 + i32.const 29392 i32.load local.tee $0 i32.const -1 @@ -44422,7 +45656,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 20060 + i32.const 29388 i32.load local.get $5 i32.const 2 @@ -44441,14 +45675,14 @@ br $block_13 else local.get $4 - i32.const 20068 + i32.const 29396 i32.load i32.store - i32.const 20068 + i32.const 29396 local.get $4 i32.store local.get $2 - i32.const 20068 + i32.const 29396 i32.store local.get $4 i32.load @@ -44457,7 +45691,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 20060 + i32.const 29388 i32.load local.get $0 local.get $0 @@ -44499,8 +45733,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 20072 - i32.const 20072 + i32.const 29400 + i32.const 29400 i32.load i32.const 1 i32.add @@ -44540,7 +45774,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 20064 + i32.const 29392 i32.load local.tee $0 i32.gt_u @@ -44566,10 +45800,10 @@ i32.gt_u i32.and local.set $3 - i32.const 20072 + i32.const 29400 i32.load f32.convert_i32_u - i32.const 20076 + i32.const 29404 f32.load f32.div f32.ceil @@ -44651,10 +45885,10 @@ local.get $0 i32.eqz if $if - i32.const 20060 + i32.const 29388 i32.load local.set $0 - i32.const 20060 + i32.const 29388 i32.const 0 i32.store local.get $0 @@ -44662,7 +45896,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 20064 + i32.const 29392 i32.const 0 i32.store return @@ -44676,11 +45910,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 8636 + i32.const 12624 i32.store local.get $1 - i32.const 5656 - i32.const 92 + i32.const 6688 + i32.const 153 call $___cxa_throw end ;; $if_1 local.get $0 @@ -44688,10 +45922,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 20060 + i32.const 29388 i32.load local.set $1 - i32.const 20060 + i32.const 29388 local.get $2 i32.store local.get $1 @@ -44699,13 +45933,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 20064 + i32.const 29392 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 20060 + i32.const 29388 i32.load local.get $1 i32.const 2 @@ -44721,7 +45955,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 20068 + i32.const 29396 i32.load local.tee $6 i32.eqz @@ -44731,7 +45965,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 20060 + i32.const 29388 i32.load local.get $0 local.get $0 @@ -44766,7 +46000,7 @@ i32.const 2 i32.shl i32.add - i32.const 20068 + i32.const 29396 i32.store local.get $6 i32.load @@ -44808,7 +46042,7 @@ local.get $4 else block $block (result i32) - i32.const 20060 + i32.const 29388 i32.load local.get $8 i32.const 2 @@ -45036,7 +46270,7 @@ i32.load i32.store local.get $1 - i32.const 20060 + i32.const 29388 i32.load local.get $8 i32.const 2 @@ -45045,7 +46279,7 @@ i32.load i32.load i32.store - i32.const 20060 + i32.const 29388 i32.load local.get $8 i32.const 2 @@ -45093,7 +46327,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 20044 + i32.const 29372 i32.load local.tee $0 i32.gt_u @@ -45119,10 +46353,10 @@ i32.gt_u i32.and local.set $3 - i32.const 20052 + i32.const 29380 i32.load f32.convert_i32_u - i32.const 20056 + i32.const 29384 f32.load f32.div f32.ceil @@ -45198,10 +46432,10 @@ local.get $0 i32.eqz if $if - i32.const 20040 + i32.const 29368 i32.load local.set $0 - i32.const 20040 + i32.const 29368 i32.const 0 i32.store local.get $0 @@ -45209,7 +46443,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 20044 + i32.const 29372 i32.const 0 i32.store return @@ -45223,11 +46457,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 8636 + i32.const 12624 i32.store local.get $1 - i32.const 5656 - i32.const 92 + i32.const 6688 + i32.const 153 call $___cxa_throw end ;; $if_1 local.get $0 @@ -45235,10 +46469,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 20040 + i32.const 29368 i32.load local.set $1 - i32.const 20040 + i32.const 29368 local.get $2 i32.store local.get $1 @@ -45246,13 +46480,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 20044 + i32.const 29372 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 20040 + i32.const 29368 i32.load local.get $1 i32.const 2 @@ -45268,7 +46502,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 20048 + i32.const 29376 i32.load local.tee $4 i32.eqz @@ -45278,7 +46512,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 20040 + i32.const 29368 i32.load local.get $0 local.get $0 @@ -45313,7 +46547,7 @@ i32.const 2 i32.shl i32.add - i32.const 20048 + i32.const 29376 i32.store local.get $4 i32.load @@ -45340,7 +46574,7 @@ local.get $0 else block $block (result i32) - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45399,7 +46633,7 @@ i32.load i32.store local.get $1 - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45408,7 +46642,7 @@ i32.load i32.load i32.store - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45455,7 +46689,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45514,7 +46748,7 @@ i32.load i32.store local.get $2 - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45523,7 +46757,7 @@ i32.load i32.load i32.store - i32.const 20040 + i32.const 29368 i32.load local.get $3 i32.const 2 @@ -45550,7 +46784,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 20044 + i32.const 29372 i32.load local.tee $1 i32.eqz @@ -45558,7 +46792,7 @@ i32.const 0 return end ;; $if - i32.const 20040 + i32.const 29368 i32.load local.get $1 local.get $1 @@ -45693,7 +46927,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) i32.eqz if $if_11 i32.const 0 @@ -45709,7 +46943,7 @@ local.get $1 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -45725,14 +46959,14 @@ local.get $0 i32.load local.set $3 - i32.const 20044 + i32.const 29372 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 20040 + i32.const 29368 i32.load local.tee $4 local.get $2 @@ -45900,7 +47134,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 20048 + i32.const 29376 i32.eq br_if $block_2 local.get $3 @@ -46010,7 +47244,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 20040 + i32.const 29368 i32.load local.get $2 i32.const 2 @@ -46030,8 +47264,8 @@ local.get $8 i32.const 0 i32.store - i32.const 20052 - i32.const 20052 + i32.const 29380 + i32.const 29380 i32.load i32.const -1 i32.add @@ -46053,349 +47287,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 20044 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 20040 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 20056 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 20052 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 20044 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 20040 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 20048 - i32.load - i32.store - i32.const 20048 - local.get $1 - i32.store - i32.const 20040 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 20048 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 20040 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 20052 - i32.const 20052 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $3) (param $0 i32) (param $1 i32) @@ -46407,15 +47308,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $32 - local.set $4 - global.get $32 - i32.const 48 + global.get $36 + local.set $8 + global.get $36 + i32.const 16 i32.add - global.set $32 - i32.const 20080 + global.set $36 + i32.const 29408 i32.load i32.eqz if $if @@ -46430,7 +47329,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 20080 + i32.const 29408 local.get $3 i32.store i32.const 20 @@ -46444,27 +47343,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 20084 + i32.const 29412 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 20084 + i32.const 29412 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -46472,25 +47363,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -46500,7 +47393,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -46515,7 +47408,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -46523,127 +47416,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 127 - i32.and - call_indirect $28 (type $4) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 127 + i32.and + call_indirect $32 (type $4) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 127 + local.get $5 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $32 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $32 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $36 return - end ;; $if_9 - i32.const 20080 + end ;; $if_7 + i32.const 29408 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -46651,31 +47510,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -46683,12 +47544,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -46696,12 +47557,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -46713,97 +47574,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 + local.get $1 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 local.set $5 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 127 - i32.and - call_indirect $28 (type $4) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 127 + i32.and + call_indirect $32 (type $4) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $32 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $32 + end ;; $if_13 + local.get $8 + global.set $36 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) @@ -47289,7 +48124,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -47306,8 +48141,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 9096 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -47505,345 +48343,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $32 - local.set $4 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $32 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $32 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 127 - i32.and - i32.const 376 - i32.add - call_indirect $28 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 127 - i32.and - i32.const 248 - i32.add - call_indirect $28 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $32 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $32 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -47856,794 +48368,838 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 8636 - i32.store - local.get $2 - i32.const 5656 - i32.const 92 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $11 - select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 local.get $2 - i32.load8_s offset=19 - local.tee $4 i32.const 255 i32.and - local.get $4 - i32.const 0 - i32.lt_s + local.tee $11 + local.get $9 select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 + local.get $3 i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else - local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 9096 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 8120 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 8120 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free + end ;; $block_3 + local.get $3 + i32.const 20 + i32.add ) - (func $__ZNK6google8protobuf14FatalException4whatEv (type $4) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $2) (param $0 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if + i32.const 9512 + i32.store + local.get $0 + i32.const 5512 + i32.const 77 + call $___cxa_throw ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 - local.set $1 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 17 - i32.store - i32.const 20088 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 20092 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 8120 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 5048 - i32.const 80 - call $___cxa_throw - else local.get $1 - global.set $32 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm + return end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 + local.get $1 + local.get $3 + i32.ge_u + if $if_2 + return + end ;; $if_2 + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.eqz + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 20092 + i32.load offset=12 + f32.convert_i32_u local.get $0 - i32.store - i32.const 116 - i32.const 18 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 31 - i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $4 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $32 - return - end ;; $if - i32.const 8252 - i32.load - local.set $5 - local.get $3 - i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 - i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 local.get $5 - call $_fflush - drop - local.get $4 - global.set $32 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 20092 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 20092 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 31 - i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 16 - i32.add - global.set $32 - i32.const 20000 - i32.load8_s - i32.eqz - if $if - i32.const 20000 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 20000 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 20096 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 20096 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $32 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) (param $0 i32) (param $1 i32) (local $2 i32) @@ -48654,367 +49210,1176 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 12624 + i32.store + local.get $2 + i32.const 6688 + i32.const 153 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 8636 - i32.store - local.get $3 - i32.const 5656 - i32.const 92 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 + i32.const -1 i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 17729 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 15233 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 144 - i32.add - global.set $32 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 + ) + + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.const 9120 i32.store - local.get $2 - i32.const 128 - i32.const 15236 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $32 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if local.get $0 + i32.load offset=12 + call $_free ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) (param $0 i32) local.get $0 + i32.const 9120 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s if $if + local.get $0 + call $_free return end ;; $if local.get $0 i32.load offset=12 call $_free + local.get $0 + call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) + (func $__ZNK6google8protobuf14FatalException4whatEv (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if + ) + + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (param $0 i32) (local $1 i32) - global.get $32 - local.set $0 - global.get $32 + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 i32.const 16 i32.add - global.set $32 - i32.const 20100 - i64.const 0 - i64.store align=4 - i32.const 20108 - i64.const 0 - i64.store align=4 + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $2 local.get $0 - i32.const 20849 - i32.store + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 17 + i32.store + i32.const 29416 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 29420 + i32.load + drop + local.get $0 + i32.load + end ;; $if local.get $0 - i32.const 0 - i32.store offset=4 + i32.load offset=4 local.get $0 - i32.const 8 + i32.load offset=8 + local.get $0 + i32.const 12 i32.add - local.tee $1 + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $0 - i64.load align=4 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 9120 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $4 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 5000 + i32.const 72 + call $___cxa_throw + else + local.get $1 + global.set $36 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 i64.store align=4 - i32.const 20116 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 20849 - i32.store + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 local.get $0 i32.const 0 - i32.store offset=4 - local.get $1 + i32.store offset=24 + i32.const 29420 local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 20132 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.store + i32.const 177 + i32.const 18 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) + local.get $0 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - global.set $32 + i32.const 31 + i32.and + i32.const 216 + i32.add + call_indirect $32 (type $8) ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $3) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $36 + local.set $4 + global.get $36 i32.const 16 i32.add - global.set $32 - local.get $0 - local.get $1 - i32.store + global.set $36 local.get $0 - i32.const 4 - i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 i32.const 0 - i32.store offset=8 - local.get $1 - i32.eqz + i32.lt_s if $if - local.get $5 - global.set $32 + local.get $4 + global.set $36 return end ;; $if - local.get $5 - local.set $1 + i32.const 9256 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 + local.get $4 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $36 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 29420 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 29420 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) + local.get $0 + i32.const 31 + i32.and + i32.const 216 + i32.add + call_indirect $32 (type $8) + ) + + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + i32.const 29328 + i32.load8_s + i32.eqz + if $if + i32.const 29328 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 29424 + local.get $2 + i32.store + i32.const 29328 + i32.const 0 + i32.store + i32.const 29328 + i32.const 29328 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 29424 + i32.load + local.set $2 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 + local.get $0 + local.get $3 + i64.load + i64.store align=4 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 8 + i32.add + i32.store offset=4 + else + local.get $2 + local.get $3 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $36 + ) + + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + local.get $0 + i32.load offset=8 + local.get $4 + i32.sub + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 + i32.lt_u + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 + local.get $2 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 12624 + i32.store + local.get $3 + i32.const 6688 + i32.const 153 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 144 + i32.add + global.set $36 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 21384 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 144 + i32.add + global.set $36 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 18890 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 144 + i32.add + global.set $36 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 18893 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $36 + local.set $0 + global.get $36 + i32.const 16 + i32.add + global.set $36 + i32.const 29428 + i64.const 0 + i64.store align=4 + i32.const 29436 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 30182 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 29444 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 30182 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 29460 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $36 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $36 + return + end ;; $if + local.get $5 + local.set $1 block $block block $block_0 local.get $2 @@ -49142,7 +50507,7 @@ i32.load offset=8 i32.store offset=8 local.get $5 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $5) @@ -49153,12 +50518,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 if $if (result i32) local.get $0 @@ -49186,7 +50551,7 @@ i32.const 3 i32.store local.get $3 - i32.const 15240 + i32.const 18897 i32.store offset=4 local.get $3 i32.const 116 @@ -49198,7 +50563,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 15265 + i32.const 18922 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -49218,7 +50583,7 @@ i32.load offset=40 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $2 local.get $1 i32.store @@ -49235,7 +50600,7 @@ i32.add i32.store offset=8 local.get $3 - global.set $32 + global.set $36 local.get $2 ) @@ -49426,13 +50791,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 5072 + i32.const 5024 i32.load local.set $2 else @@ -49443,7 +50808,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq br_if $block end ;; $if_0 @@ -49480,13 +50845,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 5072 + i32.const 5024 i32.load local.set $2 else @@ -49497,7 +50862,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq br_if $block end ;; $if_0 @@ -49545,7 +50910,7 @@ loop $loop local.get $3 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.ne if $if local.get $3 @@ -49570,7 +50935,7 @@ i32.load offset=40 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $1 i32.const 0 i32.store @@ -49596,7 +50961,7 @@ local.get $0 i32.store local.get $1 - i32.const 5064 + i32.const 5016 i32.store offset=20 local.get $1 local.get $1 @@ -49665,10 +51030,10 @@ end ;; $loop_0 end ;; $if_1 end ;; $block - i32.const 5072 + i32.const 5024 local.get $3 i32.store - i32.const 5064 + i32.const 5016 local.get $0 i64.load offset=16 i64.store @@ -49684,13 +51049,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 5072 + i32.const 5024 i32.load local.set $0 else @@ -49701,7 +51066,7 @@ if $if_0 local.get $3 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq if $if_1 local.get $3 @@ -49769,13 +51134,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if (result i32) - i32.const 5072 + i32.const 5024 i32.load else block $block (result i32) @@ -49786,7 +51151,7 @@ local.get $3 local.get $3 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq br_if $block drop @@ -49846,13 +51211,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 5072 + i32.const 5024 i32.load local.set $2 else @@ -49863,7 +51228,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq br_if $block end ;; $if_0 @@ -49882,14 +51247,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 97 + i32.const 158 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 97 + i32.const 158 i32.store offset=4 local.get $2 local.get $0 @@ -49903,13 +51268,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 5064 + i32.const 5016 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 5072 + i32.const 5024 i32.load local.set $2 else @@ -49920,7 +51285,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 5064 + i32.const 5016 i32.eq br_if $block end ;; $if_0 @@ -49938,14 +51303,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 97 + i32.const 158 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 97 + i32.const 158 i32.store offset=4 local.get $2 local.get $0 @@ -49955,7 +51320,7 @@ end ;; $if_1 ) - (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $17) + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49977,12 +51342,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $32 + global.get $36 local.set $6 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $6 local.get $4 i32.store @@ -50000,7 +51365,7 @@ i32.load local.set $0 local.get $6 - global.set $32 + global.set $36 local.get $0 return end ;; $if @@ -54564,7 +55929,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) end ;; $if_190 local.tee $4 i32.store @@ -54710,7 +56075,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) end ;; $if_196 local.tee $4 i32.store @@ -54875,7 +56240,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) end ;; $if_202 local.tee $4 i32.store @@ -55045,7 +56410,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) end ;; $if_208 local.tee $4 i32.store @@ -55246,7 +56611,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $6 i32.load @@ -55307,7 +56672,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.store end ;; $if_214 br $block @@ -55447,7 +56812,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $6 i32.load @@ -55508,7 +56873,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.store end ;; $if_222 br $block @@ -55667,7 +57032,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $6 i32.load @@ -55727,7 +57092,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) end ;; $if_230 i32.store local.get $9 @@ -55890,7 +57255,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $3 local.get $6 i32.load @@ -55951,7 +57316,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.store end ;; $if_238 br $block @@ -59978,7 +61343,7 @@ i32.load local.set $4 local.get $11 - i32.const 8140 + i32.const 9140 i32.store local.get $11 local.get $4 @@ -60025,9 +61390,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 516 + i32.const 780 i32.add - call_indirect $28 (type $7) + call_indirect $32 (type $7) local.get $6 local.get $6 i32.load @@ -60046,7 +61411,7 @@ i32.const 3 i32.store local.get $11 - i32.const 15352 + i32.const 19009 i32.store offset=4 local.get $11 i32.const 571 @@ -60058,7 +61423,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 15394 + i32.const 19051 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -60078,24 +61443,24 @@ i32.load local.set $0 local.get $6 - global.set $32 + global.set $36 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 15352 + i32.const 19009 i32.store offset=4 local.get $1 i32.const 534 @@ -60107,12 +61472,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 15394 + i32.const 19051 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 15424 + i32.const 19081 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -60121,35 +61486,43 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 - i32.const 20032 + global.set $36 + i32.const 29360 i32.load8_s i32.eqz if $if - i32.const 20032 + i32.const 29360 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 20032 + i32.const 29360 + i32.const 0 + i32.store + i32.const 29360 + i32.const 29360 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 20176 + i32.const 29504 i32.load - i32.const 8260 + i32.const 9260 call $_pthread_equal if $if_1 local.get $0 @@ -60158,14 +61531,14 @@ i32.eq if $if_2 local.get $1 - global.set $32 + global.set $36 return end ;; $if_2 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 15352 + i32.const 19009 i32.store offset=4 local.get $1 i32.const 801 @@ -60177,53 +61550,56 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 15436 + i32.const 19093 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $36 return end ;; $if_1 - i32.const 20024 + i32.const 29352 i32.load8_s i32.eqz if $if_3 - i32.const 20024 + i32.const 29352 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 20024 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 20008 + i32.xor + if $if_4 + i32.const 29336 i64.const 0 i64.store - i32.const 20016 + i32.const 29344 i32.const 0 i32.store - i32.const 117 - i32.const 20008 + i32.const 178 + i32.const 29336 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 29352 + i32.const 0 + i32.store + i32.const 29352 + i32.const 29352 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 20176 - i32.const 8260 + i32.const 29504 + i32.const 9260 i32.store local.get $0 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 20176 + i32.const 29504 i32.const 0 i32.store local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -60284,7 +61660,7 @@ i32.and i32.const 216 i32.add - call_indirect $28 (type $8) + call_indirect $32 (type $8) local.get $0 i32.const 0 i32.store @@ -60311,31 +61687,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 15601 + i32.const 19258 i64.load align=1 i64.store align=1 local.get $1 - i32.const 15609 + i32.const 19266 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 15617 + i32.const 19274 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 15625 + i32.const 19282 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 15633 + i32.const 19290 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 15641 + i32.const 19298 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 15649 + i32.const 19306 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -60355,7 +61731,7 @@ i32.load local.set $2 local.get $0 - i32.const 20850 + i32.const 30173 i32.load8_s i32.const 1 i32.and @@ -60367,7 +61743,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $5) @@ -60380,19 +61756,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 80 i32.add - global.set $32 + global.set $36 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $3 if $if local.get $0 @@ -60409,7 +61785,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $32 + global.set $36 local.get $0 return end ;; $if @@ -60419,7 +61795,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $6 local.set $5 local.get $4 @@ -60427,7 +61803,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 8140 + i32.const 9140 i32.store local.get $3 local.get $2 @@ -60460,11 +61836,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $3 i32.load8_s offset=16 if $if_0 @@ -60472,7 +61848,7 @@ i32.const 3 i32.store local.get $4 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $4 i32.const 373 @@ -60484,7 +61860,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 15563 + i32.const 19220 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -60497,7 +61873,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $32 + global.set $36 local.get $0 ) @@ -60509,12 +61885,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 112 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 96 i32.add @@ -60572,11 +61948,11 @@ local.get $0 i32.load i32.load offset=28 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) local.get $0 local.get $3 local.get $0 @@ -60586,7 +61962,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) if $if local.get $0 local.get $0 @@ -60594,7 +61970,7 @@ i32.load offset=32 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) if $if_0 local.get $3 i32.load8_s offset=24 @@ -60602,14 +61978,14 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $32 + global.set $36 return end ;; $if_0 local.get $6 i32.const 2 i32.store local.get $6 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $6 i32.const 121 @@ -60627,24 +62003,27 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 15690 + i32.const 19347 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $5 - i32.const 15684 + i32.const 19341 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $5 - i32.const 15697 + i32.const 19354 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $4 local.get $0 local.get $0 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $5 local.get $4 i32.load @@ -60675,18 +62054,19 @@ call $_free end ;; $if_1 local.get $5 - i32.const 15716 + i32.const 19373 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $4 local.get $0 local.get $0 i32.load i32.load offset=36 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $5 local.get $4 i32.load @@ -60735,7 +62115,7 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf12_GLOBAL__N_124ByteSizeConsistencyErrorEmmmRKNS0_11MessageLiteE (type $2) @@ -60746,12 +62126,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 96 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 48 i32.add @@ -60768,7 +62148,7 @@ i32.const 3 i32.store local.get $6 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $6 i32.const 68 @@ -60780,7 +62160,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 15798 + i32.const 19455 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $1 local.get $5 @@ -60788,15 +62168,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $1 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 15882 + i32.const 19539 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -60819,7 +62199,7 @@ i32.const 3 i32.store local.get $4 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $4 i32.const 75 @@ -60831,13 +62211,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 16172 + i32.const 19829 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $32 + global.set $36 return end ;; $if_1 local.get $4 @@ -60848,7 +62228,7 @@ i32.const 3 i32.store local.get $0 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $0 i32.const 71 @@ -60860,9 +62240,9 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 15931 + i32.const 19588 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16017 + i32.const 19674 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $0 local.get $5 @@ -60870,15 +62250,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $0 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 17658 + i32.const 24082 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -60896,7 +62276,7 @@ i32.const 3 i32.store local.get $4 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $4 i32.const 75 @@ -60908,13 +62288,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 16172 + i32.const 19829 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $32 + global.set $36 ) (func $__ZNK6google8protobuf11MessageLite21AppendPartialToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE (type $1) @@ -60923,12 +62303,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -60949,7 +62329,7 @@ i32.load offset=48 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.tee $3 i32.const 0 i32.lt_s @@ -60958,7 +62338,7 @@ i32.const 2 i32.store local.get $2 - i32.const 15531 + i32.const 19188 i32.store offset=4 local.get $2 i32.const 289 @@ -60970,7 +62350,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 15758 + i32.const 19415 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEm @@ -60978,7 +62358,7 @@ local.get $2 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $1 @@ -61008,14 +62388,14 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) local.get $1 i32.sub local.tee $1 i32.eq if $if_2 local.get $2 - global.set $32 + global.set $36 return end ;; $if_2 local.get $3 @@ -61025,12 +62405,12 @@ i32.load offset=48 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.get $1 local.get $0 call $__ZN6google8protobuf12_GLOBAL__N_124ByteSizeConsistencyErrorEmmmRKNS0_11MessageLiteE local.get $2 - global.set $32 + global.set $36 ) (func $__ZNK6google8protobuf11MessageLite17SerializeToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE (type $1) @@ -61070,12 +62450,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=12 local.set $4 @@ -61091,7 +62471,7 @@ i32.ge_s if $if local.get $3 - global.set $32 + global.set $36 local.get $4 i32.const 4 i32.add @@ -61127,7 +62507,7 @@ i32.const 3 i32.store local.get $3 - i32.const 16225 + i32.const 19882 i32.store offset=4 local.get $3 i32.const 59 @@ -61139,9 +62519,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 16259 + i32.const 19916 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16376 + i32.const 20033 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -61173,13 +62553,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5720 + i32.const 6760 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -61243,7 +62623,7 @@ i32.add local.set $0 local.get $3 - global.set $32 + global.set $36 local.get $0 ) @@ -61276,12 +62656,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 block $block local.get $1 i32.const 8 @@ -61330,7 +62710,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $32 + global.set $36 i32.const 1 return end ;; $block_4 @@ -61368,7 +62748,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $32 + global.set $36 local.get $0 return end ;; $block_3 @@ -61447,7 +62827,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $32 + global.set $36 i32.const 1 return end ;; $block_2 @@ -61533,7 +62913,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $32 + global.set $36 local.get $3 local.get $1 i32.const -8 @@ -61577,17 +62957,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $32 + global.set $36 local.get $0 return end ;; $block_0 local.get $2 - global.set $32 + global.set $36 i32.const 0 return end ;; $block local.get $2 - global.set $32 + global.set $36 i32.const 0 ) @@ -61751,12 +63131,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 block $block block $block_0 local.get $1 @@ -61895,7 +63275,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $32 + global.set $36 i32.const 1 return end ;; $if_2 @@ -61965,7 +63345,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $32 + global.set $36 i32.const 1 return end ;; $block_5 @@ -62521,21 +63901,21 @@ br $block end ;; $block_1 local.get $5 - global.set $32 + global.set $36 i32.const 0 return end ;; $block_0 local.get $5 - global.set $32 + global.set $36 i32.const 0 return end ;; $block local.get $5 - global.set $32 + global.set $36 local.get $0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11WriteUInt64EiyPNS0_2io17CodedOutputStreamE (type $20) + (func $__ZN6google8protobuf8internal14WireFormatLite11WriteUInt64EiyPNS0_2io17CodedOutputStreamE (type $21) (param $0 i64) (param $1 i32) (local $2 i32) @@ -62656,7 +64036,7 @@ i32.store offset=8 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11WriteDoubleEidPNS0_2io17CodedOutputStreamE (type $21) + (func $__ZN6google8protobuf8internal14WireFormatLite11WriteDoubleEidPNS0_2io17CodedOutputStreamE (type $22) (param $0 f64) (param $1 i32) (local $2 i32) @@ -62910,12 +64290,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.load offset=8 i32.const 4 @@ -62965,7 +64345,7 @@ i32.const 3 i32.store local.get $4 - i32.const 16424 + i32.const 20081 i32.store offset=4 local.get $4 i32.const 507 @@ -62977,7 +64357,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 16460 + i32.const 20117 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -63029,7 +64409,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $32 + global.set $36 return end ;; $if_2 local.get $1 @@ -63111,7 +64491,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $3) @@ -63122,12 +64502,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.const 3 i32.shl @@ -63220,7 +64600,7 @@ i32.const 3 i32.store local.get $5 - i32.const 16424 + i32.const 20081 i32.store offset=4 local.get $5 i32.const 516 @@ -63232,7 +64612,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 16460 + i32.const 20117 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -63358,7 +64738,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_7 local.get $5 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal14WireFormatLite22WriteBytesMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) @@ -63369,12 +64749,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.load offset=8 i32.const 4 @@ -63424,7 +64804,7 @@ i32.const 3 i32.store local.get $4 - i32.const 16424 + i32.const 20081 i32.store offset=4 local.get $4 i32.const 531 @@ -63436,7 +64816,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 16460 + i32.const 20117 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -63562,7 +64942,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $3) @@ -63655,7 +65035,7 @@ local.get $0 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $0 local.get $2 i32.load offset=8 @@ -63672,11 +65052,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) return end ;; $if_2 local.get $2 @@ -63745,11 +65125,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $1) @@ -63801,7 +65181,7 @@ i32.load offset=60 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) local.set $4 local.get $1 i32.load offset=8 @@ -63917,7 +65297,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) drop return end ;; $if_4 @@ -63927,11 +65307,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $6) @@ -64040,25 +65420,25 @@ i32.const 1 ) - (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $18) + (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $32 + global.set $36 i32.const 1 return end ;; $if @@ -64115,13 +65495,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 16506 + i32.const 20163 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 16518 + i32.const 20175 local.get $2 select local.set $3 @@ -64133,7 +65513,7 @@ i32.const 2 i32.store local.get $1 - i32.const 16424 + i32.const 20081 i32.store offset=4 local.get $1 i32.const 626 @@ -64145,21 +65525,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16532 + i32.const 20189 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 16545 + i32.const 20202 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16564 + i32.const 20221 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16581 + i32.const 20238 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16594 + i32.const 20251 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 16650 + i32.const 20307 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -64174,7 +65554,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $32 + global.set $36 i32.const 0 ) @@ -64214,11 +65594,11 @@ local.get $1 local.get $2 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $0 local.get $0 i32.load offset=12 @@ -64341,7 +65721,7 @@ i32.store offset=4 ) - (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint32FallbackEj (type $22) + (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint32FallbackEj (type $23) (param $0 i32) (param $1 i32) (result i64) @@ -64351,12 +65731,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $2 local.set $5 local.get $0 @@ -64399,7 +65779,7 @@ select local.set $7 local.get $5 - global.set $32 + global.set $36 local.get $7 return end ;; $block @@ -64522,7 +65902,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $32 + global.set $36 i64.const -1 return end ;; $if_9 @@ -64550,7 +65930,7 @@ local.get $2 i32.store local.get $5 - global.set $32 + global.set $36 local.get $1 i64.extend_i32_u ) @@ -64921,12 +66301,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 48 i32.add - global.set $32 + global.set $36 local.get $2 i32.const 28 i32.add @@ -64968,7 +66348,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $4 @@ -64995,7 +66375,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16658 + i32.const 20315 i32.store offset=4 local.get $2 i32.const 591 @@ -65007,7 +66387,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16693 + i32.const 20350 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -65100,7 +66480,7 @@ end ;; $block local.set $0 local.get $2 - global.set $32 + global.set $36 local.get $0 return end ;; $if_1 @@ -65116,7 +66496,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $32 + global.set $36 i32.const 0 return end ;; $if_5 @@ -65126,31 +66506,31 @@ i32.eq if $if_6 local.get $2 - global.set $32 + global.set $36 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $32 + global.set $36 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 16658 + i32.const 20315 i32.store offset=4 local.get $1 i32.const 190 @@ -65162,18 +66542,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 16730 + i32.const 20387 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 16797 + i32.const 20454 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $6) @@ -65313,7 +66693,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) drop i32.const 0 return @@ -65331,7 +66711,7 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) if $if_2 (result i32) local.get $0 local.get $0 @@ -65354,7 +66734,7 @@ i32.and i32.const 210 i32.add - call_indirect $28 (type $10) + call_indirect $32 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -65601,12 +66981,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $7 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $7 local.set $3 local.get $0 @@ -65679,7 +67059,7 @@ br $block end ;; $block_0 local.get $7 - global.set $32 + global.set $36 i32.const 0 return end ;; $block @@ -65692,7 +67072,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $32 + global.set $36 i32.const 1 ) @@ -65706,12 +67086,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $7 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $7 local.set $3 local.get $0 @@ -65784,7 +67164,7 @@ br $block end ;; $block_0 local.get $7 - global.set $32 + global.set $36 i32.const 0 return end ;; $block @@ -65797,7 +67177,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $32 + global.set $36 i32.const 1 ) @@ -65812,12 +67192,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $32 + global.get $36 local.set $7 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 i32.load offset=4 local.tee $6 @@ -65865,7 +67245,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $32 + global.set $36 local.get $0 return end ;; $block @@ -66035,7 +67415,7 @@ i32.and if $if_11 local.get $7 - global.set $32 + global.set $36 i32.const -1 return end ;; $if_11 @@ -66098,7 +67478,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $32 + global.set $36 i32.const -1 return end ;; $if_12 @@ -66106,7 +67486,7 @@ local.get $2 i32.store local.get $7 - global.set $32 + global.set $36 local.get $8 i32.wrap_i64 ) @@ -66120,12 +67500,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 block $block local.get $0 i32.load offset=4 @@ -66223,7 +67603,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $32 + global.set $36 i32.const 0 return end ;; $block_2 @@ -66264,7 +67644,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $32 + global.set $36 local.get $0 return end ;; $block_0 @@ -66423,12 +67803,12 @@ local.get $1 i32.store local.get $5 - global.set $32 + global.set $36 local.get $4 return end ;; $block local.get $5 - global.set $32 + global.set $36 i32.const 0 ) @@ -66437,12 +67817,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.store @@ -66473,7 +67853,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) if $if local.get $0 local.get $2 @@ -66501,19 +67881,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $1) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 local.get $1 i32.store @@ -66530,7 +67910,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -66555,11 +67935,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $0 local.get $0 i32.load offset=12 @@ -66584,12 +67964,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $3 local.set $6 local.get $0 @@ -66629,7 +68009,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -66669,7 +68049,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $32 + global.set $36 return end ;; $block end ;; $if @@ -66691,7 +68071,7 @@ i32.sub i32.store local.get $6 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $3) @@ -66740,11 +68120,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) local.get $0 i32.const 12 i32.add @@ -66796,7 +68176,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.const 1 i32.xor i32.const 1 @@ -66817,12 +68197,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 i32.const 8 i32.add @@ -66849,7 +68229,7 @@ i32.add i32.store local.get $3 - global.set $32 + global.set $36 return end ;; $if local.get $3 @@ -66893,7 +68273,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -66933,7 +68313,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $5 @@ -66954,10 +68334,10 @@ i32.sub i32.store local.get $3 - global.set $32 + global.set $36 ) - (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $16) + (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $24) (param $0 i32) (param $1 i64) (local $2 i32) @@ -66968,12 +68348,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 i32.const 8 i32.add @@ -67000,7 +68380,7 @@ i32.add i32.store local.get $3 - global.set $32 + global.set $36 return end ;; $if local.get $3 @@ -67042,7 +68422,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -67082,7 +68462,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $32 + global.set $36 return end ;; $block local.get $6 @@ -67103,7 +68483,7 @@ i32.sub i32.store local.get $3 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $1) @@ -67115,12 +68495,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $6 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $6 i32.const 4 i32.add @@ -67210,7 +68590,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -67250,7 +68630,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $32 + global.set $36 return end ;; $block else @@ -67275,10 +68655,10 @@ i32.sub i32.store local.get $6 - global.set $32 + global.set $36 ) - (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $16) + (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $24) (param $0 i32) (param $1 i64) (local $2 i32) @@ -67289,12 +68669,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 4 i32.add @@ -67388,7 +68768,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -67428,7 +68808,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $32 + global.set $36 return end ;; $block end ;; $if_1 @@ -67450,7 +68830,7 @@ i32.sub i32.store local.get $7 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $6) @@ -67605,12 +68985,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 80 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 48 i32.add @@ -67625,7 +69005,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $2 i32.const 132 @@ -67637,9 +69017,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 17022 + i32.const 20679 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 17066 + i32.const 20723 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67660,7 +69040,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $2 i32.const 134 @@ -67672,7 +69052,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 17121 + i32.const 20778 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67692,14 +69072,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $32 + global.set $36 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $3 i32.const 135 @@ -67711,7 +69091,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 16991 + i32.const 20648 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -67726,7 +69106,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $32 + global.set $36 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -67747,12 +69127,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $5 i32.const 24 i32.add @@ -67767,7 +69147,7 @@ i32.const 3 i32.store local.get $3 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $3 i32.const 151 @@ -67779,7 +69159,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 17211 + i32.const 20868 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -67853,7 +69233,7 @@ i32.const 2 i32.store local.get $5 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $5 i32.const 164 @@ -67865,15 +69245,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 17288 + i32.const 20945 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 17338 + i32.const 20995 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $32 + global.set $36 i32.const 0 return end ;; $block_0 @@ -67914,7 +69294,7 @@ i32.sub i32.store local.get $5 - global.set $32 + global.set $36 i32.const 1 ) @@ -67924,12 +69304,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 80 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 48 i32.add @@ -67942,7 +69322,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $2 i32.const 182 @@ -67954,7 +69334,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 16991 + i32.const 20648 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -67975,7 +69355,7 @@ i32.const 3 i32.store local.get $2 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $2 i32.const 183 @@ -67987,7 +69367,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 17211 + i32.const 20868 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -68017,7 +69397,7 @@ i32.const 3 i32.store local.get $3 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $3 i32.const 184 @@ -68029,7 +69409,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 17243 + i32.const 20900 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -68065,7 +69445,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $32 + global.set $36 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -68074,12 +69454,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 block $block (result i32) local.get $0 i32.load offset=4 @@ -68090,7 +69470,7 @@ i32.const 3 i32.store local.get $1 - i32.const 16942 + i32.const 20599 i32.store offset=4 local.get $1 i32.const 189 @@ -68102,7 +69482,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 17211 + i32.const 20868 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -68123,11 +69503,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $32 + global.set $36 local.get $3 else local.get $1 - global.set $32 + global.set $36 local.get $0 i32.const 255 i32.and @@ -68142,12 +69522,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 1040 i32.add - global.set $32 + global.set $36 local.get $2 local.get $1 i32.load @@ -68157,7 +69537,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 16526 + i32.const 20183 local.get $2 call $_vsnprintf local.tee $4 @@ -68169,7 +69549,7 @@ i32.le_s if $if_0 local.get $2 - global.set $32 + global.set $36 return end ;; $if_0 local.get $0 @@ -68190,7 +69570,7 @@ i32.store local.get $3 local.get $5 - i32.const 16526 + i32.const 20183 local.get $2 call $_vsnprintf local.tee $1 @@ -68212,19 +69592,19 @@ call $_free end ;; $if local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $1) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $2 local.get $1 i32.store @@ -68238,7 +69618,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $32 + global.set $36 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $5) @@ -68267,7 +69647,7 @@ i32.const 241 return end ;; $if - i32.const 8220 + i32.const 9220 i32.load local.set $13 local.get $0 @@ -68277,18 +69657,18 @@ i32.const -7 i32.add local.set $10 - i32.const 8248 + i32.const 9248 i32.load local.set $4 - i32.const 8228 + i32.const 9228 i32.load local.set $11 - i32.const 8232 + i32.const 9232 i32.load local.set $12 - i32.const 8236 + i32.const 9236 i32.load - i32.const 8204 + i32.const 9204 i32.load i32.add local.tee $8 @@ -68501,7 +69881,7 @@ local.get $3 local.get $14 i32.sub - i32.const 8208 + i32.const 9208 i32.load i32.ge_u if $if_7 @@ -68533,7 +69913,7 @@ local.get $3 local.get $8 i32.sub - i32.const 8208 + i32.const 9208 i32.load i32.lt_u if $if_9 (result i32) @@ -68581,17 +69961,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $1 i32.eqz if $if local.get $2 - global.set $32 + global.set $36 local.get $1 i32.eqz return @@ -68714,7 +70094,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $32 + global.set $36 local.get $1 local.get $0 local.get $6 @@ -68727,17 +70107,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $32 + global.get $36 local.set $0 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 17400 + i32.const 21057 i32.store offset=4 local.get $0 i32.const 47 @@ -68749,13 +70129,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 17439 + i32.const 21096 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $32 + global.set $36 i32.const 0 ) @@ -68763,12 +70143,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $1 local.get $0 i32.load offset=60 @@ -68780,7 +70160,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 20244 + i32.const 29572 i32.const 0 local.get $0 i32.sub @@ -68789,217 +70169,63 @@ local.set $0 end ;; $if local.get $1 - global.set $32 + global.set $36 local.get $0 ) - (func $___stdio_write (type $5) + (func $___stdout_write (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $32 - local.set $6 - global.get $32 - i32.const 48 - i32.add - global.set $32 - local.get $6 + global.get $36 + local.set $3 + global.get $36 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $36 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 20244 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 20244 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $32 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $36 + local.get $0 ) (func $___stdio_seek (type $12) @@ -69009,12 +70235,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 32 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 8 i32.add @@ -69043,7 +70269,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 20244 + i32.const 29572 i32.const 0 local.get $0 i32.sub @@ -69065,68 +70291,303 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $32 + global.set $36 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 20244 + i32.const 29572 ) - (func $___stdout_write (type $5) + (func $___stdio_write (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $32 - local.set $3 - global.get $32 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $6 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $6 i32.const 32 i32.add - global.set $32 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 29572 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 29572 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $36 + local.get $2 + ) + + (func $_strlen (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $32 - local.get $0 + i32.sub ) (func $_memcmp (type $5) @@ -69180,6 +70641,133 @@ end ;; $if ) + (func $_frexp (type $25) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $6) (param $0 i32) (param $1 i32) @@ -69302,7 +70890,34 @@ local.get $0 ) - (func $_vsnprintf (type $18) + (func $_snprintf (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $36 + local.get $0 + ) + + (func $_vsnprintf (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -69310,18 +70925,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $4 - global.get $32 + global.get $36 i32.const 160 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5416 + i32.const 5368 i32.const 144 call $_memcpy drop @@ -69335,7 +70950,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 20244 + i32.const 29572 i32.const 75 i32.store i32.const -1 @@ -69400,7 +71015,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $32 + global.set $36 local.get $0 ) @@ -69446,12 +71061,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $32 + global.get $36 local.set $21 - global.get $32 + global.get $36 i32.const 560 i32.add - global.set $32 + global.set $36 local.get $21 i32.const 32 i32.add @@ -69483,13 +71098,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 17623 + i32.const 21280 local.set $18 i32.const 1 else - i32.const 17626 - i32.const 17629 - i32.const 17624 + i32.const 21283 + i32.const 21286 + i32.const 21281 local.get $4 i32.const 1 i32.and @@ -69512,8 +71127,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 17650 - i32.const 17654 + i32.const 21307 + i32.const 21311 local.get $5 i32.const 32 i32.and @@ -69521,8 +71136,8 @@ i32.ne local.tee $3 select - i32.const 17642 - i32.const 17646 + i32.const 21299 + i32.const 21303 local.get $3 select local.get $1 @@ -69540,15 +71155,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -69556,7 +71171,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -69814,11 +71429,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -69826,14 +71441,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -69846,11 +71461,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -69858,7 +71473,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -70765,11 +72380,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -70777,7 +72392,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -70846,7 +72461,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -70870,9 +72485,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 17658 + i32.const 24082 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -70919,7 +72534,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -70949,7 +72564,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -71017,7 +72632,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -71029,9 +72644,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 17658 + i32.const 24082 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -71068,7 +72683,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -71092,13 +72707,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -71107,13 +72722,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $32 + global.set $36 local.get $2 local.get $0 local.get $0 @@ -71156,12 +72771,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 224 i32.add - global.set $32 + global.set $36 local.get $3 i32.const 160 i32.add @@ -71274,7 +72889,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) drop local.get $1 i32.const -1 @@ -71317,11 +72932,11 @@ end ;; $if local.set $0 local.get $3 - global.set $32 + global.set $36 local.get $0 ) - (func $_printf_core (type $17) + (func $_printf_core (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -71349,12 +72964,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $32 + global.get $36 local.set $15 - global.get $32 + global.get $36 i32.const -64 i32.sub - global.set $32 + global.set $36 local.get $15 i32.const 40 i32.add @@ -71403,7 +73018,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 20244 + i32.const 29572 i32.const 75 i32.store i32.const -1 @@ -71493,7 +73108,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -71706,7 +73321,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -71742,7 +73357,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -71932,7 +73547,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -72119,7 +73734,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 17606 + i32.const 21263 local.set $8 br $block_14 end ;; $block_25 @@ -72135,13 +73750,13 @@ i64.sub local.tee $25 i64.store - i32.const 17606 + i32.const 21263 local.set $8 i32.const 1 else - i32.const 17607 - i32.const 17608 - i32.const 17606 + i32.const 21264 + i32.const 21265 + i32.const 21263 local.get $7 i32.const 1 i32.and @@ -72165,7 +73780,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 17606 + i32.const 21263 local.set $8 br $block_16 end ;; $block_23 @@ -72181,7 +73796,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17606 + i32.const 21263 local.set $8 local.get $18 local.set $1 @@ -72190,7 +73805,7 @@ local.get $10 i32.load local.tee $5 - i32.const 17616 + i32.const 21273 local.get $5 select local.tee $6 @@ -72210,7 +73825,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17606 + i32.const 21263 local.set $8 local.get $1 local.get $6 @@ -72246,7 +73861,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -72261,7 +73876,7 @@ local.get $7 local.get $6 i32.const 129 - call_indirect $28 (type $11) + call_indirect $32 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -72271,7 +73886,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 17606 + i32.const 21263 local.set $8 local.get $18 local.set $1 @@ -72299,11 +73914,11 @@ local.tee $8 select local.set $12 - i32.const 17606 + i32.const 21263 local.get $6 i32.const 4 i32.shr_u - i32.const 17606 + i32.const 21263 i32.add local.get $8 select @@ -72369,7 +73984,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -72400,7 +74015,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -72463,7 +74078,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -72496,11 +74111,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -72508,17 +74123,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -72526,7 +74141,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -72558,7 +74173,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -72599,11 +74214,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $32 + global.set $36 local.get $9 ) - (func $_out_279 (type $3) + (func $_out (type $3) (param $0 i32) (param $1 i32) (param $2 i32) @@ -72620,7 +74235,7 @@ end ;; $if ) - (func $_getint_280 (type $4) + (func $_getint (type $4) (param $0 i32) (result i32) (local $1 i32) @@ -72662,7 +74277,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $3) + (func $_pop_arg (type $3) (param $0 i32) (param $1 i32) (param $2 i32) @@ -72886,13 +74501,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 445 - call_indirect $28 (type $1) + i32.const 657 + call_indirect $32 (type $1) end ;; $block end ;; $if ) - (func $_fmt_x (type $23) + (func $_fmt_x (type $26) (param $0 i64) (param $1 i32) (param $2 i32) @@ -72928,7 +74543,7 @@ local.get $1 ) - (func $_fmt_o (type $24) + (func $_fmt_o (type $27) (param $0 i64) (param $1 i32) (result i32) @@ -72960,7 +74575,7 @@ local.get $1 ) - (func $_fmt_u (type $24) + (func $_fmt_u (type $27) (param $0 i64) (param $1 i32) (result i32) @@ -73033,19 +74648,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $32 + global.get $36 local.set $5 - global.get $32 + global.get $36 i32.const 256 i32.add - global.set $32 + global.set $36 local.get $4 i32.const 73728 i32.and @@ -73084,7 +74699,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -73101,10 +74716,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $32 + global.set $36 ) (func $_wctomb (type $6) @@ -73138,7 +74753,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 8448 + i32.const 9448 i32.load i32.load i32.eqz @@ -73155,7 +74770,7 @@ i32.const 1 br $block else - i32.const 20244 + i32.const 29572 i32.const 84 i32.store i32.const -1 @@ -73260,7 +74875,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 20244 + i32.const 29572 i32.const 84 i32.store i32.const -1 @@ -73312,7 +74927,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) drop br $block end ;; $if_0 @@ -73359,7 +74974,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) local.get $3 i32.lt_u br_if $block @@ -73440,76 +75055,6 @@ end ;; $if ) - (func $_frexp (type $25) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $5) (param $0 i32) (param $1 i32) @@ -73544,176 +75089,26 @@ local.get $2 ) - (func $_strlen (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $18) + (func $_fprintf (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $32 - local.set $4 - global.get $32 + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 i32.const 16 i32.add - global.set $32 - local.get $4 - local.get $3 + global.set $36 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 18770 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $32 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $36 ) (func $___overflow (type $0) @@ -73721,12 +75116,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $32 + global.get $36 local.set $1 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $1 i32.const 10 i32.store8 @@ -73778,7 +75173,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) i32.const 1 i32.eq if $if_2 (result i32) @@ -73790,29 +75185,7 @@ drop end ;; $block local.get $1 - global.set $32 - ) - - (func $_fprintf (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 15113 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $32 + global.set $36 ) (func $_fflush (type $4) @@ -73836,10 +75209,10 @@ end ;; $block local.set $0 else - i32.const 8256 + i32.const 9252 i32.load if $if_1 (result i32) - i32.const 8256 + i32.const 9252 i32.load call $_fflush else @@ -73847,9 +75220,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 20248 + i32.const 29576 call $___lock - i32.const 20256 + i32.const 29584 i32.load local.tee $1 end ;; $block_0 @@ -73883,7 +75256,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 20248 + i32.const 29576 call $___unlock end ;; $if local.get $0 @@ -73914,7 +75287,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) drop local.get $0 i32.load offset=20 @@ -73944,7 +75317,7 @@ i32.and i32.const 214 i32.add - call_indirect $28 (type $12) + call_indirect $32 (type $12) drop end ;; $if local.get $0 @@ -73966,6 +75339,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $4) (param $0 i32) (result i32) @@ -73991,17 +75428,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $32 + global.get $36 local.set $17 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 20260 + i32.const 29588 i32.load local.tee $6 i32.const 16 @@ -74033,7 +75470,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.tee $3 i32.load offset=8 @@ -74046,7 +75483,7 @@ local.get $3 i32.eq if $if_1 - i32.const 20260 + i32.const 29588 local.get $6 i32.const 1 local.get $0 @@ -74056,7 +75493,7 @@ i32.and i32.store else - i32.const 20276 + i32.const 29604 i32.load local.get $4 i32.gt_u @@ -74096,12 +75533,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $32 + global.set $36 local.get $1 return end ;; $if_0 local.get $14 - i32.const 20268 + i32.const 29596 i32.load local.tee $13 i32.gt_u @@ -74180,7 +75617,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.tee $1 i32.load offset=8 @@ -74193,7 +75630,7 @@ local.get $1 i32.eq if $if_6 - i32.const 20260 + i32.const 29588 local.get $6 i32.const 1 local.get $0 @@ -74204,7 +75641,7 @@ local.tee $8 i32.store else - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.gt_u @@ -74254,7 +75691,7 @@ i32.store local.get $13 if $if_9 - i32.const 20280 + i32.const 29608 i32.load local.set $10 local.get $13 @@ -74263,7 +75700,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $2 local.get $8 @@ -74273,7 +75710,7 @@ local.tee $0 i32.and if $if_10 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.const 8 @@ -74291,7 +75728,7 @@ local.set $4 end ;; $if_11 else - i32.const 20260 + i32.const 29588 local.get $0 local.get $8 i32.or @@ -74316,18 +75753,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 20268 + i32.const 29596 local.get $6 i32.store - i32.const 20280 + i32.const 29608 local.get $3 i32.store local.get $17 - global.set $32 + global.set $36 local.get $9 return end ;; $if_5 - i32.const 20264 + i32.const 29592 i32.load local.tee $11 if $if_12 (result i32) @@ -74390,7 +75827,7 @@ i32.add i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add i32.load local.tee $0 @@ -74440,7 +75877,7 @@ br $loop end ;; $block end ;; $loop - i32.const 20276 + i32.const 29604 i32.load local.tee $7 local.get $9 @@ -74564,7 +76001,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.tee $0 i32.load @@ -74577,7 +76014,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 20264 + i32.const 29592 local.get $11 i32.const 1 local.get $1 @@ -74589,7 +76026,7 @@ br $block_2 end ;; $if_25 else - i32.const 20276 + i32.const 29604 i32.load local.get $18 i32.gt_u @@ -74614,7 +76051,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $3 @@ -74647,7 +76084,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 20276 + i32.const 29604 i32.load local.get $0 i32.gt_u @@ -74703,7 +76140,7 @@ i32.store local.get $13 if $if_33 - i32.const 20280 + i32.const 29608 i32.load local.set $4 local.get $13 @@ -74712,7 +76149,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $3 local.get $6 @@ -74722,7 +76159,7 @@ local.tee $0 i32.and if $if_34 - i32.const 20276 + i32.const 29604 i32.load local.get $3 i32.const 8 @@ -74740,7 +76177,7 @@ local.set $12 end ;; $if_35 else - i32.const 20260 + i32.const 29588 local.get $0 local.get $6 i32.or @@ -74765,15 +76202,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 20268 + i32.const 29596 local.get $10 i32.store - i32.const 20280 + i32.const 29608 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $32 + global.set $36 local.get $9 i32.const 8 i32.add @@ -74799,7 +76236,7 @@ i32.const -8 i32.and local.set $15 - i32.const 20264 + i32.const 29592 i32.load local.tee $4 if $if_37 (result i32) @@ -74879,7 +76316,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add i32.load local.tee $0 @@ -75044,7 +76481,7 @@ i32.add i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add i32.load local.set $0 @@ -75107,13 +76544,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 20268 + i32.const 29596 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 20276 + i32.const 29604 i32.load local.tee $12 local.get $2 @@ -75237,7 +76674,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.tee $0 i32.load @@ -75250,7 +76687,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 20264 + i32.const 29592 local.get $4 i32.const 1 local.get $3 @@ -75263,7 +76700,7 @@ br $block_9 end ;; $if_60 else - i32.const 20276 + i32.const 29604 i32.load local.get $8 i32.gt_u @@ -75292,7 +76729,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $13 @@ -75325,7 +76762,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 20276 + i32.const 29604 i32.load local.get $0 i32.gt_u @@ -75399,10 +76836,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $3 - i32.const 20260 + i32.const 29588 i32.load local.tee $1 i32.const 1 @@ -75411,7 +76848,7 @@ local.tee $0 i32.and if $if_70 - i32.const 20276 + i32.const 29604 i32.load local.get $3 i32.const 8 @@ -75429,7 +76866,7 @@ local.set $11 end ;; $if_71 else - i32.const 20260 + i32.const 29588 local.get $0 local.get $1 i32.or @@ -75525,7 +76962,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.set $3 local.get $5 @@ -75545,7 +76982,7 @@ i32.and i32.eqz if $if_74 - i32.const 20264 + i32.const 29592 local.get $0 local.get $1 i32.or @@ -75626,7 +77063,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 20276 + i32.const 29604 i32.load local.get $4 i32.gt_u @@ -75649,7 +77086,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $6 @@ -75682,7 +77119,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $32 + global.set $36 local.get $2 i32.const 8 i32.add @@ -75702,13 +77139,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 20268 + i32.const 29596 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 20280 + i32.const 29608 i32.load local.set $0 local.get $3 @@ -75718,13 +77155,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 20280 + i32.const 29608 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 20268 + i32.const 29596 local.get $2 i32.store local.get $1 @@ -75743,10 +77180,10 @@ i32.or i32.store offset=4 else - i32.const 20268 + i32.const 29596 i32.const 0 i32.store - i32.const 20280 + i32.const 29608 i32.const 0 i32.store local.get $0 @@ -75767,13 +77204,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 20272 + i32.const 29600 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 20272 + i32.const 29600 local.get $12 local.get $11 i32.sub @@ -75781,31 +77218,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 20732 + i32.const 30060 i32.load if $if_83 (result i32) - i32.const 20740 + i32.const 30068 i32.load else - i32.const 20740 + i32.const 30068 i32.const 4096 i32.store - i32.const 20736 + i32.const 30064 i32.const 4096 i32.store - i32.const 20744 + i32.const 30072 i32.const -1 i32.store - i32.const 20748 + i32.const 30076 i32.const -1 i32.store - i32.const 20752 + i32.const 30080 i32.const 0 i32.store - i32.const 20704 + i32.const 30032 i32.const 0 i32.store - i32.const 20732 + i32.const 30060 local.get $17 i32.const -16 i32.and @@ -75832,11 +77269,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 20700 + i32.const 30028 i32.load local.tee $2 if $if_85 - i32.const 20692 + i32.const 30020 i32.load local.tee $1 local.get $8 @@ -75858,7 +77295,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 20704 + i32.const 30032 i32.load i32.const 4 i32.and @@ -75869,12 +77306,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 20284 + i32.const 29612 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 20708 + i32.const 30036 local.set $2 loop $loop_5 block $block_20 @@ -75937,11 +77374,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 20692 + i32.const 30020 i32.load local.tee $4 local.get $0 - i32.const 20736 + i32.const 30064 i32.load local.tee $2 i32.const -1 @@ -75972,7 +77409,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 20700 + i32.const 30028 i32.load local.tee $1 if $if_92 @@ -76030,7 +77467,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 20740 + i32.const 30068 i32.load local.tee $1 local.get $6 @@ -76067,8 +77504,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 20704 - i32.const 20704 + i32.const 30032 + i32.const 30032 i32.load i32.const 4 i32.or @@ -76123,28 +77560,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 20692 - i32.const 20692 + i32.const 30020 + i32.const 30020 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 20696 + i32.const 30024 i32.load i32.gt_u if $if_98 - i32.const 20696 + i32.const 30024 local.get $1 i32.store end ;; $if_98 - i32.const 20284 + i32.const 29612 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 20708 + i32.const 30036 local.set $2 block $block_22 block $block_23 @@ -76202,7 +77639,7 @@ local.tee $1 i32.add local.set $2 - i32.const 20272 + i32.const 29600 i32.load local.get $3 i32.add @@ -76210,10 +77647,10 @@ local.get $1 i32.sub local.set $1 - i32.const 20284 + i32.const 29612 local.get $2 i32.store - i32.const 20272 + i32.const 29600 local.get $1 i32.store local.get $2 @@ -76226,8 +77663,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 20288 - i32.const 20748 + i32.const 29616 + i32.const 30076 i32.load i32.store br $block_21 @@ -76235,12 +77672,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 20276 + i32.const 29604 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 20276 + i32.const 29604 local.get $0 i32.store local.get $0 @@ -76250,7 +77687,7 @@ local.get $3 i32.add local.set $1 - i32.const 20708 + i32.const 30036 local.set $8 block $block_24 block $block_25 @@ -76331,14 +77768,14 @@ local.get $6 i32.eq if $if_104 - i32.const 20272 - i32.const 20272 + i32.const 29600 + i32.const 29600 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 20284 + i32.const 29612 local.get $5 i32.store local.get $5 @@ -76348,19 +77785,19 @@ i32.store offset=4 else block $block_26 - i32.const 20280 + i32.const 29608 i32.load local.get $3 i32.eq if $if_105 - i32.const 20268 - i32.const 20268 + i32.const 29596 + i32.const 29596 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 20280 + i32.const 29608 local.get $5 i32.store local.get $5 @@ -76405,7 +77842,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.tee $0 i32.ne @@ -76429,8 +77866,8 @@ local.get $6 i32.eq if $if_110 - i32.const 20260 - i32.const 20260 + i32.const 29588 + i32.const 29588 i32.load i32.const 1 local.get $1 @@ -76588,7 +78025,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.tee $0 i32.load @@ -76601,8 +78038,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 20264 - i32.const 20264 + i32.const 29592 + i32.const 29592 i32.load i32.const 1 local.get $1 @@ -76614,7 +78051,7 @@ br $block_27 end ;; $block_32 else - i32.const 20276 + i32.const 29604 i32.load local.get $8 i32.gt_u @@ -76639,7 +78076,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $16 @@ -76673,7 +78110,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 20276 + i32.const 29604 i32.load local.get $0 i32.gt_u @@ -76725,10 +78162,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $2 - i32.const 20260 + i32.const 29588 i32.load local.tee $1 i32.const 1 @@ -76738,7 +78175,7 @@ i32.and if $if_128 block $block_33 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.const 8 @@ -76757,7 +78194,7 @@ call $_abort end ;; $block_33 else - i32.const 20260 + i32.const 29588 local.get $0 local.get $1 i32.or @@ -76853,7 +78290,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.set $2 local.get $5 @@ -76865,7 +78302,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 20264 + i32.const 29592 i32.load local.tee $1 i32.const 1 @@ -76875,7 +78312,7 @@ i32.and i32.eqz if $if_132 - i32.const 20264 + i32.const 29592 local.get $0 local.get $1 i32.or @@ -76956,7 +78393,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.gt_u @@ -76979,7 +78416,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $9 @@ -77012,14 +78449,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $32 + global.set $36 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 20708 + i32.const 30036 local.set $2 loop $loop_10 block $block_35 @@ -77044,7 +78481,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 20284 + i32.const 29612 i32.const 0 local.get $0 i32.const 8 @@ -77063,7 +78500,7 @@ i32.add local.tee $4 i32.store - i32.const 20272 + i32.const 29600 local.get $3 i32.const -40 i32.add @@ -77082,8 +78519,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 20288 - i32.const 20748 + i32.const 29616 + i32.const 30076 i32.load i32.store local.get $6 @@ -77116,23 +78553,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 20708 + i32.const 30036 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 20716 + i32.const 30044 i64.load align=4 i64.store offset=16 align=4 - i32.const 20708 + i32.const 30036 local.get $0 i32.store - i32.const 20712 + i32.const 30040 local.get $3 i32.store - i32.const 20720 + i32.const 30048 i32.const 0 i32.store - i32.const 20716 + i32.const 30044 local.get $2 i32.const 8 i32.add @@ -77191,10 +78628,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $2 - i32.const 20260 + i32.const 29588 i32.load local.tee $1 i32.const 1 @@ -77203,7 +78640,7 @@ local.tee $0 i32.and if $if_142 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.const 8 @@ -77221,7 +78658,7 @@ local.set $5 end ;; $if_143 else - i32.const 20260 + i32.const 29588 local.get $0 local.get $1 i32.or @@ -77317,7 +78754,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.set $2 local.get $6 @@ -77329,7 +78766,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 20264 + i32.const 29592 i32.load local.tee $1 i32.const 1 @@ -77339,7 +78776,7 @@ i32.and i32.eqz if $if_146 - i32.const 20264 + i32.const 29592 local.get $0 local.get $1 i32.or @@ -77420,7 +78857,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 20276 + i32.const 29604 i32.load local.get $3 i32.gt_u @@ -77443,7 +78880,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $10 @@ -77476,7 +78913,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 20276 + i32.const 29604 i32.load local.tee $1 i32.eqz @@ -77485,219 +78922,219 @@ i32.lt_u i32.or if $if_152 - i32.const 20276 + i32.const 29604 local.get $0 i32.store end ;; $if_152 - i32.const 20708 + i32.const 30036 local.get $0 i32.store - i32.const 20712 + i32.const 30040 local.get $3 i32.store - i32.const 20720 + i32.const 30048 i32.const 0 i32.store - i32.const 20296 - i32.const 20732 + i32.const 29624 + i32.const 30060 i32.load i32.store - i32.const 20292 + i32.const 29620 i32.const -1 i32.store - i32.const 20312 - i32.const 20300 + i32.const 29640 + i32.const 29628 i32.store - i32.const 20308 - i32.const 20300 + i32.const 29636 + i32.const 29628 i32.store - i32.const 20320 - i32.const 20308 + i32.const 29648 + i32.const 29636 i32.store - i32.const 20316 - i32.const 20308 + i32.const 29644 + i32.const 29636 i32.store - i32.const 20328 - i32.const 20316 + i32.const 29656 + i32.const 29644 i32.store - i32.const 20324 - i32.const 20316 + i32.const 29652 + i32.const 29644 i32.store - i32.const 20336 - i32.const 20324 + i32.const 29664 + i32.const 29652 i32.store - i32.const 20332 - i32.const 20324 + i32.const 29660 + i32.const 29652 i32.store - i32.const 20344 - i32.const 20332 + i32.const 29672 + i32.const 29660 i32.store - i32.const 20340 - i32.const 20332 + i32.const 29668 + i32.const 29660 i32.store - i32.const 20352 - i32.const 20340 + i32.const 29680 + i32.const 29668 i32.store - i32.const 20348 - i32.const 20340 + i32.const 29676 + i32.const 29668 i32.store - i32.const 20360 - i32.const 20348 + i32.const 29688 + i32.const 29676 i32.store - i32.const 20356 - i32.const 20348 + i32.const 29684 + i32.const 29676 i32.store - i32.const 20368 - i32.const 20356 + i32.const 29696 + i32.const 29684 i32.store - i32.const 20364 - i32.const 20356 + i32.const 29692 + i32.const 29684 i32.store - i32.const 20376 - i32.const 20364 + i32.const 29704 + i32.const 29692 i32.store - i32.const 20372 - i32.const 20364 + i32.const 29700 + i32.const 29692 i32.store - i32.const 20384 - i32.const 20372 + i32.const 29712 + i32.const 29700 i32.store - i32.const 20380 - i32.const 20372 + i32.const 29708 + i32.const 29700 i32.store - i32.const 20392 - i32.const 20380 + i32.const 29720 + i32.const 29708 i32.store - i32.const 20388 - i32.const 20380 + i32.const 29716 + i32.const 29708 i32.store - i32.const 20400 - i32.const 20388 + i32.const 29728 + i32.const 29716 i32.store - i32.const 20396 - i32.const 20388 + i32.const 29724 + i32.const 29716 i32.store - i32.const 20408 - i32.const 20396 + i32.const 29736 + i32.const 29724 i32.store - i32.const 20404 - i32.const 20396 + i32.const 29732 + i32.const 29724 i32.store - i32.const 20416 - i32.const 20404 + i32.const 29744 + i32.const 29732 i32.store - i32.const 20412 - i32.const 20404 + i32.const 29740 + i32.const 29732 i32.store - i32.const 20424 - i32.const 20412 + i32.const 29752 + i32.const 29740 i32.store - i32.const 20420 - i32.const 20412 + i32.const 29748 + i32.const 29740 i32.store - i32.const 20432 - i32.const 20420 + i32.const 29760 + i32.const 29748 i32.store - i32.const 20428 - i32.const 20420 + i32.const 29756 + i32.const 29748 i32.store - i32.const 20440 - i32.const 20428 + i32.const 29768 + i32.const 29756 i32.store - i32.const 20436 - i32.const 20428 + i32.const 29764 + i32.const 29756 i32.store - i32.const 20448 - i32.const 20436 + i32.const 29776 + i32.const 29764 i32.store - i32.const 20444 - i32.const 20436 + i32.const 29772 + i32.const 29764 i32.store - i32.const 20456 - i32.const 20444 + i32.const 29784 + i32.const 29772 i32.store - i32.const 20452 - i32.const 20444 + i32.const 29780 + i32.const 29772 i32.store - i32.const 20464 - i32.const 20452 + i32.const 29792 + i32.const 29780 i32.store - i32.const 20460 - i32.const 20452 + i32.const 29788 + i32.const 29780 i32.store - i32.const 20472 - i32.const 20460 + i32.const 29800 + i32.const 29788 i32.store - i32.const 20468 - i32.const 20460 + i32.const 29796 + i32.const 29788 i32.store - i32.const 20480 - i32.const 20468 + i32.const 29808 + i32.const 29796 i32.store - i32.const 20476 - i32.const 20468 + i32.const 29804 + i32.const 29796 i32.store - i32.const 20488 - i32.const 20476 + i32.const 29816 + i32.const 29804 i32.store - i32.const 20484 - i32.const 20476 + i32.const 29812 + i32.const 29804 i32.store - i32.const 20496 - i32.const 20484 + i32.const 29824 + i32.const 29812 i32.store - i32.const 20492 - i32.const 20484 + i32.const 29820 + i32.const 29812 i32.store - i32.const 20504 - i32.const 20492 + i32.const 29832 + i32.const 29820 i32.store - i32.const 20500 - i32.const 20492 + i32.const 29828 + i32.const 29820 i32.store - i32.const 20512 - i32.const 20500 + i32.const 29840 + i32.const 29828 i32.store - i32.const 20508 - i32.const 20500 + i32.const 29836 + i32.const 29828 i32.store - i32.const 20520 - i32.const 20508 + i32.const 29848 + i32.const 29836 i32.store - i32.const 20516 - i32.const 20508 + i32.const 29844 + i32.const 29836 i32.store - i32.const 20528 - i32.const 20516 + i32.const 29856 + i32.const 29844 i32.store - i32.const 20524 - i32.const 20516 + i32.const 29852 + i32.const 29844 i32.store - i32.const 20536 - i32.const 20524 + i32.const 29864 + i32.const 29852 i32.store - i32.const 20532 - i32.const 20524 + i32.const 29860 + i32.const 29852 i32.store - i32.const 20544 - i32.const 20532 + i32.const 29872 + i32.const 29860 i32.store - i32.const 20540 - i32.const 20532 + i32.const 29868 + i32.const 29860 i32.store - i32.const 20552 - i32.const 20540 + i32.const 29880 + i32.const 29868 i32.store - i32.const 20548 - i32.const 20540 + i32.const 29876 + i32.const 29868 i32.store - i32.const 20560 - i32.const 20548 + i32.const 29888 + i32.const 29876 i32.store - i32.const 20556 - i32.const 20548 + i32.const 29884 + i32.const 29876 i32.store - i32.const 20284 + i32.const 29612 i32.const 0 local.get $0 i32.const 8 @@ -77716,7 +79153,7 @@ i32.add local.tee $4 i32.store - i32.const 20272 + i32.const 29600 local.get $3 i32.const -40 i32.add @@ -77735,18 +79172,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 20288 - i32.const 20748 + i32.const 29616 + i32.const 30076 i32.load i32.store end ;; $if_99 - i32.const 20272 + i32.const 29600 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 20272 + i32.const 29600 local.get $0 local.get $11 i32.sub @@ -77755,13 +79192,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 20244 + i32.const 29572 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 20284 - i32.const 20284 + i32.const 29612 + i32.const 29612 i32.load local.tee $0 local.get $11 @@ -77780,14 +79217,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $32 + global.set $36 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $32 + global.set $36 i32.const 0 ) @@ -77819,7 +79256,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 20276 + i32.const 29604 i32.load local.tee $11 i32.lt_u @@ -77878,7 +79315,7 @@ local.get $10 i32.add local.set $5 - i32.const 20280 + i32.const 29608 i32.load local.get $0 i32.eq @@ -77898,7 +79335,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 20268 + i32.const 29596 local.get $5 i32.store local.get $7 @@ -77935,7 +79372,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.tee $4 i32.ne @@ -77958,8 +79395,8 @@ local.get $3 i32.eq if $if_11 - i32.const 20260 - i32.const 20260 + i32.const 29588 + i32.const 29588 i32.load i32.const 1 local.get $2 @@ -78125,7 +79562,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.tee $6 i32.load @@ -78138,8 +79575,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 20264 - i32.const 20264 + i32.const 29592 + i32.const 29592 i32.load i32.const 1 local.get $2 @@ -78156,7 +79593,7 @@ br $block end ;; $if_24 else - i32.const 20276 + i32.const 29604 i32.load local.get $13 i32.gt_u @@ -78189,7 +79626,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 20276 + i32.const 29604 i32.load local.tee $6 local.get $8 @@ -78222,7 +79659,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.gt_u @@ -78292,19 +79729,19 @@ local.get $1 i32.store else - i32.const 20284 + i32.const 29612 i32.load local.get $7 i32.eq if $if_35 - i32.const 20272 - i32.const 20272 + i32.const 29600 + i32.const 29600 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 20284 + i32.const 29612 local.get $3 i32.store local.get $3 @@ -78313,33 +79750,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 20280 + i32.const 29608 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 20280 + i32.const 29608 i32.const 0 i32.store - i32.const 20268 + i32.const 29596 i32.const 0 i32.store return end ;; $if_35 - i32.const 20280 + i32.const 29608 i32.load local.get $7 i32.eq if $if_37 - i32.const 20268 - i32.const 20268 + i32.const 29596 + i32.const 29596 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 20280 + i32.const 29608 local.get $4 i32.store local.get $3 @@ -78378,12 +79815,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.tee $0 i32.ne if $if_39 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.gt_u @@ -78402,8 +79839,8 @@ local.get $2 i32.eq if $if_42 - i32.const 20260 - i32.const 20260 + i32.const 29588 + i32.const 29588 i32.load i32.const 1 local.get $6 @@ -78423,7 +79860,7 @@ i32.add local.set $16 else - i32.const 20276 + i32.const 29604 i32.load local.get $1 i32.gt_u @@ -78506,7 +79943,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 20276 + i32.const 29604 i32.load local.get $1 i32.gt_u @@ -78521,7 +79958,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 20276 + i32.const 29604 i32.load local.get $7 i32.load offset=8 @@ -78561,7 +79998,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.tee $1 i32.load @@ -78574,8 +80011,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 20264 - i32.const 20264 + i32.const 29592 + i32.const 29592 i32.load i32.const 1 local.get $0 @@ -78587,7 +80024,7 @@ br $block_2 end ;; $if_55 else - i32.const 20276 + i32.const 29604 i32.load local.get $8 i32.gt_u @@ -78613,7 +80050,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 20276 + i32.const 29604 i32.load local.tee $1 local.get $9 @@ -78646,7 +80083,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 20276 + i32.const 29604 i32.load local.get $0 i32.gt_u @@ -78674,12 +80111,12 @@ i32.add local.get $5 i32.store - i32.const 20280 + i32.const 29608 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 20268 + i32.const 29596 local.get $5 i32.store return @@ -78699,10 +80136,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 20300 + i32.const 29628 i32.add local.set $0 - i32.const 20260 + i32.const 29588 i32.load local.tee $1 i32.const 1 @@ -78711,7 +80148,7 @@ local.tee $4 i32.and if $if_64 - i32.const 20276 + i32.const 29604 i32.load local.get $0 i32.const 8 @@ -78729,7 +80166,7 @@ local.set $15 end ;; $if_65 else - i32.const 20260 + i32.const 29588 local.get $1 local.get $4 i32.or @@ -78826,7 +80263,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 20564 + i32.const 29892 i32.add local.set $0 local.get $3 @@ -78838,7 +80275,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 20264 + i32.const 29592 i32.load local.tee $5 i32.const 1 @@ -78910,7 +80347,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 20276 + i32.const 29604 i32.load local.get $2 i32.gt_u @@ -78933,7 +80370,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 20276 + i32.const 29604 i32.load local.tee $0 local.get $14 @@ -78965,7 +80402,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 20264 + i32.const 29592 local.get $2 local.get $5 i32.or @@ -78983,8 +80420,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 20292 - i32.const 20292 + i32.const 29620 + i32.const 29620 i32.load i32.const -1 i32.add @@ -78994,7 +80431,7 @@ if $if_74 return end ;; $if_74 - i32.const 20716 + i32.const 30044 local.set $0 loop $loop_2 local.get $0 @@ -79006,30 +80443,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 20292 + i32.const 29620 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $4) + (func $_realloc (type $6) (param $0 i32) + (param $1 i32) (result i32) - i32.const 17660 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 29572 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $4) + (func $_try_realloc_chunk (type $6) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -79039,166 +80542,1935 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 29604 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 30068 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 29612 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 29600 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 29612 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 29600 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 29608 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 29596 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 29596 + local.get $3 + i32.store + i32.const 29608 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 29628 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 29588 + i32.const 29588 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 29892 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 29592 + i32.const 29592 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 29604 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 29604 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 29604 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 29604 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 29608 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 29596 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 29628 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 29588 + i32.const 29588 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 29892 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 29592 + i32.const 29592 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 29604 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 29604 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 29604 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 29604 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 29612 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 29600 + i32.const 29600 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 29612 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 29608 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 29608 + i32.const 0 + i32.store + i32.const 29596 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 29608 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 29596 + i32.const 29596 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 29608 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 29628 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 29588 + i32.const 29588 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 29892 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 29592 + i32.const 29592 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 29604 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 29604 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 29604 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 29608 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 29596 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 29628 + i32.add + local.set $0 + i32.const 29588 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 29604 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 29588 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 29892 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 29592 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 29592 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 29604 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 29604 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $4) + (param $0 i32) + (result i32) + i32.const 21315 + ) + + (func $__ZNSt3__212__next_primeEm (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul i32.eq if $if_6 (result i32) i32.const 9 @@ -80085,760 +83357,25253 @@ i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_85 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_85 + local.tee $1 + local.get $2 + i32.lt_u + if $if_86 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_86 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_87 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_87 + local.get $4 + i32.const 130 + i32.add + local.tee $2 + local.tee $1 + if $if_88 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_88 + local.tee $1 + local.get $2 + i32.lt_u + if $if_89 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_89 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_90 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_90 + local.get $4 + i32.const 136 + i32.add + local.tee $2 + local.tee $1 + if $if_91 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_91 + local.tee $1 + local.get $2 + i32.lt_u + if $if_92 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_92 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_93 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_93 + local.get $4 + i32.const 138 + i32.add + local.tee $2 + local.tee $1 + if $if_94 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_94 + local.tee $1 + local.get $2 + i32.lt_u + if $if_95 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_95 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_96 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_96 + local.get $4 + i32.const 142 + i32.add + local.tee $2 + local.tee $1 + if $if_97 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_97 + local.tee $1 + local.get $2 + i32.lt_u + if $if_98 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_98 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_99 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_99 + local.get $4 + i32.const 148 + i32.add + local.tee $2 + local.tee $1 + if $if_100 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_100 + local.tee $1 + local.get $2 + i32.lt_u + if $if_101 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_101 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_102 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_102 + local.get $4 + i32.const 150 + i32.add + local.tee $2 + local.tee $1 + if $if_103 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_103 + local.tee $1 + local.get $2 + i32.lt_u + if $if_104 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_104 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_105 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_105 + local.get $4 + i32.const 156 + i32.add + local.tee $2 + local.tee $1 + if $if_106 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_106 + local.tee $1 + local.get $2 + i32.lt_u + if $if_107 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_107 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_108 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_108 + local.get $4 + i32.const 162 + i32.add + local.tee $2 + local.tee $1 + if $if_109 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_109 + local.tee $1 + local.get $2 + i32.lt_u + if $if_110 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_110 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_111 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_111 + local.get $4 + i32.const 166 + i32.add + local.tee $2 + local.tee $1 + if $if_112 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_112 + local.tee $1 + local.get $2 + i32.lt_u + if $if_113 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_113 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_114 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_114 + local.get $4 + i32.const 168 + i32.add + local.tee $2 + local.tee $1 + if $if_115 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_115 + local.tee $1 + local.get $2 + i32.lt_u + if $if_116 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_116 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_117 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_117 + local.get $4 + i32.const 172 + i32.add + local.tee $2 + local.tee $1 + if $if_118 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_118 + local.tee $1 + local.get $2 + i32.lt_u + if $if_119 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_119 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_120 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_120 + local.get $4 + i32.const 178 + i32.add + local.tee $2 + local.tee $1 + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_123 local.get $4 - i32.const 130 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_126 local.get $4 - i32.const 136 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_129 local.get $4 - i32.const 138 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_132 local.get $4 - i32.const 142 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_135 local.get $4 - i32.const 148 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_138 local.get $4 - i32.const 150 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_104 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_104 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_105 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_105 + end ;; $if_141 local.get $4 - i32.const 156 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_106 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_106 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_107 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $36 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 29416 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 30112 + i32.const 30084 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 29416 + i32.load + i32.eqz + if $if_0 + i32.const 29416 + i32.const 1 + i32.store + local.get $0 + i32.const 424 + call_indirect $32 (type $0) + i32.const 29416 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 18822 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 18822 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 12604 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $36 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $4 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $4 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.set $4 + local.get $2 + if $if_3 + local.get $4 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_4 + end ;; $if_0 + local.get $5 + global.set $36 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $20) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $36 + local.set $8 + global.get $36 + i32.const 16 + i32.add + global.set $36 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $36 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $36 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $36 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $36 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 17991 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $36 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 17991 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEi (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 21384 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $36 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 1072 + i32.add + global.set $36 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 30160 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 21523 + i32.store + i32.const 21473 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5528 + local.get $0 + local.get $5 + i32.const 5528 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 194 + i32.add + call_indirect $32 (type $5) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 127 + i32.and + call_indirect $32 (type $4) + local.set $0 + local.get $4 + i32.const 21523 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 21387 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 21523 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 21432 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 21511 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 4496 + i32.add + global.set $36 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $36 + local.get $0 + ) + + (func $_abort_message (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $1 + i32.store + i32.const 9256 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5552 + i32.const 5536 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 764 + i32.add + call_indirect $32 (type $2) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 788 + i32.add + call_indirect $32 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 780 + i32.add + call_indirect $32 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 788 + i32.add + call_indirect $32 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 780 + i32.add + call_indirect $32 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 788 + i32.add + call_indirect $32 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 764 + i32.add + call_indirect $32 (type $2) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 21702 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 21705 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 21710 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 21724 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 30160 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 19 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 31 + i32.and + i32.const 216 + i32.add + call_indirect $32 (type $8) + i32.const 21662 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 27057 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21758 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21763 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21768 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21773 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21785 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21799 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21805 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21820 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21824 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21837 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21842 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21856 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_107 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_108 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_108 - local.get $4 - i32.const 162 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_109 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_109 - local.tee $1 - local.get $2 - i32.lt_u - if $if_110 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_110 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_111 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_111 - local.get $4 - i32.const 166 + i32.store + local.get $0 + i32.const 21866 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21875 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21893 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21899 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21911 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 21922 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21926 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21936 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21947 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21957 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21967 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_112 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_112 - local.tee $1 - local.get $2 - i32.lt_u - if $if_113 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_113 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 21976 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21985 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21990 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 22005 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 80 + i32.add + global.set $36 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 26758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 26761 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 26770 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 26773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 26776 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 26779 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 26782 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 26573 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 26537 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 26412 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 25468 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 25471 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 25478 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 25481 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 25487 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 25490 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $36 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 21985 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $36 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 9612 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $4 + i32.const 22020 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9700 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 22170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 22185 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 22203 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 22215 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 22228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22241 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 22115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 22125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 22138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 22145 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 22153 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 22161 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9744 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22379 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9788 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 22396 + i32.const 22394 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 9832 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 22463 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 22461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + end ;; $block + local.get $3 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 22449 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9876 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $36 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9920 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 22576 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9964 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 352 + i32.add + global.set $36 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 23105 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_114 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_114 - local.get $4 - i32.const 168 - i32.add - local.tee $2 - local.tee $1 - if $if_115 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 22396 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_115 - local.tee $1 - local.get $2 - i32.lt_u - if $if_116 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_116 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_117 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 22394 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_117 - local.get $4 - i32.const 172 - i32.add - local.tee $2 - local.tee $1 - if $if_118 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_118 - local.tee $1 - local.get $2 - i32.lt_u - if $if_119 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 - local.get $4 - i32.const 178 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 - local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 + i32.store + local.get $8 + i32.const 22394 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 - i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 23108 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 23111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 23113 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 23113 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 186 - i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 + i32.store local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 i32.add - local.tee $2 local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 + br $block_37 + end ;; $block_38 local.get $4 - i32.const 196 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 - local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 local.get $4 - i32.const 198 - i32.add - local.tee $2 - local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_139 - local.tee $1 - local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 23123 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 23125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 22461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 23127 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 23130 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 23132 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 23135 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 23137 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 23140 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 23143 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 23146 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 23149 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 23152 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 22995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 23156 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 22461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 23159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 23162 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 23162 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 23165 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 22995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 23168 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 23170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 23173 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 23175 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 23178 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 23182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 23184 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 23187 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 23187 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 23182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 23190 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 23193 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 23195 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 23198 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 23201 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 23205 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 23205 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 23214 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 23214 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 23223 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 160 + i32.add + global.set $36 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 22678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 22686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 22690 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 21768 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 21773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 21785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 21799 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 21805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 30182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 22694 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 22696 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 22698 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 22701 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 22704 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 21866 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 21875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 21702 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10008 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10052 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 22760 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10096 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 22821 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10140 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 22880 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10184 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 22940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 22945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10228 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 22995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10272 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 25351 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 25354 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 288 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 25204 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 22396 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 25207 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 22394 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 25210 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 23108 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 25213 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 23111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 25216 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 23123 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 25219 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 23127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 25222 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 23130 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 25225 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 23132 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 25228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 23135 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 25231 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 23137 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 25234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 23140 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 25237 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 23143 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 25240 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 25243 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 23146 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 25246 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 23149 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 25249 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 23152 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 25252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 25255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 22995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 25258 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 23156 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 25261 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 22461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 25264 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 23159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 25267 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 23165 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 25270 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 23170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 25273 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 23173 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 25276 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 23175 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 25279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 23182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 25282 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 23184 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 25285 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 23193 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 25288 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 23195 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 25291 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 23198 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 25294 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 23201 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 24992 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 24131 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 23105 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 24135 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 23105 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 23719 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 23722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 23725 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10316 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 23229 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10360 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10404 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 23380 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10448 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10492 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 23442 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10536 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 21922 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 22576 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 23568 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10580 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $5 + i32.const 23580 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $6 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 23627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10624 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 23644 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 23650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 23708 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $28) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $6 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10668 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 23728 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 23740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 23744 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10712 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 23947 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10756 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 23838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 23844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10800 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 23844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 23958 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10844 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10888 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 24024 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 24082 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 24197 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 24200 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 24138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24203 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24214 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24224 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24235 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24245 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24256 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24266 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24276 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24294 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24304 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24314 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24325 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24335 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24346 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24357 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24368 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24378 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24389 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24400 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24411 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24423 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24433 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24443 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24294 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24454 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24465 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24476 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24491 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24433 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24502 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24512 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24525 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24536 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24546 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24557 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24569 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24579 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24590 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24569 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24601 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24612 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24622 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24632 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24643 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24654 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 24666 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 24678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 24742 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 24758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 23125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11152 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 24138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 24921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 24138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 24934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 24941 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 24995 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11284 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 25093 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11328 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11372 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 25151 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 25154 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $19) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $5 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11416 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 25297 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 25302 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $36 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11460 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 25351 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $1) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 11504 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 130 + i32.add + call_indirect $32 (type $6) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11548 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 25558 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 25876 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 25816 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 25554 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 25558 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $4 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 25620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11592 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 25561 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 25681 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 25684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 25687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11636 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11680 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 25690 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 25698 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11724 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 25753 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 25762 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11812 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 23125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 22170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 22185 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 25972 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 26043 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 26093 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 26143 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $1) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 22115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 22125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 22125 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 25929 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 25943 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 25957 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11900 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 local.get $5 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.store - end ;; $block + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 26305 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 11988 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 48 + i32.add + global.set $36 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 end ;; $if - local.get $8 - global.set $32 + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 26365 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + local.get $3 + global.set $36 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) @@ -80846,549 +108611,1119 @@ (local $3 i32) (local $4 i32) (local $5 i32) - local.get $2 + global.get $36 + local.set $3 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 26415 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) local.get $0 - i32.add - local.tee $5 i32.load - local.get $4 - i32.lt_u - local.set $3 + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - i32.const 4 - i32.add local.get $0 + i32.load + i32.store + local.get $5 + local.get $4 + i32.store offset=4 local.get $3 - select - local.set $0 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12076 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 26471 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 26547 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 26554 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $36 local.get $0 ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $1 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $3) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 12120 + i32.store + local.get $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memcpy - drop - end ;; $if + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $6) (param $0 i32) - loop $loop - i32.const 20088 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 20784 - i32.const 20756 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 20088 - i32.load - i32.eqz - if $if_0 - i32.const 20088 - i32.const 1 - i32.store - local.get $0 - i32.const 363 - call_indirect $28 (type $0) - i32.const 20088 - i32.const -1 - i32.store - end ;; $if_0 + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE ) - (func $__Znwm (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $6) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) local.get $0 - i32.const 1 - local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 20840 - i32.const 20840 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 31 - i32.and - i32.const 216 - i32.add - call_indirect $28 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 15165 - call $_strlen + (local $3 i32) + local.get $0 + i32.load offset=12 local.tee $2 - i32.const 13 - i32.add - call $__Znwm - local.tee $1 - local.get $2 - i32.store - local.get $1 + i32.load + i32.load offset=16 + local.set $3 local.get $2 - i32.store offset=4 local.get $1 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add - local.tee $1 - i32.const 15165 - local.get $2 - i32.const 1 + local.get $3 + i32.const 255 + i32.and + i32.const 504 i32.add - call $_memcpy - drop + call_indirect $32 (type $1) local.get $0 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $1) (param $0 i32) + (param $1 i32) + (local $2 i32) local.get $0 - i32.const 8616 - i32.store + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 - i32.const 4 + local.get $1 + local.get $2 + i32.const 255 + i32.and + i32.const 504 i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc + call_indirect $32 (type $1) ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if - local.get $0 - local.get $1 - i32.load + local.get $4 + i32.const 26583 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - local.get $1 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 26590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 i64.load align=4 i64.store align=4 - local.get $0 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 - i32.store offset=8 - end ;; $if + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 + local.get $2 + i32.const 26600 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add + i64.load align=4 + i64.store + local.get $4 local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE local.get $3 - global.set $32 + global.set $36 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12164 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.load offset=8 local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $36 + local.set $3 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if - local.tee $4 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $4 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 - local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.set $4 - local.get $2 - if $if_3 - local.get $4 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $2 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_4 - end ;; $if_0 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22467 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 local.get $5 - global.set $32 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $19) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $28) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $32 - local.set $8 - global.get $32 + (result i32) + (local $6 i32) + (local $7 i32) + global.get $36 + local.set $6 + global.get $36 i32.const 16 i32.add - global.set $32 - i32.const -18 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + global.set $36 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load local.set $2 local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 local.get $3 - local.get $5 - i32.sub - local.tee $3 local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 - local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $36 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 9656 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or + i32.const 15 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 12252 + i32.store + local.get $0 + local.get $1 i32.store offset=8 local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 local.get $3 - local.get $6 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.load + i32.load offset=16 + local.set $4 local.get $0 - local.get $2 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $32 + call_indirect $32 (type $1) + local.get $2 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) (local $2 i32) @@ -81397,1919 +109732,2350 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 + i32.const 12 + i32.add local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 local.get $1 - i32.const 16 - i32.add - i32.const -16 + local.get $4 + i32.const 255 i32.and - i32.const -1 + i32.const 504 i32.add - local.get $2 - select - local.tee $7 - local.get $3 - i32.ne + call_indirect $32 (type $1) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 26583 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if + local.get $4 + i32.const 2 + i32.and + if $if_0 + local.get $7 + i32.const 26590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block + local.get $8 + i32.const 26600 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 26785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 26788 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $32 + global.get $36 local.set $2 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12296 + i32.store + local.get $0 local.get $2 - global.set $32 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $36 + local.set $2 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 26841 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $32 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + i32.load + local.set $1 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 16 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12340 + i32.store local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $36 local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 26905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - i32.store - local.get $0 - local.get $6 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $32 - local.set $5 - global.get $32 + global.get $36 + local.set $3 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $3 - i32.sub + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $4 - i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $32 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 local.get $0 + i32.const 12384 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $36 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $3) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - global.get $32 + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 24 + i32.add local.set $3 - global.get $32 + local.get $2 i32.const 16 i32.add - global.set $32 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + local.set $4 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.const 14334 + i32.load offset=8 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 25154 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.add local.get $3 - i32.load8_s - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $32 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $36 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $4) (param $0 i32) - (param $1 i32) + (result i32) + (local $1 i32) (local $2 i32) (local $3 i32) - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl + (local $4 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 27186 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop - local.get $0 - i32.const 14334 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 local.get $3 - i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + global.set $36 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop ) - (func $__ZNSt3__29to_stringEi (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $1) (param $0 i32) (param $1 i32) - (local $2 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if - local.get $2 - global.set $32 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) - local.get $0 - i64.const 0 - i64.store align=4 + i32.store8 local.get $0 i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + i32.store8 offset=1 local.get $0 - local.get $0 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - ) - - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $3) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $5 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $1 - i32.load8_s offset=11 - local.tee $3 + i32.store offset=4 + local.get $0 i32.const 0 - i32.lt_s - if $if (result i32) - local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.set $4 - loop $loop - block $block - local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $2 - i32.store - local.get $1 - local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 17729 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + i32.store8 offset=8 local.get $0 local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 + i32.load offset=336 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $32 + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $32 - local.set $1 - global.get $32 - i32.const 48 - i32.add - global.set $32 - local.get $1 - i32.const 32 + local.get $0 + i32.const 332 i32.add - local.set $5 - local.get $1 - i32.const 24 + local.tee $3 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 i32.add local.set $2 local.get $1 - i32.const 16 - i32.add - local.set $3 - local.get $1 - i32.const 36 - i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 - if $if - local.get $0 - i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 17868 - i32.store - i32.const 17818 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5576 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5576 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 194 - i32.add - call_indirect $28 (type $5) - if $if_3 local.get $4 + i32.ge_u + br_if $block_0 + local.get $3 i32.load - local.tee $0 + local.get $0 + i32.const 2 + i32.shl + i32.add i32.load + local.tee $5 i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 127 - i32.and - call_indirect $28 (type $4) - local.set $0 - local.get $1 - i32.const 17868 - i32.store - local.get $1 + local.tee $6 local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 17732 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 17868 - i32.store - local.get $3 + i32.load offset=4 local.get $2 - i32.store offset=4 - i32.const 17777 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 - end ;; $if - i32.const 17856 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $32 - local.set $1 - global.get $32 - i32.const 16 - i32.add - global.set $32 - block $block (result i32) - i32.const 0 - i32.const 20832 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 235 - call_indirect $28 (type $8) - i32.const 20832 - i32.const 324508639 - i32.store + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 i32.const 0 end ;; $block - if $if - i32.const 18007 - local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 20836 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load - end ;; $block_0 - local.set $0 - local.get $1 - global.set $32 - local.get $0 - return - end ;; $if - i32.const 0 ) - (func $_abort_message (type $1) + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $4) (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $32 - local.set $2 - global.get $32 - i32.const 16 - i32.add - global.set $32 - local.get $2 - local.get $1 - i32.store - i32.const 8252 + (result i32) + (local $1 i32) + local.get $0 i32.load + local.tee $0 local.tee $1 - local.get $0 - local.get $2 - call $_vfprintf - drop + i32.load offset=4 local.get $1 - call $_fputc - call $_abort - ) - - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const -64 + i32.load i32.sub - global.set $32 - local.get $0 - local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u if $if_0 (result i32) - local.get $1 - i32.const 5600 - i32.const 5584 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 508 - i32.add - call_indirect $28 (type $2) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 + local.get $0 + i32.load8_s else i32.const 0 end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 end ;; $if - local.set $0 - local.get $3 - global.set $32 - local.get $0 + i32.const 1 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $29) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) - local.get $1 - i32.load offset=8 + (param $6 i32) + (result i32) local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $29) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $36 + local.set $7 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $7 + i32.const 8 + i32.add + local.set $8 + local.get $0 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $2 + local.get $8 + local.get $3 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $36 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - local.get $1 - i32.load - local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $30) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 18 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 12472 + i32.store + local.get $0 local.get $1 - i32.load offset=8 + i32.store offset=8 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $4 + i32.store offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + local.get $0 + local.get $6 + i32.store8 offset=32 ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.load offset=16 - local.tee $3 + i32.load offset=8 + local.tee $4 if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 + local.get $5 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) local.get $0 - i32.const 1 - i32.store offset=36 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 22390 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 end ;; $if + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $36 + local.set $3 + global.get $36 + i32.const -64 + i32.sub + global.set $36 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 22392 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 16 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 22388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=4 - i32.eq + i32.load offset=8 + local.tee $5 if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block + local.get $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 255 + i32.and + i32.const 504 + i32.add + call_indirect $32 (type $1) + end ;; $if + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 26583 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 26590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 26600 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 local.get $0 + i32.load8_s offset=32 i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 26785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 26788 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12516 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $36 + local.get $0 ) - (func $___dynamic_cast (type $5) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $1) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $32 - local.set $3 - global.get $32 - i32.const -64 - i32.sub - global.set $32 - local.get $0 - local.get $0 - i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + global.get $36 + local.set $2 + global.get $36 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $36 + local.get $2 + i32.const 8 i32.add - i32.load - local.set $4 + local.set $3 + local.get $2 + i32.const 27124 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.store offset=4 - local.get $3 + i32.const 8 + i32.add local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $2 - local.get $4 - i32.eq + global.set $36 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $0 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 + local.get $1 + local.get $0 i32.const 1 - i32.const 0 - local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 + local.get $1 + i32.load offset=4 i32.eq - select + if $if_0 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor + end ;; $if_0 else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 i32.const 1 - i32.const 0 - local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 516 - i32.add - call_indirect $28 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $2 + local.get $0 i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 i32.eq - i32.and - local.get $3 - i32.load offset=32 + if $if_4 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor + end ;; $if_4 + else i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 + end ;; $if_3 + end ;; $if_2 + else i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block + end ;; $if_1 end ;; $if local.set $0 + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27220 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27245 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $3 - global.set $32 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 local.get $0 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27265 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27287 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 516 - i32.add - call_indirect $28 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 524 - i32.add - call_indirect $28 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27305 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $3) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) + local.get $0 + i32.const 9656 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 12560 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $1) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) (local $4 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 32 + i32.add + global.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 27346 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 27371 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 508 - i32.add - call_indirect $28 (type $2) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $36 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $32 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm local.set $0 - global.get $32 + local.get $2 + i32.const 27434 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 i32.const 16 i32.add - global.set $32 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 20836 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 18056 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $32 - end ;; $if + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) - (local $1 i32) - global.get $32 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27480 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $32 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 20836 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 18106 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $32 - end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $36 + local.set $2 + global.get $36 + i32.const 16 + i32.add + global.set $36 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 27503 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $36 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $3) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 8616 + i32.const 12604 i32.store local.get $0 i32.const 4 @@ -83341,9 +112107,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -83358,7 +112122,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -83372,10 +112137,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -83385,20 +112153,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -83415,72 +112183,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -83494,10 +112332,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -83519,7 +112358,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -83659,145 +112500,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -83809,10 +112655,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -83877,20 +112724,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -83910,11 +112761,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) + call_indirect $32 (type $2) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -83966,9 +112817,9 @@ local.get $8 i32.const 3 i32.and - i32.const 524 + i32.const 788 i32.add - call_indirect $28 (type $13) + call_indirect $32 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -84018,9 +112869,9 @@ local.get $7 i32.const 7 i32.and - i32.const 516 + i32.const 780 i32.add - call_indirect $28 (type $7) + call_indirect $32 (type $7) ) (func $___cxa_can_catch (type $5) @@ -84030,12 +112881,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $32 + global.get $36 local.set $3 - global.get $32 + global.get $36 i32.const 16 i32.add - global.set $32 + global.set $36 local.get $3 local.get $2 i32.load @@ -84052,7 +112903,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) local.tee $0 if $if local.get $2 @@ -84061,7 +112912,7 @@ i32.store end ;; $if local.get $3 - global.set $32 + global.set $36 local.get $0 i32.const 1 i32.and @@ -84073,8 +112924,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5600 - i32.const 5688 + i32.const 5552 + i32.const 6720 call $___dynamic_cast i32.const 0 i32.ne @@ -84536,7 +113387,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $31 + global.get $35 i32.load local.tee $2 i32.add @@ -84574,7 +113425,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $31 + global.get $35 local.get $1 i32.store local.get $2 @@ -84588,10 +113439,10 @@ local.get $0 i32.const 127 i32.and - call_indirect $28 (type $4) + call_indirect $32 (type $4) ) - (func $dynCall_iidiiii (type $26) + (func $dynCall_iidiiii (type $31) (param $0 i32) (param $1 i32) (param $2 f64) @@ -84611,7 +113462,7 @@ i32.and i32.const 128 i32.add - call_indirect $28 (type $11) + call_indirect $32 (type $11) ) (func $dynCall_iii (type $5) @@ -84626,10 +113477,10 @@ i32.and i32.const 130 i32.add - call_indirect $28 (type $6) + call_indirect $32 (type $6) ) - (func $dynCall_iiii (type $18) + (func $dynCall_iiii (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -84643,7 +113494,7 @@ i32.and i32.const 194 i32.add - call_indirect $28 (type $5) + call_indirect $32 (type $5) ) (func $dynCall_vi (type $1) @@ -84651,11 +113502,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 127 + i32.const 255 i32.and i32.const 248 i32.add - call_indirect $28 (type $0) + call_indirect $32 (type $0) ) (func $dynCall_vii (type $3) @@ -84665,11 +113516,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 127 + i32.const 255 i32.and - i32.const 376 + i32.const 504 i32.add - call_indirect $28 (type $1) + call_indirect $32 (type $1) ) (func $dynCall_viii (type $2) @@ -84683,9 +113534,9 @@ local.get $0 i32.const 3 i32.and - i32.const 504 + i32.const 760 i32.add - call_indirect $28 (type $3) + call_indirect $32 (type $3) ) (func $dynCall_viiii (type $7) @@ -84699,11 +113550,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 508 + i32.const 764 i32.add - call_indirect $28 (type $2) + call_indirect $32 (type $2) ) (func $dynCall_viiiii (type $13) @@ -84721,12 +113572,12 @@ local.get $0 i32.const 7 i32.and - i32.const 516 + i32.const 780 i32.add - call_indirect $28 (type $7) + call_indirect $32 (type $7) ) - (func $dynCall_viiiiii (type $27) + (func $dynCall_viiiiii (type $30) (param $0 i32) (param $1 i32) (param $2 i32) @@ -84743,9 +113594,9 @@ local.get $0 i32.const 3 i32.and - i32.const 524 + i32.const 788 i32.add - call_indirect $28 (type $13) + call_indirect $32 (type $13) ) (func $b0 (type $4) @@ -84881,7 +113732,7 @@ i32.and i32.const 210 i32.add - call_indirect $28 (type $10) + call_indirect $32 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -84891,7 +113742,7 @@ i32.wrap_i64 ) - (func $legalstub$dynCall_jiji (type $17) + (func $legalstub$dynCall_jiji (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -84913,7 +113764,7 @@ i32.and i32.const 214 i32.add - call_indirect $28 (type $12) + call_indirect $32 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -84938,9 +113789,9 @@ i64.shl i64.or local.get $4 - i32.const 528 - call_indirect $28 (type $9) + i32.const 792 + call_indirect $32 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\91\04\80\08\d0\ac\c1\02\b0\ac\01\c0\ac\01" + ;; "\00\02\00\04\00\80\02\99\06\80\08\c0\f5\c1\02\a0\f5\01\b0\f5\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/headers_cpp.cc b/test/extensions/filters/http/wasm/test_data/headers_cpp.cc index a7affb5934ba7..8b828c2784cfb 100644 --- a/test/extensions/filters/http/wasm/test_data/headers_cpp.cc +++ b/test/extensions/filters/http/wasm/test_data/headers_cpp.cc @@ -21,7 +21,7 @@ FilterHeadersStatus ExampleContext::onRequestHeaders() { logInfo(std::string("header path ") + std::string(path->view())); std::string protocol; // Should not be found. - if (MetadataResult::Ok == getRequestProtocol(&protocol)) { + if (WasmResult::Ok == getRequestProtocol(&protocol)) { logInfo(std::string("request protocol response ") + protocol); } addRequestHeader("newheader", "newheadervalue"); diff --git a/test/extensions/filters/http/wasm/test_data/headers_cpp.wasm b/test/extensions/filters/http/wasm/test_data/headers_cpp.wasm index 1164069144f75..72bdc8a69270b 100644 Binary files a/test/extensions/filters/http/wasm/test_data/headers_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/headers_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/headers_cpp.wat b/test/extensions/filters/http/wasm/test_data/headers_cpp.wat index fe751c6ef7bc6..1fbf289edc97d 100644 --- a/test/extensions/filters/http/wasm/test_data/headers_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/headers_cpp.wat @@ -20,16 +20,19 @@ (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,20 +44,21 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_getMetadata" (func $_proxy_getMetadata (param i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_proxy_getRequestBodyBufferBytes" (func $_proxy_getRequestBodyBufferBytes (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 439 439 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -107,46 +111,72 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 17008)) - (global $31 (mut i32) (i32.const 5259888)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 26480)) + (global $33 (mut i32) (i32.const 5269360)) + (elem $34 $28 (global.get $30) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv - $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close - $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $b2 + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN14ExampleContext13onRequestBodyEmb $__ZN7Context14onResponseBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN7Context14onResponseBodyEmb - $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv + $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContext6onDoneEv $__ZN14ExampleContext5onLogEv $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev - $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev - $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv - $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv - $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 - $b8 $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE - $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double + $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev + $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev + $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv + $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "\07+\00\00\0c+\00\00\14+\00\00\1a+") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "\f49\00\00\f99\00\00\01:\00\00\07:") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -176,229 +206,385 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00$\1a\00\00}\1b\00\00L\1a\00\00t\1b\00\00p\11\00\00\00\00\00\00L" - "\1a\00\00c\1b\00\00x\11\00\00\00\00\00\00$\1a\00\00\15\1c\00\00L\1a\00\00\9c\1b\00\00\98\11\00\00\00\00\00\00$\1a\00\00w\1c\00\00$\1a\00\00|\1c\00\00\b8\1a\00\00~\1d\00\00\00" - "\00\00\00\01\00\00\00\d8\11\00\00\00\00\00\00$\1a\00\00\bd\1d\00\00L\1a\00\00\a0'\00\00\a0\12\00\00\00\00\00\00L\1a\00\00\82&\00\00\00\12\00\00\00\00\00\00L\1a\00\00? \00\00\10" - "\12\00\00\00\00\00\00L\1a\00\00o \00\00 \12\00\00\00\00\00\00L\1a\00\005!\00\00\a0\12\00\00\00\00\00\00L\1a\00\00O&\00\00\a0\12\00\00\00\00\00\00\b8\1a\00\00\0d%\00\00\00" - "\00\00\00\01\00\00\00X\12\00\00\00\00\00\00$\1a\00\00z%\00\00L\1a\00\00i&\00\00\a0\12\00\00\00\00\00\00L\1a\00\00\d3'\00\00p\11\00\00\00\00\00\00L\1a\00\00\02(\00\00\90" - "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4768) - "$\1a\00\00\03-\00\00L\1a\00\00\d40\00\00\c8\12\00\00\00\00\00\00L\1a\00\00\901\00\00\c8\12\00\00\00\00\00\00$\1a\00\00\\2\00\00\05") - (data $52 $27 (i32.const 4828) - "/") - (data $53 $27 (i32.const 4852) - "\09\00\00\00\01\00\00\00\9b=") - (data $54 $27 (i32.const 4876) - "\02") - (data $55 $27 (i32.const 4891) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 4960) - "\05") - (data $57 $27 (i32.const 4972) - "/") - (data $58 $27 (i32.const 4996) - "\n\00\00\00\01\00\00\00\a85\00\00\00\04") - (data $59 $27 (i32.const 5020) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00<\1e\00\00C+\00\00d\1e\00\00:+\00\00p\11\00\00\00\00\00\00d" + "\1e\00\00)+\00\00x\11\00\00\00\00\00\00<\1e\00\00b+\00\00<\1e\00\00g+\00\00\80*\00\00i,\00\00\00\00\00\00\01\00\00\00\c0\11\00\00\00\00\00\00<\1e\00\00\a8,\00\00d" + "\1e\00\00\8d6\00\00\88\12\00\00\00\00\00\00d\1e\00\00o5\00\00\e8\11\00\00\00\00\00\00d\1e\00\00,/\00\00\f8\11\00\00\00\00\00\00d\1e\00\00\\/\00\00\08\12\00\00\00\00\00\00d" + "\1e\00\00\"0\00\00\88\12\00\00\00\00\00\00d\1e\00\00<5\00\00\88\12\00\00\00\00\00\00\80*\00\00\fa3\00\00\00\00\00\00\01\00\00\00@\12\00\00\00\00\00\00<\1e\00\00g4\00\00d" + "\1e\00\00V5\00\00\88\12\00\00\00\00\00\00d\1e\00\00\c06\00\00p\11\00\00\00\00\00\00d\1e\00\00\ef6\00\00x\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4744) + "<\1e\00\00\f0;\00\00d\1e\00\00\c1?\00\00\b0\12\00\00\00\00\00\00d\1e\00\00}@\00\00\b0\12\00\00\00\00\00\00<\1e\00\00IA\00\00\05") + (data $54 $29 (i32.const 4804) + "-") + (data $55 $29 (i32.const 4828) + "\09\00\00\00\01\00\00\00\a8Z\00\00\00\04") + (data $56 $29 (i32.const 4852) "\01") - (data $60 $27 (i32.const 5035) + (data $57 $29 (i32.const 4867) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5140) + (data $58 $29 (i32.const 4936) + "\05") + (data $59 $29 (i32.const 4948) + "-") + (data $60 $29 (i32.const 4972) + "\n\00\00\00\01\00\00\00\96b") + (data $61 $29 (i32.const 4996) + "\02") + (data $62 $29 (i32.const 5011) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5116) "\0b") - (data $62 $27 (i32.const 5179) + (data $64 $29 (i32.const 5155) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5248) - "L\1a\00\00\d52\00\00\90\14\00\00\00\00\00\00$\1a\00\00\973\00\00L\1a\00\00\f73\00\00\a8\14\00\00\00\00\00\00L\1a\00\00\a43\00\00\b8\14\00\00\00\00\00\00$\1a\00\00\c53\00\00" - "L\1a\00\00\d23\00\00\98\14\00\00\00\00\00\00L\1a\00\00\d94\00\00\90\14\00\00\00\00\00\00L\1a\00\00\e94\00\00\d0\14\00\00\00\00\00\00L\1a\00\00\1e5\00\00\a8\14\00\00\00\00\00\00" - "L\1a\00\00\fa4\00\00\f0\14\00\00\00\00\00\00L\1a\00\00@5\00\00\a8\14\00\00\00\00\00\00\9c\1a\00\00h5\00\00\9c\1a\00\00j5\00\00L\1a\00\00l5\00\00\98\14") - (data $64 $27 (i32.const 5444) + (data $65 $29 (i32.const 5224) + "d\1e\00\00\c0A\00\00x\14\00\00\00\00\00\00<\1e\00\00\82B\00\00d\1e\00\00\e2B\00\00\90\14\00\00\00\00\00\00d\1e\00\00\8fB\00\00\a0\14\00\00\00\00\00\00<\1e\00\00\b0B\00\00" + "d\1e\00\00\bdB\00\00\80\14\00\00\00\00\00\00d\1e\00\00rD\00\00\c8\14\00\00\00\00\00\00<\1e\00\00\a1D\00\00d\1e\00\00UE\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\98E\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\e5E\00\00\c8\14\00\00\00\00\00\00d\1e\00\00+F\00\00\c8\14\00\00\00\00\00\00d\1e\00\00[F\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\99F\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\caF\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\1aG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00SG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8eG\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\caG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\0dH\00\00\c8\14\00\00\00\00\00\00d\1e\00\00;H\00\00\c8\14\00\00\00\00\00\00d\1e\00\00nH\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00*I\00\00\c8\14\00\00\00\00\00\00d\1e\00\00WI\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\88I\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\c6I\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00>J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\03J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\85J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\ceJ\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00)K\00\00\c8\14\00\00\00\00\00\00d\1e\00\00TK\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8eK\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\c2K\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\12L\00\00\c8\14\00\00\00\00\00\00d\1e\00\00AL\00\00\c8\14\00\00\00\00\00\00d\1e\00\00zL\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\b3L\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\d8N\00\00\c8\14\00\00\00\00\00\00d\1e\00\00&O\00\00\c8\14\00\00\00\00\00\00d\1e\00\00aO\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\8dO\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\d7O\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\0cP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00?P\00\00\c8\14\00\00\00\00\00\00d\1e\00\00vP\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\abP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00AQ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00sQ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\a5Q\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\fdQ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00ER\00\00\c8\14\00\00\00\00\00\00d\1e\00\00}R\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\cbR\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\nS\00\00\c8\14\00\00\00\00\00\00d\1e\00\00MS\00\00\c8\14\00\00\00\00\00\00d\1e\00\00~S\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\b8T\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\f8T\00\00\c8\14\00\00\00\00\00\00d\1e\00\00+U\00\00\c8\14\00\00\00\00\00\00d\1e\00\00eU\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9eU\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\dbU\00\00\c8\14\00\00\00\00\00\00d\1e\00\00XV\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\84V\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\baV\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\0eW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00FW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\89W\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\baW\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\eaW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00%X\00\00\c8\14\00\00\00\00\00\00d\1e\00\00gX\00\00\c8\14\00\00\00\00\00\00d\1e\00\00VY\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\e1Y\00\00x\14\00\00\00\00\00\00d\1e\00\00\f1Y\00\00\f0\18\00\00\00\00\00\00d\1e\00\00\02Z\00\00\90\14\00\00\00\00\00\00d\1e\00\00$Z\00\00" + "\10\19\00\00\00\00\00\00d\1e\00\00HZ\00\00\90\14\00\00\00\00\00\00d*\00\00pZ\00\00d*\00\00rZ\00\00d*\00\00tZ\00\00d\1e\00\00vZ\00\00\80\14") + (data $66 $29 (i32.const 6508) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" - "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\a0\11\00\00\08\00\00\00\09\00\00\00\0b\00\00\00" - "\01\00\00\00\n\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $65 $27 (i32.const 5617) - "\12\00\00\0c\00\00\00\0d\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12" - "\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00`\12\00\00\0f\00\00\00\10\00\00\00\06\00\00\00\16\00\00\00\07\00\00\00\17\00\00\00\18\00\00\00\11\00\00\00\19\00\00\00\03" - "\00\00\00\07\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00\06\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\e0\11\00\00\12\00\00\00\13\00\00\00\09\00\00\00\1c\00\00\00\09\00\00\00\1d" - "\00\00\00\1e\00\00\00\14\00\00\00\1f\00\00\00\03\00\00\00\n\00\00\00\n\00\00\00 \00\00\00\0b\00\00\00\06\00\00\00!\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\0c\00\00\00\15" - "\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13" - "\00\00\00\"\00\00\00#\00\00\00\00\00\00\000\12\00\00\16\00\00\00\17\00\00\00\0c\00\00\00$\00\00\00\0b\00\00\00%\00\00\00&\00\00\00\18\00\00\00'\00\00\00\03\00\00\00\0d\00\00\00\0c" - "\00\00\00(\00\00\00\0e\00\00\00\06\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00 \12\00\00\0c\00\00\00\19\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e" - "\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\1a\00\00\00\1b" - "\00\00\00*\00\00\00+\00\00\00\01\00\00\00\02\00\00\00\0f\00\00\00\10\00\00\00\1c\00\00\00\11\00\00\00\01\00\00\00\12\00\00\00\13\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00x" - "\11\00\00\01\00\00\00\1d\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00,\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\1e" - "\00\00\00\1f\00\00\00\06\00\00\00\00\00\00\00\80\12\00\00 \00\00\00!\00\00\00-\00\00\00\00\00\00\00\a8\12\00\00\"\00\00\00#\00\00\00\06\00\00\00\15\00\00\00\01\00\00\00\07\00\00\00." - "\00\00\00\00\00\00\00\b8\12\00\00\"\00\00\00$\00\00\00\08\00\00\00\16\00\00\00\02\00\00\00\07\00\00\00.") - (data $66 $27 (i32.const 6365) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\8c=\00\00\91=\00\00\10\0d\00\00\d0\12\00\00`\13") - (data $67 $27 (i32.const 6604) - "\1c;") - (data $68 $27 (i32.const 6664) - "\80\14\00\00%\00\00\00&\00\00\000\00\00\00\02\00\00\00\00\00\00\00\98\14\00\00'\00\00\00(\00\00\00)\00\00\00*\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00" - "\c0\14\00\00'\00\00\00+\00\00\00)\00\00\00*\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\00\00\00\00\d0\14\00\00,\00\00\00-\00\00\001\00\00\00\00\00\00\00\e0\14\00\00" - ",\00\00\00.\00\00\001\00\00\00\00\00\00\00\10\15\00\00'\00\00\00/\00\00\00)\00\00\00*\00\00\00\0d\00\00\00\00\00\00\000\15\00\00'\00\00\000\00\00\00)\00\00\00*\00\00\00" - "\0c\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00onRequestHeaders \00:path\00header path \00request pro" - "tocol response \00newheader\00newheadervalue\00server\00envoy-wasm\00onReq" - "uestBody \00onLog \00 \00onDone \0014ExampleContext\007Context\0011ContextBa" - "se\00request.protocol\00NSt3__210__function6__funcI3$_0NS_9allocator" - "IS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11Ro" - "otContextEEE\00NSt3__210__function6__baseIFNS_10unique_ptrI7Contex" - "tNS_14default_deleteIS3_EEEEjP11RootContextEEE\003$_0\00N6google8pro" - "tobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_str" - "ingIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMeta" - "dataWithArenaLiteEE9ContainerE\00/usr/local/include/google/protobu" - "f/arenastring.h\00CHECK failed: initial_value != NULL: \00NSt3__212b" - "asic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221__" - "basic_string_commonILb1EEE\00/home/jplev_google_com/envoy/api/wasm" - "/cpp/struct_lite.pb.cc\00/usr/local/include/google/protobuf/repeat" - "ed_field.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index) " - "< (current_size_): \00/usr/local/include/google/protobuf/map.h\00CHE" - "CK failed: (bucket_index_ & 1) == (0): \00CHECK failed: m_->index_" - "of_first_non_null_ == m_->num_buckets_ || m_->table_[m_->index_o" - "f_first_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHEC" - "K failed: node_ != NULL && m_ != NULL: \00google.protobuf.Value.st" - "ring_value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed: " - "(&from) != (this): \00CHECK failed: (&other) != (this): \00N6google8" - "protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8interna" - "l12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic" - "_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS" - "1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8i" - "nternal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11Me" - "ssageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9alloc" - "atorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi" - "0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntryI" - "sNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK fai" - "led: GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_first_" - "non_null_ == num_buckets_ || table_[index_of_first_non_null_] !=" - " NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end(): \00" - "CHECK failed: (count) <= (kMaxLength): \00CHECK failed: (result.bu" - "cket_index_) == (b & ~static_cast(1)): \00CHECK failed:" - " (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTre" - "e(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tre" - "e->size()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize):" - " \00CHECK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1))" - " == (0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) ==" - " 0: \00N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_tra" - "itsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8proto" - "buf4hashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9alloca" - "torIcEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local/" - "include/google/protobuf/stubs/casts.h\00down_cast\00google.protobuf." - "Struct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6goog" - "le8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNo" - "tUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsI" - "cEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTyp" - "eE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00go" - "ogle.protobuf.ListValue\00N6google8protobuf9ListValueE\00google.prot" - "obuf.Value\0011RootContext\00no context factory for root_id: \00N6goog" - "le8protobuf14FatalExceptionE\00google/protobuf/stubs/common.cc\00Thi" - "s program requires version \00%d.%d.%d\00 of the Protocol Buffer run" - "time library, but the installed version is \00. Please update you" - "r library. If you compiled the program yourself, make sure that" - " your headers are from the same version of Protocol Buffers as y" - "our link-time library. (Version verification failed in \"\00\".)\00Th" - "is program was compiled against version \00 of the Protocol Buffer" - " runtime library, which is not compatible with the installed ver" - "sion (\00). Contact the program author for an update. If you com" - "piled the program yourself, make sure that your headers are from" - " the same version of Protocol Buffers as your link-time library." - " (Version verification failed in \"\00[libprotobuf %s %s:%d] %s\n\00I" - "NFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exc" - "eeds maximum supported size\00%d\00google/protobuf/arena.cc\00CHECK fa" - "iled: (min_bytes) <= (std::numeric_limits::max() - kBloc" - "kHeaderSize): \00google/protobuf/generated_message_util.cc\00Not imp" - "lemented field number \00 with type \00CHECK failed: (scc->visit_sta" - "tus.load(std::memory_order_relaxed)) == (SCCInfoBase::kRunning):" - " \00google/protobuf/message_lite.cc\00CHECK failed: !coded_out.HadEr" - "ror(): \00(cannot determine missing fields for lite message)\00N6goo" - "gle8protobuf11MessageLiteE\00google/protobuf/repeated_field.cc\00CHE" - "CK failed: (new_size) <= ((std::numeric_limits::max() - " - "kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requested size" - " is too large to fit into size_t.\00google/protobuf/wire_format_li" - "te.cc\00CHECK failed: (value.size()) <= (kint32max): \00serializing\00" - "parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 data when \00 " - "a protocol \00buffer. Use the 'bytes' type if you intend to send r" - "aw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed: (bu" - "ffer_size) >= (0): \00A protocol message was rejected because it w" - "as too big (more than \00 bytes). To increase the limit (or to di" - "sable these warnings), see CodedInputStream::SetTotalBytesLimit(" - ") in google/protobuf/io/coded_stream.h.\00google/protobuf/io/zero_" - "copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK fa" - "iled: (last_returned_size_) > (0): \00BackUp() can only be called " - "after a successful Next().\00CHECK failed: (count) <= (last_return" - "ed_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK faile" - "d: target_ != NULL: \00CHECK failed: (count) <= (target_->size()):" - " \00Cannot allocate buffer larger than kint32max for \00StringOutput" - "Stream.\00N6google8protobuf2io18StringOutputStreamE\00google/protobu" - "f/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't suppo" - "rt aliasing. Reaching here usually means a ZeroCopyOutputStream " - "implementation bug.\00N6google8protobuf2io20ZeroCopyOutputStreamE\00" - "-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::bad_f" - "unction_call\00NSt3__217bad_function_callE\00mutex lock failed\00%u\00te" - "rminating with %s exception of type %s: %s\00terminating with %s e" - "xception of type %s\00terminating with %s foreign exception\00termin" - "ating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9" - "type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__" - "class_type_infoE\00pthread_once failure in __cxa_get_globals_fast(" - ")\00cannot create pthread key for __cxa_get_globals()\00cannot zero " - "out thread value for __cxa_get_globals()\00terminate_handler unexp" - "ectedly returned\00St11logic_error\00St12length_error\00N10__cxxabiv11" - "9__pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE\00N10__cxx" - "abiv123__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__vmi_class_t" - "ype_infoE") + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02") + (data $67 $29 (i32.const 6624) + "\01\00\00\00@\19") + (data $68 $29 (i32.const 6644) + "\98\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6668) + "\e8\11\00\00\08\00\00\00\09\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00H\12\00\00\0b\00\00\00\0c\00\00\00\05\00\00\00\14\00\00\00\06\00\00\00\15\00\00\00\16\00\00\00\0d\00\00\00\17\00\00\00" + "\02\00\00\00\06\00\00\00\07\00\00\00\18\00\00\00\07\00\00\00\05\00\00\00\19\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\c8\11\00\00\0e\00\00\00\0f\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00" + "\1b\00\00\00\1c\00\00\00\10\00\00\00\1d\00\00\00\02\00\00\00\09\00\00\00\09\00\00\00\1e\00\00\00\n\00\00\00\05\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\d8\11\00\00\08\00\00\00" + "\11\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00" + "\11\00\00\00 \00\00\00!\00\00\00\00\00\00\00\18\12\00\00\12\00\00\00\13\00\00\00\0b\00\00\00\"\00\00\00\n\00\00\00#\00\00\00$\00\00\00\14\00\00\00%\00\00\00\02\00\00\00\0c\00\00\00" + "\0b\00\00\00&\00\00\00\0d\00\00\00\05\00\00\00'\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\08\12\00\00\08\00\00\00\15\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00" + "\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00X\12\00\00\16\00\00\00" + "\17\00\00\00(\00\00\00)\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\10\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00\19\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\1a\00\00\00\1b\00\00\00\06\00\00\00\00\00\00\00h\12\00\00\1c\00\00\00\1d\00\00\00+\00\00\00\00\00\00\00\90\12\00\00\1e\00\00\00\1f\00\00\00\06\00\00\00\14\00\00\00\01\00\00\00\07\00\00\00" + ",\00\00\00\00\00\00\00\a0\12\00\00\1e\00\00\00 \00\00\00\08\00\00\00\15\00\00\00\02\00\00\00\07\00\00\00,") + (data $70 $29 (i32.const 7417) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\88b\00\00\96b\00\00\10\0d\00\00\b8\12\00\00H\13") + (data $71 $29 (i32.const 7656) + "\1c`") + (data $72 $29 (i32.const 7716) + "h\14\00\00!\00\00\00\"\00\00\00.\00\00\00\00\00\00\00\80\14\00\00#\00\00\00$\00\00\00%\00\00\00&\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\a8\14\00\00" + "#\00\00\00'\00\00\00%\00\00\00&\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\b8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00(\00\00\00)\00\00\00\00\00\00\00\c8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00(\00\00\00*\00\00\00\00\00\00\00\d0\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00(\00\00\00+\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00(\00\00\00,\00\00\00\00\00\00\00\f0\14\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00(\00\00\00-") + (data $73 $29 (i32.const 8037) + "\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00(\00\00\00.\00\00\00\00\00\00\00\10\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00 " + "\00\00\00\17\00\00\00!\00\00\00(\00\00\00/\00\00\00\00\00\00\00 \15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00(\00\00\000\00\00\00\00" + "\00\00\000\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00(\00\00\001\00\00\00\00\00\00\00@\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00%\00\00\00\17\00\00\00\18\00\00\00(\00\00\002\00\00\00\00\00\00\00P\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00(\00\00\003" + "\00\00\00\00\00\00\00`\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00(\00\00\004\00\00\00\00\00\00\00p\15\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00(\00\00\005\00\00\00\00\00\00\00\80\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\006\00\00\00\00\00\00\00\90\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00(\00\00\007\00\00\00\00\00\00\00\a0\15\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00(\00\00\008\00\00\00\00\00\00\00\b0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\009\00\00\00\00\00\00\00\c0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00(\00\00\00:\00\00\00\00\00\00\00\d0\15\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00(\00\00\00;\00\00\00\00\00\00\00\e0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00\17" + "\00\00\00\18\00\00\00(\00\00\00<\00\00\00\00\00\00\00\f0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00(\00\00\00=") + (data $74 $29 (i32.const 8741) + "\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00(\00\00\00>\00\00\00\00\00\00\00\10\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\002" + "\00\00\00\17\00\00\00\18\00\00\00(\00\00\00?\00\00\00\00\00\00\00 \16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00(\00\00\00@\00\00\00\00" + "\00\00\000\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00(\00\00\00A\00\00\00\00\00\00\00@\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\005\00\00\00\17\00\00\00\18\00\00\00(\00\00\00B\00\00\00\00\00\00\00P\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00(\00\00\00C" + "\00\00\00\00\00\00\00`\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00(\00\00\00D\00\00\00\00\00\00\00p\16\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00(\00\00\00E\00\00\00\00\00\00\00\80\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\00F\00\00\00\00\00\00\00\90\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00(\00\00\00G\00\00\00\00\00\00\00\a0\16\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00(\00\00\00H\00\00\00\00\00\00\00\b0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00I\00\00\00\00\00\00\00\c0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00(\00\00\00J\00\00\00\00\00\00\00\d0\16\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00(\00\00\00K\00\00\00\00\00\00\00\e0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00\17" + "\00\00\00B\00\00\00(\00\00\00L\00\00\00\00\00\00\00\f0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00(\00\00\00M") + (data $75 $29 (i32.const 9445) + "\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00(\00\00\00N\00\00\00\00\00\00\00\10\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00E" + "\00\00\00\17\00\00\00\18\00\00\00(\00\00\00O\00\00\00\00\00\00\00 \17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00(\00\00\00P\00\00\00\00" + "\00\00\000\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00(\00\00\00Q\00\00\00\00\00\00\00@\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00H\00\00\00\17\00\00\00\18\00\00\00(\00\00\00R\00\00\00\00\00\00\00P\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00(\00\00\00S" + "\00\00\00\00\00\00\00`\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00(\00\00\00T\00\00\00\00\00\00\00p\17\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00(\00\00\00U\00\00\00\00\00\00\00\80\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00(" + "\00\00\00V\00\00\00\00\00\00\00\90\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00(\00\00\00W\00\00\00\00\00\00\00\a0\17\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00(\00\00\00X\00\00\00\00\00\00\00\b0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00Y\00\00\00\00\00\00\00\c0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00(\00\00\00Z\00\00\00\00\00\00\00\d0\17\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00(\00\00\00[\00\00\00\00\00\00\00\e0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00\17" + "\00\00\00U\00\00\00(\00\00\00\\\00\00\00\00\00\00\00\f0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00(\00\00\00]") + (data $76 $29 (i32.const 10149) + "\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00(\00\00\00^\00\00\00\00\00\00\00\10\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00Z" + "\00\00\00[\00\00\00\18\00\00\00(\00\00\00_\00\00\00\00\00\00\00 \18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00(\00\00\00`\00\00\00\00" + "\00\00\000\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00(\00\00\00a\00\00\00\00\00\00\00@\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00\0f" + "\00\00\00^\00\00\00_\00\00\00\18\00\00\00(\00\00\00b\00\00\00\00\00\00\00P\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00(\00\00\00c" + "\00\00\00\00\00\00\00`\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00(\00\00\00d\00\00\00\00\00\00\00p\18\00\00 \00\00\00\0d\00\00\00!" + "\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00(\00\00\00e\00\00\00\00\00\00\00\80\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00(" + "\00\00\00f\00\00\00\00\00\00\00\90\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00(\00\00\00g\00\00\00\00\00\00\00\a0\18\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00(\00\00\00h\00\00\00\00\00\00\00\b0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00\18" + "\00\00\00(\00\00\00i\00\00\00\00\00\00\00\c0\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00(\00\00\00j\00\00\00\00\00\00\00\d0\18\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00(\00\00\00k\00\00\00\00\00\00\00\e0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00\17" + "\00\00\00\18\00\00\00(\00\00\00l\00\00\00\00\00\00\00\f0\18\00\00m\00\00\00n\00\00\00/") + (data $77 $29 (i32.const 10829) + "\19\00\00m\00\00\00o\00\00\00/\00\00\00\00\00\00\000\19\00\00#\00\00\00p\00\00\00%\00\00\00&\00\00\00\0d\00\00\00\00\00\00\00X\19\00\00#\00\00\00q\00\00\00%\00\00\00&" + "\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00onRequestHeaders \00:path\00header path \00request " + "protocol response \00newheader\00newheadervalue\00server\00envoy-wasm\00on" + "RequestBody \00onLog \00onDone \0014ExampleContext\007Context\0011ContextB" + "ase\00request.protocol\003$_0\00N6google8protobuf8internal29InternalMe" + "tadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEE" + "NS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9Contai" + "nerE\00/usr/local/include/google/protobuf/arenastring.h\00CHECK fail" + "ed: initial_value != NULL: \00NSt3__212basic_stringIcNS_11char_tra" + "itsIcEENS_9allocatorIcEEEE\00NSt3__221__basic_string_commonILb1EEE" + "\00/home/piotrsikora/Google/envoy/api/wasm/cpp/struct_lite.pb.cc\00/" + "usr/local/include/google/protobuf/repeated_field.h\00CHECK failed:" + " (index) >= (0): \00CHECK failed: (index) < (current_size_): \00/usr" + "/local/include/google/protobuf/map.h\00CHECK failed: (bucket_index" + "_ & 1) == (0): \00CHECK failed: m_->index_of_first_non_null_ == m_" + "->num_buckets_ || m_->table_[m_->index_of_first_non_null_] != NU" + "LL: \00CHECK failed: !tree->empty(): \00CHECK failed: node_ != NULL " + "&& m_ != NULL: \00google.protobuf.Value.string_value\00google.protob" + "uf.Struct.FieldsEntry.key\00CHECK failed: (&from) != (this): \00CHEC" + "K failed: (&other) != (this): \00N6google8protobuf27Struct_FieldsE" + "ntry_DoNotUseE\00N6google8protobuf8internal12MapEntryLiteINS0_27St" + "ruct_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4_11char_trai" + "tsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9Field" + "TypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12MapEntryImplINS" + "0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic" + "_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS" + "1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m" + "_) == (this): \00CHECK failed: TableEntryIsNonEmptyList(b): \00CHECK" + " failed: TableEntryIsTree(b): \00CHECK failed: GetArenaNoVirtual()" + " == NULL: \00CHECK failed: index_of_first_non_null_ == num_buckets" + "_ || table_[index_of_first_non_null_] != NULL: \00CHECK failed: fi" + "nd(*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed: (count) <=" + " (kMaxLength): \00CHECK failed: (result.bucket_index_) == (b & ~st" + "atic_cast(1)): \00CHECK failed: (table_[b]) == (table_[" + "b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !TableEntryIsTre" + "e(b ^ 1): \00CHECK failed: (count) == (tree->size()): \00CHECK faile" + "d: (new_num_buckets) >= (kMinTableSize): \00CHECK failed: n >= kMi" + "nTableSize: \00CHECK failed: (n & (n - 1)) == (0): \00CHECK failed: " + "table_[b] == table_[b + 1] && (b & 1) == 0: \00N6google8protobuf3M" + "apINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcE" + "EEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt3__212basic_" + "stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == NULL ||" + " dynamic_cast(f) != NULL\00/usr/local/include/google/protobuf/" + "stubs/casts.h\00down_cast\00google.protobuf.Struct\00N6google8protobuf" + "6StructE\00N6google8protobuf5ValueE\00N6google8protobuf8internal12Ma" + "pEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteEN" + "St3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEEN" + "S0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEnt" + "ryWrapperE\00CHECK failed: (n) >= (0): \00google.protobuf.ListValue\00" + "N6google8protobuf9ListValueE\00google.protobuf.Value\0011RootContext" + "\00no context factory for root_id: \00N6google8protobuf14FatalExcept" + "ionE\00google/protobuf/stubs/common.cc\00This program requires versi" + "on \00%d.%d.%d\00 of the Protocol Buffer runtime library, but the in" + "stalled version is \00. Please update your library. If you compi" + "led the program yourself, make sure that your headers are from t" + "he same version of Protocol Buffers as your link-time library. " + "(Version verification failed in \"\00\".)\00This program was compiled " + "against version \00 of the Protocol Buffer runtime library, which " + "is not compatible with the installed version (\00). Contact the p" + "rogram author for an update. If you compiled the program yourse" + "lf, make sure that your headers are from the same version of Pro" + "tocol Buffers as your link-time library. (Version verification " + "failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00" + "allocator::allocate(size_t n) 'n' exceeds maximum supported s" + "ize\00%d\00google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= (st" + "d::numeric_limits::max() - kBlockHeaderSize): \00google/pr" + "otobuf/generated_message_util.cc\00Not implemented field number \00 " + "with type \00CHECK failed: (scc->visit_status.load(std::memory_ord" + "er_relaxed)) == (SCCInfoBase::kRunning): \00google/protobuf/messag" + "e_lite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot determin" + "e missing fields for lite message)\00N6google8protobuf11MessageLit" + "eE\00google/protobuf/repeated_field.cc\00CHECK failed: (new_size) <=" + " ((std::numeric_limits::max() - kRepHeaderSize) / sizeof" + "(old_rep->elements[0])): \00Requested size is too large to fit int" + "o size_t.\00google/protobuf/wire_format_lite.cc\00CHECK failed: (val" + "ue.size()) <= (kint32max): \00serializing\00parsing\00 '%s'\00String fie" + "ld\00 contains invalid \00UTF-8 data when \00 a protocol \00buffer. Use " + "the 'bytes' type if you intend to send raw \00bytes. \00google/proto" + "buf/io/coded_stream.cc\00CHECK failed: (buffer_size) >= (0): \00A pr" + "otocol message was rejected because it was too big (more than \00 " + "bytes). To increase the limit (or to disable these warnings), s" + "ee CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/" + "coded_stream.h.\00google/protobuf/io/zero_copy_stream_impl_lite.cc" + "\00CHECK failed: (count) >= (0): \00CHECK failed: (last_returned_siz" + "e_) > (0): \00BackUp() can only be called after a successful Next(" + ").\00CHECK failed: (count) <= (last_returned_size_): \00N6google8pro" + "tobuf2io17ArrayOutputStreamE\00CHECK failed: target_ != NULL: \00CHE" + "CK failed: (count) <= (target_->size()): \00Cannot allocate buffer" + " larger than kint32max for \00StringOutputStream.\00N6google8protobu" + "f2io18StringOutputStreamE\00google/protobuf/io/zero_copy_stream.cc" + "\00This ZeroCopyOutputStream doesn't support aliasing. Reaching he" + "re usually means a ZeroCopyOutputStream implementation bug.\00N6go" + "ogle8protobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X " + "0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad_function_call\00NSt3__217bad_" + "function_callE\00mutex lock failed\00%u\00terminating with %s exceptio" + "n of type %s: %s\00terminating with %s exception of type %s\00termin" + "ating with %s foreign exception\00terminating\00uncaught\00St9exceptio" + "n\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv120_" + "_si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00terminate" + "_handler unexpectedly returned\00_Z\00___Z\00_block_invoke\00invocation " + "function for block in \00void\00bool\00char\00signed char\00unsigned char\00" + "short\00unsigned short\00int\00unsigned int\00long\00unsigned long\00long lo" + "ng\00__int128\00unsigned __int128\00float\00long double\00__float128\00...\00d" + "ecimal64\00decimal128\00decimal32\00decimal16\00char32_t\00char16_t\00auto\00d" + "ecltype(auto)\00std::nullptr_t\00[abi:\00]\00N12_GLOBAL__N_116itanium_de" + "mangle10AbiTagAttrE\00N12_GLOBAL__N_116itanium_demangle4NodeE\00allo" + "cator\00basic_string\00string\00istream\00ostream\00iostream\00std::allocato" + "r\00std::basic_string\00std::string\00std::istream\00std::ostream\00std::i" + "ostream\00N12_GLOBAL__N_116itanium_demangle19SpecialSubstitutionE\00" + " imaginary\00N12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTy" + "peE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_116itanium_demangle13Refer" + "enceTypeE\00objc_object\00*\00id<\00>\00N12_GLOBAL__N_116itanium_demangle1" + "1PointerTypeE\00N12_GLOBAL__N_116itanium_demangle20NameWithTemplat" + "eArgsE\00<\00, \00N12_GLOBAL__N_116itanium_demangle12TemplateArgsE\00N12" + "_GLOBAL__N_116itanium_demangle13ParameterPackE\00wchar_t\00b0E\00b1E\00u" + "\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_demangle15IntegerCastExprE" + "\00%LaL\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeEE\00%a" + "\00N12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdEE\00%af\00N12" + "_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfEE\00true\00false\00" + "N12_GLOBAL__N_116itanium_demangle8BoolExprE\00-\00N12_GLOBAL__N_116i" + "tanium_demangle14IntegerLiteralE\00N12_GLOBAL__N_116itanium_demang" + "le20TemplateArgumentPackE\00gs\00&=\00=\00alignof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00" + ">=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00si" + "zeof (\00typeid (\00throw\00throw \00N12_GLOBAL__N_116itanium_demangle9T" + "hrowExprE\00N12_GLOBAL__N_116itanium_demangle12InitListExprE\00N12_G" + "LOBAL__N_116itanium_demangle13NodeArrayNodeE\00sizeof... (\00N12_GLO" + "BAL__N_116itanium_demangle13EnclosingExprE\00sizeof...(\00N12_GLOBAL" + "__N_116itanium_demangle22ParameterPackExpansionE\00N12_GLOBAL__N_1" + "16itanium_demangle19SizeofParamPackExprE\00static_cast\00>(\00N12_GLOB" + "AL__N_116itanium_demangle8CastExprE\00reinterpret_cast\00) ? (\00) : (" + "\00N12_GLOBAL__N_116itanium_demangle15ConditionalExprE\00noexcept (\00" + "nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL__N_116itanium_demangle7Ne" + "wExprE\00N12_GLOBAL__N_116itanium_demangle11PostfixExprE\00 ... \00 = " + "\00N12_GLOBAL__N_116itanium_demangle15BracedRangeExprE\00N12_GLOBAL_" + "_N_116itanium_demangle10BracedExprE\00_GLOBAL__N\00(anonymous namesp" + "ace)\00N12_GLOBAL__N_116itanium_demangle8NameTypeE\00)[\00N12_GLOBAL__" + "N_116itanium_demangle18ArraySubscriptExprE\00.\00N12_GLOBAL__N_116it" + "anium_demangle10MemberExprE\00srN\00sr\00::\00N12_GLOBAL__N_116itanium_d" + "emangle19GlobalQualifiedNameE\00dn\00on\00operator&&\00operator&\00operato" + "r&=\00operator=\00operator()\00operator,\00operator~\00operator delete[]\00o" + "perator*\00operator/\00operator/=\00operator^\00operator^=\00operator==\00op" + "erator>=\00operator>\00operator[]\00operator<=\00operator<<\00operator<<=\00" + "operator<\00operator-\00operator-=\00operator*=\00operator--\00operator ne" + "w[]\00operator!=\00operator!\00operator new\00operator||\00operator|\00opera" + "tor|=\00operator->*\00operator+\00operator+=\00operator++\00operator->\00ope" + "rator?\00operator%\00operator%=\00operator>>\00operator>>=\00operator<=>\00o" + "perator\"\" \00N12_GLOBAL__N_116itanium_demangle15LiteralOperatorE\00o" + "perator delete\00operator \00N12_GLOBAL__N_116itanium_demangle22Conv" + "ersionOperatorTypeE\00N12_GLOBAL__N_116itanium_demangle8DtorNameE\00" + "N12_GLOBAL__N_116itanium_demangle13QualifiedNameE\00dynamic_cast\00d" + "elete\00[] \00N12_GLOBAL__N_116itanium_demangle10DeleteExprE\00cv\00)(\00N" + "12_GLOBAL__N_116itanium_demangle14ConversionExprE\00N12_GLOBAL__N_" + "116itanium_demangle8CallExprE\00const_cast\00N12_GLOBAL__N_116itaniu" + "m_demangle10PrefixExprE\00) \00 (\00N12_GLOBAL__N_116itanium_demangle1" + "0BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00" + "mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00rS\00... \00 ...\00N12_GLOBAL__" + "N_116itanium_demangle8FoldExprE\00fp\00fL\00N12_GLOBAL__N_116itanium_d" + "emangle13FunctionParamE\00N12_GLOBAL__N_116itanium_demangle24Forwa" + "rdTemplateReferenceE\00Ts\00struct\00Tu\00union\00Te\00enum\00N12_GLOBAL__N_11" + "6itanium_demangle22ElaboratedTypeSpefTypeE\00StL\00St\00std::\00N12_GLOB" + "AL__N_116itanium_demangle16StdQualifiedNameE\00DC\00N12_GLOBAL__N_11" + "6itanium_demangle21StructuredBindingNameE\00Ut\00Ul\00vE\00'lambda\00'(\00N1" + "2_GLOBAL__N_116itanium_demangle15ClosureTypeNameE\00'unnamed\00'\00N12" + "_GLOBAL__N_116itanium_demangle15UnnamedTypeNameE\00string literal\00" + "N12_GLOBAL__N_116itanium_demangle9LocalNameE\00std\00N12_GLOBAL__N_1" + "16itanium_demangle12CtorDtorNameE\00basic_istream\00basic_ostream\00ba" + "sic_iostream\00std::basic_string, std" + "::allocator >\00std::basic_istream >\00std::basic_ostream >\00std::bas" + "ic_iostream >\00N12_GLOBAL__N_116itan" + "ium_demangle27ExpandedSpecialSubstitutionE\00N12_GLOBAL__N_116itan" + "ium_demangle10NestedNameE\00::*\00N12_GLOBAL__N_116itanium_demangle1" + "9PointerToMemberTypeE\00[\00N12_GLOBAL__N_116itanium_demangle9ArrayT" + "ypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itanium_demangle10VectorTypeE\00" + "pixel vector[\00N12_GLOBAL__N_116itanium_demangle15PixelVectorType" + "E\00decltype(\00double\00unsigned long long\00objcproto\00 const\00 volatile" + "\00 restrict\00N12_GLOBAL__N_116itanium_demangle8QualTypeE\00N12_GLOBA" + "L__N_116itanium_demangle17VendorExtQualTypeE\00N12_GLOBAL__N_116it" + "anium_demangle13ObjCProtoNameE\00Do\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&" + "\00N12_GLOBAL__N_116itanium_demangle12FunctionTypeE\00throw(\00N12_GLO" + "BAL__N_116itanium_demangle20DynamicExceptionSpecE\00noexcept(\00N12_" + "GLOBAL__N_116itanium_demangle12NoexceptSpecE\00N12_GLOBAL__N_116it" + "anium_demangle11SpecialNameE\00N12_GLOBAL__N_116itanium_demangle9D" + "otSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_116itanium_demangle16Funct" + "ionEncodingE\00 [enable_if:\00N12_GLOBAL__N_116itanium_demangle12Ena" + "bleIfAttrE\00thread-local wrapper routine for \00reference temporary" + " for \00guard variable for \00non-virtual thunk to \00virtual thunk to" + " \00thread-local initialization routine for \00construction vtable f" + "or \00-in-\00N12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNam" + "eE\00covariant return thunk to \00typeinfo name for \00typeinfo for \00V" + "TT for \00vtable for \00St11logic_error\00St12length_error\00N10__cxxabi" + "v117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_infoE\00N10__" + "cxxabiv123__fundamental_type_infoE\00v\00c\00h\00N10__cxxabiv121__vmi_cl" + "ass_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_headers_cpp_cc - i32.const 14952 + i32.const 24424 i64.const 0 i64.store align=4 - i32.const 14960 + i32.const 24432 i64.const 0 i64.store align=4 - i32.const 14968 + i32.const 24440 i32.const 1065353216 i32.store - i32.const 14972 + i32.const 24444 i64.const 0 i64.store align=4 - i32.const 14980 + i32.const 24452 i64.const 0 i64.store align=4 - i32.const 14988 + i32.const 24460 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -408,39 +594,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $4) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $1) @@ -454,44 +640,56 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 - local.set $7 - global.get $30 + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $4 i32.const 48 i32.add - global.set $30 - local.get $7 + local.set $1 + local.get $4 + i32.const 36 + i32.add + local.set $3 + local.get $4 i32.const 24 i32.add - local.set $2 - local.get $7 - local.tee $1 + local.set $6 + local.get $4 i32.const 12 i32.add - local.tee $3 + local.set $7 + local.get $4 + i32.const 60 + i32.add + local.tee $2 i32.const 32 call $__Znwm - local.tee $4 + local.tee $5 i32.store - local.get $3 + local.get $2 i32.const -2147483616 i32.store offset=8 - local.get $3 + local.get $2 i32.const 17 i32.store offset=4 - local.get $4 - i32.const 6872 + local.get $5 + i32.const 10912 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 6880 + local.get $5 + i32.const 10920 i64.load align=1 i64.store offset=8 align=1 - local.get $4 - i32.const 6888 + local.get $5 + i32.const 10928 i32.load8_s i32.store8 offset=16 - local.get $4 + local.get $5 i32.const 0 i32.store8 offset=17 local.get $1 @@ -500,8 +698,8 @@ i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $2 local.get $3 + local.get $2 local.get $1 i32.load local.get $1 @@ -510,20 +708,20 @@ local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 select local.get $1 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $3 local.get $0 i32.load offset=8 i32.store offset=8 @@ -534,30 +732,31 @@ i32.const 0 i32.store offset=8 i32.const 1 - local.get $2 + local.get $3 i32.load - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $5 select - local.get $2 + local.get $3 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $5 select call $_proxy_log - local.get $2 + drop + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $2 + local.get $3 i32.load call $_free end ;; $if @@ -570,64 +769,65 @@ i32.load call $_free end ;; $if_0 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_1 local.get $2 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store i32.const 0 - i32.const 6890 + i32.const 10930 i32.const 5 local.get $2 - local.get $3 + local.get $1 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm local.set $5 - local.get $3 + local.get $1 i32.load - local.set $4 + local.set $3 local.get $5 local.get $2 i32.load - local.tee $8 + local.tee $9 i32.store local.get $5 - local.get $4 - i32.store offset=4 local.get $3 + i32.store offset=4 + local.get $2 i64.const 0 i64.store align=4 - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $3 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $3 + local.get $2 i32.const 12 i32.store offset=4 local.get $0 - i32.const 6896 + i32.const 10936 i64.load align=1 i64.store align=1 local.get $0 - i32.const 6904 + i32.const 10944 i32.load align=1 i32.store offset=8 align=1 local.get $0 @@ -639,7 +839,7 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $4 + local.get $3 i32.const -17 i32.gt_u if $if_2 @@ -647,17 +847,17 @@ end ;; $if_2 block $block block $block_0 - local.get $4 + local.get $3 i32.const 11 i32.lt_u if $if_3 (result i32) local.get $1 i32.const 11 i32.add - local.tee $6 - local.get $4 + local.tee $8 + local.get $3 i32.store8 - local.get $4 + local.get $3 if $if_4 (result i32) local.get $1 local.set $0 @@ -667,67 +867,67 @@ end ;; $if_4 else local.get $1 - local.get $4 + local.get $3 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $8 call $__Znwm local.tee $0 i32.store local.get $1 - local.get $6 + local.get $8 i32.const -2147483648 i32.or i32.store offset=8 local.get $1 - local.get $4 + local.get $3 i32.store offset=4 local.get $1 i32.const 11 i32.add - local.set $6 + local.set $8 br $block_0 end ;; $if_3 local.set $0 br $block end ;; $block_0 local.get $0 - local.get $8 - local.get $4 + local.get $9 + local.get $3 call $_memcpy drop end ;; $block local.get $0 - local.get $4 + local.get $3 i32.add i32.const 0 i32.store8 + local.get $6 local.get $2 - local.get $3 local.get $1 i32.load local.get $1 - local.get $6 + local.get $8 i32.load8_s local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 select local.get $1 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $3 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $6 local.get $0 i32.load offset=8 i32.store offset=8 @@ -738,34 +938,35 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $2 + local.get $6 i32.load - local.get $2 - local.get $2 + local.get $6 + local.get $6 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 select - local.get $2 + local.get $6 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $3 select call $_proxy_log - local.get $2 + drop + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $2 + local.get $6 i32.load call $_free end ;; $if_5 - local.get $6 + local.get $8 i32.load8_s i32.const 0 i32.lt_s @@ -774,107 +975,107 @@ i32.load call $_free end ;; $if_6 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_7 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_7 - local.get $1 + local.get $4 i64.const 0 i64.store align=4 - local.get $1 + local.get $4 i32.const 0 i32.store offset=8 local.get $2 i32.const 0 i32.store - local.get $3 + local.get $1 i32.const 0 i32.store i32.const 8 - i32.const 7051 + i32.const 11089 i32.const 16 local.get $2 - local.get $3 + local.get $1 call $_proxy_getMetadata if $if_8 - local.get $1 + local.get $4 i32.const 0 i32.store8 - local.get $1 + local.get $4 i32.const 0 i32.store8 offset=11 else - local.get $1 + local.get $4 local.get $2 i32.load - local.get $3 + local.get $1 i32.load call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - local.get $3 + local.get $2 i64.const 0 i64.store align=4 - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $2 i32.const 32 call $__Znwm local.tee $0 i32.store - local.get $3 + local.get $2 i32.const -2147483616 i32.store offset=8 - local.get $3 + local.get $2 i32.const 26 i32.store offset=4 local.get $0 - i32.const 6909 + i32.const 10949 i64.load align=1 i64.store align=1 local.get $0 - i32.const 6917 + i32.const 10957 i64.load align=1 i64.store offset=8 align=1 local.get $0 - i32.const 6925 + i32.const 10965 i64.load align=1 i64.store offset=16 align=1 local.get $0 - i32.const 6933 + i32.const 10973 i32.load16_s align=1 i32.store16 offset=24 align=1 local.get $0 i32.const 0 i32.store8 offset=26 + local.get $7 local.get $2 - local.get $3 - local.get $1 + local.get $4 i32.load - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $1 select - local.get $1 + local.get $4 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $1 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $7 local.get $0 i32.load offset=8 i32.store offset=8 @@ -885,56 +1086,59 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $2 + local.get $7 i32.load - local.get $2 - local.get $2 + local.get $7 + local.get $7 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $1 select - local.get $2 + local.get $7 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $1 select call $_proxy_log - local.get $2 + drop + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_9 - local.get $2 + local.get $7 i32.load call $_free end ;; $if_9 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_10 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_10 end ;; $if_8 i32.const 0 - i32.const 6936 + i32.const 10976 i32.const 9 - i32.const 6946 + i32.const 10986 i32.const 14 call $_proxy_addHeaderMapValue + drop i32.const 0 - i32.const 6961 + i32.const 11001 i32.const 6 - i32.const 6968 + i32.const 11008 i32.const 10 call $_proxy_replaceHeaderMapValue - local.get $1 + drop + local.get $4 i32.load8_s offset=11 i32.const 0 i32.ge_s @@ -944,12 +1148,12 @@ call $_free local.get $5 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 return end ;; $if_11 - local.get $1 + local.get $4 i32.load call $_free local.get $5 @@ -957,8 +1161,8 @@ call $_free local.get $5 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 ) @@ -972,41 +1176,40 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $4 + global.get $32 i32.const 48 i32.add - global.set $30 - local.get $7 - local.tee $2 + global.set $32 + local.get $4 i32.const 24 i32.add - local.tee $4 + local.tee $5 i32.const 0 i32.store - local.get $2 + local.get $4 i32.const 12 i32.add - local.tee $5 + local.tee $2 i32.const 0 i32.store i32.const 0 local.get $1 - local.get $4 local.get $5 + local.get $2 call $_proxy_getRequestBodyBufferBytes + drop i32.const 8 call $__Znwm local.set $6 - local.get $5 + local.get $2 i32.load local.set $3 local.get $6 - local.get $4 + local.get $5 i32.load - local.tee $8 + local.tee $7 i32.store local.get $6 local.get $3 @@ -1029,15 +1232,15 @@ i32.const 14 i32.store offset=4 local.get $0 - i32.const 6979 + i32.const 11019 i64.load align=1 i64.store align=1 local.get $0 - i32.const 6987 + i32.const 11027 i32.load align=1 i32.store offset=8 align=1 local.get $0 - i32.const 6991 + i32.const 11031 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $0 @@ -1104,7 +1307,7 @@ br $block end ;; $block_0 local.get $0 - local.get $8 + local.get $7 local.get $3 call $_memcpy drop @@ -1166,6 +1369,7 @@ local.get $3 select call $_proxy_log + drop local.get $4 i32.load8_s offset=11 i32.const 0 @@ -1194,8 +1398,8 @@ call $_free local.get $6 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 return end ;; $if_4 @@ -1207,8 +1411,8 @@ call $_free local.get $6 call $_free - local.get $7 - global.set $30 + local.get $4 + global.set $32 i32.const 0 ) @@ -1224,47 +1428,48 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $7 + global.get $32 i32.const -64 i32.sub - global.set $30 - local.get $6 + global.set $32 + local.get $7 i32.const 24 i32.add - local.set $7 - local.get $6 + local.set $3 + local.get $7 i32.const 12 i32.add local.set $9 - local.get $6 + local.get $7 local.tee $1 i32.const 48 i32.add - local.tee $3 + local.tee $5 i32.const 0 i32.store local.get $1 i32.const 36 i32.add - local.tee $5 + local.tee $6 i32.const 0 i32.store i32.const 0 - i32.const 6890 + i32.const 10930 i32.const 5 - local.get $3 local.get $5 + local.get $6 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm local.set $4 - local.get $5 + local.get $6 i32.load local.set $2 local.get $4 - local.get $3 + local.get $5 i32.load i32.store local.get $4 @@ -1276,14 +1481,14 @@ i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $7 + local.get $6 local.get $9 - i32.const 6994 + i32.const 11034 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 i64.store align=4 - local.get $7 + local.get $6 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1294,8 +1499,8 @@ i32.const 0 i32.store offset=8 local.get $5 - local.get $7 - i32.const 7001 + local.get $6 + i32.const 17884 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 i64.load align=4 @@ -1439,6 +1644,7 @@ local.get $2 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 @@ -1466,12 +1672,12 @@ i32.load call $_free end ;; $if_4 - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_5 @@ -1485,8 +1691,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 return end ;; $if_6 local.get $9 @@ -1497,8 +1703,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 ) (func $__ZN14ExampleContext6onDoneEv (type $0) @@ -1506,17 +1712,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $2 + global.set $32 + local.get $1 i32.const 12 i32.add - local.set $1 - local.get $2 + local.tee $2 local.get $0 i32.const -64 i32.sub @@ -1524,7 +1729,7 @@ call $__ZNSt3__29to_stringEj local.get $1 local.get $2 - i32.const 7003 + i32.const 11041 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 @@ -1558,6 +1763,7 @@ local.get $3 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -1572,15 +1778,15 @@ i32.const 0 i32.ge_s if $if_0 - local.get $2 - global.set $30 + local.get $1 + global.set $32 return end ;; $if_0 local.get $2 i32.load call $_free - local.get $2 - global.set $30 + local.get $1 + global.set $32 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -1588,7 +1794,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5528 + i32.const 6592 i32.store local.get $0 i32.load offset=52 @@ -1771,42 +1977,11 @@ i32.const 0 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $1) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5560 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $4) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5560 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -1845,32 +2020,27 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5448 + i32.const 6512 i32.store local.get $0 local.get $1 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $3) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $5) (param $0 i32) (param $1 i32) - (result i32) - local.get $0 + (param $2 i32) + (param $3 i32) i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7287 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $1) - (param $0 i32) - (result i32) - i32.const 4528 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7720 + i32.store + local.get $0 + i32.const 5224 + i32.const 33 + call $___cxa_throw ) (func $__GLOBAL__sub_I_headers_cpp_cc (type $8) @@ -1878,115 +2048,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $1 + global.get $32 + local.set $0 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5560 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 15761 - i32.store offset=48 + i32.const 6632 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 local.get $1 + i32.const 6616 + i32.store offset=12 + local.get $0 + i32.const 25238 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $30 + if $if_0 + local.get $0 + global.set $32 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 63 + i32.load + local.get $1 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 + call_indirect $28 (type $0) + local.get $0 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $1) @@ -2001,7 +2137,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $1) @@ -2053,17 +2189,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4536 + i32.const 4512 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 49 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -2101,12 +2237,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $2 i32.eqz if $if @@ -2114,7 +2250,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7463 + i32.const 11282 i32.store offset=4 local.get $3 i32.const 370 @@ -2126,7 +2262,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7512 + i32.const 11331 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -2144,7 +2280,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -2153,17 +2289,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4544 + i32.const 4520 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 50 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -2172,73 +2308,73 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $0 - global.set $30 - i32.const 14780 + global.set $32 + i32.const 24252 i32.const 0 i32.store - i32.const 14772 - i32.const 14920 + i32.const 24244 + i32.const 24392 i32.store - i32.const 14776 + i32.const 24248 i32.const 0 i32.store - i32.const 14784 + i32.const 24256 i32.const 0 i32.store - i32.const 14768 - i32.const 5620 + i32.const 24240 + i32.const 6672 i32.store - i32.const 14792 + i32.const 24264 call $__ZN6google8protobuf6StructC2Ev - i32.const 51 - i32.const 14792 + i32.const 116 + i32.const 24264 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14824 - i32.const 5708 + i32.const 24296 + i32.const 6760 i32.store - i32.const 14828 + i32.const 24300 i32.const 0 i32.store - i32.const 14840 + i32.const 24312 i32.const 0 i32.store - i32.const 5596 + i32.const 6648 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 14844 + i32.const 24316 i32.const 0 i32.store - i32.const 51 - i32.const 14824 + i32.const 116 + i32.const 24296 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14880 + i32.const 24352 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 51 - i32.const 14880 + i32.const 116 + i32.const 24352 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14776 - i32.const 14824 + i32.const 24248 + i32.const 24296 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i64.const 0 @@ -2256,7 +2392,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -2268,7 +2404,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.const 4 @@ -2282,7 +2418,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -2298,14 +2434,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.load offset=4 @@ -2327,7 +2463,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $2 i32.const 915 @@ -2339,7 +2475,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8831 + i32.const 12652 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -2376,11 +2512,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -2434,14 +2570,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -2473,19 +2609,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10118 + i32.const 13939 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10126 + i32.const 13947 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10134 + i32.const 13955 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10142 + i32.const 13963 i32.load8_s i32.store8 offset=24 local.get $1 @@ -2589,18 +2725,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4576 + i32.const 4744 + i32.const 4552 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 9684 - i32.const 9725 + i32.const 13505 + i32.const 13546 i32.const 92 - i32.const 9774 + i32.const 13595 call $___assert_fail end ;; $if ) @@ -2617,12 +2753,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 40 i32.add @@ -2679,7 +2815,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6332 + i32.const 7384 i32.store local.get $3 local.get $5 @@ -2989,7 +3125,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_8 @@ -2997,7 +3133,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -3014,7 +3150,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $1 i32.const 1 i32.and @@ -3123,7 +3259,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $2 i32.const 1 i32.and @@ -3142,7 +3278,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $0 i32.const 1 i32.and @@ -3181,12 +3317,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -3199,7 +3335,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7711 + i32.const 11532 i32.store offset=4 local.get $3 i32.const 1505 @@ -3211,7 +3347,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7763 + i32.const 11584 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3233,7 +3369,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -3241,7 +3377,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7711 + i32.const 11532 i32.store offset=4 local.get $2 i32.const 1506 @@ -3253,7 +3389,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7794 + i32.const 11615 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3269,7 +3405,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -3288,7 +3424,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $1 i32.const 1 i32.and @@ -3439,7 +3575,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $1 i32.const 1 i32.and @@ -3549,18 +3685,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $1 i32.const 1 i32.and @@ -3632,7 +3768,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $4 @@ -3655,12 +3791,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -3677,13 +3813,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 5868 + i32.const 6920 i32.store local.get $1 local.get $7 @@ -3706,11 +3842,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $2 i32.const 16 i32.add @@ -3739,7 +3875,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -3781,7 +3917,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -3842,22 +3978,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return end ;; $block @@ -3865,7 +4001,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -3877,12 +4013,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -3911,7 +4047,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $3 i32.const 418 @@ -3923,7 +4059,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7920 + i32.const 11741 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3946,7 +4082,7 @@ i32.le_u if $if_1 local.get $2 - global.set $30 + global.set $32 return end ;; $if_1 local.get $5 @@ -3980,7 +4116,7 @@ br $block end ;; $block_0 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $1 @@ -3998,7 +4134,7 @@ local.get $3 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $3 @@ -4009,7 +4145,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 427 @@ -4021,7 +4157,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8037 + i32.const 11858 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4033,7 +4169,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -4045,12 +4181,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load i32.load offset=16 @@ -4060,7 +4196,7 @@ local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -4092,7 +4228,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 451 @@ -4104,7 +4240,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7877 + i32.const 11698 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4192,7 +4328,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $3) @@ -4207,12 +4343,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -4240,7 +4376,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $3 i32.const 476 @@ -4252,7 +4388,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8068 + i32.const 11889 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4361,12 +4497,12 @@ i32.ne local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $block_1 local.get $3 - global.set $30 + global.set $32 i32.const 1 ) @@ -4384,12 +4520,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $10 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.load local.get $2 @@ -4575,7 +4711,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block_0 end ;; $if_2 @@ -4695,7 +4831,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block else @@ -4715,7 +4851,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $2) @@ -4899,7 +5035,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4909,7 +5045,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14920 + i32.const 24392 i32.eq local.get $1 i32.eqz @@ -4939,18 +5075,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4962,7 +5098,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14920 + i32.const 24392 i32.eq local.get $1 i32.eqz @@ -4994,11 +5130,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 call $_free ) @@ -5023,7 +5159,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $0 i32.const 0 @@ -5032,7 +5168,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -5059,7 +5195,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14920 + i32.const 24392 i32.ne if $if local.get $1 @@ -5134,18 +5270,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4608 + i32.const 4744 + i32.const 4584 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 9684 - i32.const 9725 + i32.const 13505 + i32.const 13546 i32.const 92 - i32.const 9774 + i32.const 13595 call $___assert_fail end ;; $if ) @@ -5159,12 +5295,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $4 local.get $0 @@ -5235,13 +5371,13 @@ local.get $5 i32.load local.tee $2 - i32.const 14920 + i32.const 24392 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 14920 + i32.const 24392 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -5391,7 +5527,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -5402,12 +5538,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -5431,7 +5567,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5484,7 +5620,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -5517,7 +5653,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -5528,7 +5664,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -5553,7 +5689,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5606,7 +5742,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.load offset=16 local.tee $0 i32.const 1 @@ -5642,7 +5778,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.const 10 @@ -5661,7 +5797,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $2 i32.const 18 @@ -5720,9 +5856,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $1) @@ -5744,19 +5880,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4704 + i32.const 4680 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 local.get $0 @@ -5764,7 +5900,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5775,7 +5911,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 i32.const 0 @@ -5783,7 +5919,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5808,12 +5944,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -5870,7 +6006,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6332 + i32.const 7384 i32.store local.get $5 local.get $6 @@ -6075,7 +6211,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 14920 + i32.const 24392 i32.store end ;; $if_5 local.get $0 @@ -6097,12 +6233,12 @@ local.get $5 i32.load local.tee $3 - i32.const 14920 + i32.const 24392 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 14920 + i32.const 24392 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -6123,9 +6259,9 @@ i32.load local.tee $2 else - i32.const 14920 + i32.const 24392 local.set $2 - i32.const 14920 + i32.const 24392 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -6142,9 +6278,9 @@ i32.load local.tee $3 else - i32.const 14920 + i32.const 24392 local.set $3 - i32.const 14920 + i32.const 24392 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -6159,7 +6295,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8112 + i32.const 11933 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -6509,7 +6645,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_18 @@ -6517,7 +6653,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -6556,7 +6692,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 14920 + i32.const 24392 i32.eq local.get $1 i32.eqz @@ -6605,11 +6741,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $block local.get $0 i32.const 0 @@ -6636,12 +6772,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4656 + i32.const 4632 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -6667,12 +6803,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 72 i32.add @@ -6733,7 +6869,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6332 + i32.const 7384 i32.store local.get $7 local.get $4 @@ -6899,7 +7035,7 @@ local.get $6 select i32.const 0 - i32.const 8147 + i32.const 11968 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -6920,11 +7056,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -7027,7 +7163,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $30 + global.set $32 local.get $1 return end ;; $if_11 @@ -7035,7 +7171,7 @@ i32.load call $_free local.get $2 - global.set $30 + global.set $32 local.get $1 ) @@ -7059,12 +7195,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4576 + i32.const 4552 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -7080,7 +7216,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 local.get $1 @@ -7094,7 +7230,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -7113,12 +7249,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -7142,12 +7278,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if @@ -7170,14 +7306,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -7186,7 +7322,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -7205,7 +7341,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -7220,12 +7356,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -7234,7 +7370,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -7293,7 +7429,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_3 @@ -7303,7 +7439,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if_7 @@ -7311,10 +7447,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_2 @@ -7332,46 +7468,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -7380,7 +7529,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -7391,7 +7540,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $2 i32.const 0 @@ -7400,9 +7549,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -7410,22 +7559,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -7435,22 +7582,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 14920 + i32.load + local.tee $5 + i32.const 24392 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 14920 + i32.const 24392 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -7465,13 +7612,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7483,7 +7630,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -7503,8 +7650,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7513,12 +7661,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7529,19 +7675,19 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -7552,12 +7698,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $4 @@ -7591,7 +7737,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $30 + global.set $32 local.get $2 i32.const 16 i32.add @@ -7604,7 +7750,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 16 i32.add @@ -7617,12 +7763,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 32 i32.add @@ -7644,7 +7790,7 @@ i32.eqz if $if local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -7695,7 +7841,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $3) @@ -7709,9 +7855,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -7721,7 +7867,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $2 i32.const 0 @@ -7730,7 +7876,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store end ;; $if local.get $0 @@ -7741,17 +7887,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -7787,7 +7931,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -7797,28 +7941,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 14920 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 14920 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24392 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24392 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -7827,6 +7973,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -7836,20 +7994,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -7857,34 +8012,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -7899,8 +8054,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7909,28 +8065,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -7949,12 +8103,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4608 + i32.const 4584 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -7973,7 +8127,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $0 i32.const 0 @@ -7982,7 +8136,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -7998,12 +8152,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 local.get $1 @@ -8297,17 +8451,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $4) @@ -8319,12 +8473,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8333,7 +8487,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $4 i32.const 796 @@ -8345,7 +8499,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8186 + i32.const 12007 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -8474,7 +8628,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 14920 + i32.const 24392 i32.store end ;; $if_4 local.get $2 @@ -8494,7 +8648,7 @@ local.get $0 i32.load local.tee $2 - i32.const 14920 + i32.const 24392 i32.eq if $if_6 local.get $0 @@ -8507,7 +8661,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $30 + global.set $32 return end ;; $block_3 local.get $1 @@ -8570,7 +8724,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 14792 + i32.const 24264 end ;; $if_8 br $block_7 end ;; $block_8 @@ -8624,7 +8778,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 14880 + i32.const 24352 end ;; $if_10 br $block_9 end ;; $block_10 @@ -8638,11 +8792,11 @@ br $block end ;; $block_0 local.get $4 - global.set $30 + global.set $32 return end ;; $block local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $4) @@ -8653,12 +8807,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8667,7 +8821,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $3 i32.const 341 @@ -8679,7 +8833,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8186 + i32.const 12007 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -8769,7 +8923,7 @@ i32.eqz if $if_2 local.get $3 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 @@ -8838,7 +8992,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $4) @@ -8848,12 +9002,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8862,7 +9016,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $2 i32.const 1040 @@ -8874,7 +9028,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8186 + i32.const 12007 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8895,7 +9049,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -8945,7 +9099,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $4) @@ -8957,12 +9111,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8971,7 +9125,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7711 + i32.const 11532 i32.store offset=4 local.get $2 i32.const 1586 @@ -8983,7 +9137,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8220 + i32.const 12041 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8995,7 +9149,7 @@ i32.eqz if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -9103,14 +9257,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $4) @@ -9129,7 +9283,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -9192,12 +9346,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -9211,7 +9365,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 601 @@ -9223,7 +9377,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8717 + i32.const 12538 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -9285,7 +9439,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 607 @@ -9297,7 +9451,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8751 + i32.const 12572 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -9340,7 +9494,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $3 i32.const 612 @@ -9352,7 +9506,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8795 + i32.const 12616 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -9444,7 +9598,7 @@ i32.ne if $if_5 local.get $3 - global.set $30 + global.set $32 return end ;; $if_5 local.get $1 @@ -9454,7 +9608,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $30 + global.set $32 return end ;; $if_6 local.get $0 @@ -9482,7 +9636,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $2) @@ -10395,12 +10549,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -10421,7 +10575,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $1 i32.const 495 @@ -10433,7 +10587,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8831 + i32.const 12652 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -10444,13 +10598,13 @@ i32.eqz if $if_1 local.get $1 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -10463,12 +10617,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 16 i32.add @@ -10499,7 +10653,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 return end ;; $if block $block @@ -10621,12 +10775,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -10666,7 +10820,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $3) @@ -10686,7 +10840,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $0 i32.const 0 @@ -10694,7 +10848,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10711,12 +10865,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -10742,7 +10896,7 @@ i32.load local.set $0 local.get $2 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $2 local.get $0 @@ -10750,7 +10904,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10776,12 +10930,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 7 i32.le_u @@ -10790,7 +10944,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 765 @@ -10802,7 +10956,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9301 + i32.const 13122 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10942,13 +11096,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $30 + global.set $32 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -10961,12 +11115,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 48 i32.add @@ -10991,7 +11145,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $4 i32.const 672 @@ -11003,7 +11157,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8875 + i32.const 12696 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11029,7 +11183,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $4 i32.const 678 @@ -11041,7 +11195,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8976 + i32.const 12797 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11075,7 +11229,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $30 + global.set $32 return end ;; $if_3 i32.const 0 @@ -11115,7 +11269,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 return end ;; $if_5 else @@ -11123,7 +11277,7 @@ i32.const 3 i32.store local.get $6 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $6 i32.const 878 @@ -11135,7 +11289,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 9032 + i32.const 12853 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -11167,7 +11321,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $5 i32.const 685 @@ -11179,7 +11333,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9072 + i32.const 12893 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -11215,7 +11369,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $4) @@ -11231,12 +11385,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 72 i32.add @@ -11296,7 +11450,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 837 @@ -11308,7 +11462,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9194 + i32.const 13015 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11324,12 +11478,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11572,7 +11726,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 return end ;; $if_11 local.get $11 @@ -11580,7 +11734,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 848 @@ -11592,7 +11746,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9259 + i32.const 13080 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11614,7 +11768,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -11625,12 +11779,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=16 local.tee $6 @@ -11654,7 +11808,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $4 i32.const 713 @@ -11666,7 +11820,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9147 + i32.const 12968 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11712,7 +11866,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -11722,12 +11876,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $4 local.get $2 @@ -11743,7 +11897,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $1 @@ -11756,12 +11910,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11821,7 +11975,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $2) @@ -12411,12 +12565,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 local.get $1 i32.load @@ -12442,7 +12596,7 @@ i32.load if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -12455,12 +12609,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -12512,7 +12666,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) @@ -12933,12 +13087,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -12951,7 +13105,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $2 i32.const 926 @@ -12963,7 +13117,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9354 + i32.const 13175 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12979,7 +13133,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $3 i32.const 927 @@ -12991,7 +13145,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9389 + i32.const 13210 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -13014,7 +13168,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -13030,13 +13184,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5416 + i32.const 6480 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -13048,7 +13202,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -13062,12 +13216,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 2 i32.shl @@ -13195,13 +13349,13 @@ local.get $0 if $if_4 local.get $4 - global.set $30 + global.set $32 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $4) @@ -13209,7 +13363,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 local.get $1 @@ -13234,7 +13388,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -13290,17 +13444,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4672 + i32.const 4648 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 52 + i32.const 117 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -13370,12 +13524,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 28 i32.add @@ -13397,7 +13551,7 @@ i32.eqz if $if local.get $1 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -13454,7 +13608,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -13469,12 +13623,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 i32.eqz @@ -13486,7 +13640,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -13572,7 +13726,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7836 + i32.const 11657 i32.store offset=4 local.get $5 i32.const 527 @@ -13584,7 +13738,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9426 + i32.const 13247 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -13791,7 +13945,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -13819,14 +13973,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i32.load offset=4 @@ -13848,7 +14002,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7651 + i32.const 11470 i32.store offset=4 local.get $1 i32.const 150 @@ -13860,7 +14014,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8831 + i32.const 12652 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -13903,14 +14057,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -13942,19 +14096,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 9784 + i32.const 13605 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9792 + i32.const 13613 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9800 + i32.const 13621 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 9804 + i32.const 13625 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -14024,18 +14178,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4656 + i32.const 4744 + i32.const 4632 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 9684 - i32.const 9725 + i32.const 13505 + i32.const 13546 i32.const 92 - i32.const 9774 + i32.const 13595 call $___assert_fail end ;; $if ) @@ -14052,12 +14206,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 12 i32.add @@ -14122,12 +14276,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -14144,13 +14298,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $7 @@ -14169,11 +14323,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -14187,7 +14341,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $5 @@ -14214,7 +14368,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8147 + i32.const 11968 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -14231,11 +14385,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) br $block end ;; $if_0 i32.const -1 @@ -14331,12 +14485,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -14353,13 +14507,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 14920 + i32.const 24392 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $4 @@ -14378,11 +14532,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -14396,7 +14550,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $10 @@ -14422,7 +14576,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8147 + i32.const 11968 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -14439,11 +14593,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -14455,7 +14609,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $2 i32.const 1 i32.and @@ -14474,7 +14628,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $0 i32.const 1 i32.and @@ -14499,7 +14653,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -17515,13 +17669,13 @@ i32.add local.tee $2 i32.load - i32.const 14920 + i32.const 24392 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 14920 + i32.const 24392 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -17532,12 +17686,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 14920 + i32.const 24392 i32.eq if $if_2 local.get $2 @@ -17585,7 +17739,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 local.get $0 i32.load offset=8 @@ -17605,7 +17759,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 14776 + i32.const 24248 i32.load local.get $0 select @@ -17619,12 +17773,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -17635,7 +17789,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7711 + i32.const 11532 i32.store offset=4 local.get $1 i32.const 1567 @@ -17647,20 +17801,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10091 + i32.const 13912 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -17726,7 +17880,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -17734,7 +17888,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17786,7 +17940,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17851,19 +18005,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10173 + i32.const 13994 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10181 + i32.const 14002 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10189 + i32.const 14010 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10193 + i32.const 14014 i32.load8_s i32.store8 offset=20 local.get $1 @@ -17931,18 +18085,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4704 + i32.const 4744 + i32.const 4680 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 9684 - i32.const 9725 + i32.const 13505 + i32.const 13546 i32.const 92 - i32.const 9774 + i32.const 13595 call $___assert_fail end ;; $if ) @@ -18005,7 +18159,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8112 + i32.const 11933 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -18016,7 +18170,7 @@ local.get $0 i32.load offset=8 else - i32.const 14920 + i32.const 24392 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -18066,7 +18220,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $2 i32.const 1 i32.and @@ -18085,7 +18239,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14920 + i32.const 24392 local.get $0 i32.const 1 i32.and @@ -18125,12 +18279,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -18151,11 +18305,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load local.set $0 @@ -18166,7 +18320,7 @@ i32.eqz if $if local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18175,7 +18329,7 @@ local.get $0 call $_free local.get $3 - global.set $30 + global.set $32 ) (func $_proxy_onCreate (type $4) @@ -18190,221 +18344,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24428 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24424 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24440 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 24436 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24428 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24424 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24432 + i32.load + i32.store + i32.const 24432 + local.get $4 + i32.store + local.get $11 + i32.const 24432 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24424 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24436 + i32.const 24436 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 14996 + i32.const 24468 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -18412,103 +18828,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 + local.get $1 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $5 + call_indirect $28 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 + call_indirect $28 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_10 + call_indirect $28 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -18546,71 +18947,71 @@ local.get $0 i32.store local.get $1 - i32.const 6196 + i32.const 7248 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -18620,20 +19021,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 ) (func $_proxy_onDelete (type $0) @@ -18641,12 +19042,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__Z10getContextj local.tee $2 @@ -18655,18 +19056,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $30 + global.set $32 ) (func $_proxy_onDone (type $0) @@ -18680,11 +19081,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -18696,12 +19097,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -18726,9 +19127,9 @@ local.get $7 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $5 i32.load local.set $0 @@ -18739,7 +19140,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18748,7 +19149,7 @@ local.get $0 call $_free local.get $5 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcCreateInitialMetadata (type $4) @@ -18764,11 +19165,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceive (type $5) @@ -18779,12 +19180,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -18808,9 +19209,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $4 i32.load local.set $0 @@ -18821,7 +19222,7 @@ i32.eqz if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18830,7 +19231,7 @@ local.get $0 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $4) @@ -18846,11 +19247,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $4) @@ -18866,11 +19267,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onHttpCallResponse (type $17) @@ -18887,12 +19288,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $8 i32.const 8 i32.add @@ -18948,9 +19349,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $8 i32.load local.set $0 @@ -18989,7 +19390,7 @@ i32.eqz if $if_1 local.get $8 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 @@ -18998,7 +19399,7 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 ) (func $_proxy_onLog (type $0) @@ -19014,11 +19415,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onQueueReady (type $4) @@ -19034,11 +19435,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onRequestBody (type $2) @@ -19061,9 +19462,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onRequestHeaders (type $1) @@ -19080,7 +19481,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestMetadata (type $1) @@ -19097,7 +19498,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestTrailers (type $1) @@ -19114,7 +19515,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseBody (type $2) @@ -19137,9 +19538,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onResponseHeaders (type $1) @@ -19156,7 +19557,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseMetadata (type $1) @@ -19173,7 +19574,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseTrailers (type $1) @@ -19190,7 +19591,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onStart (type $7) @@ -19209,29 +19610,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -19241,27 +19637,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 14956 + i32.const 24428 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 14952 + i32.const 24424 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -19280,7 +19676,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -19294,7 +19690,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -19302,16 +19698,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -19332,7 +19728,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -19341,22 +19737,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -19381,11 +19777,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 br $block end ;; $block_0 - i32.const 14992 + i32.const 24464 i32.load i32.eqz if $if_7 @@ -19424,7 +19820,7 @@ local.get $0 i32.store local.get $5 - i32.const 6124 + i32.const 7176 i32.store local.get $5 i32.const 68 @@ -19459,12 +19855,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -19476,7 +19872,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19522,10 +19918,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19539,20 +19935,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -19567,19 +19963,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -19589,12 +19985,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -19603,7 +19999,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19613,53 +20009,36 @@ i32.add i32.const 0 i32.store8 - i32.const 14992 + i32.const 24464 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6668 - i32.store - local.get $2 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $11 + call_indirect $28 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -19669,22 +20048,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -19694,40 +20073,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_17 + call_indirect $28 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -19766,7 +20145,7 @@ local.get $0 i32.store local.get $2 - i32.const 6124 + i32.const 7176 i32.store local.get $2 i32.const 68 @@ -19780,15 +20159,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -19801,12 +20180,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -19814,11 +20193,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -19864,10 +20243,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19876,29 +20255,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_20 + call_indirect $28 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -19912,35 +20291,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $12 + call_indirect $28 (type $4) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -19951,8 +20330,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 ) (func $_proxy_onTick (type $0) @@ -19966,11 +20345,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZL14getRootContextj (type $1) @@ -19981,7 +20360,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14956 + i32.const 24428 i32.load local.tee $1 i32.eqz @@ -19989,7 +20368,7 @@ i32.const 0 return end ;; $if - i32.const 14952 + i32.const 24424 i32.load local.get $1 local.get $1 @@ -20124,7 +20503,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -20140,7 +20519,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $1) @@ -20157,7 +20536,7 @@ local.get $0 i32.load local.set $4 - i32.const 14956 + i32.const 24428 i32.load local.tee $2 i32.eqz @@ -20166,7 +20545,7 @@ i32.const 0 local.set $0 else - i32.const 14952 + i32.const 24424 i32.load local.get $2 local.get $2 @@ -20305,13 +20684,13 @@ i32.const 0 i32.store local.get $6 - i32.const 14968 + i32.const 24440 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 14964 + i32.const 24436 i32.load i32.const 1 i32.add @@ -20371,7 +20750,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 14956 + i32.const 24428 i32.load local.tee $1 i32.const -1 @@ -20408,7 +20787,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 14952 + i32.const 24424 i32.load local.get $0 i32.const 2 @@ -20425,14 +20804,14 @@ br $block_4 else local.get $3 - i32.const 14960 + i32.const 24432 i32.load i32.store - i32.const 14960 + i32.const 24432 local.get $3 i32.store local.get $2 - i32.const 14960 + i32.const 24432 i32.store local.get $3 i32.load @@ -20441,7 +20820,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 14952 + i32.const 24424 i32.load local.get $1 local.get $1 @@ -20483,8 +20862,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 14964 - i32.const 14964 + i32.const 24436 + i32.const 24436 i32.load i32.const 1 i32.add @@ -21060,7 +21439,7 @@ i32.xor local.set $6 block $block_3 - i32.const 14976 + i32.const 24448 i32.load local.tee $2 i32.eqz @@ -21069,7 +21448,7 @@ i32.const 0 local.set $5 else - i32.const 14972 + i32.const 24444 i32.load local.get $2 local.get $2 @@ -21417,13 +21796,13 @@ i32.const 0 i32.store local.get $12 - i32.const 14988 + i32.const 24460 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 14984 + i32.const 24456 i32.load i32.const 1 i32.add @@ -21483,7 +21862,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 14976 + i32.const 24448 i32.load local.tee $0 i32.const -1 @@ -21520,7 +21899,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 14972 + i32.const 24444 i32.load local.get $5 i32.const 2 @@ -21539,14 +21918,14 @@ br $block_13 else local.get $4 - i32.const 14980 + i32.const 24452 i32.load i32.store - i32.const 14980 + i32.const 24452 local.get $4 i32.store local.get $2 - i32.const 14980 + i32.const 24452 i32.store local.get $4 i32.load @@ -21555,7 +21934,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 14972 + i32.const 24444 i32.load local.get $0 local.get $0 @@ -21597,8 +21976,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 14984 - i32.const 14984 + i32.const 24456 + i32.const 24456 i32.load i32.const 1 i32.add @@ -21638,7 +22017,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14976 + i32.const 24448 i32.load local.tee $0 i32.gt_u @@ -21664,10 +22043,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14984 + i32.const 24456 i32.load f32.convert_i32_u - i32.const 14988 + i32.const 24460 f32.load f32.div f32.ceil @@ -21749,10 +22128,10 @@ local.get $0 i32.eqz if $if - i32.const 14972 + i32.const 24444 i32.load local.set $0 - i32.const 14972 + i32.const 24444 i32.const 0 i32.store local.get $0 @@ -21760,7 +22139,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14976 + i32.const 24448 i32.const 0 i32.store return @@ -21774,11 +22153,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 44 + i32.const 6400 + i32.const 109 call $___cxa_throw end ;; $if_1 local.get $0 @@ -21786,10 +22165,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14972 + i32.const 24444 i32.load local.set $1 - i32.const 14972 + i32.const 24444 local.get $2 i32.store local.get $1 @@ -21797,13 +22176,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14976 + i32.const 24448 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14972 + i32.const 24444 i32.load local.get $1 i32.const 2 @@ -21819,7 +22198,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14980 + i32.const 24452 i32.load local.tee $6 i32.eqz @@ -21829,7 +22208,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 14972 + i32.const 24444 i32.load local.get $0 local.get $0 @@ -21864,7 +22243,7 @@ i32.const 2 i32.shl i32.add - i32.const 14980 + i32.const 24452 i32.store local.get $6 i32.load @@ -21906,7 +22285,7 @@ local.get $4 else block $block (result i32) - i32.const 14972 + i32.const 24444 i32.load local.get $8 i32.const 2 @@ -22134,7 +22513,7 @@ i32.load i32.store local.get $1 - i32.const 14972 + i32.const 24444 i32.load local.get $8 i32.const 2 @@ -22143,7 +22522,7 @@ i32.load i32.load i32.store - i32.const 14972 + i32.const 24444 i32.load local.get $8 i32.const 2 @@ -22191,7 +22570,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14956 + i32.const 24428 i32.load local.tee $0 i32.gt_u @@ -22217,10 +22596,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14964 + i32.const 24436 i32.load f32.convert_i32_u - i32.const 14968 + i32.const 24440 f32.load f32.div f32.ceil @@ -22296,10 +22675,10 @@ local.get $0 i32.eqz if $if - i32.const 14952 + i32.const 24424 i32.load local.set $0 - i32.const 14952 + i32.const 24424 i32.const 0 i32.store local.get $0 @@ -22307,7 +22686,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14956 + i32.const 24428 i32.const 0 i32.store return @@ -22321,11 +22700,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 44 + i32.const 6400 + i32.const 109 call $___cxa_throw end ;; $if_1 local.get $0 @@ -22333,10 +22712,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14952 + i32.const 24424 i32.load local.set $1 - i32.const 14952 + i32.const 24424 local.get $2 i32.store local.get $1 @@ -22344,13 +22723,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14956 + i32.const 24428 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14952 + i32.const 24424 i32.load local.get $1 i32.const 2 @@ -22366,7 +22745,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14960 + i32.const 24432 i32.load local.tee $4 i32.eqz @@ -22376,7 +22755,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 14952 + i32.const 24424 i32.load local.get $0 local.get $0 @@ -22411,7 +22790,7 @@ i32.const 2 i32.shl i32.add - i32.const 14960 + i32.const 24432 i32.store local.get $4 i32.load @@ -22438,7 +22817,7 @@ local.get $0 else block $block (result i32) - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22497,7 +22876,7 @@ i32.load i32.store local.get $1 - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22506,7 +22885,7 @@ i32.load i32.load i32.store - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22553,7 +22932,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22612,7 +22991,7 @@ i32.load i32.store local.get $2 - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22621,7 +23000,7 @@ i32.load i32.load i32.store - i32.const 14952 + i32.const 24424 i32.load local.get $3 i32.const 2 @@ -22646,7 +23025,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 6124 + i32.const 7176 i32.store local.get $0 i32.load offset=148 @@ -22655,30 +23034,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -22702,30 +23081,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -22749,46 +23128,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 + call_indirect $28 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -22798,59 +23160,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $28 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -22858,19 +23203,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -22906,19 +23251,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $32 block $block local.get $0 i32.load offset=84 @@ -22926,10 +23264,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -22937,7 +23272,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -22959,55 +23294,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -23015,13 +23350,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -23041,124 +23376,437 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $32 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $6 + call_indirect $28 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 + local.get $0 + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block + local.get $0 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add i32.load - local.set $0 - local.get $8 + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $4) @@ -23302,11 +23950,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) return end ;; $block end ;; $if_4 @@ -23449,11 +24097,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $4) @@ -23600,11 +24248,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $4) @@ -23751,11 +24399,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -23771,68 +24419,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $32 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -23845,24 +24484,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -23883,7 +24522,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -23892,22 +24531,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -23924,197 +24563,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $6) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $1 if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw + i32.load + call $_free + local.get $1 + call $_free end ;; $if_10 + local.get $10 + i32.load + local.set $2 local.get $0 - local.get $8 - local.get $7 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block local.get $0 - i32.load - i32.load offset=24 - i32.const 1 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 208 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $26 (type $6) - local.get $7 i32.load - local.set $0 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 end ;; $if_3 end ;; $if - local.get $6 + local.get $8 i32.const 4 i32.add - local.set $7 + local.set $6 local.get $0 i32.const 120 i32.add - local.set $8 + local.set $7 local.get $0 i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 + local.tee $4 + if $if_37 + local.get $7 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $11 + if $if_38 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else - local.get $3 - if $if_15 (result i32) + local.get $4 + if $if_40 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -24123,82 +25073,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $7 + call_indirect $28 (type $4) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -24212,82 +25162,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -24296,44 +25246,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $6 + call_indirect $28 (type $4) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $30 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -24350,17 +25300,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $8 + global.get $32 i32.const 16 i32.add - local.set $10 + global.set $32 local.get $8 i32.const 8 i32.add @@ -24368,31 +25313,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -24416,42 +25357,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -24460,39 +25401,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -24503,59 +25444,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 37 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -24568,133 +25820,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -24702,12 +25954,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -24715,9 +25967,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load local.set $0 @@ -24725,58 +25977,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -24789,82 +26041,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -24896,378 +26148,11 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 return end ;; $block local.get $8 - global.set $30 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $32 ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $4) @@ -25614,11 +26499,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $1 call $_free @@ -25634,12 +26519,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $3 @@ -25668,9 +26553,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $5 i32.load local.set $1 @@ -25808,7 +26693,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $30 + global.set $32 return end ;; $block_0 local.get $0 @@ -25825,11 +26710,11 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $30 + global.set $32 return end ;; $block local.get $5 - global.set $30 + global.set $32 ) (func $__Z10getContextj (type $1) @@ -25840,7 +26725,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14956 + i32.const 24428 i32.load local.tee $1 i32.eqz @@ -25848,7 +26733,7 @@ i32.const 0 return end ;; $if - i32.const 14952 + i32.const 24424 i32.load local.get $1 local.get $1 @@ -25983,7 +26868,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -25999,7 +26884,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -26015,14 +26900,14 @@ local.get $0 i32.load local.set $3 - i32.const 14956 + i32.const 24428 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 14952 + i32.const 24424 i32.load local.tee $4 local.get $2 @@ -26190,7 +27075,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 14960 + i32.const 24432 i32.eq br_if $block_2 local.get $3 @@ -26300,7 +27185,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 14952 + i32.const 24424 i32.load local.get $2 i32.const 2 @@ -26320,8 +27205,8 @@ local.get $8 i32.const 0 i32.store - i32.const 14964 - i32.const 14964 + i32.const 24436 + i32.const 24436 i32.load i32.const -1 i32.add @@ -26343,349 +27228,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 14956 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 14952 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 14968 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 14964 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 14956 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 14952 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 14960 - i32.load - i32.store - i32.const 14960 - local.get $1 - i32.store - i32.const 14952 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 14960 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 14952 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 14964 - i32.const 14964 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) @@ -26697,15 +27249,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 + global.get $32 + local.set $8 + global.get $32 + i32.const 16 i32.add - global.set $30 - i32.const 14992 + global.set $32 + i32.const 24464 i32.load i32.eqz if $if @@ -26720,7 +27270,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14992 + i32.const 24464 local.get $3 i32.store i32.const 20 @@ -26734,27 +27284,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14996 + i32.const 24468 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 14996 + i32.const 24468 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -26762,25 +27304,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -26790,7 +27334,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -26805,7 +27349,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -26813,127 +27357,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $28 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 return - end ;; $if_9 - i32.const 14992 + end ;; $if_7 + i32.const 24464 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -26941,31 +27451,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -26973,12 +27485,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -26986,12 +27498,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -27003,97 +27515,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $28 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $30 + end ;; $if_13 + local.get $8 + global.set $32 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) @@ -27579,7 +28065,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -27596,8 +28082,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -27795,345 +28284,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -28146,794 +28309,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6792 - i32.store - local.get $2 - i32.const 5344 - i32.const 44 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 6 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 15000 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 15004 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6276 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4736 - i32.const 32 - call $___cxa_throw - else local.get $1 - global.set $30 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 15004 - local.get $0 - i32.store - i32.const 54 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $30 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6408 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 15004 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 15004 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 14912 - i32.load8_s i32.eqz - if $if - i32.const 14912 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 14912 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 15008 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 15008 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $30 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -28944,236 +29135,440 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10832 + i32.store + local.get $2 + i32.const 6400 + i32.const 109 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6792 - i32.store - local.get $3 - i32.const 5344 - i32.const 44 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 + i32.const -1 + i32.add + local.tee $14 i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 11108 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 13059 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 + i32.const 7328 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s @@ -29185,930 +29580,1111 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 15012 - i64.const 0 - i64.store align=4 - i32.const 15020 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 15761 + i32.const 7328 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15028 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 15761 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15044 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $30 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 + global.set $32 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $30 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24472 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24476 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $30 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7328 i32.store + local.get $1 local.get $3 - i32.const 11111 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11136 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4712 + i32.const 28 + call $___cxa_throw + else + local.get $1 + global.set $32 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 24476 local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 119 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=8 - local.get $3 - global.set $30 - local.get $2 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $32 + return + end ;; $if + i32.const 7464 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24476 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24476 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24384 + i32.load8_s + i32.eqz + if $if + i32.const 24384 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24480 + local.get $2 + i32.store + i32.const 24384 + i32.const 0 + i32.store + i32.const 24384 + i32.const 24384 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24480 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 - local.get $0 - i32.load offset=24 - local.set $3 local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 local.get $2 i32.load offset=4 + i32.const 8 i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 + i32.store offset=4 + else local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4752 - i64.load + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $0 - i64.load offset=16 - i64.eq + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10832 + i32.store + local.get $3 + i32.const 6400 + i32.const 109 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 4752 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4752 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 4760 - local.get $3 - i32.store - i32.const 4752 local.get $0 - i64.load offset=16 - i64.store - local.get $0 - local.get $3 - i32.store offset=4 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block - end ;; $if - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.store + local.get $2 + i32.const 128 + i32.const 14929 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4760 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - drop - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_1 + i32.store + local.get $2 + i32.const 128 + i32.const 16878 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24484 + i64.const 0 + i64.store align=4 + i32.const 24492 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 25238 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add local.tee $1 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 - local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24500 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25238 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24516 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $32 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $32 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 + if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 11 + i32.add + local.set $0 + br $block_0 + end ;; $if_0 + br $block + end ;; $block_0 local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select + else + local.get $0 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 local.get $3 + i32.const 3 i32.store - local.get $1 - local.get $2 + local.get $3 + i32.const 14932 i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 14957 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $0 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $32 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 local.get $0 - local.get $1 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $6 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 i32.const 8 i32.add + local.tee $4 i32.store offset=28 - end ;; $if_2 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 local.get $3 + i32.const 16 + i32.add + i32.store offset=28 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -30119,33 +30695,453 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 local.get $0 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm return end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4728 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4736 + local.get $3 + i32.store + i32.const 4728 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4736 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 local.get $2 local.get $1 - i32.const 50 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 50 + i32.const 115 i32.store offset=4 local.get $2 local.get $0 @@ -30159,13 +31155,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -30176,7 +31172,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 @@ -30194,14 +31190,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 50 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 50 + i32.const 115 i32.store offset=4 local.get $2 local.get $0 @@ -30220,11 +31216,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) @@ -30249,12 +31245,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $6 local.get $4 i32.store @@ -30272,7 +31268,7 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -34834,9 +35830,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_190 local.tee $4 i32.store @@ -34980,9 +35976,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_196 local.tee $4 i32.store @@ -35145,9 +36141,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_202 local.tee $4 i32.store @@ -35315,9 +36311,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_208 local.tee $4 i32.store @@ -35518,7 +36514,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35577,9 +36573,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_214 br $block @@ -35719,7 +36715,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35778,9 +36774,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_222 br $block @@ -35939,7 +36935,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35997,9 +36993,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_230 i32.store local.get $9 @@ -36162,7 +37158,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -36221,9 +37217,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_238 br $block @@ -40250,7 +41246,7 @@ i32.load local.set $4 local.get $11 - i32.const 6296 + i32.const 7348 i32.store local.get $11 local.get $4 @@ -40297,9 +41293,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -40318,7 +41314,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11223 + i32.const 15044 i32.store offset=4 local.get $11 i32.const 571 @@ -40330,7 +41326,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11265 + i32.const 15086 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -40350,24 +41346,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11223 + i32.const 15044 i32.store offset=4 local.get $1 i32.const 534 @@ -40379,12 +41375,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11265 + i32.const 15086 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11295 + i32.const 15116 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -40393,50 +41389,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 14944 + global.set $32 + i32.const 24416 i32.load8_s i32.eqz if $if - i32.const 14944 + i32.const 24416 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 14944 + i32.const 24416 + i32.const 0 + i32.store + i32.const 24416 + i32.const 24416 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15088 + i32.const 24560 i32.load - i32.const 6416 + i32.const 7468 call $_pthread_equal if $if_1 - i32.const 5596 + i32.const 6648 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11223 + i32.const 15044 i32.store offset=4 local.get $0 i32.const 801 @@ -40448,53 +41452,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11307 + i32.const 15128 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 14936 + i32.const 24408 i32.load8_s i32.eqz if $if_3 - i32.const 14936 + i32.const 24408 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 14936 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 14920 + i32.xor + if $if_4 + i32.const 24392 i64.const 0 i64.store - i32.const 14928 + i32.const 24400 i32.const 0 i32.store - i32.const 55 - i32.const 14920 + i32.const 120 + i32.const 24392 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24408 + i32.const 0 + i32.store + i32.const 24408 + i32.const 24408 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15088 - i32.const 6416 + i32.const 24560 + i32.const 7468 i32.store - i32.const 5596 + i32.const 6648 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15088 + i32.const 24560 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -40553,9 +41560,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -40582,31 +41589,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11472 + i32.const 15293 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11480 + i32.const 15301 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11488 + i32.const 15309 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11496 + i32.const 15317 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11504 + i32.const 15325 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11512 + i32.const 15333 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11520 + i32.const 15341 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -40626,7 +41633,7 @@ i32.load local.set $2 local.get $0 - i32.const 15762 + i32.const 25229 i32.load8_s i32.const 1 i32.and @@ -40636,9 +41643,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $2) @@ -40651,19 +41658,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 if $if local.get $0 @@ -40680,7 +41687,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -40690,7 +41697,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $6 local.set $5 local.get $4 @@ -40698,7 +41705,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6296 + i32.const 7348 i32.store local.get $3 local.get $2 @@ -40731,11 +41738,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load8_s offset=16 if $if_0 @@ -40743,7 +41750,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11402 + i32.const 15223 i32.store offset=4 local.get $4 i32.const 373 @@ -40755,7 +41762,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11434 + i32.const 15255 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -40768,7 +41775,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -40781,12 +41788,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -40802,7 +41809,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -40838,7 +41845,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11555 + i32.const 15376 i32.store offset=4 local.get $3 i32.const 59 @@ -40850,9 +41857,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11589 + i32.const 15410 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11706 + i32.const 15527 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -40884,13 +41891,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5408 + i32.const 6472 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -40954,7 +41961,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -40967,12 +41974,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -41021,7 +42028,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -41059,7 +42066,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -41138,7 +42145,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -41224,7 +42231,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -41268,17 +42275,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -41442,12 +42449,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -41586,7 +42593,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -41656,7 +42663,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -42212,17 +43219,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -42480,12 +43487,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42535,7 +43542,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11754 + i32.const 15575 i32.store offset=4 local.get $4 i32.const 507 @@ -42547,7 +43554,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11790 + i32.const 15611 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42599,7 +43606,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -42681,7 +43688,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) @@ -42692,12 +43699,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42747,7 +43754,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11754 + i32.const 15575 i32.store offset=4 local.get $4 i32.const 516 @@ -42759,7 +43766,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11790 + i32.const 15611 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42885,7 +43892,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -42978,7 +43985,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 local.get $2 i32.load offset=8 @@ -42995,11 +44002,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) return end ;; $if_2 local.get $2 @@ -43068,11 +44075,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $4) @@ -43124,7 +44131,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $1 i32.load offset=8 @@ -43238,9 +44245,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop return end ;; $if_4 @@ -43250,11 +44257,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $3) @@ -43370,18 +44377,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -43438,13 +44445,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 11836 + i32.const 15657 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 11848 + i32.const 15669 local.get $2 select local.set $3 @@ -43456,7 +44463,7 @@ i32.const 2 i32.store local.get $1 - i32.const 11754 + i32.const 15575 i32.store offset=4 local.get $1 i32.const 626 @@ -43468,21 +44475,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11862 + i32.const 15683 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 11875 + i32.const 15696 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11894 + i32.const 15715 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11911 + i32.const 15732 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11924 + i32.const 15745 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11980 + i32.const 15801 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -43497,7 +44504,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -43608,12 +44615,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -43656,7 +44663,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -43779,7 +44786,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -43807,7 +44814,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -44178,12 +45185,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -44223,9 +45230,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $4 @@ -44252,7 +45259,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11988 + i32.const 15809 i32.store offset=4 local.get $2 i32.const 591 @@ -44264,7 +45271,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12023 + i32.const 15844 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -44357,7 +45364,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -44373,7 +45380,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -44383,31 +45390,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 11988 + i32.const 15809 i32.store offset=4 local.get $1 i32.const 190 @@ -44419,18 +45426,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12060 + i32.const 15881 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12127 + i32.const 15948 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $3) @@ -44566,11 +45573,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) drop i32.const 0 return @@ -44584,11 +45591,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) if $if_2 (result i32) local.get $0 local.get $0 @@ -44609,9 +45616,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -44858,12 +45865,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44936,7 +45943,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44949,7 +45956,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44963,12 +45970,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -45041,7 +46048,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -45054,7 +46061,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -45069,12 +46076,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -45122,7 +46129,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -45292,7 +46299,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -45355,7 +46362,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -45363,7 +46370,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -45377,12 +46384,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -45480,7 +46487,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -45521,7 +46528,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -45680,12 +46687,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -45694,12 +46701,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45728,9 +46735,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) if $if local.get $0 local.get $2 @@ -45758,19 +46765,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45787,7 +46794,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -45812,11 +46819,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 local.get $0 i32.load offset=12 @@ -45841,12 +46848,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -45884,9 +46891,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -45926,7 +46933,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -45948,7 +46955,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -45997,11 +47004,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 i32.const 12 i32.add @@ -46051,9 +47058,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.xor i32.const 1 @@ -46074,12 +47081,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -46106,7 +47113,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -46148,9 +47155,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46190,7 +47197,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -46211,7 +47218,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -46225,12 +47232,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -46257,7 +47264,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -46297,9 +47304,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46339,7 +47346,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -46360,7 +47367,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $4) @@ -46372,12 +47379,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -46465,9 +47472,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46507,7 +47514,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -46532,7 +47539,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -46546,12 +47553,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -46643,9 +47650,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46685,7 +47692,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -46707,7 +47714,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $3) @@ -46801,6 +47808,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) @@ -46862,12 +47875,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46882,7 +47895,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $2 i32.const 132 @@ -46894,9 +47907,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12352 + i32.const 16173 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12396 + i32.const 16217 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46917,7 +47930,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $2 i32.const 134 @@ -46929,7 +47942,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12451 + i32.const 16272 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46949,14 +47962,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $3 i32.const 135 @@ -46968,7 +47981,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12321 + i32.const 16142 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46983,7 +47996,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -47004,12 +48017,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -47024,7 +48037,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $3 i32.const 151 @@ -47036,7 +48049,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12541 + i32.const 16362 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -47110,7 +48123,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $5 i32.const 164 @@ -47122,15 +48135,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12618 + i32.const 16439 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12668 + i32.const 16489 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -47171,7 +48184,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -47181,12 +48194,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -47199,7 +48212,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $2 i32.const 182 @@ -47211,7 +48224,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12321 + i32.const 16142 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -47232,7 +48245,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $2 i32.const 183 @@ -47244,7 +48257,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12541 + i32.const 16362 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -47274,7 +48287,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $3 i32.const 184 @@ -47286,7 +48299,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12573 + i32.const 16394 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -47322,7 +48335,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -47331,12 +48344,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -47347,7 +48360,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12272 + i32.const 16093 i32.store offset=4 local.get $1 i32.const 189 @@ -47359,7 +48372,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12541 + i32.const 16362 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -47380,11 +48393,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -47399,12 +48412,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -47414,7 +48427,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 11856 + i32.const 15677 local.get $2 call $_vsnprintf local.tee $4 @@ -47426,7 +48439,7 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -47447,7 +48460,7 @@ i32.store local.get $3 local.get $5 - i32.const 11856 + i32.const 15677 local.get $2 call $_vsnprintf local.tee $1 @@ -47469,19 +48482,19 @@ call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -47495,7 +48508,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $2) @@ -47524,7 +48537,7 @@ i32.const 241 return end ;; $if - i32.const 6376 + i32.const 7428 i32.load local.set $13 local.get $0 @@ -47534,18 +48547,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6404 + i32.const 7456 i32.load local.set $4 - i32.const 6384 + i32.const 7436 i32.load local.set $11 - i32.const 6388 + i32.const 7440 i32.load local.set $12 - i32.const 6392 + i32.const 7444 i32.load - i32.const 6360 + i32.const 7412 i32.load i32.add local.tee $8 @@ -47758,7 +48771,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.ge_u if $if_7 @@ -47790,7 +48803,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.lt_u if $if_9 (result i32) @@ -47838,17 +48851,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -47971,7 +48984,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -47984,17 +48997,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 12730 + i32.const 16551 i32.store offset=4 local.get $0 i32.const 47 @@ -48006,13 +49019,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 12769 + i32.const 16590 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -48020,12 +49033,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -48037,7 +49050,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15156 + i32.const 24628 i32.const 0 local.get $0 i32.sub @@ -48046,217 +49059,63 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 local.get $0 ) - (func $___stdio_write (type $2) + (func $___stdout_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $3 + global.get $32 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $32 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15156 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15156 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 10 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $30 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 + local.get $0 ) (func $___stdio_seek (type $12) @@ -48266,12 +49125,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 8 i32.add @@ -48300,7 +49159,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15156 + i32.const 24628 i32.const 0 local.get $0 i32.sub @@ -48322,68 +49181,303 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $30 + global.set $32 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15156 + i32.const 24628 ) - (func $___stdout_write (type $2) + (func $___stdio_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $6 i32.const 32 i32.add - global.set $30 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 9 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24628 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24628 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $32 + local.get $2 + ) + + (func $_strlen (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $2) @@ -48437,6 +49531,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $3) (param $0 i32) (param $1 i32) @@ -48559,6 +49780,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -48567,18 +49815,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5104 + i32.const 5080 i32.const 144 call $_memcpy drop @@ -48592,7 +49840,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15156 + i32.const 24628 i32.const 75 i32.store i32.const -1 @@ -48657,7 +49905,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -48703,12 +49951,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -48740,13 +49988,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 12953 + i32.const 16774 local.set $18 i32.const 1 else - i32.const 12956 - i32.const 12959 - i32.const 12954 + i32.const 16777 + i32.const 16780 + i32.const 16775 local.get $4 i32.const 1 i32.and @@ -48769,8 +50017,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 12980 - i32.const 12984 + i32.const 16801 + i32.const 16805 local.get $5 i32.const 32 i32.and @@ -48778,8 +50026,8 @@ i32.ne local.tee $3 select - i32.const 12972 - i32.const 12976 + i32.const 16793 + i32.const 16797 local.get $3 select local.get $1 @@ -48797,15 +50045,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48813,7 +50061,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -49071,11 +50319,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -49083,14 +50331,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -49103,11 +50351,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -49115,7 +50363,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -50022,11 +51270,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -50034,7 +51282,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -50103,7 +51351,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -50127,9 +51375,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 12988 + i32.const 19576 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -50176,7 +51424,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -50206,7 +51454,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -50274,7 +51522,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -50286,9 +51534,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 12988 + i32.const 19576 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -50325,7 +51573,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -50349,13 +51597,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -50364,13 +51612,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -50413,12 +51661,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -50529,9 +51777,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $1 i32.const -1 @@ -50574,7 +51822,7 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -50606,12 +51854,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -50660,7 +51908,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15156 + i32.const 24628 i32.const 75 i32.store i32.const -1 @@ -50750,7 +51998,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -50963,7 +52211,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -50999,7 +52247,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -51189,7 +52437,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -51376,7 +52624,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 12936 + i32.const 16757 local.set $8 br $block_14 end ;; $block_25 @@ -51392,13 +52640,13 @@ i64.sub local.tee $25 i64.store - i32.const 12936 + i32.const 16757 local.set $8 i32.const 1 else - i32.const 12937 - i32.const 12938 - i32.const 12936 + i32.const 16758 + i32.const 16759 + i32.const 16757 local.get $7 i32.const 1 i32.and @@ -51422,7 +52670,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 12936 + i32.const 16757 local.set $8 br $block_16 end ;; $block_23 @@ -51438,7 +52686,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12936 + i32.const 16757 local.set $8 local.get $18 local.set $1 @@ -51447,7 +52695,7 @@ local.get $10 i32.load local.tee $5 - i32.const 12946 + i32.const 16767 local.get $5 select local.tee $6 @@ -51467,7 +52715,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12936 + i32.const 16757 local.set $8 local.get $1 local.get $6 @@ -51503,7 +52751,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -51518,7 +52766,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -51528,7 +52776,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12936 + i32.const 16757 local.set $8 local.get $18 local.set $1 @@ -51556,11 +52804,11 @@ local.tee $8 select local.set $12 - i32.const 12936 + i32.const 16757 local.get $6 i32.const 4 i32.shr_u - i32.const 12936 + i32.const 16757 i32.add local.get $8 select @@ -51626,7 +52874,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -51657,7 +52905,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -51720,7 +52968,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -51753,11 +53001,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -51765,17 +53013,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -51783,7 +53031,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -51815,7 +53063,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -51856,11 +53104,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51877,7 +53125,7 @@ end ;; $if ) - (func $_getint_280 (type $1) + (func $_getint (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -51919,7 +53167,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -52143,13 +53391,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 199 - call_indirect $26 (type $4) + i32.const 396 + call_indirect $28 (type $4) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -52185,7 +53433,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -52217,7 +53465,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -52290,19 +53538,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -52341,7 +53589,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -52358,10 +53606,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $3) @@ -52395,7 +53643,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6604 + i32.const 7656 i32.load i32.load i32.eqz @@ -52412,7 +53660,7 @@ i32.const 1 br $block else - i32.const 15156 + i32.const 24628 i32.const 84 i32.store i32.const -1 @@ -52517,7 +53765,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15156 + i32.const 24628 i32.const 84 i32.store i32.const -1 @@ -52567,9 +53815,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop br $block end ;; $if_0 @@ -52614,9 +53862,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $3 i32.lt_u br_if $block @@ -52697,76 +53945,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $2) (param $0 i32) (param $1 i32) @@ -52801,176 +53979,26 @@ local.get $2 ) - (func $_strlen (type $1) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $16) + (func $_fprintf (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 14809 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -52978,12 +54006,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -53033,9 +54061,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.eq if $if_2 (result i32) @@ -53047,29 +54075,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 10988 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $1) @@ -53093,10 +54099,10 @@ end ;; $block local.set $0 else - i32.const 6412 + i32.const 7460 i32.load if $if_1 (result i32) - i32.const 6412 + i32.const 7460 i32.load call $_fflush else @@ -53104,9 +54110,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15160 + i32.const 24632 call $___lock - i32.const 15168 + i32.const 24640 i32.load local.tee $1 end ;; $block_0 @@ -53140,7 +54146,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15160 + i32.const 24632 call $___unlock end ;; $if local.get $0 @@ -53169,9 +54175,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $0 i32.load offset=20 @@ -53199,9 +54205,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -53223,6 +54229,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $1) (param $0 i32) (result i32) @@ -53248,17 +54318,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15172 + i32.const 24644 i32.load local.tee $6 i32.const 16 @@ -53290,7 +54360,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.tee $3 i32.load offset=8 @@ -53303,7 +54373,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15172 + i32.const 24644 local.get $6 i32.const 1 local.get $0 @@ -53313,7 +54383,7 @@ i32.and i32.store else - i32.const 15188 + i32.const 24660 i32.load local.get $4 i32.gt_u @@ -53353,12 +54423,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15180 + i32.const 24652 i32.load local.tee $13 i32.gt_u @@ -53437,7 +54507,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.tee $1 i32.load offset=8 @@ -53450,7 +54520,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15172 + i32.const 24644 local.get $6 i32.const 1 local.get $0 @@ -53461,7 +54531,7 @@ local.tee $8 i32.store else - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.gt_u @@ -53511,7 +54581,7 @@ i32.store local.get $13 if $if_9 - i32.const 15192 + i32.const 24664 i32.load local.set $10 local.get $13 @@ -53520,7 +54590,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $2 local.get $8 @@ -53530,7 +54600,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.const 8 @@ -53548,7 +54618,7 @@ local.set $4 end ;; $if_11 else - i32.const 15172 + i32.const 24644 local.get $0 local.get $8 i32.or @@ -53573,18 +54643,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15180 + i32.const 24652 local.get $6 i32.store - i32.const 15192 + i32.const 24664 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 15176 + i32.const 24648 i32.load local.tee $11 if $if_12 (result i32) @@ -53647,7 +54717,7 @@ i32.add i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add i32.load local.tee $0 @@ -53697,7 +54767,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15188 + i32.const 24660 i32.load local.tee $7 local.get $9 @@ -53821,7 +54891,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.tee $0 i32.load @@ -53834,7 +54904,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15176 + i32.const 24648 local.get $11 i32.const 1 local.get $1 @@ -53846,7 +54916,7 @@ br $block_2 end ;; $if_25 else - i32.const 15188 + i32.const 24660 i32.load local.get $18 i32.gt_u @@ -53871,7 +54941,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $3 @@ -53904,7 +54974,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15188 + i32.const 24660 i32.load local.get $0 i32.gt_u @@ -53960,7 +55030,7 @@ i32.store local.get $13 if $if_33 - i32.const 15192 + i32.const 24664 i32.load local.set $4 local.get $13 @@ -53969,7 +55039,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $3 local.get $6 @@ -53979,7 +55049,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15188 + i32.const 24660 i32.load local.get $3 i32.const 8 @@ -53997,7 +55067,7 @@ local.set $12 end ;; $if_35 else - i32.const 15172 + i32.const 24644 local.get $0 local.get $6 i32.or @@ -54022,15 +55092,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15180 + i32.const 24652 local.get $10 i32.store - i32.const 15192 + i32.const 24664 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -54056,7 +55126,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15176 + i32.const 24648 i32.load local.tee $4 if $if_37 (result i32) @@ -54136,7 +55206,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add i32.load local.tee $0 @@ -54301,7 +55371,7 @@ i32.add i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add i32.load local.set $0 @@ -54364,13 +55434,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15180 + i32.const 24652 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15188 + i32.const 24660 i32.load local.tee $12 local.get $2 @@ -54494,7 +55564,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.tee $0 i32.load @@ -54507,7 +55577,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15176 + i32.const 24648 local.get $4 i32.const 1 local.get $3 @@ -54520,7 +55590,7 @@ br $block_9 end ;; $if_60 else - i32.const 15188 + i32.const 24660 i32.load local.get $8 i32.gt_u @@ -54549,7 +55619,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $13 @@ -54582,7 +55652,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15188 + i32.const 24660 i32.load local.get $0 i32.gt_u @@ -54656,10 +55726,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $3 - i32.const 15172 + i32.const 24644 i32.load local.tee $1 i32.const 1 @@ -54668,7 +55738,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15188 + i32.const 24660 i32.load local.get $3 i32.const 8 @@ -54686,7 +55756,7 @@ local.set $11 end ;; $if_71 else - i32.const 15172 + i32.const 24644 local.get $0 local.get $1 i32.or @@ -54782,7 +55852,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.set $3 local.get $5 @@ -54802,7 +55872,7 @@ i32.and i32.eqz if $if_74 - i32.const 15176 + i32.const 24648 local.get $0 local.get $1 i32.or @@ -54883,7 +55953,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15188 + i32.const 24660 i32.load local.get $4 i32.gt_u @@ -54906,7 +55976,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $6 @@ -54939,7 +56009,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -54959,13 +56029,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15180 + i32.const 24652 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15192 + i32.const 24664 i32.load local.set $0 local.get $3 @@ -54975,13 +56045,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15192 + i32.const 24664 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15180 + i32.const 24652 local.get $2 i32.store local.get $1 @@ -55000,10 +56070,10 @@ i32.or i32.store offset=4 else - i32.const 15180 + i32.const 24652 i32.const 0 i32.store - i32.const 15192 + i32.const 24664 i32.const 0 i32.store local.get $0 @@ -55024,13 +56094,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15184 + i32.const 24656 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15184 + i32.const 24656 local.get $12 local.get $11 i32.sub @@ -55038,31 +56108,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 15644 + i32.const 25116 i32.load if $if_83 (result i32) - i32.const 15652 + i32.const 25124 i32.load else - i32.const 15652 + i32.const 25124 i32.const 4096 i32.store - i32.const 15648 + i32.const 25120 i32.const 4096 i32.store - i32.const 15656 + i32.const 25128 i32.const -1 i32.store - i32.const 15660 + i32.const 25132 i32.const -1 i32.store - i32.const 15664 + i32.const 25136 i32.const 0 i32.store - i32.const 15616 + i32.const 25088 i32.const 0 i32.store - i32.const 15644 + i32.const 25116 local.get $17 i32.const -16 i32.and @@ -55089,11 +56159,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15612 + i32.const 25084 i32.load local.tee $2 if $if_85 - i32.const 15604 + i32.const 25076 i32.load local.tee $1 local.get $8 @@ -55115,7 +56185,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 15616 + i32.const 25088 i32.load i32.const 4 i32.and @@ -55126,12 +56196,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15196 + i32.const 24668 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 15620 + i32.const 25092 local.set $2 loop $loop_5 block $block_20 @@ -55194,11 +56264,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15604 + i32.const 25076 i32.load local.tee $4 local.get $0 - i32.const 15648 + i32.const 25120 i32.load local.tee $2 i32.const -1 @@ -55229,7 +56299,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15612 + i32.const 25084 i32.load local.tee $1 if $if_92 @@ -55287,7 +56357,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 15652 + i32.const 25124 i32.load local.tee $1 local.get $6 @@ -55324,8 +56394,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 15616 - i32.const 15616 + i32.const 25088 + i32.const 25088 i32.load i32.const 4 i32.or @@ -55380,28 +56450,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15604 - i32.const 15604 + i32.const 25076 + i32.const 25076 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15608 + i32.const 25080 i32.load i32.gt_u if $if_98 - i32.const 15608 + i32.const 25080 local.get $1 i32.store end ;; $if_98 - i32.const 15196 + i32.const 24668 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 15620 + i32.const 25092 local.set $2 block $block_22 block $block_23 @@ -55459,7 +56529,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15184 + i32.const 24656 i32.load local.get $3 i32.add @@ -55467,10 +56537,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15196 + i32.const 24668 local.get $2 i32.store - i32.const 15184 + i32.const 24656 local.get $1 i32.store local.get $2 @@ -55483,8 +56553,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15200 - i32.const 15660 + i32.const 24672 + i32.const 25132 i32.load i32.store br $block_21 @@ -55492,12 +56562,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15188 + i32.const 24660 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15188 + i32.const 24660 local.get $0 i32.store local.get $0 @@ -55507,7 +56577,7 @@ local.get $3 i32.add local.set $1 - i32.const 15620 + i32.const 25092 local.set $8 block $block_24 block $block_25 @@ -55588,14 +56658,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15184 - i32.const 15184 + i32.const 24656 + i32.const 24656 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15196 + i32.const 24668 local.get $5 i32.store local.get $5 @@ -55605,19 +56675,19 @@ i32.store offset=4 else block $block_26 - i32.const 15192 + i32.const 24664 i32.load local.get $3 i32.eq if $if_105 - i32.const 15180 - i32.const 15180 + i32.const 24652 + i32.const 24652 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15192 + i32.const 24664 local.get $5 i32.store local.get $5 @@ -55662,7 +56732,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.tee $0 i32.ne @@ -55686,8 +56756,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15172 - i32.const 15172 + i32.const 24644 + i32.const 24644 i32.load i32.const 1 local.get $1 @@ -55845,7 +56915,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.tee $0 i32.load @@ -55858,8 +56928,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15176 - i32.const 15176 + i32.const 24648 + i32.const 24648 i32.load i32.const 1 local.get $1 @@ -55871,7 +56941,7 @@ br $block_27 end ;; $block_32 else - i32.const 15188 + i32.const 24660 i32.load local.get $8 i32.gt_u @@ -55896,7 +56966,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $16 @@ -55930,7 +57000,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15188 + i32.const 24660 i32.load local.get $0 i32.gt_u @@ -55982,10 +57052,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $2 - i32.const 15172 + i32.const 24644 i32.load local.tee $1 i32.const 1 @@ -55995,7 +57065,7 @@ i32.and if $if_128 block $block_33 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.const 8 @@ -56014,7 +57084,7 @@ call $_abort end ;; $block_33 else - i32.const 15172 + i32.const 24644 local.get $0 local.get $1 i32.or @@ -56110,7 +57180,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.set $2 local.get $5 @@ -56122,7 +57192,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15176 + i32.const 24648 i32.load local.tee $1 i32.const 1 @@ -56132,7 +57202,7 @@ i32.and i32.eqz if $if_132 - i32.const 15176 + i32.const 24648 local.get $0 local.get $1 i32.or @@ -56213,7 +57283,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.gt_u @@ -56236,7 +57306,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $9 @@ -56269,14 +57339,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $30 + global.set $32 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 15620 + i32.const 25092 local.set $2 loop $loop_10 block $block_35 @@ -56301,7 +57371,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15196 + i32.const 24668 i32.const 0 local.get $0 i32.const 8 @@ -56320,7 +57390,7 @@ i32.add local.tee $4 i32.store - i32.const 15184 + i32.const 24656 local.get $3 i32.const -40 i32.add @@ -56339,8 +57409,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15200 - i32.const 15660 + i32.const 24672 + i32.const 25132 i32.load i32.store local.get $6 @@ -56373,23 +57443,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 15620 + i32.const 25092 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 15628 + i32.const 25100 i64.load align=4 i64.store offset=16 align=4 - i32.const 15620 + i32.const 25092 local.get $0 i32.store - i32.const 15624 + i32.const 25096 local.get $3 i32.store - i32.const 15632 + i32.const 25104 i32.const 0 i32.store - i32.const 15628 + i32.const 25100 local.get $2 i32.const 8 i32.add @@ -56448,10 +57518,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $2 - i32.const 15172 + i32.const 24644 i32.load local.tee $1 i32.const 1 @@ -56460,7 +57530,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.const 8 @@ -56478,7 +57548,7 @@ local.set $5 end ;; $if_143 else - i32.const 15172 + i32.const 24644 local.get $0 local.get $1 i32.or @@ -56574,7 +57644,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.set $2 local.get $6 @@ -56586,7 +57656,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15176 + i32.const 24648 i32.load local.tee $1 i32.const 1 @@ -56596,7 +57666,7 @@ i32.and i32.eqz if $if_146 - i32.const 15176 + i32.const 24648 local.get $0 local.get $1 i32.or @@ -56677,7 +57747,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15188 + i32.const 24660 i32.load local.get $3 i32.gt_u @@ -56700,7 +57770,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $10 @@ -56733,7 +57803,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15188 + i32.const 24660 i32.load local.tee $1 i32.eqz @@ -56742,219 +57812,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15188 + i32.const 24660 local.get $0 i32.store end ;; $if_152 - i32.const 15620 + i32.const 25092 local.get $0 i32.store - i32.const 15624 + i32.const 25096 local.get $3 i32.store - i32.const 15632 + i32.const 25104 i32.const 0 i32.store - i32.const 15208 - i32.const 15644 + i32.const 24680 + i32.const 25116 i32.load i32.store - i32.const 15204 + i32.const 24676 i32.const -1 i32.store - i32.const 15224 - i32.const 15212 + i32.const 24696 + i32.const 24684 i32.store - i32.const 15220 - i32.const 15212 + i32.const 24692 + i32.const 24684 i32.store - i32.const 15232 - i32.const 15220 + i32.const 24704 + i32.const 24692 i32.store - i32.const 15228 - i32.const 15220 + i32.const 24700 + i32.const 24692 i32.store - i32.const 15240 - i32.const 15228 + i32.const 24712 + i32.const 24700 i32.store - i32.const 15236 - i32.const 15228 + i32.const 24708 + i32.const 24700 i32.store - i32.const 15248 - i32.const 15236 + i32.const 24720 + i32.const 24708 i32.store - i32.const 15244 - i32.const 15236 + i32.const 24716 + i32.const 24708 i32.store - i32.const 15256 - i32.const 15244 + i32.const 24728 + i32.const 24716 i32.store - i32.const 15252 - i32.const 15244 + i32.const 24724 + i32.const 24716 i32.store - i32.const 15264 - i32.const 15252 + i32.const 24736 + i32.const 24724 i32.store - i32.const 15260 - i32.const 15252 + i32.const 24732 + i32.const 24724 i32.store - i32.const 15272 - i32.const 15260 + i32.const 24744 + i32.const 24732 i32.store - i32.const 15268 - i32.const 15260 + i32.const 24740 + i32.const 24732 i32.store - i32.const 15280 - i32.const 15268 + i32.const 24752 + i32.const 24740 i32.store - i32.const 15276 - i32.const 15268 + i32.const 24748 + i32.const 24740 i32.store - i32.const 15288 - i32.const 15276 + i32.const 24760 + i32.const 24748 i32.store - i32.const 15284 - i32.const 15276 + i32.const 24756 + i32.const 24748 i32.store - i32.const 15296 - i32.const 15284 + i32.const 24768 + i32.const 24756 i32.store - i32.const 15292 - i32.const 15284 + i32.const 24764 + i32.const 24756 i32.store - i32.const 15304 - i32.const 15292 + i32.const 24776 + i32.const 24764 i32.store - i32.const 15300 - i32.const 15292 + i32.const 24772 + i32.const 24764 i32.store - i32.const 15312 - i32.const 15300 + i32.const 24784 + i32.const 24772 i32.store - i32.const 15308 - i32.const 15300 + i32.const 24780 + i32.const 24772 i32.store - i32.const 15320 - i32.const 15308 + i32.const 24792 + i32.const 24780 i32.store - i32.const 15316 - i32.const 15308 + i32.const 24788 + i32.const 24780 i32.store - i32.const 15328 - i32.const 15316 + i32.const 24800 + i32.const 24788 i32.store - i32.const 15324 - i32.const 15316 + i32.const 24796 + i32.const 24788 i32.store - i32.const 15336 - i32.const 15324 + i32.const 24808 + i32.const 24796 i32.store - i32.const 15332 - i32.const 15324 + i32.const 24804 + i32.const 24796 i32.store - i32.const 15344 - i32.const 15332 + i32.const 24816 + i32.const 24804 i32.store - i32.const 15340 - i32.const 15332 + i32.const 24812 + i32.const 24804 i32.store - i32.const 15352 - i32.const 15340 + i32.const 24824 + i32.const 24812 i32.store - i32.const 15348 - i32.const 15340 + i32.const 24820 + i32.const 24812 i32.store - i32.const 15360 - i32.const 15348 + i32.const 24832 + i32.const 24820 i32.store - i32.const 15356 - i32.const 15348 + i32.const 24828 + i32.const 24820 i32.store - i32.const 15368 - i32.const 15356 + i32.const 24840 + i32.const 24828 i32.store - i32.const 15364 - i32.const 15356 + i32.const 24836 + i32.const 24828 i32.store - i32.const 15376 - i32.const 15364 + i32.const 24848 + i32.const 24836 i32.store - i32.const 15372 - i32.const 15364 + i32.const 24844 + i32.const 24836 i32.store - i32.const 15384 - i32.const 15372 + i32.const 24856 + i32.const 24844 i32.store - i32.const 15380 - i32.const 15372 + i32.const 24852 + i32.const 24844 i32.store - i32.const 15392 - i32.const 15380 + i32.const 24864 + i32.const 24852 i32.store - i32.const 15388 - i32.const 15380 + i32.const 24860 + i32.const 24852 i32.store - i32.const 15400 - i32.const 15388 + i32.const 24872 + i32.const 24860 i32.store - i32.const 15396 - i32.const 15388 + i32.const 24868 + i32.const 24860 i32.store - i32.const 15408 - i32.const 15396 + i32.const 24880 + i32.const 24868 i32.store - i32.const 15404 - i32.const 15396 + i32.const 24876 + i32.const 24868 i32.store - i32.const 15416 - i32.const 15404 + i32.const 24888 + i32.const 24876 i32.store - i32.const 15412 - i32.const 15404 + i32.const 24884 + i32.const 24876 i32.store - i32.const 15424 - i32.const 15412 + i32.const 24896 + i32.const 24884 i32.store - i32.const 15420 - i32.const 15412 + i32.const 24892 + i32.const 24884 i32.store - i32.const 15432 - i32.const 15420 + i32.const 24904 + i32.const 24892 i32.store - i32.const 15428 - i32.const 15420 + i32.const 24900 + i32.const 24892 i32.store - i32.const 15440 - i32.const 15428 + i32.const 24912 + i32.const 24900 i32.store - i32.const 15436 - i32.const 15428 + i32.const 24908 + i32.const 24900 i32.store - i32.const 15448 - i32.const 15436 + i32.const 24920 + i32.const 24908 i32.store - i32.const 15444 - i32.const 15436 + i32.const 24916 + i32.const 24908 i32.store - i32.const 15456 - i32.const 15444 + i32.const 24928 + i32.const 24916 i32.store - i32.const 15452 - i32.const 15444 + i32.const 24924 + i32.const 24916 i32.store - i32.const 15464 - i32.const 15452 + i32.const 24936 + i32.const 24924 i32.store - i32.const 15460 - i32.const 15452 + i32.const 24932 + i32.const 24924 i32.store - i32.const 15472 - i32.const 15460 + i32.const 24944 + i32.const 24932 i32.store - i32.const 15468 - i32.const 15460 + i32.const 24940 + i32.const 24932 i32.store - i32.const 15196 + i32.const 24668 i32.const 0 local.get $0 i32.const 8 @@ -56973,7 +58043,7 @@ i32.add local.tee $4 i32.store - i32.const 15184 + i32.const 24656 local.get $3 i32.const -40 i32.add @@ -56992,18 +58062,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15200 - i32.const 15660 + i32.const 24672 + i32.const 25132 i32.load i32.store end ;; $if_99 - i32.const 15184 + i32.const 24656 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15184 + i32.const 24656 local.get $0 local.get $11 i32.sub @@ -57012,13 +58082,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15156 + i32.const 24628 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15196 - i32.const 15196 + i32.const 24668 + i32.const 24668 i32.load local.tee $0 local.get $11 @@ -57037,14 +58107,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $30 + global.set $32 i32.const 0 ) @@ -57076,7 +58146,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15188 + i32.const 24660 i32.load local.tee $11 i32.lt_u @@ -57135,7 +58205,7 @@ local.get $10 i32.add local.set $5 - i32.const 15192 + i32.const 24664 i32.load local.get $0 i32.eq @@ -57155,7 +58225,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15180 + i32.const 24652 local.get $5 i32.store local.get $7 @@ -57192,7 +58262,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.tee $4 i32.ne @@ -57215,8 +58285,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15172 - i32.const 15172 + i32.const 24644 + i32.const 24644 i32.load i32.const 1 local.get $2 @@ -57382,7 +58452,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.tee $6 i32.load @@ -57395,8 +58465,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15176 - i32.const 15176 + i32.const 24648 + i32.const 24648 i32.load i32.const 1 local.get $2 @@ -57413,7 +58483,7 @@ br $block end ;; $if_24 else - i32.const 15188 + i32.const 24660 i32.load local.get $13 i32.gt_u @@ -57446,7 +58516,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15188 + i32.const 24660 i32.load local.tee $6 local.get $8 @@ -57479,7 +58549,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.gt_u @@ -57549,19 +58619,19 @@ local.get $1 i32.store else - i32.const 15196 + i32.const 24668 i32.load local.get $7 i32.eq if $if_35 - i32.const 15184 - i32.const 15184 + i32.const 24656 + i32.const 24656 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15196 + i32.const 24668 local.get $3 i32.store local.get $3 @@ -57570,33 +58640,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15192 + i32.const 24664 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15192 + i32.const 24664 i32.const 0 i32.store - i32.const 15180 + i32.const 24652 i32.const 0 i32.store return end ;; $if_35 - i32.const 15192 + i32.const 24664 i32.load local.get $7 i32.eq if $if_37 - i32.const 15180 - i32.const 15180 + i32.const 24652 + i32.const 24652 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15192 + i32.const 24664 local.get $4 i32.store local.get $3 @@ -57635,12 +58705,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.gt_u @@ -57659,8 +58729,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15172 - i32.const 15172 + i32.const 24644 + i32.const 24644 i32.load i32.const 1 local.get $6 @@ -57680,7 +58750,7 @@ i32.add local.set $16 else - i32.const 15188 + i32.const 24660 i32.load local.get $1 i32.gt_u @@ -57763,7 +58833,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15188 + i32.const 24660 i32.load local.get $1 i32.gt_u @@ -57778,7 +58848,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15188 + i32.const 24660 i32.load local.get $7 i32.load offset=8 @@ -57818,7 +58888,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.tee $1 i32.load @@ -57831,8 +58901,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15176 - i32.const 15176 + i32.const 24648 + i32.const 24648 i32.load i32.const 1 local.get $0 @@ -57844,7 +58914,7 @@ br $block_2 end ;; $if_55 else - i32.const 15188 + i32.const 24660 i32.load local.get $8 i32.gt_u @@ -57870,7 +58940,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15188 + i32.const 24660 i32.load local.tee $1 local.get $9 @@ -57903,7 +58973,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15188 + i32.const 24660 i32.load local.get $0 i32.gt_u @@ -57931,12 +59001,12 @@ i32.add local.get $5 i32.store - i32.const 15192 + i32.const 24664 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15180 + i32.const 24652 local.get $5 i32.store return @@ -57956,10 +59026,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15212 + i32.const 24684 i32.add local.set $0 - i32.const 15172 + i32.const 24644 i32.load local.tee $1 i32.const 1 @@ -57968,7 +59038,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15188 + i32.const 24660 i32.load local.get $0 i32.const 8 @@ -57986,7 +59056,7 @@ local.set $15 end ;; $if_65 else - i32.const 15172 + i32.const 24644 local.get $1 local.get $4 i32.or @@ -58083,7 +59153,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15476 + i32.const 24948 i32.add local.set $0 local.get $3 @@ -58095,7 +59165,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15176 + i32.const 24648 i32.load local.tee $5 i32.const 1 @@ -58167,7 +59237,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15188 + i32.const 24660 i32.load local.get $2 i32.gt_u @@ -58190,7 +59260,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15188 + i32.const 24660 i32.load local.tee $0 local.get $14 @@ -58222,7 +59292,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15176 + i32.const 24648 local.get $2 local.get $5 i32.or @@ -58240,8 +59310,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15204 - i32.const 15204 + i32.const 24676 + i32.const 24676 i32.load i32.const -1 i32.add @@ -58251,7 +59321,7 @@ if $if_74 return end ;; $if_74 - i32.const 15628 + i32.const 25100 local.set $0 loop $loop_2 local.get $0 @@ -58263,30 +59333,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15204 + i32.const 24676 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (func $_realloc (type $3) (param $0 i32) + (param $1 i32) (result i32) - i32.const 12990 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24628 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $1) + (func $_try_realloc_chunk (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -58296,166 +59432,1935 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24660 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25124 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24668 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24656 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24668 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24656 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24664 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24652 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24652 + local.get $3 + i32.store + i32.const 24664 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24684 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24644 + i32.const 24644 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24948 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24648 + i32.const 24648 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24660 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24660 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24660 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24660 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24664 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24652 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24684 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24644 + i32.const 24644 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24948 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24648 + i32.const 24648 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24660 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24660 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24660 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24660 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24668 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24656 + i32.const 24656 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24668 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24664 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24664 + i32.const 0 + i32.store + i32.const 24652 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24664 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24652 + i32.const 24652 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24664 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24684 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24644 + i32.const 24644 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 24948 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24648 + i32.const 24648 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24660 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24660 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24660 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24664 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24652 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24684 + i32.add + local.set $0 + i32.const 24644 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24660 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24644 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 24948 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24648 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24648 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24660 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24660 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (param $0 i32) + (result i32) + i32.const 16809 + ) + + (func $__ZNSt3__212__next_primeEm (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul i32.eq if $if_6 (result i32) i32.const 9 @@ -59234,3496 +62139,28990 @@ local.set $1 local.get $2 br $block_5 - end ;; $if_75 + end ;; $if_75 + local.get $4 + i32.const 108 + i32.add + local.tee $2 + local.tee $1 + if $if_76 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_76 + local.tee $1 + local.get $2 + i32.lt_u + if $if_77 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_77 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_78 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_78 + local.get $4 + i32.const 112 + i32.add + local.tee $2 + local.tee $1 + if $if_79 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_79 + local.tee $1 + local.get $2 + i32.lt_u + if $if_80 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_80 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_81 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_81 + local.get $4 + i32.const 120 + i32.add + local.tee $2 + local.tee $1 + if $if_82 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_82 + local.tee $1 + local.get $2 + i32.lt_u + if $if_83 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_83 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_84 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_84 + local.get $4 + i32.const 126 + i32.add + local.tee $2 + local.tee $1 + if $if_85 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_85 + local.tee $1 + local.get $2 + i32.lt_u + if $if_86 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_86 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_87 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_87 + local.get $4 + i32.const 130 + i32.add + local.tee $2 + local.tee $1 + if $if_88 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_88 + local.tee $1 + local.get $2 + i32.lt_u + if $if_89 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_89 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_90 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_90 + local.get $4 + i32.const 136 + i32.add + local.tee $2 + local.tee $1 + if $if_91 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_91 + local.tee $1 + local.get $2 + i32.lt_u + if $if_92 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_92 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_93 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_93 + local.get $4 + i32.const 138 + i32.add + local.tee $2 + local.tee $1 + if $if_94 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_94 + local.tee $1 + local.get $2 + i32.lt_u + if $if_95 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_95 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_96 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_96 local.get $4 - i32.const 108 + i32.const 142 i32.add local.tee $2 local.tee $1 - if $if_76 (result i32) + if $if_97 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_76 + end ;; $if_97 local.tee $1 local.get $2 i32.lt_u - if $if_77 + if $if_98 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_77 + end ;; $if_98 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_78 + if $if_99 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_78 + end ;; $if_99 local.get $4 - i32.const 112 + i32.const 148 i32.add local.tee $2 local.tee $1 - if $if_79 (result i32) + if $if_100 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_79 + end ;; $if_100 local.tee $1 local.get $2 i32.lt_u - if $if_80 + if $if_101 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_80 + end ;; $if_101 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_81 + if $if_102 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_81 + end ;; $if_102 local.get $4 - i32.const 120 + i32.const 150 i32.add local.tee $2 local.tee $1 - if $if_82 (result i32) + if $if_103 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_82 + end ;; $if_103 local.tee $1 local.get $2 i32.lt_u - if $if_83 + if $if_104 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_83 + end ;; $if_104 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_84 + if $if_105 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_84 + end ;; $if_105 local.get $4 - i32.const 126 + i32.const 156 i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_106 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_106 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_107 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_107 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_108 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_108 local.get $4 - i32.const 130 + i32.const 162 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_109 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_109 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_110 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_110 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_111 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_111 local.get $4 - i32.const 136 + i32.const 166 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_112 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_112 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_113 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_113 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_114 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_114 local.get $4 - i32.const 138 + i32.const 168 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_115 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_115 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_116 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_116 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_117 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_117 local.get $4 - i32.const 142 + i32.const 172 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_118 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_118 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_119 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_119 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_120 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_120 local.get $4 - i32.const 148 + i32.const 178 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_123 local.get $4 - i32.const 150 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_104 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_104 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_105 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_105 + end ;; $if_126 local.get $4 - i32.const 156 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_106 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_106 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_107 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_107 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_108 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_108 + end ;; $if_129 local.get $4 - i32.const 162 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_109 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_109 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_110 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_110 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_111 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_111 + end ;; $if_132 local.get $4 - i32.const 166 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_112 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_112 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_113 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_113 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_114 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_114 + end ;; $if_135 local.get $4 - i32.const 168 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_115 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_115 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_116 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_116 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_117 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_117 + end ;; $if_138 local.get $4 - i32.const 172 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_118 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_118 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_119 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_119 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_120 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_120 + end ;; $if_141 local.get $4 - i32.const 178 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_121 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_121 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_122 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24472 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25168 + i32.const 25140 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24472 + i32.load + i32.eqz + if $if_0 + i32.const 24472 + i32.const 1 + i32.store + local.get $0 + i32.const 278 + call_indirect $28 (type $0) + i32.const 24472 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $1) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 14861 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 14861 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10812 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $5 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $5 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_2 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + i32.const 0 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_3 + local.get $5 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $5 + local.set $4 + local.get $3 + if $if_5 + local.get $1 + local.get $2 + i32.add + local.get $1 + local.get $4 + local.get $1 + i32.le_u + local.get $3 + local.get $5 + i32.add + local.get $1 + i32.gt_u + i32.and + select + local.set $1 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $3 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $4 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $6 + i32.const 0 + i32.store8 + local.get $1 + local.get $5 + i32.add + local.get $6 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14030 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14030 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEj (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 16878 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25216 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17017 + i32.store + i32.const 16967 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5240 + local.get $0 + local.get $5 + i32.const 5240 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $2) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + local.get $4 + i32.const 17017 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 16881 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17017 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 16926 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17005 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7464 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5264 + i32.const 5248 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17196 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17199 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17204 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17218 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25216 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 17156 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22551 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17252 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17257 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17262 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17267 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17279 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17293 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17299 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17314 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17318 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17331 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17336 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17350 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 + i32.store + local.get $0 + i32.const 17360 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17369 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17387 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17393 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17405 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17416 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17420 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17430 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17441 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17451 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17461 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17470 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17479 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17484 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17499 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22255 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22264 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22267 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22270 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22273 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22276 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22031 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 21906 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 20962 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 20965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 20972 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 20975 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 20981 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 20984 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17479 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7820 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $4 + i32.const 17514 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7908 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17679 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17697 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17709 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17735 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17609 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17639 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17647 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7952 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17873 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7996 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 17890 + i32.const 17888 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8040 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 17957 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 17955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 17943 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8084 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8128 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18068 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18070 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8172 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 17888 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + i32.store + local.get $8 + i32.const 17888 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18607 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18607 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_139 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 + i32.add local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop + i32.const 0 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 17955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18621 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18624 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18631 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18643 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18646 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18068 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 17955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18653 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18656 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18656 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18659 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18662 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18667 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18669 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18676 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18681 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18681 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18676 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18684 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18689 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18692 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18699 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18699 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18708 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18708 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18717 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18172 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18180 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18184 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17262 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17267 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17293 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17299 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18190 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18195 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18198 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17360 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17369 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17196 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8216 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8260 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18254 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8304 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18315 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8348 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18374 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8392 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18434 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18439 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8436 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8480 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 20845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 20848 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20698 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20701 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 17888 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20704 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20707 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20710 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20713 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18621 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18624 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20719 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20725 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18631 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20728 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20731 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20734 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20737 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20740 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18643 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20743 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18646 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20746 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18068 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20749 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20752 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20755 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 17955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20758 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18653 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18659 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20764 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18667 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20770 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18669 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 20773 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18676 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 20776 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 20779 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 20782 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18689 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 20785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18692 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 20788 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20486 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19625 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19213 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19216 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19219 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8524 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18723 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8568 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8612 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 18874 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8656 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8700 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 18936 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8744 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17416 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18070 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19062 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8788 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18068 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $5 + i32.const 19074 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $6 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8832 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19144 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19202 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8876 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19222 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19238 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8920 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19441 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8964 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19332 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19338 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9008 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19338 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19452 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9052 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9096 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19518 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19576 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9140 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19691 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19694 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9184 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19697 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19708 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19718 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19729 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19739 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19750 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19760 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19770 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19788 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19798 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19808 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19819 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19829 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19840 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19851 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19862 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19872 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19894 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19905 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19917 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19927 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19937 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19788 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19948 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19959 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19970 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19985 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19927 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19996 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20006 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20019 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20030 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20040 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20051 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20063 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20073 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20084 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20063 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20095 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20106 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20126 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20137 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20148 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20160 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9228 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20172 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20236 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9272 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20252 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9316 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9360 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20415 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9404 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20428 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20435 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9448 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9492 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9536 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9580 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9624 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 20791 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 20796 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9668 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9712 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9756 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21370 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21310 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21114 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9800 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21055 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21175 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21178 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21181 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9844 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9888 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21184 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9932 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21247 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21256 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17679 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21466 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21537 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17609 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17619 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21437 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21451 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10152 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21799 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 21859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21909 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $30 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10284 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 21965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22041 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18172 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) (local $4 i32) (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10328 + i32.store + local.get $0 local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 i32.load - local.set $4 + i32.load offset=16 + local.set $3 + local.get $2 local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if + local.get $4 + i32.const 22077 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22084 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 22094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) - loop $loop - i32.const 15000 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 15696 - i32.const 15668 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 15000 + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load - i32.eqz - if $if_0 - i32.const 15000 - i32.const 1 - i32.store - local.get $0 - i32.const 165 - call_indirect $26 (type $0) - i32.const 15000 - i32.const -1 - i32.store - end ;; $if_0 + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__Znwm (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 local.get $0 i32.const 1 + i32.store8 offset=5 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 15752 - i32.const 15752 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10372 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 11040 - call $_strlen - local.tee $2 - i32.const 13 + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__Znwm - local.tee $1 + global.set $32 local.get $2 - i32.store - local.get $1 + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.store offset=4 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 0 - i32.store offset=8 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 12 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 i32.add - local.tee $1 - i32.const 11040 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10416 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $_memcpy - drop + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18068 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 - i32.const 6772 - i32.store + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7864 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 local.get $0 i32.const 0 - i32.store offset=8 - local.get $1 - i32.load8_s offset=11 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store8 offset=7 + local.get $0 + i32.const 10460 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $32 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 local.get $0 local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) - (param $0 i32) - (param $1 i32) - (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $30 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22077 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 + i32.load offset=20 + local.set $4 end ;; $if - local.tee $5 - local.get $2 - i32.lt_u + local.get $4 + i32.const 2 + i32.and if $if_0 - local.get $0 - local.get $5 + local.get $7 + i32.const 22084 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22282 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 - local.get $4 - global.set $30 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10504 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub + global.set $32 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22335 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $0 - local.get $2 + i32.const 7864 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 16 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10548 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u + global.get $32 local.set $2 - i32.const 10 - local.get $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 + local.set $3 + local.get $2 + i32.const 8 i32.add + local.tee $4 + i32.const 22399 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - select - local.tee $7 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - global.set $30 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10592 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + i32.load + local.set $1 local.get $3 + local.get $2 + i64.load align=4 + i64.store local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 local.get $0 - local.get $2 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10636 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22680 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) local.get $0 - local.get $1 - i32.store offset=4 - else + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $4) (param $0 i32) (param $1 i32) - (result i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if + i32.const 332 + i32.add local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 - local.get $3 - i32.sub + local.tee $2 + i32.load offset=4 local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) - local.get $0 - i32.load - else + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 local.get $4 - local.get $1 - i32.le_u + i32.ge_u + br_if $block_0 local.get $3 - local.get $5 + i32.load + local.get $0 + i32.const 2 + i32.shl i32.add - local.get $1 - i32.gt_u - i32.and - select - local.set $1 + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 - i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 10209 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $30 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7864 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10209 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEj (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 10680 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 17884 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13059 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13198 - i32.store - i32.const 13148 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5264 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5264 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $2) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.set $0 - local.get $1 - i32.const 13198 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13062 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13198 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13107 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) end ;; $if - i32.const 13186 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 15744 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 15744 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13337 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22077 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 15748 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22084 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22282 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10724 i32.store - i32.const 6408 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 22618 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5288 - i32.const 5272 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $1) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22714 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22739 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22781 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22799 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22840 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22865 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 15748 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13386 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22974 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22988 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 15748 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13436 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22997 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6772 + i32.const 10812 i32.store local.get $0 i32.const 4 @@ -62755,9 +91154,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -62772,7 +91169,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62786,10 +91184,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62799,20 +91200,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -62829,72 +91230,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -62908,10 +91379,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -62933,7 +91405,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -63073,145 +91547,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -63223,10 +91702,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -63291,20 +91771,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -63326,9 +91810,9 @@ local.get $6 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -63380,9 +91864,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -63432,9 +91916,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $2) @@ -63444,12 +91928,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -63464,9 +91948,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.tee $0 if $if local.get $2 @@ -63475,7 +91959,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -63487,8 +91971,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5288 - i32.const 5376 + i32.const 5264 + i32.const 6432 call $___dynamic_cast i32.const 0 i32.ne @@ -63950,7 +92434,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -63988,7 +92472,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -64002,10 +92486,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -64025,7 +92509,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $2) @@ -64036,11 +92520,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_iiii (type $16) @@ -64055,9 +92539,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_vi (type $4) @@ -64065,11 +92549,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $6) @@ -64079,11 +92563,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $dynCall_viii (type $5) @@ -64097,9 +92581,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $dynCall_viiii (type $7) @@ -64115,9 +92599,9 @@ local.get $0 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $dynCall_viiiii (type $13) @@ -64135,12 +92619,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64157,9 +92641,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $1) @@ -64293,9 +92777,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -64325,9 +92809,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -64352,9 +92836,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\f0\84\c1\02\d0\84\01\e0\84\01" + ;; "\00\02\00\04\00\80\02\b7\03\80\08\f0\ce\c1\02\d0\ce\01\e0\ce\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wasm b/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wasm index 082552340b43f..aa1e0208f3224 100644 Binary files a/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wat b/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wat index 2c45792ce227c..ea0ae5749e7a2 100644 --- a/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/http_callout_cpp.wat @@ -1,9 +1,9 @@ (module (type $0 (func (param i32))) - (type $1 (func (param i32 i32))) - (type $2 (func (param i32) (result i32))) - (type $3 (func (param i32 i32 i32) (result i32))) - (type $4 (func (param i32 i32) (result i32))) + (type $1 (func (param i32) (result i32))) + (type $2 (func (param i32 i32 i32) (result i32))) + (type $3 (func (param i32 i32) (result i32))) + (type $4 (func (param i32 i32))) (type $5 (func (param i32 i32 i32 i32))) (type $6 (func (param i32 i32 i32))) (type $7 (func (param i32 i32 i32 i32 i32))) @@ -14,23 +14,26 @@ (type $12 (func (param i32 i64 i32) (result i64))) (type $13 (func (param i32 i32 i32 i32 i32 i32))) (type $14 (func (result i32))) - (type $15 (func (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (type $16 (func (param i32 i32 i32 i32) (result i32))) - (type $17 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $15 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $16 (func (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $17 (func (param i32 i32 i32 i32) (result i32))) (type $18 (func (param i32 i32 i32 i32 i32 i32 i32 i32))) (type $19 (func (param f64 i32))) (type $20 (func (param i32 i32) (result i64))) (type $21 (func (param i32 i64))) - (type $22 (func (param i64 i32 i32) (result i32))) - (type $23 (func (param i64 i32) (result i32))) - (type $24 (func (param f64 i32) (result f64))) - (type $25 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $22 (func (param f64 i32) (result f64))) + (type $23 (func (param i64 i32 i32) (result i32))) + (type $24 (func (param i64 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $27 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $28 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -42,17 +45,18 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_httpCall" (func $_proxy_httpCall (param i32 i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $29 i32)) - (import "env" "DYNAMICTOP_PTR" (global $30 i32)) - (import "env" "memory" (memory $28 256 256)) - (import "env" "table" (table $27 231 231 funcref)) + (import "env" "__table_base" (global $31 i32)) + (import "env" "DYNAMICTOP_PTR" (global $32 i32)) + (import "env" "memory" (memory $30 256 256)) + (import "env" "table" (table $29 447 447 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -105,46 +109,73 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $31 (mut i32) (i32.const 17296)) - (global $32 (mut i32) (i32.const 5260176)) - (elem $33 $27 (global.get $29) + (global $33 (mut i32) (i32.const 26496)) + (global $34 (mut i32) (i32.const 5269376)) + (elem $35 $29 (global.get $31) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEv $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv - $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv - $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv - $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev - $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev - $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv - $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 $b7 - $b8 $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEPNS0_6__baseISB_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv - $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi - $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EEclEOSA_SD_SD_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 + $b8 $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ + $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE11__call_implINS0_12__alloc_funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorISC_EES7_EEEEvPKNS0_16__policy_storageEOS6_SJ_SJ_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ $b10 $b10 $b10 $b10 + $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $34 $28 (i32.const 1024) - "5,\00\00:,\00\00B,\00\00H,") - (data $35 $28 (i32.const 1168) + (data $36 $30 (i32.const 1024) + "\fc9\00\00\01:\00\00\09:\00\00\0f:") + (data $37 $30 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $28 (i32.const 1488) + (data $38 $30 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -174,280 +205,426 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $37 $28 (i32.const 3472) + (data $39 $30 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $38 $28 (i32.const 3632) + (data $40 $30 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $39 $28 (i32.const 3681) + (data $41 $30 (i32.const 3681) "\0b") - (data $40 $28 (i32.const 3690) + (data $42 $30 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $41 $28 (i32.const 3739) + (data $43 $30 (i32.const 3739) "\0c") - (data $42 $28 (i32.const 3751) + (data $44 $30 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $43 $28 (i32.const 3797) + (data $45 $30 (i32.const 3797) "\0e") - (data $44 $28 (i32.const 3809) + (data $46 $30 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $45 $28 (i32.const 3855) + (data $47 $30 (i32.const 3855) "\10") - (data $46 $28 (i32.const 3867) + (data $48 $30 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $47 $28 (i32.const 3922) + (data $49 $30 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $48 $28 (i32.const 3971) + (data $50 $30 (i32.const 3971) "\0b") - (data $49 $28 (i32.const 3983) + (data $51 $30 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $50 $28 (i32.const 4029) + (data $52 $30 (i32.const 4029) "\0c") - (data $51 $28 (i32.const 4041) + (data $53 $30 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00p\1a\00\00\8f\1b\00\00\98\1a\00\00\86\1b\00\00p\11\00\00\00\00\00\00\98" - "\1a\00\00u\1b\00\00x\11\00\00\00\00\00\00p\1a\00\00\16\1c\00\00\98\1a\00\00\9d\1b\00\00\98\11\00\00\00\00\00\00p\1a\00\00x\1c\00\00p\1a\00\00\16\1d\00\00\98\1a\00\00}\1c\00\00\b8" - "\11\00\00\00\00\00\00p\1a\00\00~\1d\00\00p\1a\00\00\aa\1d\00\00\04\1b\00\00\ac\1e\00\00\00\00\00\00\01\00\00\00\f8\11\00\00\00\00\00\00p\1a\00\00\eb\1e\00\00\98\1a\00\00\ce(\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00\b0'\00\00 \12\00\00\00\00\00\00\98\1a\00\00m!\00\000\12\00\00\00\00\00\00\98\1a\00\00\9d!\00\00@\12\00\00\00\00\00\00\98\1a\00\00c\"\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00}'\00\00\c0\12\00\00\00\00\00\00\04\1b\00\00;&\00\00\00\00\00\00\01\00\00\00x\12\00\00\00\00\00\00p\1a\00\00\a8&\00\00\98\1a\00\00\97'\00\00\c0" - "\12\00\00\00\00\00\00\98\1a\00\00\01)\00\00p\11\00\00\00\00\00\00\98\1a\00\000)\00\00\b0\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $52 $28 (i32.const 4800) - "p\1a\00\004.\00\00\98\1a\00\00\052\00\00\e8\12\00\00\00\00\00\00\98\1a\00\00\c12\00\00\e8\12\00\00\00\00\00\00p\1a\00\00\8d3\00\00\05") - (data $53 $28 (i32.const 4860) - "1") - (data $54 $28 (i32.const 4884) - "\08\00\00\00\01\00\00\00\bb>") - (data $55 $28 (i32.const 4908) - "\02") - (data $56 $28 (i32.const 4923) - "\ff\ff\ff\ff\ff") - (data $57 $28 (i32.const 4992) - "\05") - (data $58 $28 (i32.const 5004) - "1") - (data $59 $28 (i32.const 5028) - "\09\00\00\00\01\00\00\00\c86\00\00\00\04") - (data $60 $28 (i32.const 5052) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00T\1e\00\00#+\00\00|\1e\00\00\1a+\00\00p\11\00\00\00\00\00\00|" + "\1e\00\00\09+\00\00x\11\00\00\00\00\00\00T\1e\00\001+\00\00T\1e\00\00C+\00\00T\1e\00\00o+\00\00\98*\00\00q,\00\00\00\00\00\00\01\00\00\00\c8\11\00\00\00\00\00\00T" + "\1e\00\00\b0,\00\00|\1e\00\00\956\00\00\90\12\00\00\00\00\00\00|\1e\00\00w5\00\00\f0\11\00\00\00\00\00\00|\1e\00\004/\00\00\00\12\00\00\00\00\00\00|\1e\00\00d/\00\00\10" + "\12\00\00\00\00\00\00|\1e\00\00*0\00\00\90\12\00\00\00\00\00\00|\1e\00\00D5\00\00\90\12\00\00\00\00\00\00\98*\00\00\024\00\00\00\00\00\00\01\00\00\00H\12\00\00\00\00\00\00T" + "\1e\00\00o4\00\00|\1e\00\00^5\00\00\90\12\00\00\00\00\00\00|\1e\00\00\c86\00\00p\11\00\00\00\00\00\00|\1e\00\00\f76\00\00\80\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $54 $30 (i32.const 4752) + "T\1e\00\00\fb;\00\00|\1e\00\00\cc?\00\00\b8\12\00\00\00\00\00\00|\1e\00\00\88@\00\00\b8\12\00\00\00\00\00\00T\1e\00\00TA\00\00\05") + (data $55 $30 (i32.const 4812) + "-") + (data $56 $30 (i32.const 4836) + "\08\00\00\00\01\00\00\00\b8Z\00\00\00\04") + (data $57 $30 (i32.const 4860) "\01") - (data $61 $28 (i32.const 5067) + (data $58 $30 (i32.const 4875) "\n\ff\ff\ff\ff") - (data $62 $28 (i32.const 5172) + (data $59 $30 (i32.const 4944) + "\05") + (data $60 $30 (i32.const 4956) + "-") + (data $61 $30 (i32.const 4980) + "\09\00\00\00\01\00\00\00\a6b") + (data $62 $30 (i32.const 5004) + "\02") + (data $63 $30 (i32.const 5019) + "\ff\ff\ff\ff\ff") + (data $64 $30 (i32.const 5124) "\n") - (data $63 $28 (i32.const 5211) + (data $65 $30 (i32.const 5163) "\ff\ff\ff\ff\ff") - (data $64 $28 (i32.const 5280) - "\98\1a\00\00\064\00\00\b0\14\00\00\00\00\00\00p\1a\00\00\c54\00\00\98\1a\00\00%5\00\00\c8\14\00\00\00\00\00\00\98\1a\00\00\d24\00\00\d8\14\00\00\00\00\00\00p\1a\00\00\f34\00\00" - "\98\1a\00\00\005\00\00\b8\14\00\00\00\00\00\00\98\1a\00\00\076\00\00\b0\14\00\00\00\00\00\00\98\1a\00\00\176\00\00\f0\14\00\00\00\00\00\00\98\1a\00\00L6\00\00\c8\14\00\00\00\00\00\00" - "\98\1a\00\00(6\00\00\10\15\00\00\00\00\00\00\98\1a\00\00n6\00\00\c8\14\00\00\00\00\00\00\e8\1a\00\00\966\00\00\e8\1a\00\00\986\00\00\98\1a\00\00\9a6\00\00\b8\14") - (data $65 $28 (i32.const 5476) + (data $66 $30 (i32.const 5232) + "|\1e\00\00\cbA\00\00\80\14\00\00\00\00\00\00T\1e\00\00\8aB\00\00|\1e\00\00\eaB\00\00\98\14\00\00\00\00\00\00|\1e\00\00\97B\00\00\a8\14\00\00\00\00\00\00T\1e\00\00\b8B\00\00" + "|\1e\00\00\c5B\00\00\88\14\00\00\00\00\00\00|\1e\00\00zD\00\00\d0\14\00\00\00\00\00\00T\1e\00\00\a9D\00\00|\1e\00\00]E\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\a0E\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\edE\00\00\d0\14\00\00\00\00\00\00|\1e\00\003F\00\00\d0\14\00\00\00\00\00\00|\1e\00\00cF\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\a1F\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\d2F\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\"G\00\00\d0\14\00\00\00\00\00\00|\1e\00\00[G\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\96G\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\d2G\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\15H\00\00\d0\14\00\00\00\00\00\00|\1e\00\00CH\00\00\d0\14\00\00\00\00\00\00|\1e\00\00vH\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\002I\00\00\d0\14\00\00\00\00\00\00|\1e\00\00_I\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\90I\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\ceI\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00FJ\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\0bJ\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\8dJ\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\d6J\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\001K\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\\K\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\96K\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\caK\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\1aL\00\00\d0\14\00\00\00\00\00\00|\1e\00\00IL\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\82L\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\bbL\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\e0N\00\00\d0\14\00\00\00\00\00\00|\1e\00\00.O\00\00\d0\14\00\00\00\00\00\00|\1e\00\00iO\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\95O\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\dfO\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\14P\00\00\d0\14\00\00\00\00\00\00|\1e\00\00GP\00\00\d0\14\00\00\00\00\00\00|\1e\00\00~P\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\b3P\00\00\d0\14\00\00\00\00\00\00|\1e\00\00IQ\00\00\d0\14\00\00\00\00\00\00|\1e\00\00{Q\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\adQ\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\05R\00\00\d0\14\00\00\00\00\00\00|\1e\00\00MR\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\85R\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\d3R\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\12S\00\00\d0\14\00\00\00\00\00\00|\1e\00\00US\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\86S\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\c0T\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\00U\00\00\d0\14\00\00\00\00\00\00|\1e\00\003U\00\00\d0\14\00\00\00\00\00\00|\1e\00\00mU\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\a6U\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\e3U\00\00\d0\14\00\00\00\00\00\00|\1e\00\00`V\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\8cV\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\c2V\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\16W\00\00\d0\14\00\00\00\00\00\00|\1e\00\00NW\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\91W\00\00\d0\14\00\00\00\00\00\00|\1e\00\00\c2W\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\f2W\00\00\d0\14\00\00\00\00\00\00|\1e\00\00-X\00\00\d0\14\00\00\00\00\00\00|\1e\00\00oX\00\00\d0\14\00\00\00\00\00\00|\1e\00\00^Y\00\00" + "\d0\14\00\00\00\00\00\00|\1e\00\00\e9Y\00\00\80\14\00\00\00\00\00\00|\1e\00\00\f9Y\00\00\f8\18\00\00\00\00\00\00|\1e\00\00\nZ\00\00\98\14\00\00\00\00\00\00|\1e\00\00,Z\00\00" + "\18\19\00\00\00\00\00\00|\1e\00\00PZ\00\00\98\14\00\00\00\00\00\00|*\00\00xZ\00\00|*\00\00zZ\00\00|*\00\00|Z\00\00|\1e\00\00~Z\00\00\88\14") + (data $67 $30 (i32.const 6516) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" - "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\a0\11\00\00\08\00\00\00\09\00\00\00\0b\00\00\00" - "\01\00\00\00\n\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\00\00\00\00\c0\11\00\00\0c\00\00\00\0d\00\00\00\0d\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\04\00\00\00" - "\0e\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $66 $28 (i32.const 5692) - " \12\00\00\10\00\00\00\11\00\00\00\03\00\00\00\0f\00\00\00\05\00\00\00\10\00\00\00\11\00\00\00\12\00\00\00\12\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\13\00\00\00\06\00\00\00\07\00\00\00" - "\14\00\00\00\03\00\00\00\15\00\00\00\16\00\00\00\17\00\00\00\00\00\00\00\80\12\00\00\13\00\00\00\14\00\00\00\07\00\00\00\18\00\00\00\08\00\00\00\19\00\00\00\1a\00\00\00\15\00\00\00\1b\00\00\00" - "\04\00\00\00\08\00\00\00\09\00\00\00\1c\00\00\00\09\00\00\00\07\00\00\00\1d\00\00\00\04\00\00\00\15") - (data $67 $28 (i32.const 5861) - "\12\00\00\16\00\00\00\17\00\00\00\n\00\00\00\1e\00\00\00\n\00\00\00\1f\00\00\00 \00\00\00\18\00\00\00!\00\00\00\04\00\00\00\0b\00\00\00\0b\00\00\00\"\00\00\00\0c\00\00\00\07\00\00\00#" - "\00\00\00\04\00\00\00\15\00\00\00\00\00\00\00\10\12\00\00\10\00\00\00\19\00\00\00\03\00\00\00\0f\00\00\00\05\00\00\00\10\00\00\00\11\00\00\00\12\00\00\00\12\00\00\00\04\00\00\00\05\00\00\00\06" - "\00\00\00\13\00\00\00\06\00\00\00\07\00\00\00\14\00\00\00\03\00\00\00\15\00\00\00$\00\00\00%\00\00\00\00\00\00\00P\12\00\00\1a\00\00\00\1b\00\00\00\0d\00\00\00&\00\00\00\0c\00\00\00'" - "\00\00\00(\00\00\00\1c\00\00\00)\00\00\00\04\00\00\00\0e\00\00\00\0d\00\00\00*\00\00\00\0f\00\00\00\07\00\00\00+\00\00\00\04\00\00\00\15\00\00\00\00\00\00\00@\12\00\00\10\00\00\00\1d" - "\00\00\00\03\00\00\00\0f\00\00\00\05\00\00\00\10\00\00\00\11\00\00\00\12\00\00\00\12\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\13\00\00\00\06\00\00\00\07\00\00\00\14\00\00\00\03\00\00\00\15" - "\00\00\00\16\00\00\00\17\00\00\00\00\00\00\00\90\12\00\00\1e\00\00\00\1f\00\00\00,\00\00\00-\00\00\00\01\00\00\00\02\00\00\00\10\00\00\00\11\00\00\00 \00\00\00\12\00\00\00\01\00\00\00\13" - "\00\00\00\14\00\00\00\15\00\00\00\01\00\00\00\03\00\00\00\00\00\00\00x\11\00\00\01\00\00\00!\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00.\00\00\00\04\00\00\00\01" - "\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\a0\12\00\00\"\00\00\00#\00\00\00/\00\00\00\00\00\00\00\c8\12\00\00$" - "\00\00\00%\00\00\00\05\00\00\00\16\00\00\00\01\00\00\00\06\00\00\000\00\00\00\00\00\00\00\d8\12\00\00$\00\00\00&\00\00\00\07\00\00\00\17\00\00\00\02\00\00\00\06\00\00\000") - (data $68 $28 (i32.const 6441) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\ac>\00\00\b1>\00\00\10\0d\00\00\f0\12\00\00\80\13") - (data $69 $28 (i32.const 6680) - "<<") - (data $70 $28 (i32.const 6740) - "\a0\14\00\00'\00\00\00(\00\00\002\00\00\00\02\00\00\00\00\00\00\00\b8\14\00\00)\00\00\00*\00\00\00+\00\00\00,\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\00\00\00\00" - "\e0\14\00\00)\00\00\00-\00\00\00+\00\00\00,\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\00\00\00\00\f0\14\00\00.\00\00\00/\00\00\003") - (data $71 $28 (i32.const 6865) - "\15\00\00.\00\00\000\00\00\003\00\00\00\00\00\00\000\15\00\00)\00\00\001\00\00\00+\00\00\00,\00\00\00\0c\00\00\00\00\00\00\00P\15\00\00)\00\00\002\00\00\00+\00\00\00," - "\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\06\00\00\00x-callout-url\00Forwarding to: \00:method\00:path\00:" - "authority\00foo\00hello world\00trail\00cow\0014ExampleContext\007Context\0011" - "ContextBase\00NSt3__210__function6__funcI3$_0NS_9allocatorIS2_EEFN" - "S_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContex" - "tEEE\00NSt3__210__function6__baseIFNS_10unique_ptrI7ContextNS_14de" - "fault_deleteIS3_EEEEjP11RootContextEEE\003$_0\00NSt3__210__function6" - "__funcIZN14ExampleContext16onRequestHeadersEvE3$_1NS_9allocatorI" - "S3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA" - "_EEE\00NSt3__210__function6__baseIFvNS_10unique_ptrI8WasmDataNS_14" - "default_deleteIS3_EEEES6_S6_EEE\00Got response\00ZN14ExampleContext1" - "6onRequestHeadersEvE3$_1\00N6google8protobuf8internal29InternalMet" - "adataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEEN" - "S3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9Contain" - "erE\00/usr/local/include/google/protobuf/arenastring.h\00CHECK faile" - "d: initial_value != NULL: \00NSt3__212basic_stringIcNS_11char_trai" - "tsIcEENS_9allocatorIcEEEE\00NSt3__221__basic_string_commonILb1EEE\00" - "/home/jplev_google_com/envoy/api/wasm/cpp/struct_lite.pb.cc\00/usr" - "/local/include/google/protobuf/repeated_field.h\00CHECK failed: (i" - "ndex) >= (0): \00CHECK failed: (index) < (current_size_): \00/usr/lo" - "cal/include/google/protobuf/map.h\00CHECK failed: (bucket_index_ &" - " 1) == (0): \00CHECK failed: m_->index_of_first_non_null_ == m_->n" - "um_buckets_ || m_->table_[m_->index_of_first_non_null_] != NULL:" - " \00CHECK failed: !tree->empty(): \00CHECK failed: node_ != NULL && " - "m_ != NULL: \00google.protobuf.Value.string_value\00google.protobuf." - "Struct.FieldsEntry.key\00CHECK failed: (&from) != (this): \00CHECK f" - "ailed: (&other) != (this): \00N6google8protobuf27Struct_FieldsEntr" - "y_DoNotUseE\00N6google8protobuf8internal12MapEntryLiteINS0_27Struc" - "t_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4_11char_traitsI" - "cEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTyp" - "eE9ELSD_11ELi0EEE\00N6google8protobuf8internal12MapEntryImplINS0_2" - "7Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_st" - "ringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_1" - "4WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) " - "== (this): \00CHECK failed: TableEntryIsNonEmptyList(b): \00CHECK fa" - "iled: TableEntryIsTree(b): \00CHECK failed: GetArenaNoVirtual() ==" - " NULL: \00CHECK failed: index_of_first_non_null_ == num_buckets_ |" - "| table_[index_of_first_non_null_] != NULL: \00CHECK failed: find(" - "*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed: (count) <= (k" - "MaxLength): \00CHECK failed: (result.bucket_index_) == (b & ~stati" - "c_cast(1)): \00CHECK failed: (table_[b]) == (table_[b ^" - " 1]): \00CHECK failed: !TableEntryIsTree(b) && !TableEntryIsTree(b" - " ^ 1): \00CHECK failed: (count) == (tree->size()): \00CHECK failed: " - "(new_num_buckets) >= (kMinTableSize): \00CHECK failed: n >= kMinTa" - "bleSize: \00CHECK failed: (n & (n - 1)) == (0): \00CHECK failed: tab" - "le_[b] == table_[b + 1] && (b & 1) == 0: \00N6google8protobuf3MapI" - "NSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE" - "NS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt3__212basic_str" - "ingIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == NULL || dy" - "namic_cast(f) != NULL\00/usr/local/include/google/protobuf/stu" - "bs/casts.h\00down_cast\00google.protobuf.Struct\00N6google8protobuf6St" - "ructE\00N6google8protobuf5ValueE\00N6google8protobuf8internal12MapEn" - "tryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3" - "__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_" - "5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryW" - "rapperE\00CHECK failed: (n) >= (0): \00google.protobuf.ListValue\00N6g" - "oogle8protobuf9ListValueE\00google.protobuf.Value\0011RootContext\00no" - " context factory for root_id: \00N6google8protobuf14FatalException" - "E\00google/protobuf/stubs/common.cc\00This program requires version " - "\00%d.%d.%d\00 of the Protocol Buffer runtime library, but the insta" - "lled version is \00. Please update your library. If you compiled" - " the program yourself, make sure that your headers are from the " - "same version of Protocol Buffers as your link-time library. (Ve" - "rsion verification failed in \"\00\".)\00This program was compiled aga" - "inst version \00 of the Protocol Buffer runtime library, which is " - "not compatible with the installed version (\00). Contact the prog" - "ram author for an update. If you compiled the program yourself," - " make sure that your headers are from the same version of Protoc" - "ol Buffers as your link-time library. (Version verification fai" - "led in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00all" - "ocator::allocate(size_t n) 'n' exceeds maximum supported size" - "\00%d\00%u\00google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= (st" - "d::numeric_limits::max() - kBlockHeaderSize): \00google/pr" - "otobuf/generated_message_util.cc\00Not implemented field number \00 " - "with type \00CHECK failed: (scc->visit_status.load(std::memory_ord" - "er_relaxed)) == (SCCInfoBase::kRunning): \00google/protobuf/messag" - "e_lite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot determin" - "e missing fields for lite message)\00N6google8protobuf11MessageLit" - "eE\00google/protobuf/repeated_field.cc\00CHECK failed: (new_size) <=" - " ((std::numeric_limits::max() - kRepHeaderSize) / sizeof" - "(old_rep->elements[0])): \00Requested size is too large to fit int" - "o size_t.\00google/protobuf/wire_format_lite.cc\00CHECK failed: (val" - "ue.size()) <= (kint32max): \00serializing\00parsing\00 '%s'\00String fie" - "ld\00 contains invalid \00UTF-8 data when \00 a protocol \00buffer. Use " - "the 'bytes' type if you intend to send raw \00bytes. \00google/proto" - "buf/io/coded_stream.cc\00CHECK failed: (buffer_size) >= (0): \00A pr" - "otocol message was rejected because it was too big (more than \00 " - "bytes). To increase the limit (or to disable these warnings), s" - "ee CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/" - "coded_stream.h.\00google/protobuf/io/zero_copy_stream_impl_lite.cc" - "\00CHECK failed: (count) >= (0): \00CHECK failed: (last_returned_siz" - "e_) > (0): \00BackUp() can only be called after a successful Next(" - ").\00CHECK failed: (count) <= (last_returned_size_): \00N6google8pro" - "tobuf2io17ArrayOutputStreamE\00CHECK failed: target_ != NULL: \00CHE" - "CK failed: (count) <= (target_->size()): \00Cannot allocate buffer" - " larger than kint32max for \00StringOutputStream.\00N6google8protobu" - "f2io18StringOutputStreamE\00google/protobuf/io/zero_copy_stream.cc" - "\00This ZeroCopyOutputStream doesn't support aliasing. Reaching he" - "re usually means a ZeroCopyOutputStream implementation bug.\00N6go" - "ogle8protobuf2io20ZeroCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X " - "0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::bad_function_call\00NSt3__217ba" - "d_function_callE\00mutex lock failed\00terminating with %s exception" - " of type %s: %s\00terminating with %s exception of type %s\00termina" - "ting with %s foreign exception\00terminating\00uncaught\00St9exception" - "\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv120__" - "si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00pthread_on" - "ce failure in __cxa_get_globals_fast()\00cannot create pthread key" - " for __cxa_get_globals()\00cannot zero out thread value for __cxa_" - "get_globals()\00terminate_handler unexpectedly returned\00St11logic_" - "error\00St12length_error\00N10__cxxabiv119__pointer_type_infoE\00N10__" - "cxxabiv117__pbase_type_infoE\00N10__cxxabiv123__fundamental_type_i" - "nfoE\00c\00h\00N10__cxxabiv121__vmi_class_type_infoE") + "\04\00\00\00\05\00\00\00\06") + (data $68 $30 (i32.const 6600) + "\01\00\00\00H\19\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02") + (data $69 $30 (i32.const 6652) + "\98\11") + (data $70 $30 (i32.const 6668) + "\a0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $71 $30 (i32.const 6692) + "\f0\11\00\00\08\00\00\00\09\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00P\12\00\00\0b\00\00\00\0c\00\00\00\05\00\00\00\14\00\00\00\06\00\00\00\15\00\00\00\16\00\00\00\0d\00\00\00\17\00\00\00" + "\02\00\00\00\06\00\00\00\07\00\00\00\18\00\00\00\07\00\00\00\05\00\00\00\19\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\d0\11\00\00\0e\00\00\00\0f\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00" + "\1b\00\00\00\1c\00\00\00\10\00\00\00\1d\00\00\00\02\00\00\00\09\00\00\00\09\00\00\00\1e\00\00\00\n\00\00\00\05\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\e0\11\00\00\08\00\00\00" + "\11\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00" + "\11\00\00\00 \00\00\00!\00\00\00\00\00\00\00 \12\00\00\12\00\00\00\13\00\00\00\0b\00\00\00\"\00\00\00\n\00\00\00#\00\00\00$\00\00\00\14\00\00\00%\00\00\00\02\00\00\00\0c\00\00\00" + "\0b\00\00\00&\00\00\00\0d\00\00\00\05\00\00\00'\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\10\12\00\00\08\00\00\00\15\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00" + "\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00`\12\00\00\16\00\00\00" + "\17\00\00\00(\00\00\00)\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\10\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00\19\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\12\00\00\1a\00\00\00\1b\00\00\00+\00\00\00\00\00\00\00\98\12\00\00\1c\00\00\00\1d\00\00\00\05\00\00\00\14\00\00\00\01\00\00\00\06\00\00\00" + ",\00\00\00\00\00\00\00\a8\12\00\00\1c\00\00\00\1e\00\00\00\07\00\00\00\15\00\00\00\02\00\00\00\06\00\00\00,") + (data $72 $30 (i32.const 7441) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\98b\00\00\a6b\00\00\10\0d\00\00\c0\12\00\00P\13") + (data $73 $30 (i32.const 7680) + ",`") + (data $74 $30 (i32.const 7740) + "p\14\00\00\1f\00\00\00 \00\00\00.\00\00\00\00\00\00\00\88\14\00\00!\00\00\00\"\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\b0\14\00\00" + "!\00\00\00%\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\c0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00'\00\00\00\00\00\00\00\d0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00&\00\00\00(\00\00\00\00\00\00\00\d8\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00&\00\00\00)\00\00\00\00\00\00\00\e8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00*\00\00\00\00\00\00\00\f8\14\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00&\00\00\00+\00\00\00\00\00\00\00" + "\08\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00&\00\00\00,\00\00\00\00\00\00\00\18\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + " \00\00\00\17\00\00\00!\00\00\00&\00\00\00-\00\00\00\00\00\00\00(\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00&\00\00\00.\00\00\00" + "\00\00\00\008\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00&\00\00\00/\00\00\00\00\00\00\00H\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00%\00\00\00\17\00\00\00\18\00\00\00&\00\00\000\00\00\00\00\00\00\00X\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "1\00\00\00\00\00\00\00h\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00&\00\00\002\00\00\00\00\00\00\00x\15\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00&\00\00\003\00\00\00\00\00\00\00\88\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\004\00\00\00\00\00\00\00\98\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00&\00\00\005\00\00\00\00\00\00\00\a8\15\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00&\00\00\006\00\00\00\00\00\00\00\b8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\007\00\00\00\00\00\00\00\c8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00&\00\00\008\00\00\00\00\00\00\00\d8\15\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00&\00\00\009\00\00\00\00\00\00\00\e8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00:\00\00\00\00\00\00\00\f8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00&\00\00\00;\00\00\00\00\00\00\00" + "\08\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00&\00\00\00<\00\00\00\00\00\00\00\18\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "2\00\00\00\17\00\00\00\18\00\00\00&\00\00\00=\00\00\00\00\00\00\00(\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00&\00\00\00>\00\00\00" + "\00\00\00\008\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00&\00\00\00?\00\00\00\00\00\00\00H\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\005\00\00\00\17\00\00\00\18\00\00\00&\00\00\00@\00\00\00\00\00\00\00X\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "A\00\00\00\00\00\00\00h\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00&\00\00\00B\00\00\00\00\00\00\00x\16\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00&\00\00\00C\00\00\00\00\00\00\00\88\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\00D\00\00\00\00\00\00\00\98\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00&\00\00\00E\00\00\00\00\00\00\00\a8\16\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00&\00\00\00F\00\00\00\00\00\00\00\b8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00G\00\00\00\00\00\00\00\c8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00&\00\00\00H\00\00\00\00\00\00\00\d8\16\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00&\00\00\00I\00\00\00\00\00\00\00\e8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00" + "\17\00\00\00B\00\00\00&\00\00\00J\00\00\00\00\00\00\00\f8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00&\00\00\00K\00\00\00\00\00\00\00" + "\08\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00&\00\00\00L\00\00\00\00\00\00\00\18\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "E\00\00\00\17\00\00\00\18\00\00\00&\00\00\00M\00\00\00\00\00\00\00(\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00&\00\00\00N\00\00\00" + "\00\00\00\008\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00&\00\00\00O\00\00\00\00\00\00\00H\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00H\00\00\00\17\00\00\00\18\00\00\00&\00\00\00P\00\00\00\00\00\00\00X\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "Q\00\00\00\00\00\00\00h\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00&\00\00\00R\00\00\00\00\00\00\00x\17\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00&\00\00\00S\00\00\00\00\00\00\00\88\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00" + "&\00\00\00T\00\00\00\00\00\00\00\98\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00&\00\00\00U\00\00\00\00\00\00\00\a8\17\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00&\00\00\00V\00\00\00\00\00\00\00\b8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00W\00\00\00\00\00\00\00\c8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00&\00\00\00X\00\00\00\00\00\00\00\d8\17\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00&\00\00\00Y\00\00\00\00\00\00\00\e8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00" + "\17\00\00\00U\00\00\00&\00\00\00Z\00\00\00\00\00\00\00\f8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00&\00\00\00[\00\00\00\00\00\00\00" + "\08\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00&\00\00\00\\\00\00\00\00\00\00\00\18\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00" + "Z\00\00\00[\00\00\00\18\00\00\00&\00\00\00]\00\00\00\00\00\00\00(\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00&\00\00\00^\00\00\00" + "\00\00\00\008\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00&\00\00\00_\00\00\00\00\00\00\00H\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00" + "\0f\00\00\00^\00\00\00_\00\00\00\18\00\00\00&\00\00\00`\00\00\00\00\00\00\00X\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00&\00\00\00" + "a\00\00\00\00\00\00\00h\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00&\00\00\00b\00\00\00\00\00\00\00x\18\00\00 \00\00\00\0d\00\00\00" + "!\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00&\00\00\00c\00\00\00\00\00\00\00\88\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00" + "&\00\00\00d\00\00\00\00\00\00\00\98\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00&\00\00\00e\00\00\00\00\00\00\00\a8\18\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00&\00\00\00f\00\00\00\00\00\00\00\b8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00" + "\18\00\00\00&\00\00\00g\00\00\00\00\00\00\00\c8\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00&\00\00\00h\00\00\00\00\00\00\00\d8\18\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00&\00\00\00i\00\00\00\00\00\00\00\e8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00" + "\17\00\00\00\18\00\00\00&\00\00\00j\00\00\00\00\00\00\00\f8\18\00\00k\00\00\00l\00\00\00/\00\00\00\00\00\00\00\08\19\00\00k\00\00\00m\00\00\00/\00\00\00\00\00\00\008\19\00\00" + "!\00\00\00n\00\00\00#\00\00\00$\00\00\00\0c\00\00\00\00\00\00\00`\19\00\00!\00\00\00o\00\00\00#\00\00\00$\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00x-ca" + "llout-url\00Forwarding to: \00:method\00:path\00:authority\00foo\00hello wor" + "ld\00trail\00cow\0014ExampleContext\007Context\0011ContextBase\003$_0\00Got re" + "sponse\00ZN14ExampleContext16onRequestHeadersEvE3$_1\00N6google8prot" + "obuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stri" + "ngIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetad" + "ataWithArenaLiteEE9ContainerE\00/usr/local/include/google/protobuf" + "/arenastring.h\00CHECK failed: initial_value != NULL: \00NSt3__212ba" + "sic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NSt3__221__b" + "asic_string_commonILb1EEE\00/home/piotrsikora/Google/envoy/api/was" + "m/cpp/struct_lite.pb.cc\00/usr/local/include/google/protobuf/repea" + "ted_field.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index)" + " < (current_size_): \00/usr/local/include/google/protobuf/map.h\00CH" + "ECK failed: (bucket_index_ & 1) == (0): \00CHECK failed: m_->index" + "_of_first_non_null_ == m_->num_buckets_ || m_->table_[m_->index_" + "of_first_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHE" + "CK failed: node_ != NULL && m_ != NULL: \00google.protobuf.Value.s" + "tring_value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed:" + " (&from) != (this): \00CHECK failed: (&other) != (this): \00N6google" + "8protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8intern" + "al12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basi" + "c_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELN" + "S1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8" + "internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11M" + "essageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allo" + "catorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11EL" + "i0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntry" + "IsNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK fa" + "iled: GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_first" + "_non_null_ == num_buckets_ || table_[index_of_first_non_null_] !" + "= NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end(): " + "\00CHECK failed: (count) <= (kMaxLength): \00CHECK failed: (result.b" + "ucket_index_) == (b & ~static_cast(1)): \00CHECK failed" + ": (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTr" + "ee(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tr" + "ee->size()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize)" + ": \00CHECK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)" + ") == (0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) =" + "= 0: \00N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_tr" + "aitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8prot" + "obuf4hashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9alloc" + "atorIcEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local" + "/include/google/protobuf/stubs/casts.h\00down_cast\00google.protobuf" + ".Struct\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6goo" + "gle8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoN" + "otUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traits" + "IcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTy" + "peE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00g" + "oogle.protobuf.ListValue\00N6google8protobuf9ListValueE\00google.pro" + "tobuf.Value\0011RootContext\00no context factory for root_id: \00N6goo" + "gle8protobuf14FatalExceptionE\00google/protobuf/stubs/common.cc\00Th" + "is program requires version \00%d.%d.%d\00 of the Protocol Buffer ru" + "ntime library, but the installed version is \00. Please update yo" + "ur library. If you compiled the program yourself, make sure tha" + "t your headers are from the same version of Protocol Buffers as " + "your link-time library. (Version verification failed in \"\00\".)\00T" + "his program was compiled against version \00 of the Protocol Buffe" + "r runtime library, which is not compatible with the installed ve" + "rsion (\00). Contact the program author for an update. If you co" + "mpiled the program yourself, make sure that your headers are fro" + "m the same version of Protocol Buffers as your link-time library" + ". (Version verification failed in \"\00[libprotobuf %s %s:%d] %s\n\00" + "INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' ex" + "ceeds maximum supported size\00%d\00%u\00google/protobuf/arena.cc\00CHEC" + "K failed: (min_bytes) <= (std::numeric_limits::max() - k" + "BlockHeaderSize): \00google/protobuf/generated_message_util.cc\00Not" + " implemented field number \00 with type \00CHECK failed: (scc->visit" + "_status.load(std::memory_order_relaxed)) == (SCCInfoBase::kRunni" + "ng): \00google/protobuf/message_lite.cc\00CHECK failed: !coded_out.H" + "adError(): \00(cannot determine missing fields for lite message)\00N" + "6google8protobuf11MessageLiteE\00google/protobuf/repeated_field.cc" + "\00CHECK failed: (new_size) <= ((std::numeric_limits::max(" + ") - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requested " + "size is too large to fit into size_t.\00google/protobuf/wire_forma" + "t_lite.cc\00CHECK failed: (value.size()) <= (kint32max): \00serializ" + "ing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 data whe" + "n \00 a protocol \00buffer. Use the 'bytes' type if you intend to se" + "nd raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed:" + " (buffer_size) >= (0): \00A protocol message was rejected because " + "it was too big (more than \00 bytes). To increase the limit (or t" + "o disable these warnings), see CodedInputStream::SetTotalBytesLi" + "mit() in google/protobuf/io/coded_stream.h.\00google/protobuf/io/z" + "ero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHEC" + "K failed: (last_returned_size_) > (0): \00BackUp() can only be cal" + "led after a successful Next().\00CHECK failed: (count) <= (last_re" + "turned_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK f" + "ailed: target_ != NULL: \00CHECK failed: (count) <= (target_->size" + "()): \00Cannot allocate buffer larger than kint32max for \00StringOu" + "tputStream.\00N6google8protobuf2io18StringOutputStreamE\00google/pro" + "tobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't s" + "upport aliasing. Reaching here usually means a ZeroCopyOutputStr" + "eam implementation bug.\00N6google8protobuf2io20ZeroCopyOutputStre" + "amE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00std::bad" + "_function_call\00NSt3__217bad_function_callE\00mutex lock failed\00ter" + "minating with %s exception of type %s: %s\00terminating with %s ex" + "ception of type %s\00terminating with %s foreign exception\00termina" + "ting\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9t" + "ype_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__c" + "lass_type_infoE\00terminate_handler unexpectedly returned\00_Z\00___Z\00" + "_block_invoke\00invocation function for block in \00void\00bool\00char\00s" + "igned char\00unsigned char\00short\00unsigned short\00int\00unsigned int\00l" + "ong\00unsigned long\00long long\00__int128\00unsigned __int128\00float\00lon" + "g double\00__float128\00...\00decimal64\00decimal128\00decimal32\00decimal16" + "\00char32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr_t\00[abi:\00]\00N1" + "2_GLOBAL__N_116itanium_demangle10AbiTagAttrE\00N12_GLOBAL__N_116it" + "anium_demangle4NodeE\00allocator\00basic_string\00string\00istream\00ostre" + "am\00iostream\00std::allocator\00std::basic_string\00std::string\00std::is" + "tream\00std::ostream\00std::iostream\00N12_GLOBAL__N_116itanium_demang" + "le19SpecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_116itanium_dem" + "angle20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBAL__N_1" + "16itanium_demangle13ReferenceTypeE\00objc_object\00*\00id<\00>\00N12_GLOBA" + "L__N_116itanium_demangle11PointerTypeE\00N12_GLOBAL__N_116itanium_" + "demangle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116itanium_de" + "mangle12TemplateArgsE\00N12_GLOBAL__N_116itanium_demangle13Paramet" + "erPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116itanium_d" + "emangle15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116itanium_demangle" + "16FloatLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_demangle16Flo" + "atLiteralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_demangle16FloatLi" + "teralImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_demangle8BoolE" + "xprE\00-\00N12_GLOBAL__N_116itanium_demangle14IntegerLiteralE\00N12_GL" + "OBAL__N_116itanium_demangle20TemplateArgumentPackE\00gs\00&=\00=\00align" + "of (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|=\00->*\00" + "+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00N12_GLOBAL" + "__N_116itanium_demangle9ThrowExprE\00N12_GLOBAL__N_116itanium_dema" + "ngle12InitListExprE\00N12_GLOBAL__N_116itanium_demangle13NodeArray" + "NodeE\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle13EnclosingEx" + "prE\00sizeof...(\00N12_GLOBAL__N_116itanium_demangle22ParameterPackE" + "xpansionE\00N12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr" + "E\00static_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8CastExprE\00rei" + "nterpret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_demangle15Con" + "ditionalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_GLOBAL_" + "_N_116itanium_demangle7NewExprE\00N12_GLOBAL__N_116itanium_demangl" + "e11PostfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_demangle15Bra" + "cedRangeExprE\00N12_GLOBAL__N_116itanium_demangle10BracedExprE\00_GL" + "OBAL__N\00(anonymous namespace)\00N12_GLOBAL__N_116itanium_demangle8" + "NameTypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18ArraySubscriptEx" + "prE\00.\00N12_GLOBAL__N_116itanium_demangle10MemberExprE\00srN\00sr\00::\00N" + "12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameE\00dn\00on\00ope" + "rator&&\00operator&\00operator&=\00operator=\00operator()\00operator,\00oper" + "ator~\00operator delete[]\00operator*\00operator/\00operator/=\00operator^" + "\00operator^=\00operator==\00operator>=\00operator>\00operator[]\00operator<" + "=\00operator<<\00operator<<=\00operator<\00operator-\00operator-=\00operator" + "*=\00operator--\00operator new[]\00operator!=\00operator!\00operator new\00o" + "perator||\00operator|\00operator|=\00operator->*\00operator+\00operator+=\00" + "operator++\00operator->\00operator?\00operator%\00operator%=\00operator>>\00" + "operator>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_116itanium_dem" + "angle15LiteralOperatorE\00operator delete\00operator \00N12_GLOBAL__N_" + "116itanium_demangle22ConversionOperatorTypeE\00N12_GLOBAL__N_116it" + "anium_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_demangle13Qual" + "ifiedNameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_116itanium_dema" + "ngle10DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_demangle14Conve" + "rsionExprE\00N12_GLOBAL__N_116itanium_demangle8CallExprE\00const_cas" + "t\00N12_GLOBAL__N_116itanium_demangle10PrefixExprE\00) \00 (\00N12_GLOBA" + "L__N_116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv\00dV\00eo" + "\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00rM\00rs\00" + "rS\00... \00 ...\00N12_GLOBAL__N_116itanium_demangle8FoldExprE\00fp\00fL\00N" + "12_GLOBAL__N_116itanium_demangle13FunctionParamE\00N12_GLOBAL__N_1" + "16itanium_demangle24ForwardTemplateReferenceE\00Ts\00struct\00Tu\00union" + "\00Te\00enum\00N12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTy" + "peE\00StL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle16StdQualified" + "NameE\00DC\00N12_GLOBAL__N_116itanium_demangle21StructuredBindingNam" + "eE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_demangle15Closur" + "eTypeNameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_demangle15Unnamed" + "TypeNameE\00string literal\00N12_GLOBAL__N_116itanium_demangle9Local" + "NameE\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDtorNameE\00basic" + "_istream\00basic_ostream\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_istream<" + "char, std::char_traits >\00std::basic_ostream >\00std::basic_iostream >\00N12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstituti" + "onE\00N12_GLOBAL__N_116itanium_demangle10NestedNameE\00::*\00N12_GLOBA" + "L__N_116itanium_demangle19PointerToMemberTypeE\00[\00N12_GLOBAL__N_1" + "16itanium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_116itani" + "um_demangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__N_116itanium_" + "demangle15PixelVectorTypeE\00decltype(\00double\00unsigned long long\00o" + "bjcproto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_116itanium_dem" + "angle8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17VendorExtQual" + "TypeE\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoNameE\00Do\00noexc" + "ept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_demangle12Fun" + "ctionTypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle20DynamicExce" + "ptionSpecE\00noexcept(\00N12_GLOBAL__N_116itanium_demangle12Noexcept" + "SpecE\00N12_GLOBAL__N_116itanium_demangle11SpecialNameE\00N12_GLOBAL" + "__N_116itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBAL__N_1" + "16itanium_demangle16FunctionEncodingE\00 [enable_if:\00N12_GLOBAL__N" + "_116itanium_demangle12EnableIfAttrE\00thread-local wrapper routine" + " for \00reference temporary for \00guard variable for \00non-virtual t" + "hunk to \00virtual thunk to \00thread-local initialization routine f" + "or \00construction vtable for \00-in-\00N12_GLOBAL__N_116itanium_deman" + "gle21CtorVtableSpecialNameE\00covariant return thunk to \00typeinfo " + "name for \00typeinfo for \00VTT for \00vtable for \00St11logic_error\00St1" + "2length_error\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119_" + "_pointer_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00v\00c\00" + "h\00N10__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_http_callout_cpp_cc - i32.const 15240 + i32.const 24440 i64.const 0 i64.store align=4 - i32.const 15248 + i32.const 24448 i64.const 0 i64.store align=4 - i32.const 15256 + i32.const 24456 i32.const 1065353216 i32.store - i32.const 15260 + i32.const 24460 i64.const 0 i64.store align=4 - i32.const 15268 + i32.const 24468 i64.const 0 i64.store align=4 - i32.const 15276 + i32.const 24476 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc ) - (func $stackAlloc (type $2) + (func $stackAlloc (type $1) (param $0 i32) (result i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 local.get $0 - global.get $31 + global.get $33 i32.add - global.set $31 - global.get $31 + global.set $33 + global.get $33 i32.const 15 i32.add i32.const -16 i32.and - global.set $31 + global.set $33 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $31 + global.get $33 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $31 + global.set $33 ) - (func $establishStackSpace (type $1) + (func $establishStackSpace (type $4) (param $0 i32) (param $1 i32) local.get $0 - global.set $31 + global.set $33 local.get $1 - global.set $32 + global.set $34 ) - (func $__ZN14ExampleContext16onRequestHeadersEv (type $2) + (func $__ZN14ExampleContext16onRequestHeadersEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -463,64 +640,69 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i64) - global.get $31 - local.set $3 - global.get $31 + (local $14 i32) + global.get $33 + local.set $6 + global.get $33 i32.const 192 i32.add - global.set $31 - local.get $3 - i32.const 164 - i32.add - local.set $11 - local.get $3 + global.set $33 + local.get $6 i32.const 152 i32.add - local.set $5 - local.get $3 - i32.const 80 + local.set $13 + local.get $6 + i32.const 140 i32.add - local.set $1 - local.get $3 - i32.const -64 - i32.sub local.set $8 - local.get $3 + local.get $6 + i32.const 128 + i32.add + local.set $3 + local.get $6 + i32.const 56 + i32.add + local.set $1 + local.get $6 i32.const 40 i32.add - local.set $6 - local.get $3 - i32.const 180 + local.set $7 + local.get $6 + i32.const 16 i32.add - local.tee $9 - i32.const 0 - i32.store - local.get $3 + local.set $4 + local.get $6 i32.const 168 i32.add local.tee $2 i32.const 0 i32.store + local.get $6 + i32.const 160 + i32.add + local.tee $11 i32.const 0 - i32.const 6948 + i32.store + i32.const 0 + i32.const 10936 i32.const 13 - local.get $9 local.get $2 + local.get $11 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm local.set $10 - local.get $2 + local.get $11 i32.load - local.set $7 + local.set $9 local.get $10 - local.get $9 + local.get $2 i32.load - local.tee $12 + local.tee $14 i32.store local.get $10 - local.get $7 + local.get $9 i32.store offset=4 local.get $2 i64.const 0 @@ -528,115 +710,108 @@ local.get $2 i32.const 0 i32.store offset=8 - local.get $7 + local.get $9 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $14 block $block block $block_0 - local.get $7 + local.get $9 i32.const 11 i32.lt_u if $if_0 (result i32) local.get $2 - local.get $7 + local.get $9 i32.store8 offset=11 - local.get $7 + local.get $9 if $if_1 (result i32) local.get $2 - local.set $4 + local.set $5 br $block_0 else local.get $2 end ;; $if_1 else local.get $2 - local.get $7 + local.get $9 i32.const 16 i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm - local.tee $4 + local.tee $5 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=8 local.get $2 - local.get $7 + local.get $9 i32.store offset=4 br $block_0 end ;; $if_0 - local.set $4 + local.set $5 br $block end ;; $block_0 - local.get $4 - local.get $12 - local.get $7 + local.get $5 + local.get $14 + local.get $9 call $_memcpy drop end ;; $block - local.get $4 - local.get $7 + local.get $5 + local.get $9 i32.add i32.const 0 i32.store8 - local.get $9 + local.get $8 local.get $2 - i32.const 6962 + i32.const 10950 call $_strlen call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm - local.tee $4 + local.tee $5 i64.load align=4 i64.store align=4 - local.get $9 - local.get $4 + local.get $8 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 i32.const 2 - local.get $9 + local.get $8 i32.load - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.load8_s offset=11 - local.tee $4 + local.tee $5 i32.const 0 i32.lt_s - local.tee $7 + local.tee $12 select - local.get $9 + local.get $8 i32.load offset=4 - local.get $4 + local.get $5 i32.const 255 i32.and - local.get $7 + local.get $12 select call $_proxy_log - local.get $9 + drop + local.get $8 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_2 - local.get $9 + local.get $8 i32.load call $_free end ;; $if_2 @@ -651,7 +826,7 @@ end ;; $if_3 local.get $0 i32.load offset=68 - local.set $4 + local.set $5 local.get $1 i32.const 0 i32.store offset=8 @@ -659,15 +834,15 @@ i32.const 7 i32.store8 offset=11 local.get $1 - i32.const 6978 + i32.const 10966 i32.load align=1 i32.store align=1 local.get $1 - i32.const 6982 + i32.const 10970 i32.load16_s align=1 i32.store16 offset=4 align=1 local.get $1 - i32.const 6984 + i32.const 10972 i32.load8_s i32.store8 offset=6 local.get $1 @@ -698,11 +873,11 @@ i32.const 5 i32.store8 offset=35 local.get $1 - i32.const 6986 + i32.const 10974 i32.load align=1 i32.store offset=24 align=1 local.get $1 - i32.const 6990 + i32.const 10978 i32.load8_s i32.store8 offset=28 local.get $1 @@ -727,11 +902,11 @@ i32.const 10 i32.store8 offset=59 local.get $1 - i32.const 6992 + i32.const 10980 i64.load align=1 i64.store offset=48 align=1 local.get $1 - i32.const 7000 + i32.const 10988 i32.load16_s align=1 i32.store16 offset=56 align=1 local.get $1 @@ -746,34 +921,34 @@ i32.const 3 i32.store8 offset=71 local.get $1 - i32.const 7003 + i32.const 10991 i32.load16_s align=1 i32.store16 offset=60 align=1 local.get $1 - i32.const 7005 + i32.const 10993 i32.load8_s i32.store8 offset=62 local.get $1 i32.const 0 i32.store8 offset=63 - local.get $5 + local.get $3 i32.const 0 i32.store - local.get $5 + local.get $3 i32.const 0 i32.store offset=4 - local.get $5 + local.get $3 i32.const 0 i32.store offset=8 - local.get $5 + local.get $3 i32.const 72 call $__Znwm local.tee $0 i32.store offset=4 - local.get $5 + local.get $3 local.get $0 i32.store - local.get $5 + local.get $3 local.get $0 i32.const 72 i32.add @@ -788,15 +963,15 @@ i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load offset=4 local.tee $0 i32.const 24 i32.add - local.tee $7 + local.tee $8 i32.store offset=4 - local.get $7 + local.get $8 local.get $1 i32.const 24 i32.add @@ -808,15 +983,15 @@ i32.const 36 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load offset=4 local.tee $0 i32.const 24 i32.add - local.tee $7 + local.tee $8 i32.store offset=4 - local.get $7 + local.get $8 local.get $1 i32.const 48 i32.add @@ -828,263 +1003,193 @@ i32.const 60 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load offset=4 i32.const 24 i32.add i32.store offset=4 - local.get $6 + local.get $4 i64.const 0 i64.store align=4 - local.get $6 + local.get $4 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 5 i32.store8 offset=11 - local.get $6 - i32.const 7019 + local.get $4 + i32.const 11007 i32.load align=1 i32.store align=1 - local.get $6 - i32.const 7023 + local.get $4 + i32.const 11011 i32.load8_s i32.store8 offset=4 - local.get $6 + local.get $4 i32.const 0 i32.store8 offset=5 - local.get $6 + local.get $4 i64.const 0 i64.store offset=16 align=4 - local.get $6 + local.get $4 i32.const 3 i32.store8 offset=23 - local.get $6 - i32.const 7025 + local.get $4 + i32.const 11013 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $6 - i32.const 7027 + local.get $4 + i32.const 11015 i32.load8_s i32.store8 offset=14 - local.get $6 + local.get $4 i32.const 0 i32.store8 offset=15 - local.get $8 + local.get $7 i32.const 0 i32.store - local.get $8 + local.get $7 i32.const 0 i32.store offset=4 - local.get $8 + local.get $7 i32.const 0 i32.store offset=8 - local.get $8 + local.get $7 i32.const 24 call $__Znwm local.tee $0 i32.store offset=4 - local.get $8 + local.get $7 local.get $0 i32.store - local.get $8 + local.get $7 local.get $0 i32.const 24 i32.add i32.store offset=8 local.get $0 - local.get $6 + local.get $4 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 i32.const 12 i32.add - local.get $6 + local.get $4 i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $8 - local.get $8 + local.get $7 + local.get $7 i32.load offset=4 i32.const 24 i32.add i32.store offset=4 - local.get $3 - i32.const 5636 - i32.store - local.get $3 - local.get $3 - i32.store offset=16 - local.get $3 + local.get $6 local.get $14 - i64.store offset=32 - local.get $3 - i32.const 7007 - i32.store offset=24 - local.get $3 + i64.extend_i32_u + local.get $9 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + i64.store offset=8 + local.get $6 + i32.const 10995 + i32.store + local.get $6 i32.const 11 - i32.store offset=28 - local.get $2 - local.get $3 - i64.load offset=32 align=4 + i32.store offset=4 + local.get $11 + local.get $6 + i64.load offset=8 align=4 i64.store align=4 - local.get $9 - local.get $3 - i64.load offset=24 align=4 + local.get $2 + local.get $6 + i64.load align=4 i64.store align=4 + local.get $13 local.get $11 + local.get $3 local.get $2 - local.get $5 - local.get $9 - local.get $8 + local.get $7 call $__Z12makeHttpCallNSt3__217basic_string_viewIcNS_11char_traitsIcEEEERKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEES3_SE_j local.tee $0 i32.store - block $block_1 - block $block_2 - local.get $0 - i32.eqz - br_if $block_2 - local.get $4 - i32.const 80 - i32.add - local.get $11 - call $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ - local.tee $0 - i32.load offset=16 - local.tee $2 - local.get $0 - i32.eq - if $if_4 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $2 - if $if_5 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_5 - end ;; $if_4 - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $3 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_6 - local.get $0 - i32.const 0 - i32.store offset=16 - br $block_2 - end ;; $if_6 - local.get $2 - local.get $3 - i32.eq - if $if_7 (result i32) - local.get $0 - local.get $0 - i32.store offset=16 - local.get $3 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $4 - local.get $2 - local.get $0 - local.get $4 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - br $block_2 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $3 - i32.const 0 - i32.store offset=16 - i32.const 0 - local.set $4 - i32.const 0 - end ;; $if_7 - local.set $0 - br $block_1 - end ;; $block_2 - local.get $3 - i32.load offset=16 + local.get $0 + if $if_4 (result i32) + local.get $5 + i32.const 80 + i32.add + local.get $13 + call $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ local.tee $0 - local.set $4 - end ;; $block_1 - local.get $3 - local.get $4 - i32.eq - if $if_8 - local.get $0 + i32.load offset=12 + local.set $2 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else + i32.const 6592 + i32.store offset=12 local.get $0 - if $if_9 - local.get $0 + i32.const 5 + i32.store offset=8 + local.get $2 + i32.load offset=4 + local.tee $2 + if $if_5 local.get $0 i32.load - i32.load offset=20 - i32.const 63 + local.get $2 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_9 - end ;; $if_8 - local.get $8 + call_indirect $29 (type $0) + end ;; $if_5 + local.get $0 + i32.const 6 + i32.store offset=8 + local.get $0 + i32.const 6656 + i32.store offset=12 + i32.const 6592 + else + i32.const 6656 + end ;; $if_4 + i32.load offset=4 + local.tee $0 + if $if_6 + i32.const 0 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_6 + local.get $7 i32.load local.tee $2 - if $if_10 + if $if_7 local.get $2 - local.get $8 + local.get $7 i32.load offset=4 local.tee $0 i32.eq - if $if_11 (result i32) + if $if_8 (result i32) local.get $2 else loop $loop local.get $0 i32.const -12 i32.add - local.tee $4 + local.tee $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_9 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_9 local.get $0 i32.const -24 i32.add @@ -1092,69 +1197,69 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_13 + if $if_10 local.get $0 i32.load call $_free - end ;; $if_13 + end ;; $if_10 local.get $0 local.get $2 i32.ne br_if $loop end ;; $loop - local.get $8 + local.get $7 i32.load - end ;; $if_11 + end ;; $if_8 local.set $0 - local.get $8 + local.get $7 local.get $2 i32.store offset=4 local.get $0 call $_free - end ;; $if_10 - local.get $6 + end ;; $if_7 + local.get $4 i32.load8_s offset=23 i32.const 0 i32.lt_s - if $if_14 - local.get $6 + if $if_11 + local.get $4 i32.load offset=12 call $_free - end ;; $if_14 - local.get $6 + end ;; $if_11 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_15 - local.get $6 + if $if_12 + local.get $4 i32.load call $_free - end ;; $if_15 - local.get $5 + end ;; $if_12 + local.get $3 i32.load local.tee $2 - if $if_16 + if $if_13 local.get $2 - local.get $5 + local.get $3 i32.load offset=4 local.tee $0 i32.eq - if $if_17 (result i32) + if $if_14 (result i32) local.get $2 else loop $loop_0 local.get $0 i32.const -12 i32.add - local.tee $4 + local.tee $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_18 - local.get $4 + if $if_15 + local.get $5 i32.load call $_free - end ;; $if_18 + end ;; $if_15 local.get $0 i32.const -24 i32.add @@ -1162,86 +1267,86 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_19 + if $if_16 local.get $0 i32.load call $_free - end ;; $if_19 + end ;; $if_16 local.get $0 local.get $2 i32.ne br_if $loop_0 end ;; $loop_0 - local.get $5 + local.get $3 i32.load - end ;; $if_17 + end ;; $if_14 local.set $0 - local.get $5 + local.get $3 local.get $2 i32.store offset=4 local.get $0 call $_free - end ;; $if_16 + end ;; $if_13 local.get $1 i32.load8_s offset=71 i32.const 0 i32.lt_s - if $if_20 + if $if_17 local.get $1 i32.load offset=60 call $_free - end ;; $if_20 + end ;; $if_17 local.get $1 i32.load8_s offset=59 i32.const 0 i32.lt_s - if $if_21 + if $if_18 local.get $1 i32.load offset=48 call $_free - end ;; $if_21 + end ;; $if_18 local.get $1 i32.load8_s offset=47 i32.const 0 i32.lt_s - if $if_22 + if $if_19 local.get $1 i32.load offset=36 call $_free - end ;; $if_22 + end ;; $if_19 local.get $1 i32.load8_s offset=35 i32.const 0 i32.lt_s - if $if_23 + if $if_20 local.get $1 i32.load offset=24 call $_free - end ;; $if_23 + end ;; $if_20 local.get $1 i32.load8_s offset=23 i32.const 0 i32.lt_s - if $if_24 + if $if_21 local.get $1 i32.load offset=12 call $_free - end ;; $if_24 + end ;; $if_21 local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_25 + if $if_22 local.get $10 i32.load call $_free local.get $10 call $_free - local.get $3 - global.set $31 + local.get $6 + global.set $33 i32.const 1 return - end ;; $if_25 + end ;; $if_22 local.get $1 i32.load call $_free @@ -1250,8 +1355,8 @@ call $_free local.get $10 call $_free - local.get $3 - global.set $31 + local.get $6 + global.set $33 i32.const 1 ) @@ -1260,7 +1365,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5560 + i32.const 6616 i32.store local.get $0 i32.load offset=52 @@ -1409,19 +1514,19 @@ call $_free ) - (func $__ZN7Context6asRootEv (type $2) + (func $__ZN7Context6asRootEv (type $1) (param $0 i32) (result i32) i32.const 0 ) - (func $__ZN7Context9asContextEv (type $2) + (func $__ZN7Context9asContextEv (type $1) (param $0 i32) (result i32) local.get $0 ) - (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $4) + (func $__ZN11ContextBase14isRootCachableE12MetadataType (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -1435,7 +1540,7 @@ nop ) - (func $__ZN7Context13onRequestBodyEmb (type $3) + (func $__ZN7Context13onRequestBodyEmb (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1443,7 +1548,7 @@ i32.const 0 ) - (func $__Z12makeHttpCallNSt3__217basic_string_viewIcNS_11char_traitsIcEEEERKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEES3_SE_j (type $16) + (func $__Z12makeHttpCallNSt3__217basic_string_viewIcNS_11char_traitsIcEEEERKNS_6vectorINS_4pairINS_12basic_stringIcS2_NS_9allocatorIcEEEES9_EENS7_ISA_EEEES3_SE_j (type $17) (param $0 i32) (param $1 i32) (param $2 i32) @@ -1955,7 +2060,7 @@ local.get $0 ) - (func $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ (type $4) + (func $__ZNSt3__213unordered_mapIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EEENS_4hashIjEENS_8equal_toIjEENS_9allocatorINS_4pairIKjS8_EEEEEixERSF_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -2052,7 +2157,7 @@ end ;; $block_0 end ;; $loop local.get $2 - i32.const 16 + i32.const 12 i32.add return end ;; $if_5 @@ -2096,21 +2201,24 @@ end ;; $block_1 end ;; $loop_0 local.get $2 - i32.const 16 + i32.const 12 i32.add return end ;; $block end ;; $if_4 end ;; $if_3 end ;; $if - i32.const 40 + i32.const 28 call $__Znwm local.tee $4 local.get $5 i32.store offset=8 local.get $4 - i32.const 0 - i32.store offset=32 + i32.const 5 + i32.store offset=20 + local.get $4 + i32.const 6592 + i32.store offset=24 local.get $4 local.get $5 i32.store offset=4 @@ -2306,11 +2414,11 @@ i32.add i32.store offset=12 local.get $4 - i32.const 16 + i32.const 12 i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE6rehashEm (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE6rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -2430,7 +2538,23 @@ call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE12__call_emptyEPKNS0_16__policy_storageEOS6_SC_SC_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7744 + i32.store + local.get $0 + i32.const 5232 + i32.const 31 + call $___cxa_throw + ) + + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -2469,11 +2593,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6868 + i32.const 10856 i32.store local.get $2 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $1 @@ -2790,42 +2914,11 @@ end ;; $loop_2 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $2) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5592 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5592 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -2864,62 +2957,21 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5480 + i32.const 6520 i32.store local.get $0 local.get $1 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7288 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $2) - (param $0 i32) - (result i32) - i32.const 4528 - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEv (type $2) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5636 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE7__cloneEPNS0_6__baseISB_EE (type $1) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5636 - i32.store - ) - - (func $__ZNSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EEclEOSA_SD_SD_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS3_EEEES6_S6_EE11__call_implINS0_12__alloc_funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorISC_EES7_EEEEvPKNS0_16__policy_storageEOS6_SJ_SJ_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (local $4 i32) local.get $1 i32.load - local.set $4 + local.set $0 local.get $1 i32.const 0 i32.store @@ -2935,25 +2987,11 @@ local.get $3 i32.const 0 i32.store - i32.const 16 - call $__Znwm - local.tee $0 - i32.const 7537 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7545 - i32.load align=1 - i32.store offset=8 align=1 - local.get $0 - i32.const 0 - i32.store8 offset=12 i32.const 2 - local.get $0 + i32.const 11062 i32.const 12 call $_proxy_log - local.get $0 - call $_free + drop local.get $2 if $if local.get $2 @@ -2970,37 +3008,16 @@ local.get $1 call $_free end ;; $if_0 - local.get $4 + local.get $0 i32.eqz if $if_1 return end ;; $if_1 - local.get $4 + local.get $0 i32.load call $_free - local.get $4 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7550 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcIZN14ExampleContext16onRequestHeadersEvE3__1NS_9allocatorIS3_EEFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS7_EEEESA_SA_EE11target_typeEv (type $2) - (param $0 i32) - (result i32) - i32.const 4560 + call $_free ) (func $__GLOBAL__sub_I_http_callout_cpp_cc (type $8) @@ -3008,118 +3025,84 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const -64 - i32.sub - global.set $31 - local.get $1 + global.get $33 + local.set $0 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5592 - i32.store - local.get $2 + i32.const 7 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 16049 - i32.store offset=48 + i32.const 6640 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 8 + i32.store offset=8 local.get $1 + i32.const 6592 + i32.store offset=12 + local.get $0 + i32.const 25254 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_0 + call_indirect $29 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - global.set $31 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $31 + if $if_0 + local.get $0 + global.set $33 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 63 + i32.load + local.get $1 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $1 - global.set $31 + call_indirect $29 (type $0) + local.get $0 + global.set $33 ) - (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $2) + (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -3131,10 +3114,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $2) + (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -3183,17 +3166,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4568 + i32.const 4520 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 51 + i32.const 112 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -3231,12 +3214,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $2 i32.eqz if $if @@ -3244,7 +3227,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7765 + i32.const 11290 i32.store offset=4 local.get $3 i32.const 370 @@ -3256,7 +3239,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7814 + i32.const 11339 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3274,7 +3257,7 @@ local.get $1 i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if_0 local.get $1 @@ -3283,17 +3266,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4576 + i32.const 4528 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 52 + i32.const 113 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -3302,73 +3285,73 @@ local.get $1 i32.store local.get $3 - global.set $31 + global.set $33 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 256 i32.add - global.set $31 + global.set $33 local.get $0 - global.set $31 - i32.const 15068 + global.set $33 + i32.const 24268 i32.const 0 i32.store - i32.const 15060 - i32.const 15208 + i32.const 24260 + i32.const 24408 i32.store - i32.const 15064 + i32.const 24264 i32.const 0 i32.store - i32.const 15072 + i32.const 24272 i32.const 0 i32.store - i32.const 15056 - i32.const 5696 + i32.const 24256 + i32.const 6696 i32.store - i32.const 15080 + i32.const 24280 call $__ZN6google8protobuf6StructC2Ev - i32.const 53 - i32.const 15080 + i32.const 114 + i32.const 24280 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15112 - i32.const 5784 + i32.const 24312 + i32.const 6784 i32.store - i32.const 15116 + i32.const 24316 i32.const 0 i32.store - i32.const 15128 + i32.const 24328 i32.const 0 i32.store - i32.const 5672 + i32.const 6672 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 15132 + i32.const 24332 i32.const 0 i32.store - i32.const 53 - i32.const 15112 + i32.const 114 + i32.const 24312 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15168 + i32.const 24368 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 53 - i32.const 15168 + i32.const 114 + i32.const 24368 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15064 - i32.const 15112 + i32.const 24264 + i32.const 24312 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 i64.const 0 @@ -3386,7 +3369,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -3398,7 +3381,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 i32.const 4 @@ -3412,7 +3395,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -3428,14 +3411,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 i32.load offset=4 @@ -3457,7 +3440,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $2 i32.const 915 @@ -3469,7 +3452,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9133 + i32.const 12660 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3506,11 +3489,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -3564,14 +3547,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $31 + global.set $33 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -3582,7 +3565,7 @@ call $_free ) - (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf9ListValue11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -3603,19 +3586,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10420 + i32.const 13947 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10428 + i32.const 13955 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10436 + i32.const 13963 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10444 + i32.const 13971 i32.load8_s i32.store8 offset=24 local.get $1 @@ -3623,14 +3606,14 @@ i32.store8 offset=25 ) - (func $__ZNK6google8protobuf9ListValue3NewEv (type $2) + (func $__ZNK6google8protobuf9ListValue3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -3638,7 +3621,7 @@ call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $2) + (func $__ZNK6google8protobuf9ListValue8GetArenaEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -3659,7 +3642,7 @@ end ;; $if ) - (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $2) + (func $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -3709,33 +3692,33 @@ end ;; $if_0 ) - (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $2) + (func $__ZNK6google8protobuf9ListValue13IsInitializedEv (type $1) (param $0 i32) (result i32) i32.const 1 ) - (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4608 + i32.const 4752 + i32.const 4560 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 9986 - i32.const 10027 + i32.const 13513 + i32.const 13554 i32.const 92 - i32.const 10076 + i32.const 13603 call $___assert_fail end ;; $if ) - (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -3747,12 +3730,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $4 i32.const 40 i32.add @@ -3809,7 +3792,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6408 + i32.const 7408 i32.store local.get $3 local.get $5 @@ -4119,7 +4102,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $31 + global.set $33 local.get $1 return end ;; $if_8 @@ -4127,11 +4110,11 @@ i32.load call $_free local.get $4 - global.set $31 + global.set $33 local.get $1 ) - (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf9ListValue12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4144,7 +4127,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $1 i32.const 1 i32.and @@ -4218,7 +4201,7 @@ local.get $1 ) - (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -4253,7 +4236,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $2 i32.const 1 i32.and @@ -4272,7 +4255,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $0 i32.const 1 i32.and @@ -4298,25 +4281,25 @@ end ;; $if_1 ) - (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf9ListValue13GetCachedSizeEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=24 ) - (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $4) + (func $__ZNK6google8protobuf8internal20RepeatedPtrFieldBase3GetINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEERKNT_8WeakTypeEi (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $2 i32.const 24 i32.add @@ -4329,7 +4312,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8013 + i32.const 11540 i32.store offset=4 local.get $3 i32.const 1505 @@ -4341,7 +4324,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8065 + i32.const 11592 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4363,7 +4346,7 @@ i32.load local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $if_0 @@ -4371,7 +4354,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8013 + i32.const 11540 i32.store offset=4 local.get $2 i32.const 1506 @@ -4383,7 +4366,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8096 + i32.const 11623 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -4399,11 +4382,11 @@ i32.load local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf5Value12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4418,7 +4401,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $1 i32.const 1 i32.and @@ -4569,7 +4552,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $1 i32.const 1 i32.and @@ -4668,7 +4651,7 @@ local.get $0 ) - (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf6Struct12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -4679,18 +4662,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $1 i32.const 1 i32.and @@ -4762,7 +4745,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $4 @@ -4785,12 +4768,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -4807,13 +4790,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 5944 + i32.const 6944 i32.store local.get $1 local.get $7 @@ -4836,11 +4819,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $2 i32.const 16 i32.add @@ -4869,7 +4852,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -4911,7 +4894,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -4972,22 +4955,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 return end ;; $block @@ -4995,11 +4978,11 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseINSA_12KeyValuePairEE10SearchFromEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -5007,12 +4990,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $2 i32.const 24 i32.add @@ -5041,7 +5024,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $3 i32.const 418 @@ -5053,7 +5036,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8222 + i32.const 11749 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -5076,7 +5059,7 @@ i32.le_u if $if_1 local.get $2 - global.set $31 + global.set $33 return end ;; $if_1 local.get $5 @@ -5110,7 +5093,7 @@ br $block end ;; $block_0 local.get $2 - global.set $31 + global.set $33 return end ;; $block local.get $1 @@ -5128,7 +5111,7 @@ local.get $3 i32.store local.get $2 - global.set $31 + global.set $33 return end ;; $if_3 local.get $3 @@ -5139,7 +5122,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 427 @@ -5151,7 +5134,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8339 + i32.const 11866 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -5163,7 +5146,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -5175,12 +5158,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load i32.load offset=16 @@ -5190,7 +5173,7 @@ local.get $1 i32.store local.get $2 - global.set $31 + global.set $33 return end ;; $if local.get $2 @@ -5222,7 +5205,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 451 @@ -5234,7 +5217,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8179 + i32.const 11706 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -5322,10 +5305,10 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -5337,12 +5320,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 24 i32.add @@ -5370,7 +5353,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $3 i32.const 476 @@ -5382,7 +5365,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8370 + i32.const 11897 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -5491,12 +5474,12 @@ i32.ne local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 return end ;; $block_1 local.get $3 - global.set $31 + global.set $33 i32.const 1 ) @@ -5514,12 +5497,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $31 + global.get $33 local.set $10 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 i32.load local.get $2 @@ -5705,7 +5688,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 return end ;; $block_0 end ;; $if_2 @@ -5825,7 +5808,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 return end ;; $block else @@ -5845,10 +5828,10 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $31 + global.set $33 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6029,7 +6012,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6112 + i32.const 7112 i32.store local.get $0 i32.load offset=12 @@ -6039,7 +6022,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15208 + i32.const 24408 i32.eq local.get $1 i32.eqz @@ -6069,18 +6052,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6112 + i32.const 7112 i32.store local.get $0 i32.load offset=12 @@ -6092,7 +6075,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15208 + i32.const 24408 i32.eq local.get $1 i32.eqz @@ -6124,16 +6107,16 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 call $_free ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -6144,7 +6127,7 @@ i32.store offset=8 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv (type $1) (param $0 i32) (result i32) i32.const 20 @@ -6153,7 +6136,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $0 i32.const 0 @@ -6162,12 +6145,12 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5696 + i32.const 6696 i32.store local.get $0 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -6175,7 +6158,7 @@ call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -6189,7 +6172,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15208 + i32.const 24408 i32.ne if $if local.get $1 @@ -6260,27 +6243,27 @@ i32.store offset=16 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $1) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4640 + i32.const 4752 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 9986 - i32.const 10027 + i32.const 13513 + i32.const 13554 i32.const 92 - i32.const 10076 + i32.const 13603 call $___assert_fail end ;; $if ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -6289,12 +6272,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.set $4 local.get $0 @@ -6365,13 +6348,13 @@ local.get $5 i32.load local.tee $2 - i32.const 15208 + i32.const 24408 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 15208 + i32.const 24408 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -6521,7 +6504,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 @@ -6532,16 +6515,16 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $block local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -6561,7 +6544,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -6614,7 +6597,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -6635,7 +6618,7 @@ i32.add ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -6647,7 +6630,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -6658,12 +6641,12 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -6683,7 +6666,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -6736,7 +6719,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.load offset=16 local.tee $0 i32.const 1 @@ -6757,7 +6740,7 @@ i32.add ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $3) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6772,7 +6755,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $2 i32.const 10 @@ -6791,7 +6774,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $4 local.get $2 i32.const 18 @@ -6850,19 +6833,19 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -6874,19 +6857,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4736 + i32.const 4688 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5784 + i32.const 6784 i32.store local.get $1 local.get $0 @@ -6894,7 +6877,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5672 + i32.const 6672 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -6905,7 +6888,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 i32.const 0 @@ -6913,7 +6896,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5672 + i32.const 6672 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -6925,7 +6908,7 @@ local.get $0 ) - (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -6938,12 +6921,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $4 i32.const 48 i32.add @@ -7000,7 +6983,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6408 + i32.const 7408 i32.store local.get $5 local.get $6 @@ -7205,7 +7188,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 15208 + i32.const 24408 i32.store end ;; $if_5 local.get $0 @@ -7227,12 +7210,12 @@ local.get $5 i32.load local.tee $3 - i32.const 15208 + i32.const 24408 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 15208 + i32.const 24408 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -7253,9 +7236,9 @@ i32.load local.tee $2 else - i32.const 15208 + i32.const 24408 local.set $2 - i32.const 15208 + i32.const 24408 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -7272,9 +7255,9 @@ i32.load local.tee $3 else - i32.const 15208 + i32.const 24408 local.set $3 - i32.const 15208 + i32.const 24408 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -7289,7 +7272,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8414 + i32.const 11941 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -7639,7 +7622,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $31 + global.set $33 local.get $1 return end ;; $if_18 @@ -7647,7 +7630,7 @@ i32.load call $_free local.get $4 - global.set $31 + global.set $33 local.get $1 ) @@ -7686,7 +7669,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 15208 + i32.const 24408 i32.eq local.get $1 i32.eqz @@ -7735,18 +7718,18 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $block local.get $0 i32.const 0 i32.store offset=20 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -7766,12 +7749,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4688 + i32.const 4640 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -7783,7 +7766,7 @@ local.get $1 ) - (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -7797,12 +7780,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 96 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 72 i32.add @@ -7863,7 +7846,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6408 + i32.const 7408 i32.store local.get $7 local.get $4 @@ -8029,7 +8012,7 @@ local.get $6 select i32.const 0 - i32.const 8449 + i32.const 11976 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -8050,11 +8033,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -8157,7 +8140,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $31 + global.set $33 local.get $1 return end ;; $if_11 @@ -8165,11 +8148,11 @@ i32.load call $_free local.get $2 - global.set $31 + global.set $33 local.get $1 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_9ListValueEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -8189,12 +8172,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4608 + i32.const 4560 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -8206,11 +8189,11 @@ local.get $1 ) - (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $1) + (func $__ZN6google8protobuf9ListValueC2EPNS0_5ArenaE (type $4) (param $0 i32) (param $1 i32) local.get $0 - i32.const 5864 + i32.const 6864 i32.store local.get $0 local.get $1 @@ -8224,7 +8207,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -8233,7 +8216,7 @@ call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -8243,12 +8226,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block block $block_0 local.get $1 @@ -8272,12 +8255,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $if @@ -8300,14 +8283,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -8316,7 +8299,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -8335,7 +8318,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -8350,12 +8333,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -8364,7 +8347,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -8423,7 +8406,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_3 @@ -8433,7 +8416,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $31 + global.set $33 local.get $0 return end ;; $if_7 @@ -8441,10 +8424,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_2 @@ -8462,46 +8445,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -8510,7 +8506,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -8521,7 +8517,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $2 i32.const 0 @@ -8530,9 +8526,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5696 + i32.const 6696 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -8540,22 +8536,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -8565,22 +8559,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 15208 + i32.load + local.tee $5 + i32.const 24408 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 15208 + i32.const 24408 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -8595,13 +8589,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -8613,7 +8607,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -8633,8 +8627,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -8643,12 +8638,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -8659,35 +8652,35 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $31 + global.set $33 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $31 + global.set $33 local.get $5 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=8 local.set $4 @@ -8721,7 +8714,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $31 + global.set $33 local.get $2 i32.const 16 i32.add @@ -8734,25 +8727,25 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $31 + global.set $33 local.get $0 i32.const 16 i32.add ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 32 i32.add @@ -8774,7 +8767,7 @@ i32.eqz if $if local.get $2 - global.set $31 + global.set $33 return end ;; $if local.get $2 @@ -8825,10 +8818,10 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $4) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -8839,9 +8832,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -8851,7 +8844,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $2 i32.const 0 @@ -8860,7 +8853,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5696 + i32.const 6696 i32.store end ;; $if local.get $0 @@ -8871,17 +8864,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -8917,7 +8908,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -8927,28 +8918,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 15208 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 15208 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24408 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24408 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -8957,6 +8950,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -8966,20 +8971,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -8987,34 +8989,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -9029,8 +9031,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -9039,35 +9042,33 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 local.get $4 ) - (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $2) + (func $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -9079,12 +9080,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4640 + i32.const 4592 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -9103,7 +9104,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $0 i32.const 0 @@ -9112,12 +9113,12 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5696 + i32.const 6696 i32.store local.get $0 ) - (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $1) + (func $__ZN6google8protobuf5Value4SwapEPS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -9128,12 +9129,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $0 local.get $1 @@ -9427,20 +9428,20 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -9449,12 +9450,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -9463,7 +9464,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $4 i32.const 796 @@ -9475,7 +9476,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8488 + i32.const 12015 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -9603,7 +9604,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 15208 + i32.const 24408 i32.store end ;; $if_4 local.get $2 @@ -9623,7 +9624,7 @@ local.get $0 i32.load local.tee $2 - i32.const 15208 + i32.const 24408 i32.eq if $if_6 local.get $0 @@ -9636,7 +9637,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $31 + global.set $33 return end ;; $block_3 local.get $1 @@ -9699,7 +9700,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 15080 + i32.const 24280 end ;; $if_8 br $block_7 end ;; $block_8 @@ -9753,7 +9754,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 15168 + i32.const 24368 end ;; $if_10 br $block_9 end ;; $block_10 @@ -9767,14 +9768,14 @@ br $block end ;; $block_0 local.get $4 - global.set $31 + global.set $33 return end ;; $block local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -9782,12 +9783,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -9796,7 +9797,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $3 i32.const 341 @@ -9808,7 +9809,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8488 + i32.const 12015 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -9897,7 +9898,7 @@ i32.eqz if $if_2 local.get $3 - global.set $31 + global.set $33 return end ;; $if_2 local.get $0 @@ -9966,22 +9967,22 @@ br_if $loop end ;; $loop local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $1) + (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -9990,7 +9991,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $2 i32.const 1040 @@ -10002,7 +10003,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8488 + i32.const 12015 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10023,7 +10024,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -10072,10 +10073,10 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $1) + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10084,12 +10085,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.eq @@ -10098,7 +10099,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8013 + i32.const 11540 i32.store offset=4 local.get $2 i32.const 1586 @@ -10110,7 +10111,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8522 + i32.const 12049 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10122,7 +10123,7 @@ i32.eqz if $if_0 local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $1 @@ -10230,17 +10231,17 @@ i32.ge_s if $if_3 local.get $2 - global.set $31 + global.set $33 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $1) + (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $4) (param $0 i32) (param $1 i32) local.get $1 @@ -10256,7 +10257,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5784 + i32.const 6784 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -10307,7 +10308,7 @@ call $_free ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10319,12 +10320,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -10338,7 +10339,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 601 @@ -10350,7 +10351,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9019 + i32.const 12546 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10412,7 +10413,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 607 @@ -10424,7 +10425,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9053 + i32.const 12580 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10467,7 +10468,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $3 i32.const 612 @@ -10479,7 +10480,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9097 + i32.const 12624 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -10571,7 +10572,7 @@ i32.ne if $if_5 local.get $3 - global.set $31 + global.set $33 return end ;; $if_5 local.get $1 @@ -10581,7 +10582,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $31 + global.set $33 return end ;; $if_6 local.get $0 @@ -10609,10 +10610,10 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $3) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -10637,7 +10638,7 @@ end ;; $if ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $1) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE14__erase_uniqueIS7_EEmRKT_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -10806,7 +10807,7 @@ call $_free ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $1) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE7destroyEPNS_11__tree_nodeIS7_PvEE (type $4) (param $0 i32) (param $1 i32) local.get $1 @@ -10831,7 +10832,7 @@ call $_free ) - (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $1) + (func $__ZNSt3__213__tree_removeIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -11522,12 +11523,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $3 @@ -11548,7 +11549,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $1 i32.const 495 @@ -11560,7 +11561,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9133 + i32.const 12660 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -11571,13 +11572,13 @@ i32.eqz if $if_1 local.get $1 - global.set $31 + global.set $33 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -11590,12 +11591,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 16 i32.add @@ -11626,7 +11627,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $31 + global.set $33 return end ;; $if block $block @@ -11748,12 +11749,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -11793,10 +11794,10 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -11813,7 +11814,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5784 + i32.const 6784 i32.store offset=16 local.get $0 i32.const 0 @@ -11821,7 +11822,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5672 + i32.const 6672 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -11838,12 +11839,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11869,7 +11870,7 @@ i32.load local.set $0 local.get $2 - i32.const 5784 + i32.const 6784 i32.store offset=16 local.get $2 local.get $0 @@ -11877,7 +11878,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5672 + i32.const 6672 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -11891,7 +11892,7 @@ local.get $2 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6ResizeEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -11903,12 +11904,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 7 i32.le_u @@ -11917,7 +11918,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 765 @@ -11929,7 +11930,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9603 + i32.const 13130 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12069,13 +12070,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $31 + global.set $33 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -12088,12 +12089,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 112 i32.add - global.set $31 + global.set $33 local.get $5 i32.const 48 i32.add @@ -12118,7 +12119,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $4 i32.const 672 @@ -12130,7 +12131,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9177 + i32.const 12704 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -12156,7 +12157,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $4 i32.const 678 @@ -12168,7 +12169,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9278 + i32.const 12805 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -12202,7 +12203,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $31 + global.set $33 return end ;; $if_3 i32.const 0 @@ -12242,7 +12243,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $31 + global.set $33 return end ;; $if_5 else @@ -12250,7 +12251,7 @@ i32.const 3 i32.store local.get $6 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $6 i32.const 878 @@ -12262,7 +12263,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 9334 + i32.const 12861 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -12294,7 +12295,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $5 i32.const 685 @@ -12306,7 +12307,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9374 + i32.const 12901 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -12342,10 +12343,10 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $1) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -12358,12 +12359,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 96 i32.add - global.set $31 + global.set $33 local.get $5 i32.const 72 i32.add @@ -12423,7 +12424,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 837 @@ -12435,7 +12436,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9496 + i32.const 13023 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12451,12 +12452,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -12699,7 +12700,7 @@ local.get $6 i32.store local.get $5 - global.set $31 + global.set $33 return end ;; $if_11 local.get $11 @@ -12707,7 +12708,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 848 @@ -12719,7 +12720,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9561 + i32.const 13088 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12741,7 +12742,7 @@ local.get $6 i32.store local.get $5 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -12752,12 +12753,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=16 local.tee $6 @@ -12781,7 +12782,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $4 i32.const 713 @@ -12793,7 +12794,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9449 + i32.const 12976 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -12839,7 +12840,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $31 + global.set $33 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -12849,12 +12850,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 local.get $4 local.get $2 @@ -12870,7 +12871,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $1 @@ -12883,12 +12884,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -12948,10 +12949,10 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $31 + global.set $33 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $3) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -13261,7 +13262,7 @@ local.get $2 ) - (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $1) + (func $__ZNSt3__227__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -13538,12 +13539,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $4 local.get $1 i32.load @@ -13569,7 +13570,7 @@ i32.load if $if local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -13582,12 +13583,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5448 + i32.const 6488 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -13639,10 +13640,10 @@ i32.add i32.store offset=12 local.get $4 - global.set $31 + global.set $33 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $17) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -14054,18 +14055,18 @@ end ;; $if_11 ) - (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $4) + (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap16CreateEmptyTableEm (type $3) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $3 i32.const 24 i32.add @@ -14078,7 +14079,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $2 i32.const 926 @@ -14090,7 +14091,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9656 + i32.const 13183 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -14106,7 +14107,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $3 i32.const 927 @@ -14118,7 +14119,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9691 + i32.const 13218 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -14141,7 +14142,7 @@ call $_memset drop local.get $3 - global.set $31 + global.set $33 local.get $0 return end ;; $if_1 @@ -14157,13 +14158,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5448 + i32.const 6488 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -14175,7 +14176,7 @@ call $_memset drop local.get $3 - global.set $31 + global.set $33 local.get $0 ) @@ -14189,12 +14190,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 2 i32.shl @@ -14322,21 +14323,21 @@ local.get $0 if $if_4 local.get $4 - global.set $31 + global.set $33 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $1) + (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 local.get $1 @@ -14361,7 +14362,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5672 + i32.const 6672 i32.load i32.eqz if $if @@ -14417,17 +14418,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4704 + i32.const 4656 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 54 + i32.const 115 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -14497,12 +14498,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 28 i32.add @@ -14524,7 +14525,7 @@ i32.eqz if $if local.get $1 - global.set $31 + global.set $33 return end ;; $if loop $loop @@ -14581,7 +14582,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -14596,12 +14597,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 i32.eqz @@ -14613,7 +14614,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $31 + global.set $33 return end ;; $if loop $loop @@ -14699,7 +14700,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8138 + i32.const 11665 i32.store offset=4 local.get $5 i32.const 527 @@ -14711,7 +14712,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9728 + i32.const 13255 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -14918,7 +14919,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -14946,14 +14947,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 - i32.const 6032 + i32.const 7032 i32.store local.get $0 i32.load offset=4 @@ -14975,7 +14976,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7953 + i32.const 11478 i32.store offset=4 local.get $1 i32.const 150 @@ -14987,7 +14988,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9133 + i32.const 12660 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -15030,14 +15031,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -15048,7 +15049,7 @@ call $_free ) - (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf6Struct11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -15069,19 +15070,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 10086 + i32.const 13613 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10094 + i32.const 13621 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10102 + i32.const 13629 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10106 + i32.const 13633 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -15089,14 +15090,14 @@ i32.store8 offset=22 ) - (func $__ZNK6google8protobuf6Struct3NewEv (type $2) + (func $__ZNK6google8protobuf6Struct3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_6StructEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -15147,27 +15148,27 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4688 + i32.const 4752 + i32.const 4640 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 9986 - i32.const 10027 + i32.const 13513 + i32.const 13554 i32.const 92 - i32.const 10076 + i32.const 13603 call $___assert_fail end ;; $if ) - (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -15179,12 +15180,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $6 i32.const 12 i32.add @@ -15249,12 +15250,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -15271,13 +15272,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5944 + i32.const 6944 i32.store local.get $2 local.get $7 @@ -15296,11 +15297,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -15314,7 +15315,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $5 @@ -15341,7 +15342,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8449 + i32.const 11976 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -15358,11 +15359,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) br $block end ;; $if_0 i32.const -1 @@ -15458,12 +15459,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4624 + i32.const 4576 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -15480,13 +15481,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 15208 + i32.const 24408 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5944 + i32.const 6944 i32.store local.get $2 local.get $4 @@ -15505,11 +15506,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -15523,7 +15524,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) select local.set $3 local.get $10 @@ -15549,7 +15550,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8449 + i32.const 11976 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -15566,11 +15567,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -15582,7 +15583,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $2 i32.const 1 i32.and @@ -15601,7 +15602,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $0 i32.const 1 i32.and @@ -15626,7 +15627,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $31 + global.set $33 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -17052,7 +17053,7 @@ end ;; $block ) - (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $3) + (func $__ZNSt3__27__sort3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_T_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -17390,7 +17391,7 @@ i32.const 2 ) - (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $16) + (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $17) (param $0 i32) (param $1 i32) (param $2 i32) @@ -17659,7 +17660,7 @@ i32.add ) - (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $17) + (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -18013,7 +18014,7 @@ i32.add ) - (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $1) + (func $__ZNSt3__218__insertion_sort_3IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -18237,7 +18238,7 @@ end ;; $loop ) - (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $4) + (func $__ZNSt3__227__insertion_sort_incompleteIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEbT0_SJ_T_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -18620,7 +18621,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $1) + (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -18642,13 +18643,13 @@ i32.add local.tee $2 i32.load - i32.const 15208 + i32.const 24408 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 15208 + i32.const 24408 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -18659,12 +18660,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 15208 + i32.const 24408 i32.eq if $if_2 local.get $2 @@ -18712,7 +18713,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $1 local.get $0 i32.load offset=8 @@ -18726,13 +18727,13 @@ i32.store offset=16 ) - (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $2) + (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv (type $1) (param $0 i32) (result i32) local.get $0 i32.load offset=8 local.tee $0 - i32.const 15064 + i32.const 24264 i32.load local.get $0 select @@ -18746,12 +18747,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $3 @@ -18762,7 +18763,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8013 + i32.const 11540 i32.store offset=4 local.get $1 i32.const 1567 @@ -18774,20 +18775,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10393 + i32.const 13920 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -18853,7 +18854,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -18861,7 +18862,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -18913,7 +18914,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5784 + i32.const 6784 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -18957,7 +18958,7 @@ call $_free ) - (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $1) + (func $__ZNK6google8protobuf5Value11GetTypeNameEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -18978,19 +18979,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10475 + i32.const 14002 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10483 + i32.const 14010 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10491 + i32.const 14018 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10495 + i32.const 14022 i32.load8_s i32.store8 offset=20 local.get $1 @@ -18998,14 +18999,14 @@ i32.store8 offset=21 ) - (func $__ZNK6google8protobuf5Value3NewEv (type $2) + (func $__ZNK6google8protobuf5Value3NewEv (type $1) (param $0 i32) (result i32) i32.const 0 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_5ValueEJEEEPT_PS1_DpOT0_ ) - (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $4) + (func $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -19054,27 +19055,27 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $1) + (func $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE (type $4) (param $0 i32) (param $1 i32) local.get $1 - i32.const 4800 - i32.const 4736 + i32.const 4752 + i32.const 4688 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 9986 - i32.const 10027 + i32.const 13513 + i32.const 13554 i32.const 92 - i32.const 10076 + i32.const 13603 call $___assert_fail end ;; $if ) - (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19132,7 +19133,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8414 + i32.const 11941 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -19143,7 +19144,7 @@ local.get $0 i32.load offset=8 else - i32.const 15208 + i32.const 24408 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -19193,7 +19194,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $2 i32.const 1 i32.and @@ -19212,7 +19213,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15208 + i32.const 24408 local.get $0 i32.const 1 i32.and @@ -19238,7 +19239,7 @@ end ;; $if_8 ) - (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $2) + (func $__ZNK6google8protobuf5Value13GetCachedSizeEv (type $1) (param $0 i32) (result i32) local.get $0 @@ -19252,12 +19253,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -19278,11 +19279,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $3 i32.load local.set $0 @@ -19293,7 +19294,7 @@ i32.eqz if $if local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -19302,10 +19303,10 @@ local.get $0 call $_free local.get $3 - global.set $31 + global.set $33 ) - (func $_proxy_onCreate (type $1) + (func $_proxy_onCreate (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19317,221 +19318,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 - local.set $5 - global.get $31 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $33 + local.set $6 + global.get $33 i32.const 32 i32.add - global.set $31 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $33 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24444 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24440 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24456 + f32.load + local.tee $14 local.get $3 - local.get $1 - i32.store - local.get $3 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - i32.load - local.tee $1 + f32.convert_i32_u + f32.mul + i32.const 24452 i32.load - i32.load offset=8 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.tee $1 - i32.const 68 + i32.const 1 i32.add - local.tee $2 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - if $if_1 + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24444 i32.load - local.set $6 - local.get $1 - i32.load offset=72 - local.set $2 - local.get $4 - i64.const 0 - i64.store align=4 + local.set $3 local.get $4 - i32.const 0 - i32.store offset=8 - local.get $2 - i32.const -17 - i32.gt_u - if $if_2 - call $_abort - else - local.get $2 - local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + i32.load offset=4 else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24440 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24448 + i32.load + i32.store + i32.const 24448 + local.get $4 + i32.store + local.get $11 + i32.const 24448 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24440 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 local.get $4 - i64.const 0 - i64.store align=4 - local.get $4 + i32.store + end ;; $block_2 + i32.const 24452 + i32.const 24452 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 + local.get $1 + i32.store + local.get $5 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + i32.load + local.tee $1 + i32.load + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.tee $1 + i32.const 68 + i32.add + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_17 + local.get $3 + i32.load + local.set $4 + local.get $1 + i32.load offset=72 + local.set $3 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $3 + i32.const -17 + i32.gt_u + if $if_18 + call $_abort + else + local.get $3 + local.set $7 + local.get $4 + local.set $12 + end ;; $if_18 + else + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 15284 + i32.const 24484 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -19539,103 +19802,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + local.get $1 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $5 + call_indirect $29 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 + call_indirect $29 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_10 + call_indirect $29 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -19673,71 +19921,71 @@ local.get $0 i32.store local.get $1 - i32.const 6272 + i32.const 7272 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 - global.set $31 + call_indirect $29 (type $0) + local.get $6 + global.set $33 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -19747,20 +19995,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - local.get $5 - global.set $31 + call_indirect $29 (type $0) + local.get $6 + global.set $33 ) (func $_proxy_onDelete (type $0) @@ -19768,12 +20016,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__Z10getContextj local.tee $2 @@ -19782,18 +20030,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $31 + global.set $33 ) (func $_proxy_onDone (type $0) @@ -19807,11 +20055,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -19823,12 +20071,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -19851,11 +20099,11 @@ local.get $2 local.get $5 local.get $7 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) local.get $5 i32.load local.set $0 @@ -19866,7 +20114,7 @@ i32.eqz if $if local.get $5 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -19875,10 +20123,10 @@ local.get $0 call $_free local.get $5 - global.set $31 + global.set $33 ) - (func $_proxy_onGrpcCreateInitialMetadata (type $1) + (func $_proxy_onGrpcCreateInitialMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19891,11 +20139,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $_proxy_onGrpcReceive (type $5) @@ -19906,12 +20154,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -19935,9 +20183,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $4 i32.load local.set $0 @@ -19948,7 +20196,7 @@ i32.eqz if $if local.get $4 - global.set $31 + global.set $33 return end ;; $if local.get $0 @@ -19957,10 +20205,10 @@ local.get $0 call $_free local.get $4 - global.set $31 + global.set $33 ) - (func $_proxy_onGrpcReceiveInitialMetadata (type $1) + (func $_proxy_onGrpcReceiveInitialMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19973,14 +20221,14 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $_proxy_onGrpcReceiveTrailingMetadata (type $1) + (func $_proxy_onGrpcReceiveTrailingMetadata (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -19993,11 +20241,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $_proxy_onHttpCallResponse (type $18) @@ -20014,12 +20262,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $31 + global.get $33 local.set $8 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $8 i32.const 8 i32.add @@ -20075,9 +20323,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) local.get $8 i32.load local.set $0 @@ -20116,7 +20364,7 @@ i32.eqz if $if_1 local.get $8 - global.set $31 + global.set $33 return end ;; $if_1 local.get $0 @@ -20125,7 +20373,7 @@ local.get $0 call $_free local.get $8 - global.set $31 + global.set $33 ) (func $_proxy_onLog (type $0) @@ -20141,14 +20389,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $_proxy_onQueueReady (type $1) + (func $_proxy_onQueueReady (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -20161,14 +20409,14 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $_proxy_onRequestBody (type $3) + (func $_proxy_onRequestBody (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -20188,12 +20436,12 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $_proxy_onRequestHeaders (type $2) + (func $_proxy_onRequestHeaders (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20207,10 +20455,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onRequestMetadata (type $2) + (func $_proxy_onRequestMetadata (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20224,10 +20472,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onRequestTrailers (type $2) + (func $_proxy_onRequestTrailers (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20241,10 +20489,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseBody (type $3) + (func $_proxy_onResponseBody (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -20264,12 +20512,12 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $_proxy_onResponseHeaders (type $2) + (func $_proxy_onResponseHeaders (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20283,10 +20531,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseMetadata (type $2) + (func $_proxy_onResponseMetadata (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20300,10 +20548,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $_proxy_onResponseTrailers (type $2) + (func $_proxy_onResponseTrailers (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -20317,7 +20565,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) (func $_proxy_onStart (type $7) @@ -20336,29 +20584,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $31 - local.set $7 - global.get $31 + global.get $33 + local.set $6 + global.get $33 i32.const 32 i32.add - global.set $31 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $33 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -20368,27 +20611,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 15244 + i32.const 24444 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 15240 + i32.const 24440 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -20407,7 +20650,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -20421,7 +20664,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -20429,16 +20672,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -20459,7 +20702,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -20468,22 +20711,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -20508,11 +20751,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 br $block end ;; $block_0 - i32.const 15280 + i32.const 24480 i32.load i32.eqz if $if_7 @@ -20551,7 +20794,7 @@ local.get $0 i32.store local.get $5 - i32.const 6200 + i32.const 7200 i32.store local.get $5 i32.const 68 @@ -20586,12 +20829,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -20603,7 +20846,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -20649,10 +20892,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -20666,20 +20909,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -20694,19 +20937,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -20716,12 +20959,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -20730,7 +20973,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -20740,53 +20983,36 @@ i32.add i32.const 0 i32.store8 - i32.const 15280 + i32.const 24480 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6744 - i32.store - local.get $2 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $11 + call_indirect $29 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -20796,22 +21022,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -20821,40 +21047,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $29 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_17 + call_indirect $29 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -20893,7 +21119,7 @@ local.get $0 i32.store local.get $2 - i32.const 6200 + i32.const 7200 i32.store local.get $2 i32.const 68 @@ -20907,15 +21133,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -20928,12 +21154,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -20941,11 +21167,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -20991,10 +21217,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -21003,29 +21229,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - end ;; $if_20 + call_indirect $29 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -21039,35 +21265,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $12 + call_indirect $29 (type $4) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $31 + local.get $6 + global.set $33 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -21078,8 +21304,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $31 + local.get $6 + global.set $33 ) (func $_proxy_onTick (type $0) @@ -21093,14 +21319,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZL14getRootContextj (type $2) + (func $__ZL14getRootContextj (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21108,7 +21334,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15244 + i32.const 24444 i32.load local.tee $1 i32.eqz @@ -21116,7 +21342,7 @@ i32.const 0 return end ;; $if - i32.const 15240 + i32.const 24440 i32.load local.get $1 local.get $1 @@ -21251,7 +21477,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz if $if_11 i32.const 0 @@ -21267,10 +21493,10 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $2) + (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -21284,7 +21510,7 @@ local.get $0 i32.load local.set $4 - i32.const 15244 + i32.const 24444 i32.load local.tee $2 i32.eqz @@ -21293,7 +21519,7 @@ i32.const 0 local.set $0 else - i32.const 15240 + i32.const 24440 i32.load local.get $2 local.get $2 @@ -21432,13 +21658,13 @@ i32.const 0 i32.store local.get $6 - i32.const 15256 + i32.const 24456 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 15252 + i32.const 24452 i32.load i32.const 1 i32.add @@ -21498,7 +21724,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 15244 + i32.const 24444 i32.load local.tee $1 i32.const -1 @@ -21535,7 +21761,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 15240 + i32.const 24440 i32.load local.get $0 i32.const 2 @@ -21552,14 +21778,14 @@ br $block_4 else local.get $3 - i32.const 15248 + i32.const 24448 i32.load i32.store - i32.const 15248 + i32.const 24448 local.get $3 i32.store local.get $2 - i32.const 15248 + i32.const 24448 i32.store local.get $3 i32.load @@ -21568,7 +21794,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 15240 + i32.const 24440 i32.load local.get $1 local.get $1 @@ -21610,8 +21836,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 15252 - i32.const 15252 + i32.const 24452 + i32.const 24452 i32.load i32.const 1 i32.add @@ -21621,7 +21847,7 @@ i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -22045,7 +22271,7 @@ local.get $0 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $2) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -22187,7 +22413,7 @@ i32.xor local.set $6 block $block_3 - i32.const 15264 + i32.const 24464 i32.load local.tee $2 i32.eqz @@ -22196,7 +22422,7 @@ i32.const 0 local.set $5 else - i32.const 15260 + i32.const 24460 i32.load local.get $2 local.get $2 @@ -22544,13 +22770,13 @@ i32.const 0 i32.store local.get $12 - i32.const 15276 + i32.const 24476 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 15272 + i32.const 24472 i32.load i32.const 1 i32.add @@ -22610,7 +22836,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 15264 + i32.const 24464 i32.load local.tee $0 i32.const -1 @@ -22647,7 +22873,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 15260 + i32.const 24460 i32.load local.get $5 i32.const 2 @@ -22666,14 +22892,14 @@ br $block_13 else local.get $4 - i32.const 15268 + i32.const 24468 i32.load i32.store - i32.const 15268 + i32.const 24468 local.get $4 i32.store local.get $2 - i32.const 15268 + i32.const 24468 i32.store local.get $4 i32.load @@ -22682,7 +22908,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 15260 + i32.const 24460 i32.load local.get $0 local.get $0 @@ -22724,8 +22950,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 15272 - i32.const 15272 + i32.const 24472 + i32.const 24472 i32.load i32.const 1 i32.add @@ -22765,7 +22991,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15264 + i32.const 24464 i32.load local.tee $0 i32.gt_u @@ -22791,10 +23017,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15272 + i32.const 24472 i32.load f32.convert_i32_u - i32.const 15276 + i32.const 24476 f32.load f32.div f32.ceil @@ -22876,10 +23102,10 @@ local.get $0 i32.eqz if $if - i32.const 15260 + i32.const 24460 i32.load local.set $0 - i32.const 15260 + i32.const 24460 i32.const 0 i32.store local.get $0 @@ -22887,7 +23113,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15264 + i32.const 24464 i32.const 0 i32.store return @@ -22901,11 +23127,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6868 + i32.const 10856 i32.store local.get $1 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $0 @@ -22913,10 +23139,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15260 + i32.const 24460 i32.load local.set $1 - i32.const 15260 + i32.const 24460 local.get $2 i32.store local.get $1 @@ -22924,13 +23150,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15264 + i32.const 24464 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15260 + i32.const 24460 i32.load local.get $1 i32.const 2 @@ -22946,7 +23172,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15268 + i32.const 24468 i32.load local.tee $6 i32.eqz @@ -22956,7 +23182,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 15260 + i32.const 24460 i32.load local.get $0 local.get $0 @@ -22991,7 +23217,7 @@ i32.const 2 i32.shl i32.add - i32.const 15268 + i32.const 24468 i32.store local.get $6 i32.load @@ -23033,7 +23259,7 @@ local.get $4 else block $block (result i32) - i32.const 15260 + i32.const 24460 i32.load local.get $8 i32.const 2 @@ -23261,7 +23487,7 @@ i32.load i32.store local.get $1 - i32.const 15260 + i32.const 24460 i32.load local.get $8 i32.const 2 @@ -23270,7 +23496,7 @@ i32.load i32.load i32.store - i32.const 15260 + i32.const 24460 i32.load local.get $8 i32.const 2 @@ -23318,7 +23544,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15244 + i32.const 24444 i32.load local.tee $0 i32.gt_u @@ -23344,10 +23570,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15252 + i32.const 24452 i32.load f32.convert_i32_u - i32.const 15256 + i32.const 24456 f32.load f32.div f32.ceil @@ -23423,10 +23649,10 @@ local.get $0 i32.eqz if $if - i32.const 15240 + i32.const 24440 i32.load local.set $0 - i32.const 15240 + i32.const 24440 i32.const 0 i32.store local.get $0 @@ -23434,7 +23660,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15244 + i32.const 24444 i32.const 0 i32.store return @@ -23448,11 +23674,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6868 + i32.const 10856 i32.store local.get $1 - i32.const 5376 - i32.const 46 + i32.const 6408 + i32.const 107 call $___cxa_throw end ;; $if_1 local.get $0 @@ -23460,10 +23686,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15240 + i32.const 24440 i32.load local.set $1 - i32.const 15240 + i32.const 24440 local.get $2 i32.store local.get $1 @@ -23471,13 +23697,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15244 + i32.const 24444 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15240 + i32.const 24440 i32.load local.get $1 i32.const 2 @@ -23493,7 +23719,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15248 + i32.const 24448 i32.load local.tee $4 i32.eqz @@ -23503,7 +23729,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 15240 + i32.const 24440 i32.load local.get $0 local.get $0 @@ -23538,7 +23764,7 @@ i32.const 2 i32.shl i32.add - i32.const 15248 + i32.const 24448 i32.store local.get $4 i32.load @@ -23565,7 +23791,7 @@ local.get $0 else block $block (result i32) - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23624,7 +23850,7 @@ i32.load i32.store local.get $1 - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23633,7 +23859,7 @@ i32.load i32.load i32.store - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23680,7 +23906,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23739,7 +23965,7 @@ i32.load i32.store local.get $2 - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23748,7 +23974,7 @@ i32.load i32.load i32.store - i32.const 15240 + i32.const 24440 i32.load local.get $3 i32.const 2 @@ -23773,7 +23999,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 6200 + i32.const 7200 i32.store local.get $0 i32.load offset=148 @@ -23782,30 +24008,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -23829,30 +24055,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -23876,46 +24102,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_9 + call_indirect $29 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -23925,59 +24134,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $29 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -23985,19 +24177,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -24013,7 +24205,7 @@ call $_free ) - (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $1) + (func $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $4) (param $0 i32) (param $1 i32) nop @@ -24033,19 +24225,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $31 - local.set $6 - global.get $31 + global.get $33 + local.set $8 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $33 block $block local.get $0 i32.load offset=84 @@ -24053,10 +24238,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -24064,7 +24246,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -24086,55 +24268,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -24142,13 +24324,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -24168,127 +24350,440 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $33 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=20 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) - local.get $6 + call_indirect $29 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 + local.get $0 + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block + local.get $0 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add i32.load - local.set $0 - local.get $8 + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $31 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $33 return end ;; $block - local.get $6 - global.set $31 + local.get $8 + global.set $33 ) - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $1) + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -24429,11 +24924,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) return end ;; $block end ;; $if_4 @@ -24576,14 +25071,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $1) + (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -24727,14 +25222,14 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) - (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $1) + (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -24878,11 +25373,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -24898,68 +25393,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $31 - local.set $6 - global.get $31 - i32.const 32 - i32.add - global.set $31 - local.get $6 + global.get $33 + local.set $8 + global.get $33 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $33 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -24972,24 +25458,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -25010,7 +25496,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -25019,22 +25505,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -25051,197 +25537,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $29 (type $6) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $1 if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw + i32.load + call $_free + local.get $1 + call $_free end ;; $if_10 + local.get $10 + i32.load + local.set $2 local.get $0 - local.get $8 - local.get $7 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block local.get $0 - i32.load - i32.load offset=24 - i32.const 1 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 208 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $27 (type $6) - local.get $7 i32.load - local.set $0 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 end ;; $if_3 end ;; $if - local.get $6 + local.get $8 i32.const 4 i32.add - local.set $7 + local.set $6 local.get $0 i32.const 120 i32.add - local.set $8 + local.set $7 local.get $0 i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 + local.tee $4 + if $if_37 + local.get $7 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $11 + if $if_38 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else - local.get $3 - if $if_15 (result i32) + local.get $4 + if $if_40 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -25250,82 +26047,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $7 + call_indirect $29 (type $4) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -25339,82 +26136,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $31 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $33 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -25423,44 +26220,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) - local.get $6 + call_indirect $29 (type $4) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $31 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $33 return end ;; $block - local.get $6 - global.set $31 + local.get $8 + global.set $33 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -25477,17 +26274,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $31 + global.get $33 local.set $8 - global.get $31 - i32.const 32 - i32.add - global.set $31 - local.get $8 + global.get $33 i32.const 16 i32.add - local.set $10 + global.set $33 local.get $8 i32.const 8 i32.add @@ -25495,31 +26287,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -25543,42 +26331,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -25587,39 +26375,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -25630,59 +26418,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6744 - i32.store - local.get $1 - i32.const 5280 - i32.const 39 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $33 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -25695,133 +26794,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -25829,12 +26928,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -25842,9 +26941,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $7 i32.load local.set $0 @@ -25852,58 +26951,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -25916,82 +27015,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $31 + global.set $33 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -26023,381 +27122,14 @@ local.get $0 call $_free local.get $8 - global.set $31 + global.set $33 return end ;; $block local.get $8 - global.set $31 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $33 ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -26741,11 +27473,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_28 local.get $1 call $_free @@ -26761,12 +27493,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=8 local.set $3 @@ -26795,9 +27527,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) local.get $5 i32.load local.set $1 @@ -26935,7 +27667,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $31 + global.set $33 return end ;; $block_0 local.get $0 @@ -26952,14 +27684,14 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $31 + global.set $33 return end ;; $block local.get $5 - global.set $31 + global.set $33 ) - (func $__Z10getContextj (type $2) + (func $__Z10getContextj (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -26967,7 +27699,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15244 + i32.const 24444 i32.load local.tee $1 i32.eqz @@ -26975,7 +27707,7 @@ i32.const 0 return end ;; $if - i32.const 15240 + i32.const 24440 i32.load local.get $1 local.get $1 @@ -27110,7 +27842,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) i32.eqz if $if_11 i32.const 0 @@ -27126,7 +27858,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -27142,14 +27874,14 @@ local.get $0 i32.load local.set $3 - i32.const 15244 + i32.const 24444 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 15240 + i32.const 24440 i32.load local.tee $4 local.get $2 @@ -27317,7 +28049,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 15248 + i32.const 24448 i32.eq br_if $block_2 local.get $3 @@ -27427,7 +28159,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 15240 + i32.const 24440 i32.load local.get $2 i32.const 2 @@ -27447,8 +28179,8 @@ local.get $8 i32.const 0 i32.store - i32.const 15252 - i32.const 15252 + i32.const 24452 + i32.const 24452 i32.load i32.const -1 i32.add @@ -27470,349 +28202,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 15244 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 15240 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 15256 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15252 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 15244 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 15240 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 15248 - i32.load - i32.store - i32.const 15248 - local.get $1 - i32.store - i32.const 15240 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 15248 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 15240 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 15252 - i32.const 15252 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) @@ -27824,15 +28223,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $31 - local.set $4 - global.get $31 - i32.const 48 + global.get $33 + local.set $8 + global.get $33 + i32.const 16 i32.add - global.set $31 - i32.const 15280 + global.set $33 + i32.const 24480 i32.load i32.eqz if $if @@ -27847,7 +28244,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15280 + i32.const 24480 local.get $3 i32.store i32.const 20 @@ -27861,27 +28258,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15284 + i32.const 24484 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 15284 + i32.const 24484 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -27889,25 +28278,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -27917,7 +28308,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -27932,7 +28323,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -27940,127 +28331,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $27 (type $2) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $29 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $31 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $33 return - end ;; $if_9 - i32.const 15280 + end ;; $if_7 + i32.const 24480 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -28068,31 +28425,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -28100,12 +28459,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -28113,12 +28472,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -28130,100 +28489,74 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $27 (type $2) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $29 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $31 + end ;; $if_13 + local.get $8 + global.set $33 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -28706,7 +29039,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -28723,8 +29056,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 9 + i32.store offset=28 + local.get $5 + i32.const 6592 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -28922,345 +29258,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $31 - local.set $4 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $31 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $31 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $27 (type $1) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $31 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $31 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $1) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -29273,794 +29283,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6868 - i32.store - local.get $2 - i32.const 5376 - i32.const 46 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 6592 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6352 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6352 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $2) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 15288 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 - local.get $1 - local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E + i32.add + i32.and + if $if_0 (result i32) + local.get $1 + call $__ZNSt3__212__next_primeEm + else + local.get $1 end ;; $if_0 - i32.const 15292 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6352 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4768 - i32.const 34 - call $___cxa_throw - else local.get $1 - global.set $31 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 15292 - local.get $0 - i32.store - i32.const 56 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 - local.set $4 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $31 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6484 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $31 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 15292 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 15292 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 16 - i32.add - global.set $31 - i32.const 15200 - i32.load8_s i32.eqz - if $if - i32.const 15200 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 15200 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 15296 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 15296 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $31 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $1) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -30071,228 +30109,440 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10856 + i32.store + local.get $2 + i32.const 6408 + i32.const 107 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6868 - i32.store - local.get $3 - i32.const 5376 - i32.const 46 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 144 - i32.add - global.set $31 - local.get $2 - i32.const 128 + i32.const -1 i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 11410 - local.get $3 - call $_snprintf - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $31 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 144 - i32.add - global.set $31 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 11413 - local.get $3 - call $_snprintf - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.get $2 - global.set $31 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 + i32.const 7352 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s @@ -30304,930 +30554,1107 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $0 - global.get $31 - i32.const 16 - i32.add - global.set $31 - i32.const 15300 - i64.const 0 - i64.store align=4 - i32.const 15308 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 16049 + i32.const 7352 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15316 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 16049 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15332 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $31 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $31 - local.set $5 - global.get $31 + global.get $33 + local.set $1 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $0 + global.set $33 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $31 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24488 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24492 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $31 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $3) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $31 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7352 i32.store + local.get $1 local.get $3 - i32.const 11416 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11441 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4720 + i32.const 26 + call $___cxa_throw + else + local.get $1 + global.set $33 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 24492 local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 117 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=8 - local.get $3 - global.set $31 - local.get $2 + call_indirect $29 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $33 + return + end ;; $if + i32.const 7488 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $33 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24492 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24492 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $29 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const 24400 + i32.load8_s + i32.eqz + if $if + i32.const 24400 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24496 + local.get $2 + i32.store + i32.const 24400 + i32.const 0 + i32.store + i32.const 24400 + i32.const 24400 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24496 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 - local.get $0 - i32.load offset=24 - local.set $3 local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 local.get $2 i32.load offset=4 + i32.const 8 i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 + i32.store offset=4 + else local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $33 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4784 - i64.load - local.get $0 - i64.load offset=16 - i64.eq + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4792 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10856 + i32.store + local.get $3 + i32.const 6408 + i32.const 107 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 4784 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4792 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4784 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4784 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 4792 + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 144 + i32.add + global.set $33 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 i32.store - i32.const 4784 + local.get $2 + i32.const 128 + i32.const 14937 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.store + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $33 local.get $0 - local.get $3 - i32.store offset=4 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4784 - i64.load + global.get $33 + local.set $2 + global.get $33 + i32.const 144 + i32.add + global.set $33 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 14940 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.eq + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s if $if - i32.const 4792 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4784 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block + return end ;; $if local.get $0 - i32.load offset=24 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $33 + local.set $0 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const 24500 + i64.const 0 + i64.store align=4 + i32.const 24508 + i64.const 0 + i64.store align=4 local.get $0 - i32.load offset=20 - local.tee $3 - i32.sub - local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.const 25254 + i32.store local.get $0 - i32.load offset=28 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add local.tee $1 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 + i64.load align=4 + i64.store align=4 + i32.const 24516 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25254 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24532 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $33 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $3) + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) - i32.const 4784 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4792 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $33 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 local.get $3 - i32.load offset=4 - i32.const 4784 - i32.eq - br_if $block - drop + i32.const 11 + i32.add + local.set $0 + br $block_0 end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - i32.sub + br $block + end ;; $block_0 + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 local.get $1 - i32.lt_u - if $if_1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $33 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + if $if (result i32) local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select else local.get $0 - local.get $1 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 local.get $3 - i32.add + i32.const 3 + i32.store + local.get $3 + i32.const 14943 + i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 i32.store offset=20 - end ;; $if_1 + local.get $3 + i32.const 14968 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 local.get $0 - i32.load offset=28 - local.tee $1 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $33 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 + local.get $0 + i32.load offset=24 local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 + local.get $4 + i32.store offset=4 local.get $3 + local.get $6 i32.store - local.get $1 - local.get $2 - i32.store offset=4 local.get $0 - local.get $1 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 i32.const 8 i32.add + local.tee $4 i32.store offset=28 - end ;; $if_2 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 16 + i32.add + i32.store offset=28 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $1) + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4784 + i32.const 4736 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4792 + i32.const 4744 i32.load local.set $2 else @@ -31238,53 +31665,50 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4784 + i32.const 4736 i32.eq br_if $block end ;; $if_0 local.get $0 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm return end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) local.get $2 local.get $1 - i32.const 52 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 52 - i32.store offset=4 local.get $2 local.get $0 - i32.const 8 + local.get $1 i32.add - i32.store offset=28 + i32.store offset=20 + local.get $0 end ;; $if_1 ) - (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $1) + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4784 + i32.const 4736 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4792 + i32.const 4744 i32.load local.set $2 else @@ -31295,7 +31719,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4784 + i32.const 4736 i32.eq br_if $block end ;; $if_0 @@ -31305,50 +31729,473 @@ end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) local.get $2 local.get $1 - i32.const 52 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 52 - i32.store offset=4 local.get $2 local.get $0 - i32.const 8 + local.get $1 i32.add - i32.store offset=28 + i32.store offset=20 + local.get $0 end ;; $if_1 ) - (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) (param $0 i32) + (result i32) (local $1 i32) - local.get $0 - i32.load - i32.load - local.set $1 - local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $27 (type $0) - ) - - (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $17) - (param $0 i32) - (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4736 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4744 + local.get $3 + i32.store + i32.const 4736 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4744 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 113 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 113 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4736 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4744 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4736 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 113 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 113 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.load + i32.load + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $29 (type $0) + ) + + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) + (param $0 i32) + (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) @@ -31368,12 +32215,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $6 local.get $4 i32.store @@ -31391,7 +32238,7 @@ i32.load local.set $0 local.get $6 - global.set $31 + global.set $33 local.get $0 return end ;; $if @@ -35953,9 +36800,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_190 local.tee $4 i32.store @@ -36099,9 +36946,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_196 local.tee $4 i32.store @@ -36264,9 +37111,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_202 local.tee $4 i32.store @@ -36434,9 +37281,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_208 local.tee $4 i32.store @@ -36637,7 +37484,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -36696,9 +37543,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_214 br $block @@ -36838,7 +37685,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -36897,9 +37744,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_222 br $block @@ -37058,7 +37905,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -37116,9 +37963,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) end ;; $if_230 i32.store local.get $9 @@ -37281,7 +38128,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $3 local.get $6 i32.load @@ -37340,9 +38187,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.store end ;; $if_238 br $block @@ -41369,7 +42216,7 @@ i32.load local.set $4 local.get $11 - i32.const 6372 + i32.const 7372 i32.store local.get $11 local.get $4 @@ -41416,9 +42263,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) local.get $6 local.get $6 i32.load @@ -41437,7 +42284,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11528 + i32.const 15055 i32.store offset=4 local.get $11 i32.const 571 @@ -41449,7 +42296,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11570 + i32.const 15097 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -41469,24 +42316,24 @@ i32.load local.set $0 local.get $6 - global.set $31 + global.set $33 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11528 + i32.const 15055 i32.store offset=4 local.get $1 i32.const 534 @@ -41498,12 +42345,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11570 + i32.const 15097 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11600 + i32.const 15127 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -41512,50 +42359,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 - i32.const 15232 + global.set $33 + i32.const 24432 i32.load8_s i32.eqz if $if - i32.const 15232 + i32.const 24432 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 15232 + i32.const 24432 + i32.const 0 + i32.store + i32.const 24432 + i32.const 24432 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15376 + i32.const 24576 i32.load - i32.const 6492 + i32.const 7492 call $_pthread_equal if $if_1 - i32.const 5672 + i32.const 6672 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $31 + global.set $33 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11528 + i32.const 15055 i32.store offset=4 local.get $0 i32.const 801 @@ -41567,53 +42422,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11612 + i32.const 15139 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $31 + global.set $33 return end ;; $if_1 - i32.const 15224 + i32.const 24424 i32.load8_s i32.eqz if $if_3 - i32.const 15224 + i32.const 24424 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 15224 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 15208 + i32.xor + if $if_4 + i32.const 24408 i64.const 0 i64.store - i32.const 15216 + i32.const 24416 i32.const 0 i32.store - i32.const 57 - i32.const 15208 + i32.const 118 + i32.const 24408 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24424 + i32.const 0 + i32.store + i32.const 24424 + i32.const 24424 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15376 - i32.const 6492 + i32.const 24576 + i32.const 7492 i32.store - i32.const 5672 + i32.const 6672 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15376 + i32.const 24576 i32.const 0 i32.store local.get $0 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -41672,15 +42530,15 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $27 (type $8) + call_indirect $29 (type $8) local.get $0 i32.const 0 i32.store ) - (func $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv (type $1) + (func $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv (type $4) (param $0 i32) (param $1 i32) local.get $0 @@ -41701,31 +42559,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11777 + i32.const 15304 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11785 + i32.const 15312 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11793 + i32.const 15320 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11801 + i32.const 15328 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11809 + i32.const 15336 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11817 + i32.const 15344 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11825 + i32.const 15352 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -41733,7 +42591,7 @@ i32.store8 offset=50 ) - (func $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh (type $4) + (func $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -41745,7 +42603,7 @@ i32.load local.set $2 local.get $0 - i32.const 16050 + i32.const 25245 i32.load8_s i32.const 1 i32.and @@ -41755,12 +42613,12 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $3) + (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -41770,19 +42628,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $3 if $if local.get $0 @@ -41799,7 +42657,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $31 + global.set $33 local.get $0 return end ;; $if @@ -41809,7 +42667,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.tee $6 local.set $5 local.get $4 @@ -41817,7 +42675,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6372 + i32.const 7372 i32.store local.get $3 local.get $2 @@ -41850,11 +42708,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $3 i32.load8_s offset=16 if $if_0 @@ -41862,7 +42720,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11707 + i32.const 15234 i32.store offset=4 local.get $4 i32.const 373 @@ -41874,7 +42732,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11739 + i32.const 15266 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -41887,11 +42745,11 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi (type $4) + (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase14InternalExtendEi (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -41900,12 +42758,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=12 local.set $4 @@ -41921,7 +42779,7 @@ i32.ge_s if $if local.get $3 - global.set $31 + global.set $33 local.get $4 i32.const 4 i32.add @@ -41957,7 +42815,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11860 + i32.const 15387 i32.store offset=4 local.get $3 i32.const 59 @@ -41969,9 +42827,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11894 + i32.const 15421 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12011 + i32.const 15538 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -42003,13 +42861,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5440 + i32.const 6480 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -42073,11 +42931,11 @@ i32.add local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -42086,12 +42944,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $1 i32.const 8 @@ -42140,7 +42998,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_4 @@ -42178,7 +43036,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $block_3 @@ -42257,7 +43115,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_2 @@ -42343,7 +43201,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $31 + global.set $33 local.get $3 local.get $1 i32.const -8 @@ -42387,21 +43245,21 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $block_0 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $block local.get $2 - global.set $31 + global.set $33 i32.const 0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11SkipMessageEPNS0_2io16CodedInputStreamEPNS3_17CodedOutputStreamE (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite11SkipMessageEPNS0_2io16CodedInputStreamEPNS3_17CodedOutputStreamE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -42549,7 +43407,7 @@ local.get $0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE (type $3) + (func $__ZN6google8protobuf8internal14WireFormatLite9SkipFieldEPNS0_2io16CodedInputStreamEjPNS3_17CodedOutputStreamE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -42561,12 +43419,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block block $block_0 local.get $1 @@ -42705,7 +43563,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $31 + global.set $33 i32.const 1 return end ;; $if_2 @@ -42775,7 +43633,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $31 + global.set $33 i32.const 1 return end ;; $block_5 @@ -43331,17 +44189,17 @@ br $block end ;; $block_1 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block local.get $5 - global.set $31 + global.set $33 local.get $0 ) @@ -43394,7 +44252,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey ) - (func $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite9WriteBoolEibPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -43468,7 +44326,7 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite9WriteEnumEiiPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -43591,7 +44449,7 @@ i32.store offset=8 ) - (func $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -43599,12 +44457,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=8 i32.const 4 @@ -43654,7 +44512,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12059 + i32.const 15586 i32.store offset=4 local.get $4 i32.const 507 @@ -43666,7 +44524,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12095 + i32.const 15622 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -43718,7 +44576,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $31 + global.set $33 return end ;; $if_2 local.get $1 @@ -43800,10 +44658,10 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -43811,12 +44669,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.load offset=8 i32.const 4 @@ -43866,7 +44724,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12059 + i32.const 15586 i32.store offset=4 local.get $4 i32.const 516 @@ -43878,7 +44736,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12095 + i32.const 15622 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -44004,7 +44862,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -44097,7 +44955,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $0 local.get $2 i32.load offset=8 @@ -44114,11 +44972,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) return end ;; $if_2 local.get $2 @@ -44187,14 +45045,14 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $1) + (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -44243,7 +45101,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) local.set $4 local.get $1 i32.load offset=8 @@ -44357,9 +45215,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop return end ;; $if_4 @@ -44369,14 +45227,14 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) - (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $4) + (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -44482,25 +45340,25 @@ i32.const 1 ) - (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $16) + (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $17) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $31 + global.set $33 i32.const 1 return end ;; $if @@ -44557,13 +45415,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 12141 + i32.const 15668 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 12153 + i32.const 15680 local.get $2 select local.set $3 @@ -44575,7 +45433,7 @@ i32.const 2 i32.store local.get $1 - i32.const 12059 + i32.const 15586 i32.store offset=4 local.get $1 i32.const 626 @@ -44587,21 +45445,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12167 + i32.const 15694 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 12180 + i32.const 15707 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12199 + i32.const 15726 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12216 + i32.const 15743 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12229 + i32.const 15756 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12285 + i32.const 15812 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -44616,7 +45474,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $31 + global.set $33 i32.const 0 ) @@ -44727,12 +45585,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.set $5 local.get $0 @@ -44775,7 +45633,7 @@ select local.set $7 local.get $5 - global.set $31 + global.set $33 local.get $7 return end ;; $block @@ -44898,7 +45756,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $31 + global.set $33 i64.const -1 return end ;; $if_9 @@ -44926,12 +45784,12 @@ local.get $2 i32.store local.get $5 - global.set $31 + global.set $33 local.get $1 i64.extend_i32_u ) - (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv (type $1) + (func $__ZN6google8protobuf2io16CodedInputStream20ReadVarint64FallbackEv (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -45289,7 +46147,7 @@ i32.store8 offset=8 ) - (func $__ZN6google8protobuf2io16CodedInputStream7RefreshEv (type $2) + (func $__ZN6google8protobuf2io16CodedInputStream7RefreshEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -45297,12 +46155,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 48 i32.add - global.set $31 + global.set $33 local.get $2 i32.const 28 i32.add @@ -45342,9 +46200,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $4 @@ -45371,7 +46229,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12293 + i32.const 15820 i32.store offset=4 local.get $2 i32.const 591 @@ -45383,7 +46241,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12328 + i32.const 15855 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -45476,7 +46334,7 @@ end ;; $block local.set $0 local.get $2 - global.set $31 + global.set $33 local.get $0 return end ;; $if_1 @@ -45492,7 +46350,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_5 @@ -45502,31 +46360,31 @@ i32.eq if $if_6 local.get $2 - global.set $31 + global.set $33 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $31 + global.set $33 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 12293 + i32.const 15820 i32.store offset=4 local.get $1 i32.const 190 @@ -45538,21 +46396,21 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12365 + i32.const 15892 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12432 + i32.const 15959 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -45618,7 +46476,7 @@ local.get $2 ) - (func $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream12SkipFallbackEii (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -45685,11 +46543,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) drop i32.const 0 return @@ -45703,11 +46561,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) if $if_2 (result i32) local.get $0 local.get $0 @@ -45728,15 +46586,15 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $27 (type $10) + call_indirect $29 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 ) - (func $__ZN6google8protobuf2io16CodedInputStream10ReadStringEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream10ReadStringEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -45789,7 +46647,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream18ReadStringFallbackEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $3) + (func $__ZN6google8protobuf2io16CodedInputStream18ReadStringFallbackEPNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -45965,7 +46823,7 @@ i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian32FallbackEPj (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian32FallbackEPj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -45975,12 +46833,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $7 local.set $3 local.get $0 @@ -46053,7 +46911,7 @@ br $block end ;; $block_0 local.get $7 - global.set $31 + global.set $33 i32.const 0 return end ;; $block @@ -46066,11 +46924,11 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream26ReadLittleEndian64FallbackEPy (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -46080,12 +46938,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $7 local.set $3 local.get $0 @@ -46158,7 +47016,7 @@ br $block end ;; $block_0 local.get $7 - global.set $31 + global.set $33 i32.const 0 return end ;; $block @@ -46171,11 +47029,11 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv (type $2) + (func $__ZN6google8protobuf2io16CodedInputStream27ReadVarintSizeAsIntFallbackEv (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -46186,12 +47044,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $31 + global.get $33 local.set $7 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.load offset=4 local.tee $6 @@ -46239,7 +47097,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $31 + global.set $33 local.get $0 return end ;; $block @@ -46409,7 +47267,7 @@ i32.and if $if_11 local.get $7 - global.set $31 + global.set $33 i32.const -1 return end ;; $if_11 @@ -46472,7 +47330,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $31 + global.set $33 i32.const -1 return end ;; $if_12 @@ -46480,12 +47338,12 @@ local.get $2 i32.store local.get $7 - global.set $31 + global.set $33 local.get $8 i32.wrap_i64 ) - (func $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj (type $4) + (func $__ZN6google8protobuf2io16CodedInputStream15ReadTagFallbackEj (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -46494,12 +47352,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 block $block local.get $0 i32.load offset=4 @@ -46597,7 +47455,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_2 @@ -46638,7 +47496,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $31 + global.set $33 local.get $0 return end ;; $block_0 @@ -46797,26 +47655,26 @@ local.get $1 i32.store local.get $5 - global.set $31 + global.set $33 local.get $4 return end ;; $block local.get $5 - global.set $31 + global.set $33 i32.const 0 ) - (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamE (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.store @@ -46845,9 +47703,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) if $if local.get $0 local.get $2 @@ -46875,19 +47733,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 local.get $1 i32.store @@ -46904,7 +47762,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -46929,11 +47787,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $0 local.get $0 i32.load offset=12 @@ -46958,12 +47816,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $3 local.set $6 local.get $0 @@ -47001,9 +47859,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -47043,7 +47901,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $31 + global.set $33 return end ;; $block end ;; $if @@ -47065,7 +47923,7 @@ i32.sub i32.store local.get $6 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -47114,11 +47972,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) local.get $0 i32.const 12 i32.add @@ -47168,9 +48026,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.const 1 i32.xor i32.const 1 @@ -47181,7 +48039,7 @@ i32.store8 offset=16 ) - (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian32Ej (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian32Ej (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -47191,12 +48049,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add @@ -47223,7 +48081,7 @@ i32.add i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $3 @@ -47265,9 +48123,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -47307,7 +48165,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $5 @@ -47328,7 +48186,7 @@ i32.sub i32.store local.get $3 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $21) @@ -47342,12 +48200,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add @@ -47374,7 +48232,7 @@ i32.add i32.store local.get $3 - global.set $31 + global.set $33 return end ;; $if local.get $3 @@ -47414,9 +48272,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -47456,7 +48314,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $31 + global.set $33 return end ;; $block local.get $6 @@ -47477,10 +48335,10 @@ i32.sub i32.store local.get $3 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $1) + (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -47489,12 +48347,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $6 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $6 i32.const 4 i32.add @@ -47582,9 +48440,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -47624,7 +48482,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $31 + global.set $33 return end ;; $block else @@ -47649,7 +48507,7 @@ i32.sub i32.store local.get $6 - global.set $31 + global.set $33 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $21) @@ -47663,12 +48521,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 4 i32.add @@ -47760,9 +48618,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -47802,7 +48660,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $31 + global.set $33 return end ;; $block end ;; $if_1 @@ -47824,10 +48682,10 @@ i32.sub i32.store local.get $7 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $4) + (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -47918,7 +48776,13 @@ i32.add ) - (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $3) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -47973,18 +48837,18 @@ end ;; $if ) - (func $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi (type $1) + (func $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -47999,7 +48863,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $2 i32.const 132 @@ -48011,9 +48875,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12657 + i32.const 16184 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12701 + i32.const 16228 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48034,7 +48898,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $2 i32.const 134 @@ -48046,7 +48910,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12756 + i32.const 16283 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48066,14 +48930,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $31 + global.set $33 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $3 i32.const 135 @@ -48085,7 +48949,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12626 + i32.const 16153 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48100,7 +48964,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $31 + global.set $33 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -48111,7 +48975,7 @@ i64.extend_i32_s ) - (func $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi (type $3) + (func $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -48121,12 +48985,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $5 i32.const 24 i32.add @@ -48141,7 +49005,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $3 i32.const 151 @@ -48153,7 +49017,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12846 + i32.const 16373 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48227,7 +49091,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $5 i32.const 164 @@ -48239,15 +49103,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12923 + i32.const 16450 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12973 + i32.const 16500 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $31 + global.set $33 i32.const 0 return end ;; $block_0 @@ -48288,22 +49152,22 @@ i32.sub i32.store local.get $5 - global.set $31 + global.set $33 i32.const 1 ) - (func $__ZN6google8protobuf2io18StringOutputStream6BackUpEi (type $1) + (func $__ZN6google8protobuf2io18StringOutputStream6BackUpEi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 80 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 48 i32.add @@ -48316,7 +49180,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $2 i32.const 182 @@ -48328,7 +49192,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12626 + i32.const 16153 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48349,7 +49213,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $2 i32.const 183 @@ -48361,7 +49225,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12846 + i32.const 16373 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48391,7 +49255,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $3 i32.const 184 @@ -48403,7 +49267,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12878 + i32.const 16405 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -48439,7 +49303,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $31 + global.set $33 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -48448,12 +49312,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 block $block (result i32) local.get $0 i32.load offset=4 @@ -48464,7 +49328,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12577 + i32.const 16104 i32.store offset=4 local.get $1 i32.const 189 @@ -48476,7 +49340,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12846 + i32.const 16373 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -48497,11 +49361,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $31 + global.set $33 local.get $3 else local.get $1 - global.set $31 + global.set $33 local.get $0 i32.const 255 i32.and @@ -48509,19 +49373,19 @@ end ;; $if_0 ) - (func $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi (type $1) + (func $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 1040 i32.add - global.set $31 + global.set $33 local.get $2 local.get $1 i32.load @@ -48531,7 +49395,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 12161 + i32.const 15688 local.get $2 call $_vsnprintf local.tee $4 @@ -48543,7 +49407,7 @@ i32.le_s if $if_0 local.get $2 - global.set $31 + global.set $33 return end ;; $if_0 local.get $0 @@ -48563,7 +49427,7 @@ i32.store local.get $3 local.get $5 - i32.const 12161 + i32.const 15688 local.get $2 call $_vsnprintf local.tee $1 @@ -48584,19 +49448,19 @@ call $_free end ;; $if local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf12StringPrintfEPKcz (type $1) + (func $__ZN6google8protobuf12StringPrintfEPKcz (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $2 local.get $1 i32.store @@ -48610,10 +49474,10 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $31 + global.set $33 ) - (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $3) + (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -48639,7 +49503,7 @@ i32.const 241 return end ;; $if - i32.const 6452 + i32.const 7452 i32.load local.set $13 local.get $0 @@ -48649,18 +49513,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6480 + i32.const 7480 i32.load local.set $4 - i32.const 6460 + i32.const 7460 i32.load local.set $11 - i32.const 6464 + i32.const 7464 i32.load local.set $12 - i32.const 6468 + i32.const 7468 i32.load - i32.const 6436 + i32.const 7436 i32.load i32.add local.tee $8 @@ -48873,7 +49737,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6440 + i32.const 7440 i32.load i32.ge_u if $if_7 @@ -48905,7 +49769,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6440 + i32.const 7440 i32.load i32.lt_u if $if_9 (result i32) @@ -48943,7 +49807,7 @@ local.get $9 ) - (func $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci (type $4) + (func $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -48953,17 +49817,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 i32.eqz if $if local.get $2 - global.set $31 + global.set $33 local.get $1 i32.eqz return @@ -49086,7 +49950,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $31 + global.set $33 local.get $1 local.get $0 local.get $6 @@ -49094,22 +49958,22 @@ i32.eq ) - (func $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi (type $3) + (func $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - global.get $31 + global.get $33 local.set $0 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 13035 + i32.const 16562 i32.store offset=4 local.get $0 i32.const 47 @@ -49121,26 +49985,26 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 13074 + i32.const 16601 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $31 + global.set $33 i32.const 0 ) - (func $___stdio_close (type $2) + (func $___stdio_close (type $1) (param $0 i32) (result i32) (local $1 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 local.get $0 i32.load offset=60 @@ -49152,7 +50016,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15444 + i32.const 24644 i32.const 0 local.get $0 i32.sub @@ -49161,217 +50025,63 @@ local.set $0 end ;; $if local.get $1 - global.set $31 + global.set $33 local.get $0 ) - (func $___stdio_write (type $3) + (func $___stdout_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $31 - local.set $6 - global.get $31 - i32.const 48 - i32.add - global.set $31 - local.get $6 + global.get $33 + local.set $3 + global.get $33 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $33 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15444 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15444 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $31 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $33 + local.get $0 ) (func $___stdio_seek (type $12) @@ -49381,12 +50091,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 32 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 8 i32.add @@ -49415,7 +50125,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15444 + i32.const 24644 i32.const 0 local.get $0 i32.sub @@ -49437,71 +50147,306 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $31 + global.set $33 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15444 + i32.const 24644 ) - (func $___stdout_write (type $3) + (func $___stdio_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $31 - local.set $3 - global.get $31 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $6 i32.const 32 i32.add - global.set $31 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24644 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24644 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $33 + local.get $2 + ) + + (func $_strlen (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $31 - local.get $0 + i32.sub ) - (func $_memcmp (type $3) + (func $_memcmp (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49552,7 +50497,134 @@ end ;; $if ) - (func $_memchr (type $4) + (func $_frexp (type $22) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + + (func $_memchr (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -49674,7 +50746,34 @@ local.get $0 ) - (func $_vsnprintf (type $16) + (func $_snprintf (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $_vsnprintf (type $17) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49682,18 +50781,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $4 - global.get $31 + global.get $33 i32.const 160 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5136 + i32.const 5088 i32.const 144 call $_memcpy drop @@ -49707,7 +50806,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15444 + i32.const 24644 i32.const 75 i32.store i32.const -1 @@ -49772,11 +50871,11 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $31 + global.set $33 local.get $0 ) - (func $_vfprintf (type $3) + (func $_vfprintf (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -49818,12 +50917,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $31 + global.get $33 local.set $21 - global.get $31 + global.get $33 i32.const 560 i32.add - global.set $31 + global.set $33 local.get $21 i32.const 32 i32.add @@ -49855,13 +50954,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 13258 + i32.const 16785 local.set $18 i32.const 1 else - i32.const 13261 - i32.const 13264 - i32.const 13259 + i32.const 16788 + i32.const 16791 + i32.const 16786 local.get $4 i32.const 1 i32.and @@ -49884,8 +50983,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 13285 - i32.const 13289 + i32.const 16812 + i32.const 16816 local.get $5 i32.const 32 i32.and @@ -49893,8 +50992,8 @@ i32.ne local.tee $3 select - i32.const 13277 - i32.const 13281 + i32.const 16804 + i32.const 16808 local.get $3 select local.get $1 @@ -49912,15 +51011,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -49928,7 +51027,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -50186,11 +51285,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -50198,14 +51297,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -50218,11 +51317,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -50230,7 +51329,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -51137,11 +52236,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -51149,7 +52248,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -51218,7 +52317,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -51242,9 +52341,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 13293 + i32.const 19584 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -51291,7 +52390,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -51321,7 +52420,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -51389,7 +52488,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -51401,9 +52500,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 13293 + i32.const 19584 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -51440,7 +52539,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -51464,13 +52563,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -51479,13 +52578,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $31 + global.set $33 local.get $2 local.get $0 local.get $0 @@ -51494,7 +52593,7 @@ select ) - (func $_pop_arg_long_double (type $1) + (func $_pop_arg_long_double (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -51518,7 +52617,7 @@ f64.store ) - (func $___vfprintf_internal (type $3) + (func $___vfprintf_internal (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51528,12 +52627,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 224 i32.add - global.set $31 + global.set $33 local.get $3 i32.const 160 i32.add @@ -51644,9 +52743,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop local.get $1 i32.const -1 @@ -51689,11 +52788,11 @@ end ;; $if local.set $0 local.get $3 - global.set $31 + global.set $33 local.get $0 ) - (func $_printf_core (type $17) + (func $_printf_core (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51721,12 +52820,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $31 + global.get $33 local.set $15 - global.get $31 + global.get $33 i32.const -64 i32.sub - global.set $31 + global.set $33 local.get $15 i32.const 40 i32.add @@ -51775,7 +52874,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15444 + i32.const 24644 i32.const 75 i32.store i32.const -1 @@ -51865,7 +52964,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -52078,7 +53177,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -52114,7 +53213,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -52304,7 +53403,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -52491,7 +53590,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 13241 + i32.const 16768 local.set $8 br $block_14 end ;; $block_25 @@ -52507,13 +53606,13 @@ i64.sub local.tee $25 i64.store - i32.const 13241 + i32.const 16768 local.set $8 i32.const 1 else - i32.const 13242 - i32.const 13243 - i32.const 13241 + i32.const 16769 + i32.const 16770 + i32.const 16768 local.get $7 i32.const 1 i32.and @@ -52537,7 +53636,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 13241 + i32.const 16768 local.set $8 br $block_16 end ;; $block_23 @@ -52553,7 +53652,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13241 + i32.const 16768 local.set $8 local.get $18 local.set $1 @@ -52562,7 +53661,7 @@ local.get $10 i32.load local.tee $5 - i32.const 13251 + i32.const 16778 local.get $5 select local.tee $6 @@ -52582,7 +53681,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13241 + i32.const 16768 local.set $8 local.get $1 local.get $6 @@ -52618,7 +53717,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -52633,7 +53732,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $27 (type $11) + call_indirect $29 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -52643,7 +53742,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13241 + i32.const 16768 local.set $8 local.get $18 local.set $1 @@ -52671,11 +53770,11 @@ local.tee $8 select local.set $12 - i32.const 13241 + i32.const 16768 local.get $6 i32.const 4 i32.shr_u - i32.const 13241 + i32.const 16768 i32.add local.get $8 select @@ -52741,7 +53840,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -52772,7 +53871,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -52835,7 +53934,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -52868,11 +53967,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -52880,17 +53979,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -52898,7 +53997,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -52930,7 +54029,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -52971,11 +54070,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $31 + global.set $33 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -52992,7 +54091,7 @@ end ;; $if ) - (func $_getint_280 (type $2) + (func $_getint (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -53034,7 +54133,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -53258,13 +54357,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 200 - call_indirect $27 (type $1) + i32.const 396 + call_indirect $29 (type $4) end ;; $block end ;; $if ) - (func $_fmt_x (type $22) + (func $_fmt_x (type $23) (param $0 i64) (param $1 i32) (param $2 i32) @@ -53300,7 +54399,7 @@ local.get $1 ) - (func $_fmt_o (type $23) + (func $_fmt_o (type $24) (param $0 i64) (param $1 i32) (result i32) @@ -53332,7 +54431,7 @@ local.get $1 ) - (func $_fmt_u (type $23) + (func $_fmt_u (type $24) (param $0 i64) (param $1 i32) (result i32) @@ -53405,19 +54504,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $31 + global.get $33 local.set $5 - global.get $31 + global.get $33 i32.const 256 i32.add - global.set $31 + global.set $33 local.get $4 i32.const 73728 i32.and @@ -53456,7 +54555,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -53473,13 +54572,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $31 + global.set $33 ) - (func $_wctomb (type $4) + (func $_wctomb (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -53493,7 +54592,7 @@ end ;; $if ) - (func $_wcrtomb (type $4) + (func $_wcrtomb (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -53510,7 +54609,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6680 + i32.const 7680 i32.load i32.load i32.eqz @@ -53527,7 +54626,7 @@ i32.const 1 br $block else - i32.const 15444 + i32.const 24644 i32.const 84 i32.store i32.const -1 @@ -53632,7 +54731,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15444 + i32.const 24644 i32.const 84 i32.store i32.const -1 @@ -53682,9 +54781,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop br $block end ;; $if_0 @@ -53729,9 +54828,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) local.get $3 i32.lt_u br_if $block @@ -53762,7 +54861,7 @@ end ;; $block ) - (func $___towrite (type $2) + (func $___towrite (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -53812,77 +54911,7 @@ end ;; $if ) - (func $_frexp (type $24) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - - (func $_sn_write (type $3) + (func $_sn_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -53916,173 +54945,26 @@ local.get $2 ) - (func $_strlen (type $2) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $6) + (func $_fprintf (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (local $3 i32) - global.get $31 - local.set $3 - global.get $31 + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $3 + global.set $33 local.get $2 + local.get $1 i32.store local.get $0 - i32.const 128 - local.get $1 - local.get $3 - call $_vsnprintf + i32.const 14817 + local.get $2 + call $_vfprintf drop - local.get $3 - global.set $31 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + local.get $2 + global.set $33 ) (func $___overflow (type $0) @@ -54090,12 +54972,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 local.set $1 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $1 i32.const 10 i32.store8 @@ -54145,9 +55027,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) i32.const 1 i32.eq if $if_2 (result i32) @@ -54159,32 +55041,10 @@ drop end ;; $block local.get $1 - global.set $31 - ) - - (func $_fprintf (type $1) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $31 - local.set $2 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 11290 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $31 + global.set $33 ) - (func $_fflush (type $2) + (func $_fflush (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -54205,10 +55065,10 @@ end ;; $block local.set $0 else - i32.const 6488 + i32.const 7484 i32.load if $if_1 (result i32) - i32.const 6488 + i32.const 7484 i32.load call $_fflush else @@ -54216,9 +55076,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15448 + i32.const 24648 call $___lock - i32.const 15456 + i32.const 24656 i32.load local.tee $1 end ;; $block_0 @@ -54252,13 +55112,13 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15448 + i32.const 24648 call $___unlock end ;; $if local.get $0 ) - (func $___fflush_unlocked (type $2) + (func $___fflush_unlocked (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -54281,9 +55141,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) drop local.get $0 i32.load offset=20 @@ -54311,9 +55171,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $27 (type $12) + call_indirect $29 (type $12) drop end ;; $if local.get $0 @@ -54335,7 +55195,71 @@ end ;; $block ) - (func $_malloc (type $2) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + + (func $_malloc (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -54360,17 +55284,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $31 + global.get $33 local.set $17 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15460 + i32.const 24660 i32.load local.tee $6 i32.const 16 @@ -54402,7 +55326,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.tee $3 i32.load offset=8 @@ -54415,7 +55339,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15460 + i32.const 24660 local.get $6 i32.const 1 local.get $0 @@ -54425,7 +55349,7 @@ i32.and i32.store else - i32.const 15476 + i32.const 24676 i32.load local.get $4 i32.gt_u @@ -54465,12 +55389,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $31 + global.set $33 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15468 + i32.const 24668 i32.load local.tee $13 i32.gt_u @@ -54549,7 +55473,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.tee $1 i32.load offset=8 @@ -54562,7 +55486,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15460 + i32.const 24660 local.get $6 i32.const 1 local.get $0 @@ -54573,7 +55497,7 @@ local.tee $8 i32.store else - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.gt_u @@ -54623,7 +55547,7 @@ i32.store local.get $13 if $if_9 - i32.const 15480 + i32.const 24680 i32.load local.set $10 local.get $13 @@ -54632,7 +55556,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $2 local.get $8 @@ -54642,7 +55566,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.const 8 @@ -54660,7 +55584,7 @@ local.set $4 end ;; $if_11 else - i32.const 15460 + i32.const 24660 local.get $0 local.get $8 i32.or @@ -54685,18 +55609,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15468 + i32.const 24668 local.get $6 i32.store - i32.const 15480 + i32.const 24680 local.get $3 i32.store local.get $17 - global.set $31 + global.set $33 local.get $9 return end ;; $if_5 - i32.const 15464 + i32.const 24664 i32.load local.tee $11 if $if_12 (result i32) @@ -54759,7 +55683,7 @@ i32.add i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add i32.load local.tee $0 @@ -54809,7 +55733,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15476 + i32.const 24676 i32.load local.tee $7 local.get $9 @@ -54933,7 +55857,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.tee $0 i32.load @@ -54946,7 +55870,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15464 + i32.const 24664 local.get $11 i32.const 1 local.get $1 @@ -54958,7 +55882,7 @@ br $block_2 end ;; $if_25 else - i32.const 15476 + i32.const 24676 i32.load local.get $18 i32.gt_u @@ -54983,7 +55907,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $3 @@ -55016,7 +55940,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15476 + i32.const 24676 i32.load local.get $0 i32.gt_u @@ -55072,7 +55996,7 @@ i32.store local.get $13 if $if_33 - i32.const 15480 + i32.const 24680 i32.load local.set $4 local.get $13 @@ -55081,7 +56005,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $3 local.get $6 @@ -55091,7 +56015,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15476 + i32.const 24676 i32.load local.get $3 i32.const 8 @@ -55109,7 +56033,7 @@ local.set $12 end ;; $if_35 else - i32.const 15460 + i32.const 24660 local.get $0 local.get $6 i32.or @@ -55134,15 +56058,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15468 + i32.const 24668 local.get $10 i32.store - i32.const 15480 + i32.const 24680 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $31 + global.set $33 local.get $9 i32.const 8 i32.add @@ -55168,7 +56092,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15464 + i32.const 24664 i32.load local.tee $4 if $if_37 (result i32) @@ -55248,7 +56172,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add i32.load local.tee $0 @@ -55413,7 +56337,7 @@ i32.add i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add i32.load local.set $0 @@ -55476,13 +56400,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15468 + i32.const 24668 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15476 + i32.const 24676 i32.load local.tee $12 local.get $2 @@ -55606,7 +56530,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.tee $0 i32.load @@ -55619,7 +56543,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15464 + i32.const 24664 local.get $4 i32.const 1 local.get $3 @@ -55632,7 +56556,7 @@ br $block_9 end ;; $if_60 else - i32.const 15476 + i32.const 24676 i32.load local.get $8 i32.gt_u @@ -55661,7 +56585,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $13 @@ -55694,7 +56618,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15476 + i32.const 24676 i32.load local.get $0 i32.gt_u @@ -55768,10 +56692,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $3 - i32.const 15460 + i32.const 24660 i32.load local.tee $1 i32.const 1 @@ -55780,7 +56704,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15476 + i32.const 24676 i32.load local.get $3 i32.const 8 @@ -55798,7 +56722,7 @@ local.set $11 end ;; $if_71 else - i32.const 15460 + i32.const 24660 local.get $0 local.get $1 i32.or @@ -55894,7 +56818,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.set $3 local.get $5 @@ -55914,7 +56838,7 @@ i32.and i32.eqz if $if_74 - i32.const 15464 + i32.const 24664 local.get $0 local.get $1 i32.or @@ -55995,7 +56919,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15476 + i32.const 24676 i32.load local.get $4 i32.gt_u @@ -56018,7 +56942,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $6 @@ -56051,7 +56975,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $31 + global.set $33 local.get $2 i32.const 8 i32.add @@ -56071,13 +56995,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15468 + i32.const 24668 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15480 + i32.const 24680 i32.load local.set $0 local.get $3 @@ -56087,13 +57011,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15480 + i32.const 24680 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15468 + i32.const 24668 local.get $2 i32.store local.get $1 @@ -56112,10 +57036,10 @@ i32.or i32.store offset=4 else - i32.const 15468 + i32.const 24668 i32.const 0 i32.store - i32.const 15480 + i32.const 24680 i32.const 0 i32.store local.get $0 @@ -56136,13 +57060,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15472 + i32.const 24672 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15472 + i32.const 24672 local.get $12 local.get $11 i32.sub @@ -56150,31 +57074,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 15932 + i32.const 25132 i32.load if $if_83 (result i32) - i32.const 15940 + i32.const 25140 i32.load else - i32.const 15940 + i32.const 25140 i32.const 4096 i32.store - i32.const 15936 + i32.const 25136 i32.const 4096 i32.store - i32.const 15944 + i32.const 25144 i32.const -1 i32.store - i32.const 15948 + i32.const 25148 i32.const -1 i32.store - i32.const 15952 + i32.const 25152 i32.const 0 i32.store - i32.const 15904 + i32.const 25104 i32.const 0 i32.store - i32.const 15932 + i32.const 25132 local.get $17 i32.const -16 i32.and @@ -56201,11 +57125,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15900 + i32.const 25100 i32.load local.tee $2 if $if_85 - i32.const 15892 + i32.const 25092 i32.load local.tee $1 local.get $8 @@ -56227,7 +57151,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 15904 + i32.const 25104 i32.load i32.const 4 i32.and @@ -56238,12 +57162,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15484 + i32.const 24684 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 15908 + i32.const 25108 local.set $2 loop $loop_5 block $block_20 @@ -56306,11 +57230,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15892 + i32.const 25092 i32.load local.tee $4 local.get $0 - i32.const 15936 + i32.const 25136 i32.load local.tee $2 i32.const -1 @@ -56341,7 +57265,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15900 + i32.const 25100 i32.load local.tee $1 if $if_92 @@ -56399,7 +57323,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 15940 + i32.const 25140 i32.load local.tee $1 local.get $6 @@ -56436,8 +57360,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 15904 - i32.const 15904 + i32.const 25104 + i32.const 25104 i32.load i32.const 4 i32.or @@ -56492,28 +57416,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15892 - i32.const 15892 + i32.const 25092 + i32.const 25092 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15896 + i32.const 25096 i32.load i32.gt_u if $if_98 - i32.const 15896 + i32.const 25096 local.get $1 i32.store end ;; $if_98 - i32.const 15484 + i32.const 24684 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 15908 + i32.const 25108 local.set $2 block $block_22 block $block_23 @@ -56571,7 +57495,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15472 + i32.const 24672 i32.load local.get $3 i32.add @@ -56579,10 +57503,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15484 + i32.const 24684 local.get $2 i32.store - i32.const 15472 + i32.const 24672 local.get $1 i32.store local.get $2 @@ -56595,8 +57519,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15488 - i32.const 15948 + i32.const 24688 + i32.const 25148 i32.load i32.store br $block_21 @@ -56604,12 +57528,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15476 + i32.const 24676 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15476 + i32.const 24676 local.get $0 i32.store local.get $0 @@ -56619,7 +57543,7 @@ local.get $3 i32.add local.set $1 - i32.const 15908 + i32.const 25108 local.set $8 block $block_24 block $block_25 @@ -56700,14 +57624,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15472 - i32.const 15472 + i32.const 24672 + i32.const 24672 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15484 + i32.const 24684 local.get $5 i32.store local.get $5 @@ -56717,19 +57641,19 @@ i32.store offset=4 else block $block_26 - i32.const 15480 + i32.const 24680 i32.load local.get $3 i32.eq if $if_105 - i32.const 15468 - i32.const 15468 + i32.const 24668 + i32.const 24668 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15480 + i32.const 24680 local.get $5 i32.store local.get $5 @@ -56774,7 +57698,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.tee $0 i32.ne @@ -56798,8 +57722,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15460 - i32.const 15460 + i32.const 24660 + i32.const 24660 i32.load i32.const 1 local.get $1 @@ -56957,7 +57881,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.tee $0 i32.load @@ -56970,8 +57894,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15464 - i32.const 15464 + i32.const 24664 + i32.const 24664 i32.load i32.const 1 local.get $1 @@ -56983,7 +57907,7 @@ br $block_27 end ;; $block_32 else - i32.const 15476 + i32.const 24676 i32.load local.get $8 i32.gt_u @@ -57008,7 +57932,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $16 @@ -57042,7 +57966,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15476 + i32.const 24676 i32.load local.get $0 i32.gt_u @@ -57094,10 +58018,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $2 - i32.const 15460 + i32.const 24660 i32.load local.tee $1 i32.const 1 @@ -57107,7 +58031,7 @@ i32.and if $if_128 block $block_33 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.const 8 @@ -57126,7 +58050,7 @@ call $_abort end ;; $block_33 else - i32.const 15460 + i32.const 24660 local.get $0 local.get $1 i32.or @@ -57222,7 +58146,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.set $2 local.get $5 @@ -57234,7 +58158,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15464 + i32.const 24664 i32.load local.tee $1 i32.const 1 @@ -57244,7 +58168,7 @@ i32.and i32.eqz if $if_132 - i32.const 15464 + i32.const 24664 local.get $0 local.get $1 i32.or @@ -57325,7 +58249,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.gt_u @@ -57348,7 +58272,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $9 @@ -57381,14 +58305,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $31 + global.set $33 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 15908 + i32.const 25108 local.set $2 loop $loop_10 block $block_35 @@ -57413,7 +58337,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15484 + i32.const 24684 i32.const 0 local.get $0 i32.const 8 @@ -57432,7 +58356,7 @@ i32.add local.tee $4 i32.store - i32.const 15472 + i32.const 24672 local.get $3 i32.const -40 i32.add @@ -57451,8 +58375,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15488 - i32.const 15948 + i32.const 24688 + i32.const 25148 i32.load i32.store local.get $6 @@ -57485,23 +58409,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 15908 + i32.const 25108 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 15916 + i32.const 25116 i64.load align=4 i64.store offset=16 align=4 - i32.const 15908 + i32.const 25108 local.get $0 i32.store - i32.const 15912 + i32.const 25112 local.get $3 i32.store - i32.const 15920 + i32.const 25120 i32.const 0 i32.store - i32.const 15916 + i32.const 25116 local.get $2 i32.const 8 i32.add @@ -57560,10 +58484,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $2 - i32.const 15460 + i32.const 24660 i32.load local.tee $1 i32.const 1 @@ -57572,7 +58496,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.const 8 @@ -57590,7 +58514,7 @@ local.set $5 end ;; $if_143 else - i32.const 15460 + i32.const 24660 local.get $0 local.get $1 i32.or @@ -57686,7 +58610,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.set $2 local.get $6 @@ -57698,7 +58622,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15464 + i32.const 24664 i32.load local.tee $1 i32.const 1 @@ -57708,7 +58632,7 @@ i32.and i32.eqz if $if_146 - i32.const 15464 + i32.const 24664 local.get $0 local.get $1 i32.or @@ -57789,7 +58713,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15476 + i32.const 24676 i32.load local.get $3 i32.gt_u @@ -57812,7 +58736,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $10 @@ -57845,7 +58769,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15476 + i32.const 24676 i32.load local.tee $1 i32.eqz @@ -57854,219 +58778,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15476 + i32.const 24676 local.get $0 i32.store end ;; $if_152 - i32.const 15908 + i32.const 25108 local.get $0 i32.store - i32.const 15912 + i32.const 25112 local.get $3 i32.store - i32.const 15920 + i32.const 25120 i32.const 0 i32.store - i32.const 15496 - i32.const 15932 + i32.const 24696 + i32.const 25132 i32.load i32.store - i32.const 15492 + i32.const 24692 i32.const -1 i32.store - i32.const 15512 - i32.const 15500 + i32.const 24712 + i32.const 24700 i32.store - i32.const 15508 - i32.const 15500 + i32.const 24708 + i32.const 24700 i32.store - i32.const 15520 - i32.const 15508 + i32.const 24720 + i32.const 24708 i32.store - i32.const 15516 - i32.const 15508 + i32.const 24716 + i32.const 24708 i32.store - i32.const 15528 - i32.const 15516 + i32.const 24728 + i32.const 24716 i32.store - i32.const 15524 - i32.const 15516 + i32.const 24724 + i32.const 24716 i32.store - i32.const 15536 - i32.const 15524 + i32.const 24736 + i32.const 24724 i32.store - i32.const 15532 - i32.const 15524 + i32.const 24732 + i32.const 24724 i32.store - i32.const 15544 - i32.const 15532 + i32.const 24744 + i32.const 24732 i32.store - i32.const 15540 - i32.const 15532 + i32.const 24740 + i32.const 24732 i32.store - i32.const 15552 - i32.const 15540 + i32.const 24752 + i32.const 24740 i32.store - i32.const 15548 - i32.const 15540 + i32.const 24748 + i32.const 24740 i32.store - i32.const 15560 - i32.const 15548 + i32.const 24760 + i32.const 24748 i32.store - i32.const 15556 - i32.const 15548 + i32.const 24756 + i32.const 24748 i32.store - i32.const 15568 - i32.const 15556 + i32.const 24768 + i32.const 24756 i32.store - i32.const 15564 - i32.const 15556 + i32.const 24764 + i32.const 24756 i32.store - i32.const 15576 - i32.const 15564 + i32.const 24776 + i32.const 24764 i32.store - i32.const 15572 - i32.const 15564 + i32.const 24772 + i32.const 24764 i32.store - i32.const 15584 - i32.const 15572 + i32.const 24784 + i32.const 24772 i32.store - i32.const 15580 - i32.const 15572 + i32.const 24780 + i32.const 24772 i32.store - i32.const 15592 - i32.const 15580 + i32.const 24792 + i32.const 24780 i32.store - i32.const 15588 - i32.const 15580 + i32.const 24788 + i32.const 24780 i32.store - i32.const 15600 - i32.const 15588 + i32.const 24800 + i32.const 24788 i32.store - i32.const 15596 - i32.const 15588 + i32.const 24796 + i32.const 24788 i32.store - i32.const 15608 - i32.const 15596 + i32.const 24808 + i32.const 24796 i32.store - i32.const 15604 - i32.const 15596 + i32.const 24804 + i32.const 24796 i32.store - i32.const 15616 - i32.const 15604 + i32.const 24816 + i32.const 24804 i32.store - i32.const 15612 - i32.const 15604 + i32.const 24812 + i32.const 24804 i32.store - i32.const 15624 - i32.const 15612 + i32.const 24824 + i32.const 24812 i32.store - i32.const 15620 - i32.const 15612 + i32.const 24820 + i32.const 24812 i32.store - i32.const 15632 - i32.const 15620 + i32.const 24832 + i32.const 24820 i32.store - i32.const 15628 - i32.const 15620 + i32.const 24828 + i32.const 24820 i32.store - i32.const 15640 - i32.const 15628 + i32.const 24840 + i32.const 24828 i32.store - i32.const 15636 - i32.const 15628 + i32.const 24836 + i32.const 24828 i32.store - i32.const 15648 - i32.const 15636 + i32.const 24848 + i32.const 24836 i32.store - i32.const 15644 - i32.const 15636 + i32.const 24844 + i32.const 24836 i32.store - i32.const 15656 - i32.const 15644 + i32.const 24856 + i32.const 24844 i32.store - i32.const 15652 - i32.const 15644 + i32.const 24852 + i32.const 24844 i32.store - i32.const 15664 - i32.const 15652 + i32.const 24864 + i32.const 24852 i32.store - i32.const 15660 - i32.const 15652 + i32.const 24860 + i32.const 24852 i32.store - i32.const 15672 - i32.const 15660 + i32.const 24872 + i32.const 24860 i32.store - i32.const 15668 - i32.const 15660 + i32.const 24868 + i32.const 24860 i32.store - i32.const 15680 - i32.const 15668 + i32.const 24880 + i32.const 24868 i32.store - i32.const 15676 - i32.const 15668 + i32.const 24876 + i32.const 24868 i32.store - i32.const 15688 - i32.const 15676 + i32.const 24888 + i32.const 24876 i32.store - i32.const 15684 - i32.const 15676 + i32.const 24884 + i32.const 24876 i32.store - i32.const 15696 - i32.const 15684 + i32.const 24896 + i32.const 24884 i32.store - i32.const 15692 - i32.const 15684 + i32.const 24892 + i32.const 24884 i32.store - i32.const 15704 - i32.const 15692 + i32.const 24904 + i32.const 24892 i32.store - i32.const 15700 - i32.const 15692 + i32.const 24900 + i32.const 24892 i32.store - i32.const 15712 - i32.const 15700 + i32.const 24912 + i32.const 24900 i32.store - i32.const 15708 - i32.const 15700 + i32.const 24908 + i32.const 24900 i32.store - i32.const 15720 - i32.const 15708 + i32.const 24920 + i32.const 24908 i32.store - i32.const 15716 - i32.const 15708 + i32.const 24916 + i32.const 24908 i32.store - i32.const 15728 - i32.const 15716 + i32.const 24928 + i32.const 24916 i32.store - i32.const 15724 - i32.const 15716 + i32.const 24924 + i32.const 24916 i32.store - i32.const 15736 - i32.const 15724 + i32.const 24936 + i32.const 24924 i32.store - i32.const 15732 - i32.const 15724 + i32.const 24932 + i32.const 24924 i32.store - i32.const 15744 - i32.const 15732 + i32.const 24944 + i32.const 24932 i32.store - i32.const 15740 - i32.const 15732 + i32.const 24940 + i32.const 24932 i32.store - i32.const 15752 - i32.const 15740 + i32.const 24952 + i32.const 24940 i32.store - i32.const 15748 - i32.const 15740 + i32.const 24948 + i32.const 24940 i32.store - i32.const 15760 - i32.const 15748 + i32.const 24960 + i32.const 24948 i32.store - i32.const 15756 - i32.const 15748 + i32.const 24956 + i32.const 24948 i32.store - i32.const 15484 + i32.const 24684 i32.const 0 local.get $0 i32.const 8 @@ -58085,7 +59009,7 @@ i32.add local.tee $4 i32.store - i32.const 15472 + i32.const 24672 local.get $3 i32.const -40 i32.add @@ -58104,18 +59028,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15488 - i32.const 15948 + i32.const 24688 + i32.const 25148 i32.load i32.store end ;; $if_99 - i32.const 15472 + i32.const 24672 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15472 + i32.const 24672 local.get $0 local.get $11 i32.sub @@ -58124,13 +59048,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15444 + i32.const 24644 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15484 - i32.const 15484 + i32.const 24684 + i32.const 24684 i32.load local.tee $0 local.get $11 @@ -58149,14 +59073,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $31 + global.set $33 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $31 + global.set $33 i32.const 0 ) @@ -58188,7 +59112,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15476 + i32.const 24676 i32.load local.tee $11 i32.lt_u @@ -58247,7 +59171,7 @@ local.get $10 i32.add local.set $5 - i32.const 15480 + i32.const 24680 i32.load local.get $0 i32.eq @@ -58267,7 +59191,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15468 + i32.const 24668 local.get $5 i32.store local.get $7 @@ -58304,7 +59228,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.tee $4 i32.ne @@ -58327,8 +59251,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15460 - i32.const 15460 + i32.const 24660 + i32.const 24660 i32.load i32.const 1 local.get $2 @@ -58494,7 +59418,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.tee $6 i32.load @@ -58507,8 +59431,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15464 - i32.const 15464 + i32.const 24664 + i32.const 24664 i32.load i32.const 1 local.get $2 @@ -58525,7 +59449,7 @@ br $block end ;; $if_24 else - i32.const 15476 + i32.const 24676 i32.load local.get $13 i32.gt_u @@ -58558,7 +59482,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15476 + i32.const 24676 i32.load local.tee $6 local.get $8 @@ -58591,7 +59515,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.gt_u @@ -58661,19 +59585,19 @@ local.get $1 i32.store else - i32.const 15484 + i32.const 24684 i32.load local.get $7 i32.eq if $if_35 - i32.const 15472 - i32.const 15472 + i32.const 24672 + i32.const 24672 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15484 + i32.const 24684 local.get $3 i32.store local.get $3 @@ -58682,33 +59606,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15480 + i32.const 24680 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15480 + i32.const 24680 i32.const 0 i32.store - i32.const 15468 + i32.const 24668 i32.const 0 i32.store return end ;; $if_35 - i32.const 15480 + i32.const 24680 i32.load local.get $7 i32.eq if $if_37 - i32.const 15468 - i32.const 15468 + i32.const 24668 + i32.const 24668 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15480 + i32.const 24680 local.get $4 i32.store local.get $3 @@ -58747,12 +59671,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.gt_u @@ -58771,8 +59695,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15460 - i32.const 15460 + i32.const 24660 + i32.const 24660 i32.load i32.const 1 local.get $6 @@ -58792,7 +59716,7 @@ i32.add local.set $16 else - i32.const 15476 + i32.const 24676 i32.load local.get $1 i32.gt_u @@ -58875,7 +59799,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15476 + i32.const 24676 i32.load local.get $1 i32.gt_u @@ -58890,7 +59814,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15476 + i32.const 24676 i32.load local.get $7 i32.load offset=8 @@ -58930,7 +59854,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.tee $1 i32.load @@ -58943,8 +59867,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15464 - i32.const 15464 + i32.const 24664 + i32.const 24664 i32.load i32.const 1 local.get $0 @@ -58956,7 +59880,7 @@ br $block_2 end ;; $if_55 else - i32.const 15476 + i32.const 24676 i32.load local.get $8 i32.gt_u @@ -58982,7 +59906,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15476 + i32.const 24676 i32.load local.tee $1 local.get $9 @@ -59015,7 +59939,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15476 + i32.const 24676 i32.load local.get $0 i32.gt_u @@ -59043,12 +59967,12 @@ i32.add local.get $5 i32.store - i32.const 15480 + i32.const 24680 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15468 + i32.const 24668 local.get $5 i32.store return @@ -59068,10 +59992,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15500 + i32.const 24700 i32.add local.set $0 - i32.const 15460 + i32.const 24660 i32.load local.tee $1 i32.const 1 @@ -59080,7 +60004,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15476 + i32.const 24676 i32.load local.get $0 i32.const 8 @@ -59098,7 +60022,7 @@ local.set $15 end ;; $if_65 else - i32.const 15460 + i32.const 24660 local.get $1 local.get $4 i32.or @@ -59195,7 +60119,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15764 + i32.const 24964 i32.add local.set $0 local.get $3 @@ -59207,7 +60131,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15464 + i32.const 24664 i32.load local.tee $5 i32.const 1 @@ -59279,7 +60203,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15476 + i32.const 24676 i32.load local.get $2 i32.gt_u @@ -59302,7 +60226,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15476 + i32.const 24676 i32.load local.tee $0 local.get $14 @@ -59334,7 +60258,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15464 + i32.const 24664 local.get $2 local.get $5 i32.or @@ -59352,8 +60276,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15492 - i32.const 15492 + i32.const 24692 + i32.const 24692 i32.load i32.const -1 i32.add @@ -59363,7 +60287,7 @@ if $if_74 return end ;; $if_74 - i32.const 15916 + i32.const 25116 local.set $0 loop $loop_2 local.get $0 @@ -59375,30 +60299,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15492 + i32.const 24692 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $2) + (func $_realloc (type $3) (param $0 i32) + (param $1 i32) (result i32) - i32.const 13295 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24644 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $2) + (func $_try_realloc_chunk (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -59408,167 +60398,1936 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $31 - local.set $3 - global.get $31 - i32.const 16 - i32.add - global.set $31 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24676 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25140 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24684 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24672 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24684 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24672 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24680 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24668 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24668 + local.get $3 + i32.store + i32.const 24680 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24700 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24660 + i32.const 24660 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24964 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24664 + i32.const 24664 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24676 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24676 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24676 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24676 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24680 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24668 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24700 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24660 + i32.const 24660 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 24964 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24664 + i32.const 24664 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24676 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24676 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24676 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24676 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24684 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24672 + i32.const 24672 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24684 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24680 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24680 + i32.const 0 + i32.store + i32.const 24668 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24680 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24668 + i32.const 24668 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24680 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24700 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24660 + i32.const 24660 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 24964 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24664 + i32.const 24664 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24676 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24676 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24676 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24680 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24668 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24700 + i32.add + local.set $0 + i32.const 24660 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24676 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24660 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 24964 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24664 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24664 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24676 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24676 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (param $0 i32) + (result i32) + i32.const 16820 + ) + + (func $__ZNSt3__212__next_primeEm (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq if $if_6 (result i32) i32.const 9 local.set $1 @@ -60840,1486 +63599,27027 @@ i32.lt_u if $if_119 i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 - local.get $4 - i32.const 178 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_119 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_120 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_120 + local.get $4 + i32.const 178 + i32.add + local.tee $2 + local.tee $1 + if $if_121 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_121 + local.tee $1 + local.get $2 + i32.lt_u + if $if_122 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_122 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_123 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_123 + local.get $4 + i32.const 180 + i32.add + local.tee $2 + local.tee $1 + if $if_124 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_124 + local.tee $1 + local.get $2 + i32.lt_u + if $if_125 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_125 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_126 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_126 + local.get $4 + i32.const 186 + i32.add + local.tee $2 + local.tee $1 + if $if_127 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_127 + local.tee $1 + local.get $2 + i32.lt_u + if $if_128 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_128 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_129 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_129 + local.get $4 + i32.const 190 + i32.add + local.tee $2 + local.tee $1 + if $if_130 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_130 + local.tee $1 + local.get $2 + i32.lt_u + if $if_131 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_131 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_132 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_132 + local.get $4 + i32.const 192 + i32.add + local.tee $2 + local.tee $1 + if $if_133 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_133 + local.tee $1 + local.get $2 + i32.lt_u + if $if_134 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_134 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_135 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_135 + local.get $4 + i32.const 196 + i32.add + local.tee $2 + local.tee $1 + if $if_136 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_136 + local.tee $1 + local.get $2 + i32.lt_u + if $if_137 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_137 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_138 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_138 + local.get $4 + i32.const 198 + i32.add + local.tee $2 + local.tee $1 + if $if_139 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_139 + local.tee $1 + local.get $2 + i32.lt_u + if $if_140 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_140 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_141 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_141 + local.get $4 + i32.const 208 + i32.add + local.tee $2 + local.tee $1 + if $if_142 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_142 + local.tee $1 + local.get $2 + i32.lt_u + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $33 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24488 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25184 + i32.const 25156 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24488 + i32.load + i32.eqz + if $if_0 + i32.const 24488 + i32.const 1 + i32.store + local.get $0 + i32.const 276 + call_indirect $29 (type $0) + i32.const 24488 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $1) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 14869 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 14869 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10836 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $33 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $8 + global.get $33 + i32.const 16 + i32.add + global.set $33 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $33 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 10950 + local.set $6 + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $2 + i32.const 255 + i32.and + end ;; $if + local.tee $2 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $3 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $3 + local.get $1 + local.get $2 + i32.add + local.get $3 + i32.sub + local.get $2 + i32.const 0 + i32.const 0 + local.get $1 + i32.const 10950 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $1 + if $if_3 + local.get $4 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $4 + local.set $3 + local.get $2 + if $if_5 + local.get $1 + i32.const 10950 + i32.add + i32.const 10950 + local.get $3 + i32.const 10950 + i32.le_u + local.get $2 + local.get $4 + i32.add + i32.const 10950 + i32.gt_u + i32.and + select + local.set $6 + local.get $1 + local.get $3 + i32.add + local.get $3 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $3 + local.get $6 + local.get $1 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14038 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $33 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14038 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 1072 + i32.add + global.set $33 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25232 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17025 + i32.store + i32.const 16975 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5248 + local.get $0 + local.get $5 + i32.const 5248 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $29 (type $2) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $29 (type $1) + local.set $0 + local.get $4 + i32.const 17025 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 16889 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17025 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 16934 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17013 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 4496 + i32.add + global.set $33 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $33 + local.get $0 + ) + + (func $_abort_message (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $1 + i32.store + i32.const 7488 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5272 + i32.const 5256 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $29 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $29 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $29 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $29 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $29 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17204 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17207 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17212 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17226 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25232 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $29 (type $8) + i32.const 17164 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22559 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17260 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17265 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17270 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17275 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17287 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17301 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17307 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17322 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17326 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17339 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17344 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17358 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 - local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 + i32.store + local.get $0 + i32.const 17368 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17377 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17395 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17401 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17413 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17424 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17428 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17438 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17449 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17459 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17469 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17478 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17487 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17492 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17507 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 80 + i32.add + global.set $33 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22260 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22263 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22272 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22275 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22278 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22281 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22284 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22075 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22039 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 21914 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 20970 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 20973 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 20980 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 20983 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 20989 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 20992 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $33 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17487 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $33 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7844 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $4 + i32.const 17522 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17528 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17705 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17717 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17730 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17743 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17647 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17663 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17813 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17881 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 17898 + i32.const 17896 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8064 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 17965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 17963 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 17951 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $33 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8152 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18078 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8196 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 352 + i32.add + global.set $33 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 - i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 17898 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 17896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 - local.get $1 + i32.store + local.get $8 + i32.const 17896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 - i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18610 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18613 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18615 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18615 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_139 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 + i32.add local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop + i32.const 0 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18625 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 17963 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18629 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18639 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18654 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18658 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 17963 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18664 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18667 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18670 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18675 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18677 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18680 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18689 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18689 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18692 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18697 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18700 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18703 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18707 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18707 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18716 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18716 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18725 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 160 + i32.add + global.set $33 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18180 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17270 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17275 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17287 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17301 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17307 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25254 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18196 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18198 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18200 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18203 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18206 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17368 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17377 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17204 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8284 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18262 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8328 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18323 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8372 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18382 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8416 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18442 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18447 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8460 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8504 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 20853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 20856 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 288 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20706 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 17898 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20709 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 17896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20712 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18610 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20715 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18613 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20718 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18625 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20721 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20724 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20727 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18634 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20730 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20733 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18639 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20736 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20739 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20742 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20745 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18648 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20748 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18651 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20751 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18654 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20754 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20757 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20760 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18658 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 17963 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20766 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20769 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18667 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20772 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20775 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18675 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18677 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 20781 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 20784 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 20787 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18695 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 20790 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18697 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 20793 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18700 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 20796 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18703 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19633 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19637 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19221 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19224 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19227 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8548 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18731 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8592 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8636 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 18882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8680 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8724 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 18944 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17424 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18078 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19070 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8812 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $5 + i32.const 19082 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $6 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19129 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19146 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19152 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19210 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $25) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8900 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19230 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19242 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19246 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19449 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8988 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19340 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19346 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19346 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19460 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9076 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9120 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19526 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17528 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19584 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9164 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19699 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19702 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19705 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19716 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19726 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19737 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19747 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19758 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19768 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19778 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19796 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19806 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19816 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19827 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19837 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19848 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19859 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19870 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19880 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19891 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19902 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19913 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19925 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19935 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19945 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19796 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19956 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19967 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19978 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19993 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19935 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20004 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20014 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20027 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20038 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20048 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20059 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20071 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20081 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20092 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20071 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20103 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20124 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20134 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20145 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20156 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20168 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9252 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20180 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20244 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9296 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20260 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9340 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9384 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19640 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20436 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20443 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9472 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9516 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20595 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9560 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9604 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20653 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20656 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $5 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9648 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 20799 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 20804 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9692 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9736 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $29 (type $3) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9780 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21060 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21378 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21318 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21056 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21060 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $4 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21122 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 local.get $1 - br_if $block_0 - end ;; $block_2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9824 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21063 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21183 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21186 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21189 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9868 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9912 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21200 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9956 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21255 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21264 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10000 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub i32.const 1 - i32.add - local.tee $3 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 - local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 local.get $3 - local.set $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10044 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10088 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17672 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17687 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21474 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21545 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21595 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21645 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17627 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21431 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21459 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10132 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10176 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21807 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10220 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 48 + i32.add + global.set $33 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 21867 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17528 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $3 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10264 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21917 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $31 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17528 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10308 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 local.get $2 - i32.load + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 21973 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + i32.load offset=12 + local.set $5 + local.get $4 local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17528 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $3) (param $0 i32) - loop $loop - i32.const 15288 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 15984 - i32.const 15956 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 15288 - i32.load - i32.eqz - if $if_0 - i32.const 15288 - i32.const 1 - i32.store - local.get $0 - i32.const 167 - call_indirect $27 (type $0) - i32.const 15288 - i32.const -1 - i32.store - end ;; $if_0 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $33 + local.get $0 ) - (func $__Znwm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $1) (param $0 i32) (result i32) (local $1 i32) + (local $2 i32) + global.get $33 + local.set $1 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 local.get $0 - i32.const 1 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22049 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 local.get $0 - select + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 16040 - i32.const 16040 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $27 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22056 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $33 + local.get $0 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $1) (param $0 i32) + (result i32) (local $1 i32) (local $2 i32) - i32.const 11342 - call $_strlen - local.tee $2 - i32.const 13 + global.get $33 + local.set $1 + global.get $33 + i32.const 16 i32.add - call $__Znwm - local.tee $1 + global.set $33 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18180 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.store local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.store offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE local.get $1 - i32.const 0 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10352 + i32.store + local.get $0 + local.get $2 i32.store offset=8 + local.get $0 local.get $1 - i32.const 12 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 + i32.load + i32.load offset=16 + local.set $3 + local.get $2 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 i32.add - local.tee $1 - i32.const 11342 + call_indirect $29 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and + if $if + local.get $4 + i32.const 22085 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22092 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 + local.get $2 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10396 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 i32.add - call $_memcpy - drop + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.store + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.const 6848 - i32.store + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) (param $0 i32) (param $1 i32) + (param $2 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7888 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10440 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add local.set $3 - global.get $31 + local.get $2 i32.const 16 i32.add - global.set $31 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + local.set $4 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 local.get $2 - i32.add + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - i32.load8_s - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17969 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $31 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $33 + local.set $6 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - global.get $31 - local.set $4 - global.get $31 - i32.const 16 - i32.add - global.set $31 + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 local.get $0 - i32.load8_s offset=11 - local.tee $6 i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if - local.tee $5 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10484 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $5 - local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 - local.get $0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 local.get $4 - global.set $31 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $2 + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $18) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i32) - global.get $31 - local.set $8 - global.get $31 + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $31 - i32.const -18 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.sub local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 12 + i32.add local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22085 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 1 - i32.shl - local.tee $10 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if + local.get $4 + i32.const 2 + i32.and + if $if_0 + local.get $7 + i32.const 22092 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - i32.add - local.tee $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22287 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22290 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 - local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 17 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10528 + i32.store local.get $0 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $31 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22343 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 + i32.const 8 + i32.add local.get $1 - local.get $5 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7888 + i32.store + local.get $0 i32.const 16 - i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10572 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $2 - select - local.tee $7 - local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 i32.const 16 i32.add - global.set $31 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s + local.set $3 + local.get $2 + i32.const 8 + i32.add local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 22407 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - global.set $31 + global.set $33 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $31 - local.set $5 - global.get $31 + global.get $33 + local.set $3 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $31 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10616 + i32.store + local.get $0 local.get $1 - i32.sub + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 local.get $3 - local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10660 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $31 - local.set $5 - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $31 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20656 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $33 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22688 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) local.get $0 - local.get $1 - i32.store offset=4 - else + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $31 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $33 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $4) (param $0 i32) (param $1 i32) local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 + local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -62328,1312 +90628,1262 @@ (local $4 i32) (local $5 i32) (local $6 i32) - i32.const 6962 - local.set $6 - global.get $31 - local.set $5 - global.get $31 - i32.const 16 - i32.add - global.set $31 local.get $0 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $2 - i32.const 255 - i32.and - end ;; $if - local.tee $2 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $4 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 + i32.const 332 + i32.add local.tee $3 + local.tee $2 + i32.load offset=4 local.get $2 + i32.load i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - local.get $1 - local.get $2 - i32.add - local.get $3 - i32.sub - local.get $2 - i32.const 0 - i32.const 0 - local.get $1 - i32.const 6962 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $1 - if $if_3 - local.get $4 - if $if_4 (result i32) + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 + local.get $4 + i32.ge_u + br_if $block_0 + local.get $3 i32.load - else local.get $0 - end ;; $if_4 - local.tee $4 - local.set $3 - local.get $2 - if $if_5 - local.get $1 - i32.const 6962 + i32.const 2 + i32.shl i32.add - i32.const 6962 - local.get $3 - i32.const 6962 - i32.le_u + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - i32.const 6962 - i32.gt_u - i32.and - select - local.set $6 - local.get $1 - local.get $3 - i32.add - local.get $3 + i32.load offset=4 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $3 - local.get $6 - local.get $1 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $1 - local.get $2 - i32.add - local.set $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $5 - global.set $31 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $26) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $26) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $31 - local.set $3 - global.get $31 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $33 + local.set $7 + global.get $33 i32.const 16 i32.add - global.set $31 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $33 + local.get $7 + i32.const 8 + i32.add + local.set $8 + local.get $0 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + i32.load + local.set $2 + local.get $7 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 - i32.const 10511 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $8 local.get $3 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $27) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 18 + i32.store8 offset=4 + local.get $0 i32.const 0 - i32.store8 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 0 + i32.store8 offset=7 + local.get $0 + i32.const 10704 + i32.store local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 local.get $3 - global.set $31 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $4 + i32.store offset=24 + local.get $0 + local.get $5 + i32.store offset=28 + local.get $0 + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $1) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store + i32.const 17892 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop - local.get $0 - i32.const 10511 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 - i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $31 - local.set $1 - global.get $31 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $33 + local.set $3 + global.get $33 + i32.const -64 + i32.sub + global.set $33 + local.get $3 + i32.const 56 i32.add - global.set $31 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 17894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 17890 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13500 - i32.store - i32.const 13450 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5296 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5296 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $27 (type $3) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $27 (type $2) - local.set $0 - local.get $1 - i32.const 13500 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13364 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13500 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13409 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $29 (type $4) end ;; $if - i32.const 13488 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $1 - global.get $31 - i32.const 16 - i32.add - global.set $31 - block $block (result i32) - i32.const 0 - i32.const 16032 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $27 (type $8) - i32.const 16032 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13639 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22085 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 16036 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22092 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22287 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22290 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $31 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $33 ) - (func $_abort_message (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $31 + global.get $33 local.set $2 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7888 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10748 i32.store - i32.const 6484 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $31 - i32.const -64 - i32.sub - global.set $31 - local.get $0 + local.get $2 + i32.const 22626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5320 - i32.const 5304 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $27 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $31 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $33 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $1) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 + i32.const 22767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $31 + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $31 - i32.const -64 - i32.sub - global.set $31 local.get $0 - local.get $0 - i32.load - local.tee $4 - i32.const -8 - i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22789 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $33 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22807 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $27 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $31 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7888 + i32.store local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10792 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 32 + i32.add + global.set $33 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 22848 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22873 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $33 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22936 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $27 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $27 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22963 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $27 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $31 - local.set $0 - global.get $31 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 16036 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13688 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $31 - end ;; $if + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22982 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) - global.get $31 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 + i32.const 16 + i32.add + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22996 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $31 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $33 + local.set $2 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 16036 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13738 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $31 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23005 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $33 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6848 + i32.const 10836 i32.store local.get $0 i32.const 4 @@ -63665,9 +91915,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -63675,14 +91923,15 @@ end ;; $if ) - (func $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $3) + (func $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -63696,10 +91945,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -63709,20 +91961,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -63739,72 +91991,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -63818,10 +92140,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -63843,7 +92166,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -63983,145 +92308,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -64133,10 +92463,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -64201,20 +92532,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -64234,11 +92569,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -64290,9 +92625,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $27 (type $13) + call_indirect $29 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -64342,24 +92677,24 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) ) - (func $___cxa_can_catch (type $3) + (func $___cxa_can_catch (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $31 + global.get $33 local.set $3 - global.get $31 + global.get $33 i32.const 16 i32.add - global.set $31 + global.set $33 local.get $3 local.get $2 i32.load @@ -64374,9 +92709,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) local.tee $0 if $if local.get $2 @@ -64385,20 +92720,20 @@ i32.store end ;; $if local.get $3 - global.set $31 + global.set $33 local.get $0 i32.const 1 i32.and ) - (func $___cxa_is_pointer_type (type $2) + (func $___cxa_is_pointer_type (type $1) (param $0 i32) (result i32) local.get $0 if $if (result i32) local.get $0 - i32.const 5320 - i32.const 5408 + i32.const 5272 + i32.const 6440 call $___dynamic_cast i32.const 0 i32.ne @@ -64407,7 +92742,7 @@ end ;; $if ) - (func $_memcpy (type $3) + (func $_memcpy (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64639,7 +92974,7 @@ local.get $4 ) - (func $_memmove (type $3) + (func $_memmove (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64698,7 +93033,7 @@ local.get $0 ) - (func $_memset (type $3) + (func $_memset (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64851,7 +93186,7 @@ i32.sub ) - (func $_sbrk (type $2) + (func $_sbrk (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -64860,7 +93195,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $30 + global.get $32 i32.load local.tee $2 i32.add @@ -64898,13 +93233,13 @@ return end ;; $if_1 end ;; $if_0 - global.get $30 + global.get $32 local.get $1 i32.store local.get $2 ) - (func $dynCall_ii (type $4) + (func $dynCall_ii (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -64912,10 +93247,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $27 (type $2) + call_indirect $29 (type $1) ) - (func $dynCall_iidiiii (type $25) + (func $dynCall_iidiiii (type $28) (param $0 i32) (param $1 i32) (param $2 f64) @@ -64935,10 +93270,10 @@ i32.and i32.const -64 i32.sub - call_indirect $27 (type $11) + call_indirect $29 (type $11) ) - (func $dynCall_iii (type $3) + (func $dynCall_iii (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64946,14 +93281,14 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $27 (type $4) + call_indirect $29 (type $3) ) - (func $dynCall_iiii (type $16) + (func $dynCall_iiii (type $17) (param $0 i32) (param $1 i32) (param $2 i32) @@ -64965,21 +93300,21 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $27 (type $3) + call_indirect $29 (type $2) ) - (func $dynCall_vi (type $1) + (func $dynCall_vi (type $4) (param $0 i32) (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $27 (type $0) + call_indirect $29 (type $0) ) (func $dynCall_vii (type $6) @@ -64989,11 +93324,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $27 (type $1) + call_indirect $29 (type $4) ) (func $dynCall_viii (type $5) @@ -65007,9 +93342,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $27 (type $6) + call_indirect $29 (type $6) ) (func $dynCall_viiii (type $7) @@ -65023,11 +93358,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $27 (type $5) + call_indirect $29 (type $5) ) (func $dynCall_viiiii (type $13) @@ -65045,12 +93380,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $27 (type $7) + call_indirect $29 (type $7) ) - (func $dynCall_viiiiii (type $26) + (func $dynCall_viiiiii (type $27) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65067,12 +93402,12 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $27 (type $13) + call_indirect $29 (type $13) ) - (func $b0 (type $2) + (func $b0 (type $1) (param $0 i32) (result i32) i32.const 0 @@ -65093,7 +93428,7 @@ i32.const 0 ) - (func $b2 (type $4) + (func $b2 (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -65102,7 +93437,7 @@ i32.const 0 ) - (func $b3 (type $3) + (func $b3 (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65141,7 +93476,7 @@ call $abort ) - (func $b8 (type $1) + (func $b8 (type $4) (param $0 i32) (param $1 i32) i32.const 8 @@ -65194,7 +93529,7 @@ call $abort ) - (func $legalstub$dynCall_ji (type $4) + (func $legalstub$dynCall_ji (type $3) (param $0 i32) (param $1 i32) (result i32) @@ -65203,9 +93538,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $27 (type $10) + call_indirect $29 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -65215,7 +93550,7 @@ i32.wrap_i64 ) - (func $legalstub$dynCall_jiji (type $17) + (func $legalstub$dynCall_jiji (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -65235,9 +93570,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $27 (type $12) + call_indirect $29 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -65262,9 +93597,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $27 (type $9) + i32.const 446 + call_indirect $29 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\90\87\c1\02\f0\86\01\80\87\01" + ;; "\00\02\00\04\00\80\02\bf\03\80\08\80\cf\c1\02\e0\ce\01\f0\ce\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/metadata_cpp.cc b/test/extensions/filters/http/wasm/test_data/metadata_cpp.cc index 70974b22d1edc..259ce1aef34f5 100644 --- a/test/extensions/filters/http/wasm/test_data/metadata_cpp.cc +++ b/test/extensions/filters/http/wasm/test_data/metadata_cpp.cc @@ -22,19 +22,21 @@ static RegisterContextFactory register_ExampleContext(CONTEXT_FACTORY(ExampleCon void ExampleRootContext::onTick() { google::protobuf::Value value; - if (MetadataResult::Ok != nodeMetadataValue("wasm_node_get_key", &value)) { - logDebug("onTick metadata error"); + if (auto r = nodeMetadataValue("wasm_node_get_key", &value); r != WasmResult::Ok) { + logDebug(toString(r)); } logDebug(std::string("onTick ") + value.string_value()); } FilterHeadersStatus ExampleContext::onRequestHeaders() { google::protobuf::Value value; - if (MetadataResult::Ok != nodeMetadataValue("wasm_node_get_key", &value)) { - logDebug("onRequestHeaders metadata error"); + auto r = nodeMetadataValue("wasm_node_get_key", &value); + if (r != WasmResult::Ok) { + logDebug(toString(r)); } - if (MetadataResult::Ok != setMetadataStringValue(MetadataType::Request, "wasm_request_set_key", "wasm_request_set_value")) { - logDebug("onRequestHeaders metadata error"); + r = setMetadataStringValue(MetadataType::Request, "wasm_request_set_key", "wasm_request_set_value"); + if (r != WasmResult::Ok) { + logDebug(toString(r)); } auto path = getRequestHeader(":path"); logInfo(std::string("header path ") + path->toString()); @@ -45,20 +47,23 @@ FilterHeadersStatus ExampleContext::onRequestHeaders() { FilterDataStatus ExampleContext::onRequestBody(size_t body_buffer_length, bool end_of_stream) { google::protobuf::Value value; - if (MetadataResult::Ok != nodeMetadataValue("wasm_node_get_key", &value)) { - logDebug("onRequestHeaders metadata error"); + auto r = nodeMetadataValue("wasm_node_get_key", &value); + if (r != WasmResult::Ok) { + logDebug(toString(r)); } logError(std::string("onRequestBody ") + value.string_value()); google::protobuf::Struct request_struct; - google::protobuf::Struct response_struct; - if (MetadataResult::Ok != requestMetadataStruct(&request_struct)) { - logDebug("onRequestHeaders metadata error"); + google::protobuf::Struct request_struct2; + r = requestMetadataStruct(&request_struct); + if (r != WasmResult::Ok) { + logDebug(toString(r)); } - if (MetadataResult::Ok != requestMetadataStruct(&response_struct)) { - logDebug("onRequestHeaders metadata error"); + r = requestMetadataStruct(&request_struct2); + if (r != WasmResult::Ok) { + logDebug(toString(r)); } logTrace(std::string("Struct ") + request_struct.fields().at("wasm_request_get_key").string_value() + " " + - response_struct.fields().at("wasm_request_get_key").string_value()); + request_struct2.fields().at("wasm_request_get_key").string_value()); return FilterDataStatus::Continue; } diff --git a/test/extensions/filters/http/wasm/test_data/metadata_cpp.wasm b/test/extensions/filters/http/wasm/test_data/metadata_cpp.wasm index 6d237974431a8..7d0ade88d9338 100644 Binary files a/test/extensions/filters/http/wasm/test_data/metadata_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/metadata_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/metadata_cpp.wat b/test/extensions/filters/http/wasm/test_data/metadata_cpp.wat index 9985bb3103002..f54f2bbe3f068 100644 --- a/test/extensions/filters/http/wasm/test_data/metadata_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/metadata_cpp.wat @@ -20,16 +20,19 @@ (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,22 +44,23 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_addHeaderMapValue" (func $_proxy_addHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getHeaderMapValue" (func $_proxy_getHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_getMetadata" (func $_proxy_getMetadata (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_getMetadataPairs" (func $_proxy_getMetadataPairs (param i32 i32 i32) (result i32))) (import "env" "_proxy_getMetadataStruct" (func $_proxy_getMetadataStruct (param i32 i32 i32 i32 i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_replaceHeaderMapValue" (func $_proxy_replaceHeaderMapValue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_proxy_setMetadata" (func $_proxy_setMetadata (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 447 447 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -109,46 +113,73 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 18160)) - (global $31 (mut i32) (i32.const 5261040)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 27360)) + (global $33 (mut i32) (i32.const 5270240)) + (elem $34 $28 (global.get $30) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv - $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv - $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv - $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv - $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv + $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN14ExampleContext13onRequestBodyEmb $__ZN7Context14onResponseBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN7Context14onResponseBodyEmb - $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv + $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContext6onDoneEv $__ZN14ExampleContext5onLogEv $__ZN7Context8onCreateEv $__ZN11RootContextD2Ev - $__ZN18ExampleRootContextD0Ev $__ZN18ExampleRootContext6onTickEv $__ZN14ExampleContextD0Ev $__ZN18ExampleRootContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv + $__ZN18ExampleRootContextD0Ev $__ZN18ExampleRootContext6onTickEv $__ZN14ExampleContextD0Ev $__ZN18ExampleRootContextD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv - $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 - $b8 $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE - $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi - $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev + $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv + $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv $b7 $b7 $b7 $b7 $b7 + $b8 $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv + $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE + $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b10 $b10 $b10 $b10 $b10 + $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "q-\00\00v-\00\00~-\00\00\84-") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "@;\00\00E;\00\00M;\00\00S;") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -178,249 +209,396 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\c8\1a\00\00\8d\1c\00\00\f0\1a\00\00\84\1c\00\00p\11\00\00\00\00\00\00\f0" - "\1a\00\00s\1c\00\00x\11\00\00\00\00\00\00\f0\1a\00\00\b0\1c\00\00p\11\00\00\00\00\00\00\f0\1a\00\00\9b\1c\00\00\98\11\00\00\00\00\00\00\c8\1a\00\00T\1d\00\00\\\1b\00\00\15\1d\00\00\00" - "\00\00\00\01\00\00\00\b8\11\00\00\00\00\00\00\c8\1a\00\00\f3\1d\00\00\f0\1a\00\00z\1d\00\00\d8\11\00\00\00\00\00\00\c8\1a\00\00U\1e\00\00\c8\1a\00\00\f8\1e\00\00\f0\1a\00\00Z\1e\00\00\f8" - "\11\00\00\00\00\00\00\c8\1a\00\00\7f\1f\00\00\c8\1a\00\00\b0\1f\00\00\f0\1a\00\00\18*\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\fa(\00\00@\12\00\00\00\00\00\00\f0\1a\00\00\b7\"\00\00P" - "\12\00\00\00\00\00\00\f0\1a\00\00\e7\"\00\00`\12\00\00\00\00\00\00\f0\1a\00\00\ad#\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\c7(\00\00\d0\12\00\00\00\00\00\00\\\1b\00\00\85'\00\00\00" - "\00\00\00\01\00\00\00\98\12\00\00\00\00\00\00\c8\1a\00\00\f2'\00\00\f0\1a\00\00\e1(\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00l*\00\00\c0\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4816) - "\c8\1a\00\00q/\00\00\f0\1a\00\00_5\00\00\f8\12\00\00\00\00\00\00\f0\1a\00\00\1b6\00\00\f8\12\00\00\00\00\00\00\c8\1a\00\00\e76\00\00\05") - (data $52 $27 (i32.const 4876) - "1") - (data $53 $27 (i32.const 4900) - "\09\00\00\00\01\00\00\00\1bB") - (data $54 $27 (i32.const 4924) - "\02") - (data $55 $27 (i32.const 4939) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 5008) - "\05") - (data $57 $27 (i32.const 5020) - "1") - (data $58 $27 (i32.const 5044) - "\n\00\00\00\01\00\00\00(:\00\00\00\04") - (data $59 $27 (i32.const 5068) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\ac\1e\00\00\e9+\00\00\d4\1e\00\00\e0+\00\00p\11\00\00\00\00\00\00\d4" + "\1e\00\00\cf+\00\00x\11\00\00\00\00\00\00\d4\1e\00\00\0c,\00\00p\11\00\00\00\00\00\00\d4\1e\00\00\f7+\00\00\98\11\00\00\00\00\00\00\ac\1e\00\00!-\00\00\f0*\00\00\e2,\00\00\00" + "\00\00\00\01\00\00\00\b8\11\00\00\00\00\00\00\ac\1e\00\00G-\00\00\ac\1e\00\00L-\00\00\ac\1e\00\00}-\00\00\d4\1e\00\00\e77\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\c96\00\00\10" + "\12\00\00\00\00\00\00\d4\1e\00\00\860\00\00 \12\00\00\00\00\00\00\d4\1e\00\00\b60\00\000\12\00\00\00\00\00\00\d4\1e\00\00|1\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\966\00\00\a0" + "\12\00\00\00\00\00\00\f0*\00\00T5\00\00\00\00\00\00\01\00\00\00h\12\00\00\00\00\00\00\ac\1e\00\00\c15\00\00\d4\1e\00\00\b06\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00;8\00\00\90" + "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4768) + "\ac\1e\00\00@=\00\00\d4\1e\00\00.C\00\00\c8\12\00\00\00\00\00\00\d4\1e\00\00\eaC\00\00\c8\12\00\00\00\00\00\00\ac\1e\00\00\b6D\00\00\05") + (data $54 $29 (i32.const 4828) + "-") + (data $55 $29 (i32.const 4852) + "\09\00\00\00\01\00\00\00\18^\00\00\00\04") + (data $56 $29 (i32.const 4876) "\01") - (data $60 $27 (i32.const 5083) + (data $57 $29 (i32.const 4891) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5188) + (data $58 $29 (i32.const 4960) + "\05") + (data $59 $29 (i32.const 4972) + "-") + (data $60 $29 (i32.const 4996) + "\n\00\00\00\01\00\00\00\06f") + (data $61 $29 (i32.const 5020) + "\02") + (data $62 $29 (i32.const 5035) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5140) "\0b") - (data $62 $27 (i32.const 5227) + (data $64 $29 (i32.const 5179) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5296) - "\f0\1a\00\00`7\00\00\c0\14\00\00\00\00\00\00\c8\1a\00\00\"8\00\00\f0\1a\00\00\828\00\00\d8\14\00\00\00\00\00\00\f0\1a\00\00/8\00\00\e8\14\00\00\00\00\00\00\c8\1a\00\00P8\00\00" - "\f0\1a\00\00]8\00\00\c8\14\00\00\00\00\00\00\f0\1a\00\00d9\00\00\c0\14\00\00\00\00\00\00\f0\1a\00\00t9\00\00\00\15\00\00\00\00\00\00\f0\1a\00\00\a99\00\00\d8\14\00\00\00\00\00\00" - "\f0\1a\00\00\859\00\00 \15\00\00\00\00\00\00\f0\1a\00\00\cb9\00\00\d8\14\00\00\00\00\00\00@\1b\00\00\f39\00\00@\1b\00\00\f59\00\00\f0\1a\00\00\f79\00\00\c8\14") - (data $64 $27 (i32.const 5492) + (data $65 $29 (i32.const 5248) + "\d4\1e\00\00-E\00\00\90\14\00\00\00\00\00\00\ac\1e\00\00\efE\00\00\d4\1e\00\00OF\00\00\a8\14\00\00\00\00\00\00\d4\1e\00\00\fcE\00\00\b8\14\00\00\00\00\00\00\ac\1e\00\00\1dF\00\00" + "\d4\1e\00\00*F\00\00\98\14\00\00\00\00\00\00\d4\1e\00\00\dfG\00\00\e0\14\00\00\00\00\00\00\ac\1e\00\00\0eH\00\00\d4\1e\00\00\c2H\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\05I\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00RI\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\98I\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c8I\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\06J\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\007J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\87J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c0J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\fbJ\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\007K\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00zK\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\a8K\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\dbK\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\97L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c4L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f5L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\003M\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\abM\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00pM\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f2M\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00;N\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\96N\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c1N\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\fbN\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00/O\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\7fO\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\aeO\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e7O\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00 P\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00ER\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\93R\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\ceR\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\faR\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00DS\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00yS\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\acS\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e3S\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\18T\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\aeT\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e0T\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\12U\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00jU\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\b2U\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\eaU\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\008V\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00wV\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\baV\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\ebV\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00%X\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00eX\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\98X\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\d2X\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\0bY\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00HY\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c5Y\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f1Y\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00'Z\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00{Z\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\b3Z\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f6Z\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00'[\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00W[\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\92[\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\d4[\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c3\\\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00N]\00\00\90\14\00\00\00\00\00\00\d4\1e\00\00^]\00\00\08\19\00\00\00\00\00\00\d4\1e\00\00o]\00\00\a8\14\00\00\00\00\00\00\d4\1e\00\00\91]\00\00" + "(\19\00\00\00\00\00\00\d4\1e\00\00\b5]\00\00\a8\14\00\00\00\00\00\00\d4*\00\00\dd]\00\00\d4*\00\00\df]\00\00\d4*\00\00\e1]\00\00\d4\1e\00\00\e3]\00\00\98\14") + (data $66 $29 (i32.const 6532) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\a8\11\00\00\07\00\00\00\08\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\09\00\00\00\03\00\00\00\01\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\n\00\00\00\0b\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\98\11\00\00\07\00\00\00" - "\0b\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\0c\00\00\00\03\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" - "\e0\11\00\00\0d\00\00\00\0e\00\00\00\0d\00\00\00\07\00\00\00\0f\00\00\00\10\00\00\00\02\00\00\00\03\00\00\00\0e") - (data $65 $27 (i32.const 5793) - "\12\00\00\11\00\00\00\12\00\00\00\0f\00\00\00\08\00\00\00\13\00\00\00\14\00\00\00\03\00\00\00\04\00\00\00\10\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $66 $27 (i32.const 5852) - "@\12\00\00\15\00\00\00\16\00\00\00\09\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00\17\00\00\00\14\00\00\00\n\00\00\00\0b\00\00\00\06\00\00\00\15\00\00\00\0c\00\00\00\07\00\00\00" - "\16\00\00\00\03\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00\00\00\00\00\a0\12\00\00\18\00\00\00\19\00\00\00\0d\00\00\00\1a\00\00\00\08\00\00\00\1b\00\00\00\1c\00\00\00\1a\00\00\00\1d\00\00\00" - "\n\00\00\00\0e\00\00\00\09\00\00\00\1e\00\00\00\0f\00\00\00\07\00\00\00\1f\00\00\00\04\00\00\00\17\00\00\00\00\00\00\00 \12\00\00\1b\00\00\00\1c\00\00\00\10\00\00\00 \00\00\00\n\00\00\00" - "!\00\00\00\"\00\00\00\1d\00\00\00#\00\00\00\n\00\00\00\11\00\00\00\0b\00\00\00$\00\00\00\12\00\00\00\07\00\00\00%\00\00\00\04\00\00\00\17\00\00\00\00\00\00\000\12\00\00\15\00\00\00" - "\1e\00\00\00\09\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00\17\00\00\00\14\00\00\00\n\00\00\00\0b\00\00\00\06\00\00\00\15\00\00\00\0c\00\00\00\07\00\00\00\16\00\00\00\03\00\00\00" - "\17\00\00\00&\00\00\00'\00\00\00\00\00\00\00p\12\00\00\1f\00\00\00 \00\00\00\13\00\00\00(\00\00\00\0c\00\00\00)\00\00\00*\00\00\00!\00\00\00+\00\00\00\n\00\00\00\14\00\00\00" - "\0d\00\00\00,\00\00\00\15\00\00\00\07\00\00\00-\00\00\00\04\00\00\00\17\00\00\00\00\00\00\00`\12\00\00\15\00\00\00\"\00\00\00\09\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00" - "\17\00\00\00\14\00\00\00\n\00\00\00\0b\00\00\00\06\00\00\00\15\00\00\00\0c\00\00\00\07\00\00\00\16\00\00\00\03\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00\00\00\00\00x\11\00\00\01\00\00\00" - "#\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00.\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00$\00\00\00%\00\00\00" - "\06\00\00\00\00\00\00\00\b0\12\00\00&\00\00\00'\00\00\00/\00\00\00\00\00\00\00\d8\12\00\00(\00\00\00)\00\00\00\06\00\00\00\16\00\00\00\01\00\00\00\07\00\00\000\00\00\00\00\00\00\00" - "\e8\12\00\00(\00\00\00*\00\00\00\08\00\00\00\17\00\00\00\02\00\00\00\07\00\00\000") - (data $67 $27 (i32.const 6529) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\0cB\00\00\11B\00\00\10\0d\00\00\00\13\00\00\90\13") - (data $68 $27 (i32.const 6768) - "\9c?") - (data $69 $27 (i32.const 6828) - "\b0\14\00\00+\00\00\00,\00\00\002\00\00\00\02\00\00\00\00\00\00\00\c8\14\00\00-\00\00\00.\00\00\00/\00\00\000\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\00\00\00\00" - "\f0\14\00\00-\00\00\001\00\00\00/\00\00\000\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\05") - (data $70 $27 (i32.const 6933) - "\15\00\002\00\00\003\00\00\003\00\00\00\00\00\00\00\10\15\00\002\00\00\004\00\00\003\00\00\00\00\00\00\00@\15\00\00-\00\00\005\00\00\00/\00\00\000\00\00\00\0d\00\00\00\00" - "\00\00\00`\15\00\00-\00\00\006\00\00\00/\00\00\000\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\06\00\00\00wasm_node_get_key\00onTick " - "metadata error\00onTick \00onRequestHeaders metadata error\00wasm_requ" - "est_set_key\00wasm_request_set_value\00:path\00header path \00newheader\00" - "newheadervalue\00server\00envoy-wasm\00onRequestBody \00Struct \00wasm_req" - "uest_get_key\00 \00onLog \00onDone \0014ExampleContext\007Context\0011Contex" - "tBase\0018ExampleRootContext\0011RootContext\00/usr/local/include/goog" - "le/protobuf/arenastring.h\00CHECK failed: initial_value != NULL: \00" - "NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00N" - "St3__221__basic_string_commonILb1EEE\00NSt3__210__function6__funcI" - "3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_del" - "eteIS6_EEEEjP11RootContextEEE\00NSt3__210__function6__baseIFNS_10u" - "nique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEEE\00" - "3$_0\00NSt3__210__function6__funcI3$_1NS_9allocatorIS2_EEFNS_10uni" - "que_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_stri" - "ng_viewIcNS_11char_traitsIcEEEEEEE\00NSt3__210__function6__baseIFN" - "S_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17bas" - "ic_string_viewIcNS_11char_traitsIcEEEEEEE\003$_1\00CHECK failed: it " - "!= end(): \00key not found: \00N6google8protobuf8internal29InternalM" - "etadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcE" - "ENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9Conta" - "inerE\00/home/jplev_google_com/envoy/api/wasm/cpp/struct_lite.pb.c" - "c\00/usr/local/include/google/protobuf/repeated_field.h\00CHECK fail" - "ed: (index) >= (0): \00CHECK failed: (index) < (current_size_): \00/" - "usr/local/include/google/protobuf/map.h\00CHECK failed: (bucket_in" - "dex_ & 1) == (0): \00CHECK failed: m_->index_of_first_non_null_ ==" - " m_->num_buckets_ || m_->table_[m_->index_of_first_non_null_] !=" - " NULL: \00CHECK failed: !tree->empty(): \00CHECK failed: node_ != NU" - "LL && m_ != NULL: \00google.protobuf.Value.string_value\00google.pro" - "tobuf.Struct.FieldsEntry.key\00CHECK failed: (&from) != (this): \00C" - "HECK failed: (&other) != (this): \00N6google8protobuf27Struct_Fiel" - "dsEntry_DoNotUseE\00N6google8protobuf8internal12MapEntryLiteINS0_2" - "7Struct_FieldsEntry_DoNotUseENSt3__212basic_stringIcNS4_11char_t" - "raitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9Fi" - "eldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8internal12MapEntryImpl" - "INS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212ba" - "sic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueE" - "LNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (i" - "t.m_) == (this): \00CHECK failed: TableEntryIsNonEmptyList(b): \00CH" - "ECK failed: TableEntryIsTree(b): \00CHECK failed: GetArenaNoVirtua" - "l() == NULL: \00CHECK failed: index_of_first_non_null_ == num_buck" - "ets_ || table_[index_of_first_non_null_] != NULL: \00CHECK failed:" - " find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK failed: (count)" - " <= (kMaxLength): \00CHECK failed: (result.bucket_index_) == (b & " - "~static_cast(1)): \00CHECK failed: (table_[b]) == (tabl" - "e_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) && !TableEntryIs" - "Tree(b ^ 1): \00CHECK failed: (count) == (tree->size()): \00CHECK fa" - "iled: (new_num_buckets) >= (kMinTableSize): \00CHECK failed: n >= " - "kMinTableSize: \00CHECK failed: (n & (n - 1)) == (0): \00CHECK faile" - "d: table_[b] == table_[b + 1] && (b & 1) == 0: \00N6google8protobu" - "f3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocator" - "IcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4hashINSt3__212bas" - "ic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEE\00f == NULL" - " || dynamic_cast(f) != NULL\00/usr/local/include/google/protob" - "uf/stubs/casts.h\00down_cast\00google.protobuf.Struct\00N6google8proto" - "buf6StructE\00N6google8protobuf5ValueE\00N6google8protobuf8internal1" - "2MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLit" - "eENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEE" - "EENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15Map" - "EntryWrapperE\00CHECK failed: (n) >= (0): \00google.protobuf.ListVal" - "ue\00N6google8protobuf9ListValueE\00google.protobuf.Value\00no context" - " factory for root_id: \00N6google8protobuf14FatalExceptionE\00google" - "/protobuf/stubs/common.cc\00This program requires version \00%d.%d.%" - "d\00 of the Protocol Buffer runtime library, but the installed ver" - "sion is \00. Please update your library. If you compiled the pro" - "gram yourself, make sure that your headers are from the same ver" - "sion of Protocol Buffers as your link-time library. (Version ve" - "rification failed in \"\00\".)\00This program was compiled against ver" - "sion \00 of the Protocol Buffer runtime library, which is not comp" - "atible with the installed version (\00). Contact the program auth" - "or for an update. If you compiled the program yourself, make su" - "re that your headers are from the same version of Protocol Buffe" - "rs as your link-time library. (Version verification failed in \"" - "\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exceeds maximum supported size\00%d\00%lu\00" - "google/protobuf/arena.cc\00CHECK failed: (min_bytes) <= (std::nume" - "ric_limits::max() - kBlockHeaderSize): \00google/protobuf/" - "generated_message_util.cc\00Not implemented field number \00 with ty" - "pe \00CHECK failed: (scc->visit_status.load(std::memory_order_rela" - "xed)) == (SCCInfoBase::kRunning): \00google/protobuf/message_lite." - "cc\00CHECK failed: !coded_out.HadError(): \00(cannot determine missi" - "ng fields for lite message)\00N6google8protobuf11MessageLiteE\00pars" - "e\00Can't \00 message of type \"\00\" because it is missing required fie" - "lds: \00Exceeded maximum protobuf size of 2GB: \00CHECK failed: (byt" - "e_size_before_serialization) == (byte_size_after_serialization):" - " \00 was modified concurrently during serialization.\00CHECK failed:" - " (bytes_produced_by_serialization) == (byte_size_before_serializ" - "ation): \00Byte size calculation and serialization were inconsiste" - "nt. This may indicate a bug in protocol buffers or it may be ca" - "used by concurrent modification of \00This shouldn't be called if " - "all the sizes are equal.\00google/protobuf/repeated_field.cc\00CHECK" - " failed: (new_size) <= ((std::numeric_limits::max() - kR" - "epHeaderSize) / sizeof(old_rep->elements[0])): \00Requested size i" - "s too large to fit into size_t.\00google/protobuf/wire_format_lite" - ".cc\00CHECK failed: (value.size()) <= (kint32max): \00serializing\00pa" - "rsing\00 '%s'\00String field\00 contains invalid \00UTF-8 data when \00 a " - "protocol \00buffer. Use the 'bytes' type if you intend to send raw" - " \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed: (buff" - "er_size) >= (0): \00A protocol message was rejected because it was" - " too big (more than \00 bytes). To increase the limit (or to disa" - "ble these warnings), see CodedInputStream::SetTotalBytesLimit() " - "in google/protobuf/io/coded_stream.h.\00google/protobuf/io/zero_co" - "py_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK fail" - "ed: (last_returned_size_) > (0): \00BackUp() can only be called af" - "ter a successful Next().\00CHECK failed: (count) <= (last_returned" - "_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK failed:" - " target_ != NULL: \00CHECK failed: (count) <= (target_->size()): \00" - "Cannot allocate buffer larger than kint32max for \00StringOutputSt" - "ream.\00N6google8protobuf2io18StringOutputStreamE\00google/protobuf/" - "io/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't support" - " aliasing. Reaching here usually means a ZeroCopyOutputStream im" - "plementation bug.\00N6google8protobuf2io20ZeroCopyOutputStreamE\00-+" - " 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::bad_fun" - "ction_call\00NSt3__217bad_function_callE\00mutex lock failed\00%u\00term" - "inating with %s exception of type %s: %s\00terminating with %s exc" - "eption of type %s\00terminating with %s foreign exception\00terminat" - "ing\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9ty" - "pe_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__cl" - "ass_type_infoE\00pthread_once failure in __cxa_get_globals_fast()\00" - "cannot create pthread key for __cxa_get_globals()\00cannot zero ou" - "t thread value for __cxa_get_globals()\00terminate_handler unexpec" - "tedly returned\00St11logic_error\00St12length_error\00N10__cxxabiv119_" - "_pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxab" - "iv123__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__vmi_class_typ" - "e_infoE") + "\0b\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\0c\00\00\00\03\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01") + (data $67 $29 (i32.const 6796) + "\d8\11") + (data $68 $29 (i32.const 6812) + "\e0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6836) + "\10\12\00\00\0d\00\00\00\0e\00\00\00\07\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0f\00\00\00\10\00\00\00\08\00\00\00\09\00\00\00\04\00\00\00\11\00\00\00\n\00\00\00\05\00\00\00" + "\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\10\00\00\00\11\00\00\00\0b\00\00\00\16\00\00\00\06\00\00\00\17\00\00\00\18\00\00\00\12\00\00\00\19\00\00\00" + "\08\00\00\00\0c\00\00\00\07\00\00\00\1a\00\00\00\0d\00\00\00\05\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\13\00\00\00\14\00\00\00\0e\00\00\00\1c\00\00\00\08\00\00\00" + "\1d\00\00\00\1e\00\00\00\15\00\00\00\1f\00\00\00\08\00\00\00\0f\00\00\00\09\00\00\00 \00\00\00\10\00\00\00\05\00\00\00!\00\00\00\04\00\00\00\13") + (data $70 $29 (i32.const 7085) + "\12\00\00\0d\00\00\00\16\00\00\00\07\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0f\00\00\00\10\00\00\00\08\00\00\00\09\00\00\00\04\00\00\00\11\00\00\00\n\00\00\00\05\00\00\00\12" + "\00\00\00\03\00\00\00\13\00\00\00\"\00\00\00#\00\00\00\00\00\00\00@\12\00\00\17\00\00\00\18\00\00\00\11\00\00\00$\00\00\00\n\00\00\00%\00\00\00&\00\00\00\19\00\00\00'\00\00\00\08" + "\00\00\00\12\00\00\00\0b\00\00\00(\00\00\00\13\00\00\00\05\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\000\12\00\00\0d\00\00\00\1a\00\00\00\07\00\00\00\0d\00\00\00\03\00\00\00\0e" + "\00\00\00\0f\00\00\00\0f\00\00\00\10\00\00\00\08\00\00\00\09\00\00\00\04\00\00\00\11\00\00\00\n\00\00\00\05\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00x" + "\11\00\00\01\00\00\00\1b\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\1c" + "\00\00\00\1d\00\00\00\06") + (data $71 $29 (i32.const 7424) + "\01\00\00\00X\19\00\00\00\00\00\00\80\12\00\00\1e\00\00\00\1f\00\00\00+\00\00\00\00\00\00\00\a8\12\00\00 \00\00\00!\00\00\00\06\00\00\00\14\00\00\00\01\00\00\00\07\00\00\00,\00\00\00" + "\00\00\00\00\b8\12\00\00 \00\00\00\"\00\00\00\08\00\00\00\15\00\00\00\02\00\00\00\07\00\00\00,") + (data $72 $29 (i32.const 7529) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\f8e\00\00\06f\00\00\10\0d\00\00\d0\12\00\00`\13") + (data $73 $29 (i32.const 7768) + "\8cc") + (data $74 $29 (i32.const 7828) + "\80\14\00\00#\00\00\00$\00\00\00.\00\00\00\00\00\00\00\98\14\00\00%\00\00\00&\00\00\00'\00\00\00(\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\c0\14\00\00" + "%\00\00\00)\00\00\00'\00\00\00(\00\00\00\0c\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\d0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00*\00\00\00+\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00*\00\00\00,\00\00\00\00\00\00\00\e8\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00*\00\00\00-\00\00\00\00\00\00\00\f8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00*\00\00\00.\00\00\00\00\00\00\00\08\15\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00*\00\00\00/\00\00\00\00\00\00\00" + "\18\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00*\00\00\000\00\00\00\00\00\00\00(\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + " \00\00\00\17\00\00\00!\00\00\00*\00\00\001\00\00\00\00\00\00\008\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00*\00\00\002\00\00\00" + "\00\00\00\00H\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00*\00\00\003\00\00\00\00\00\00\00X\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00%\00\00\00\17\00\00\00\18\00\00\00*\00\00\004\00\00\00\00\00\00\00h\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00*\00\00\00" + "5\00\00\00\00\00\00\00x\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00*\00\00\006\00\00\00\00\00\00\00\88\15\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00*\00\00\007\00\00\00\00\00\00\00\98\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00" + "*\00\00\008\00\00\00\00\00\00\00\a8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00*\00\00\009\00\00\00\00\00\00\00\b8\15\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00*\00\00\00:\00\00\00\00\00\00\00\c8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00" + "\18\00\00\00*\00\00\00;\00\00\00\00\00\00\00\d8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00*\00\00\00<\00\00\00\00\00\00\00\e8\15\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00*\00\00\00=\00\00\00\00\00\00\00\f8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00" + "\17\00\00\00\18\00\00\00*\00\00\00>\00\00\00\00\00\00\00\08\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00*\00\00\00?\00\00\00\00\00\00\00" + "\18\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00*\00\00\00@\00\00\00\00\00\00\00(\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "2\00\00\00\17\00\00\00\18\00\00\00*\00\00\00A\00\00\00\00\00\00\008\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00*\00\00\00B\00\00\00" + "\00\00\00\00H\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00*\00\00\00C\00\00\00\00\00\00\00X\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\005\00\00\00\17\00\00\00\18\00\00\00*\00\00\00D\00\00\00\00\00\00\00h\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00*\00\00\00" + "E\00\00\00\00\00\00\00x\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00*\00\00\00F\00\00\00\00\00\00\00\88\16\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00*\00\00\00G\00\00\00\00\00\00\00\98\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00" + "*\00\00\00H\00\00\00\00\00\00\00\a8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00*\00\00\00I\00\00\00\00\00\00\00\b8\16\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00*\00\00\00J\00\00\00\00\00\00\00\c8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00" + "\18\00\00\00*\00\00\00K\00\00\00\00\00\00\00\d8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00*\00\00\00L\00\00\00\00\00\00\00\e8\16\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00*\00\00\00M\00\00\00\00\00\00\00\f8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00" + "\17\00\00\00B\00\00\00*\00\00\00N\00\00\00\00\00\00\00\08\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00*\00\00\00O\00\00\00\00\00\00\00" + "\18\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00*\00\00\00P\00\00\00\00\00\00\00(\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "E\00\00\00\17\00\00\00\18\00\00\00*\00\00\00Q\00\00\00\00\00\00\008\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00*\00\00\00R\00\00\00" + "\00\00\00\00H\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00*\00\00\00S\00\00\00\00\00\00\00X\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00H\00\00\00\17\00\00\00\18\00\00\00*\00\00\00T\00\00\00\00\00\00\00h\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00*\00\00\00" + "U\00\00\00\00\00\00\00x\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00*\00\00\00V\00\00\00\00\00\00\00\88\17\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00*\00\00\00W\00\00\00\00\00\00\00\98\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00" + "*\00\00\00X\00\00\00\00\00\00\00\a8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00*\00\00\00Y\00\00\00\00\00\00\00\b8\17\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00*\00\00\00Z\00\00\00\00\00\00\00\c8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00" + "\18\00\00\00*\00\00\00[\00\00\00\00\00\00\00\d8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00*\00\00\00\\\00\00\00\00\00\00\00\e8\17\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00*\00\00\00]\00\00\00\00\00\00\00\f8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00" + "\17\00\00\00U\00\00\00*\00\00\00^\00\00\00\00\00\00\00\08\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00*\00\00\00_\00\00\00\00\00\00\00" + "\18\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00*\00\00\00`\00\00\00\00\00\00\00(\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00" + "Z\00\00\00[\00\00\00\18\00\00\00*\00\00\00a\00\00\00\00\00\00\008\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00*\00\00\00b\00\00\00" + "\00\00\00\00H\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00*\00\00\00c\00\00\00\00\00\00\00X\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00" + "\0f\00\00\00^\00\00\00_\00\00\00\18\00\00\00*\00\00\00d\00\00\00\00\00\00\00h\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00*\00\00\00" + "e\00\00\00\00\00\00\00x\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00*\00\00\00f\00\00\00\00\00\00\00\88\18\00\00 \00\00\00\0d\00\00\00" + "!\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00*\00\00\00g\00\00\00\00\00\00\00\98\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00" + "*\00\00\00h\00\00\00\00\00\00\00\a8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00*\00\00\00i\00\00\00\00\00\00\00\b8\18\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00*\00\00\00j\00\00\00\00\00\00\00\c8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00" + "\18\00\00\00*\00\00\00k\00\00\00\00\00\00\00\d8\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00*\00\00\00l\00\00\00\00\00\00\00\e8\18\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00*\00\00\00m\00\00\00\00\00\00\00\f8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00" + "\17\00\00\00\18\00\00\00*\00\00\00n\00\00\00\00\00\00\00\08\19\00\00o\00\00\00p\00\00\00/\00\00\00\00\00\00\00\18\19\00\00o\00\00\00q\00\00\00/\00\00\00\00\00\00\00H\19\00\00" + "%\00\00\00r\00\00\00'\00\00\00(\00\00\00\0d\00\00\00\00\00\00\00p\19\00\00%\00\00\00s\00\00\00'\00\00\00(\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00wasm" + "_node_get_key\00onTick \00wasm_request_set_key\00wasm_request_set_valu" + "e\00:path\00header path \00newheader\00newheadervalue\00server\00envoy-wasm\00" + "onRequestBody \00Struct \00wasm_request_get_key\00onLog \00onDone \0014Exa" + "mpleContext\007Context\0011ContextBase\0018ExampleRootContext\0011RootCo" + "ntext\00BadArgument\00SerializationFailure\00ParseFailure\00BadExpressio" + "n\00InvalidMemoryAccess\00Empty\00CasMismatch\00ResultMismatch\00/usr/loca" + "l/include/google/protobuf/arenastring.h\00CHECK failed: initial_va" + "lue != NULL: \00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9all" + "ocatorIcEEEE\00NSt3__221__basic_string_commonILb1EEE\003$_0\003$_1\00CHE" + "CK failed: it != end(): \00key not found: \00N6google8protobuf8inter" + "nal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11" + "char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithAre" + "naLiteEE9ContainerE\00/home/piotrsikora/Google/envoy/api/wasm/cpp/" + "struct_lite.pb.cc\00/usr/local/include/google/protobuf/repeated_fi" + "eld.h\00CHECK failed: (index) >= (0): \00CHECK failed: (index) < (cu" + "rrent_size_): \00/usr/local/include/google/protobuf/map.h\00CHECK fa" + "iled: (bucket_index_ & 1) == (0): \00CHECK failed: m_->index_of_fi" + "rst_non_null_ == m_->num_buckets_ || m_->table_[m_->index_of_fir" + "st_non_null_] != NULL: \00CHECK failed: !tree->empty(): \00CHECK fai" + "led: node_ != NULL && m_ != NULL: \00google.protobuf.Value.string_" + "value\00google.protobuf.Struct.FieldsEntry.key\00CHECK failed: (&fro" + "m) != (this): \00CHECK failed: (&other) != (this): \00N6google8proto" + "buf27Struct_FieldsEntry_DoNotUseE\00N6google8protobuf8internal12Ma" + "pEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt3__212basic_stri" + "ngIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueELNS1_14W" + "ireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google8protobuf8intern" + "al12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11Message" + "LiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorI" + "cEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EEE\00" + "CHECK failed: (it.m_) == (this): \00CHECK failed: TableEntryIsNonE" + "mptyList(b): \00CHECK failed: TableEntryIsTree(b): \00CHECK failed: " + "GetArenaNoVirtual() == NULL: \00CHECK failed: index_of_first_non_n" + "ull_ == num_buckets_ || table_[index_of_first_non_null_] != NULL" + ": \00CHECK failed: find(*KeyPtrFromNodePtr(node)) == end(): \00CHECK" + " failed: (count) <= (kMaxLength): \00CHECK failed: (result.bucket_" + "index_) == (b & ~static_cast(1)): \00CHECK failed: (tab" + "le_[b]) == (table_[b ^ 1]): \00CHECK failed: !TableEntryIsTree(b) " + "&& !TableEntryIsTree(b ^ 1): \00CHECK failed: (count) == (tree->si" + "ze()): \00CHECK failed: (new_num_buckets) >= (kMinTableSize): \00CHE" + "CK failed: n >= kMinTableSize: \00CHECK failed: (n & (n - 1)) == (" + "0): \00CHECK failed: table_[b] == table_[b + 1] && (b & 1) == 0: \00" + "N6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIc" + "EENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6google8protobuf4h" + "ashINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIc" + "EEEEEE\00f == NULL || dynamic_cast(f) != NULL\00/usr/local/inclu" + "de/google/protobuf/stubs/casts.h\00down_cast\00google.protobuf.Struc" + "t\00N6google8protobuf6StructE\00N6google8protobuf5ValueE\00N6google8pr" + "otobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseE" + "NS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS" + "5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9EL" + "SE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) >= (0): \00google." + "protobuf.ListValue\00N6google8protobuf9ListValueE\00google.protobuf." + "Value\00no context factory for root_id: \00N6google8protobuf14FatalE" + "xceptionE\00google/protobuf/stubs/common.cc\00This program requires " + "version \00%d.%d.%d\00 of the Protocol Buffer runtime library, but t" + "he installed version is \00. Please update your library. If you " + "compiled the program yourself, make sure that your headers are f" + "rom the same version of Protocol Buffers as your link-time libra" + "ry. (Version verification failed in \"\00\".)\00This program was comp" + "iled against version \00 of the Protocol Buffer runtime library, w" + "hich is not compatible with the installed version (\00). Contact " + "the program author for an update. If you compiled the program y" + "ourself, make sure that your headers are from the same version o" + "f Protocol Buffers as your link-time library. (Version verifica" + "tion failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00F" + "ATAL\00allocator::allocate(size_t n) 'n' exceeds maximum suppor" + "ted size\00%d\00%lu\00google/protobuf/arena.cc\00CHECK failed: (min_byte" + "s) <= (std::numeric_limits::max() - kBlockHeaderSize): \00" + "google/protobuf/generated_message_util.cc\00Not implemented field " + "number \00 with type \00CHECK failed: (scc->visit_status.load(std::m" + "emory_order_relaxed)) == (SCCInfoBase::kRunning): \00google/protob" + "uf/message_lite.cc\00CHECK failed: !coded_out.HadError(): \00(cannot" + " determine missing fields for lite message)\00N6google8protobuf11M" + "essageLiteE\00parse\00Can't \00 message of type \"\00\" because it is miss" + "ing required fields: \00Exceeded maximum protobuf size of 2GB: \00CH" + "ECK failed: (byte_size_before_serialization) == (byte_size_after" + "_serialization): \00 was modified concurrently during serializatio" + "n.\00CHECK failed: (bytes_produced_by_serialization) == (byte_size" + "_before_serialization): \00Byte size calculation and serialization" + " were inconsistent. This may indicate a bug in protocol buffers" + " or it may be caused by concurrent modification of \00This shouldn" + "'t be called if all the sizes are equal.\00google/protobuf/repeate" + "d_field.cc\00CHECK failed: (new_size) <= ((std::numeric_limits::max() - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00" + "Requested size is too large to fit into size_t.\00google/protobuf/" + "wire_format_lite.cc\00CHECK failed: (value.size()) <= (kint32max):" + " \00serializing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-" + "8 data when \00 a protocol \00buffer. Use the 'bytes' type if you in" + "tend to send raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHE" + "CK failed: (buffer_size) >= (0): \00A protocol message was rejecte" + "d because it was too big (more than \00 bytes). To increase the l" + "imit (or to disable these warnings), see CodedInputStream::SetTo" + "talBytesLimit() in google/protobuf/io/coded_stream.h.\00google/pro" + "tobuf/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= " + "(0): \00CHECK failed: (last_returned_size_) > (0): \00BackUp() can o" + "nly be called after a successful Next().\00CHECK failed: (count) <" + "= (last_returned_size_): \00N6google8protobuf2io17ArrayOutputStrea" + "mE\00CHECK failed: target_ != NULL: \00CHECK failed: (count) <= (tar" + "get_->size()): \00Cannot allocate buffer larger than kint32max for" + " \00StringOutputStream.\00N6google8protobuf2io18StringOutputStreamE\00" + "google/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream" + " doesn't support aliasing. Reaching here usually means a ZeroCop" + "yOutputStream implementation bug.\00N6google8protobuf2io20ZeroCopy" + "OutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NA" + "N\00std::bad_function_call\00NSt3__217bad_function_callE\00mutex lock " + "failed\00%u\00terminating with %s exception of type %s: %s\00terminati" + "ng with %s exception of type %s\00terminating with %s foreign exce" + "ption\00terminating\00uncaught\00St9exception\00N10__cxxabiv116__shim_ty" + "pe_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__" + "cxxabiv117__class_type_infoE\00terminate_handler unexpectedly retu" + "rned\00_Z\00___Z\00_block_invoke\00invocation function for block in \00voi" + "d\00bool\00char\00signed char\00unsigned char\00short\00unsigned short\00int\00u" + "nsigned int\00long\00unsigned long\00long long\00__int128\00unsigned __int" + "128\00float\00long double\00__float128\00...\00decimal64\00decimal128\00decima" + "l32\00decimal16\00char32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr" + "_t\00[abi:\00]\00N12_GLOBAL__N_116itanium_demangle10AbiTagAttrE\00N12_GL" + "OBAL__N_116itanium_demangle4NodeE\00allocator\00basic_string\00string\00" + "istream\00ostream\00iostream\00std::allocator\00std::basic_string\00std::s" + "tring\00std::istream\00std::ostream\00std::iostream\00N12_GLOBAL__N_116i" + "tanium_demangle19SpecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_1" + "16itanium_demangle20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N1" + "2_GLOBAL__N_116itanium_demangle13ReferenceTypeE\00objc_object\00*\00id" + "<\00>\00N12_GLOBAL__N_116itanium_demangle11PointerTypeE\00N12_GLOBAL__" + "N_116itanium_demangle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_" + "116itanium_demangle12TemplateArgsE\00N12_GLOBAL__N_116itanium_dema" + "ngle13ParameterPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N" + "_116itanium_demangle15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116ita" + "nium_demangle16FloatLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_" + "demangle16FloatLiteralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_dema" + "ngle16FloatLiteralImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_d" + "emangle8BoolExprE\00-\00N12_GLOBAL__N_116itanium_demangle14IntegerLi" + "teralE\00N12_GLOBAL__N_116itanium_demangle20TemplateArgumentPackE\00" + "gs\00&=\00=\00alignof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!" + "\00||\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00thro" + "w \00N12_GLOBAL__N_116itanium_demangle9ThrowExprE\00N12_GLOBAL__N_11" + "6itanium_demangle12InitListExprE\00N12_GLOBAL__N_116itanium_demang" + "le13NodeArrayNodeE\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle" + "13EnclosingExprE\00sizeof...(\00N12_GLOBAL__N_116itanium_demangle22P" + "arameterPackExpansionE\00N12_GLOBAL__N_116itanium_demangle19Sizeof" + "ParamPackExprE\00static_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8" + "CastExprE\00reinterpret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_" + "demangle15ConditionalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[" + "]\00N12_GLOBAL__N_116itanium_demangle7NewExprE\00N12_GLOBAL__N_116it" + "anium_demangle11PostfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_" + "demangle15BracedRangeExprE\00N12_GLOBAL__N_116itanium_demangle10Br" + "acedExprE\00_GLOBAL__N\00(anonymous namespace)\00N12_GLOBAL__N_116itan" + "ium_demangle8NameTypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18Arr" + "aySubscriptExprE\00.\00N12_GLOBAL__N_116itanium_demangle10MemberExpr" + "E\00srN\00sr\00::\00N12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNa" + "meE\00dn\00on\00operator&&\00operator&\00operator&=\00operator=\00operator()\00o" + "perator,\00operator~\00operator delete[]\00operator*\00operator/\00operato" + "r/=\00operator^\00operator^=\00operator==\00operator>=\00operator>\00operato" + "r[]\00operator<=\00operator<<\00operator<<=\00operator<\00operator-\00operat" + "or-=\00operator*=\00operator--\00operator new[]\00operator!=\00operator!\00o" + "perator new\00operator||\00operator|\00operator|=\00operator->*\00operator" + "+\00operator+=\00operator++\00operator->\00operator?\00operator%\00operator%" + "=\00operator>>\00operator>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_1" + "16itanium_demangle15LiteralOperatorE\00operator delete\00operator \00N" + "12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeE\00N12_GL" + "OBAL__N_116itanium_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_d" + "emangle13QualifiedNameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_11" + "6itanium_demangle10DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_de" + "mangle14ConversionExprE\00N12_GLOBAL__N_116itanium_demangle8CallEx" + "prE\00const_cast\00N12_GLOBAL__N_116itanium_demangle10PrefixExprE\00) " + "\00 (\00N12_GLOBAL__N_116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00c" + "m\00ds\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl" + "\00pL\00rm\00rM\00rs\00rS\00... \00 ...\00N12_GLOBAL__N_116itanium_demangle8Fold" + "ExprE\00fp\00fL\00N12_GLOBAL__N_116itanium_demangle13FunctionParamE\00N1" + "2_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceE\00Ts\00st" + "ruct\00Tu\00union\00Te\00enum\00N12_GLOBAL__N_116itanium_demangle22Elabora" + "tedTypeSpefTypeE\00StL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle1" + "6StdQualifiedNameE\00DC\00N12_GLOBAL__N_116itanium_demangle21Structu" + "redBindingNameE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_dem" + "angle15ClosureTypeNameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_dema" + "ngle15UnnamedTypeNameE\00string literal\00N12_GLOBAL__N_116itanium_d" + "emangle9LocalNameE\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDt" + "orNameE\00basic_istream\00basic_ostream\00basic_iostream\00std::basic_st" + "ring, std::allocator >\00std::b" + "asic_istream >\00std::basic_ostream >\00std::basic_iostream >\00N12_GLOBAL__N_116itanium_demangle27ExpandedSpec" + "ialSubstitutionE\00N12_GLOBAL__N_116itanium_demangle10NestedNameE\00" + "::*\00N12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeE\00[\00N1" + "2_GLOBAL__N_116itanium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBA" + "L__N_116itanium_demangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__" + "N_116itanium_demangle15PixelVectorTypeE\00decltype(\00double\00unsigne" + "d long long\00objcproto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_1" + "16itanium_demangle8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17" + "VendorExtQualTypeE\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoN" + "ameE\00Do\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_" + "demangle12FunctionTypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle" + "20DynamicExceptionSpecE\00noexcept(\00N12_GLOBAL__N_116itanium_deman" + "gle12NoexceptSpecE\00N12_GLOBAL__N_116itanium_demangle11SpecialNam" + "eE\00N12_GLOBAL__N_116itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N1" + "2_GLOBAL__N_116itanium_demangle16FunctionEncodingE\00 [enable_if:\00" + "N12_GLOBAL__N_116itanium_demangle12EnableIfAttrE\00thread-local wr" + "apper routine for \00reference temporary for \00guard variable for \00" + "non-virtual thunk to \00virtual thunk to \00thread-local initializat" + "ion routine for \00construction vtable for \00-in-\00N12_GLOBAL__N_116" + "itanium_demangle21CtorVtableSpecialNameE\00covariant return thunk " + "to \00typeinfo name for \00typeinfo for \00VTT for \00vtable for \00St11lo" + "gic_error\00St12length_error\00N10__cxxabiv117__pbase_type_infoE\00N10" + "__cxxabiv119__pointer_type_infoE\00N10__cxxabiv123__fundamental_ty" + "pe_infoE\00v\00c\00h\00N10__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_metadata_cpp_cc - i32.const 16104 + i32.const 25304 i64.const 0 i64.store align=4 - i32.const 16112 + i32.const 25312 i64.const 0 i64.store align=4 - i32.const 16120 + i32.const 25320 i32.const 1065353216 i32.store - i32.const 16124 + i32.const 25324 i64.const 0 i64.store align=4 - i32.const 16132 + i32.const 25332 i64.const 0 i64.store align=4 - i32.const 16140 + i32.const 25340 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -430,39 +608,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $3) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN18ExampleRootContext6onTickEv (type $0) @@ -472,91 +650,101 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 48 + global.get $32 + local.set $1 + global.get $32 + i32.const 80 i32.add - global.set $30 - local.get $2 - i32.const 36 + global.set $32 + local.get $1 + i32.const 56 i32.add local.set $3 - local.get $2 - i32.const 24 + local.get $1 + i32.const 44 i32.add - local.set $1 - local.get $2 + local.set $2 + local.get $1 + i32.const 32 + i32.add + local.set $4 + local.get $1 call $__ZN6google8protobuf5ValueC2Ev local.get $1 - i32.const 7036 - i32.store + i32.const 11024 + i32.store offset=24 local.get $1 i32.const 17 - i32.store offset=4 + i32.store offset=28 local.get $3 local.get $1 - i64.load align=4 + i64.load offset=24 align=4 i64.store align=4 local.get $0 i32.const 5 local.get $3 - local.get $2 + local.get $1 call $__ZN11ContextBase13metadataValueE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf5ValueE + local.tee $0 if $if - i32.const 32 - call $__Znwm - local.tee $0 - i32.const 7054 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7062 - i64.load align=1 - i64.store offset=8 align=1 - local.get $0 - i32.const 7070 - i32.load align=1 - i32.store offset=16 align=1 - local.get $0 - i32.const 7074 - i32.load8_s - i32.store8 offset=20 + local.get $2 local.get $0 - i32.const 0 - i32.store8 offset=21 + call $__Z8toString10WasmResult i32.const 1 + local.get $2 + i32.load + local.get $2 + local.get $2 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $5 + select + local.get $2 + i32.load offset=4 local.get $0 - i32.const 21 + i32.const 255 + i32.and + local.get $5 + select call $_proxy_log - local.get $0 - call $_free + drop + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $2 + i32.load + call $_free + end ;; $if_0 end ;; $if - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const 7 i32.store8 offset=11 - local.get $1 - i32.const 7076 + local.get $3 + i32.const 11042 i32.load align=1 i32.store align=1 - local.get $1 - i32.const 7080 + local.get $3 + i32.const 11046 i32.load16_s align=1 i32.store16 offset=4 align=1 - local.get $1 - i32.const 7082 + local.get $3 + i32.const 11048 i32.load8_s i32.store8 offset=6 - local.get $1 + local.get $3 i32.const 0 i32.store8 offset=7 - local.get $2 + local.get $1 i32.load offset=8 - i32.const 16072 - local.get $2 + i32.const 25272 + local.get $1 i32.load offset=20 i32.const 3 i32.eq @@ -566,26 +754,26 @@ local.tee $5 i32.const 0 i32.lt_s - local.set $4 + local.set $2 + local.get $4 local.get $3 - local.get $1 local.get $0 i32.load local.get $0 - local.get $4 + local.get $2 select local.get $0 i32.load offset=4 local.get $5 i32.const 255 i32.and - local.get $4 + local.get $2 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $3 + local.get $4 local.get $0 i32.load offset=8 i32.store offset=8 @@ -596,51 +784,366 @@ i32.const 0 i32.store offset=8 i32.const 1 - local.get $3 + local.get $4 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $4 + local.tee $2 select - local.get $3 + local.get $4 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $4 + local.get $2 select call $_proxy_log - local.get $3 + drop + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_0 - local.get $3 + if $if_1 + local.get $4 i32.load call $_free - end ;; $if_0 - local.get $1 + end ;; $if_1 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_1 - local.get $2 + if $if_2 + local.get $1 call $__ZN6google8protobuf5ValueD2Ev - local.get $2 - global.set $30 + local.get $1 + global.set $32 return - end ;; $if_1 - local.get $1 + end ;; $if_2 + local.get $3 i32.load call $_free - local.get $2 + local.get $1 call $__ZN6google8protobuf5ValueD2Ev - local.get $2 - global.set $30 + local.get $1 + global.set $32 + ) + + (func $__Z8toString10WasmResult (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + local.get $1 + br_table + $block_9 $block_8 $block_7 $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_9 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 2 + i32.store8 offset=11 + local.get $0 + i32.const 27471 + i32.store16 + local.get $0 + i32.const 0 + i32.store8 offset=2 + return + end ;; $block_8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 8 + i32.store8 offset=11 + local.get $0 + i64.const 7236850772014821198 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 + return + end ;; $block_7 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 11 + i32.store offset=4 + local.get $1 + i32.const 11290 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11298 + i32.load16_s align=1 + i32.store16 offset=8 align=1 + local.get $1 + i32.const 11300 + i32.load8_s + i32.store8 offset=10 + local.get $1 + i32.const 0 + i32.store8 offset=11 + return + end ;; $block_6 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 20 + i32.store offset=4 + local.get $1 + i32.const 11302 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11310 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11318 + i32.load align=1 + i32.store offset=16 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=20 + return + end ;; $block_5 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 12 + i32.store offset=4 + local.get $1 + i32.const 11323 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11331 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=12 + return + end ;; $block_4 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 13 + i32.store offset=4 + local.get $1 + i32.const 11336 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11344 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 11348 + i32.load8_s + i32.store8 offset=12 + local.get $1 + i32.const 0 + i32.store8 offset=13 + return + end ;; $block_3 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 19 + i32.store offset=4 + local.get $1 + i32.const 11350 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11358 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11366 + i32.load16_s align=1 + i32.store16 offset=16 align=1 + local.get $1 + i32.const 11368 + i32.load8_s + i32.store8 offset=18 + local.get $1 + i32.const 0 + i32.store8 offset=19 + return + end ;; $block_2 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 5 + i32.store8 offset=11 + local.get $0 + i32.const 11370 + i32.load align=1 + i32.store align=1 + local.get $0 + i32.const 11374 + i32.load8_s + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + return + end ;; $block_1 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 11 + i32.store offset=4 + local.get $1 + i32.const 11376 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11384 + i32.load16_s align=1 + i32.store16 offset=8 align=1 + local.get $1 + i32.const 11386 + i32.load8_s + i32.store8 offset=10 + local.get $1 + i32.const 0 + i32.store8 offset=11 + return + end ;; $block_0 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 14 + i32.store offset=4 + local.get $1 + i32.const 11388 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11396 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 11400 + i32.load16_s align=1 + i32.store16 offset=12 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=14 + end ;; $block ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $5) @@ -654,255 +1157,259 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 - i32.const 80 + global.get $32 + i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 - i32.const 60 + i32.const 84 i32.add - local.set $1 + local.set $3 local.get $5 i32.const 24 i32.add local.set $2 local.get $5 - i32.const 48 + i32.const 72 + i32.add + local.set $1 + local.get $5 + i32.const 60 i32.add local.set $4 local.get $5 + i32.const 48 + i32.add + local.set $6 + local.get $5 call $__ZN6google8protobuf5ValueC2Ev local.get $2 - i32.const 7036 + i32.const 11024 i32.store local.get $2 i32.const 17 i32.store offset=4 - local.get $1 + local.get $3 local.get $2 i64.load align=4 i64.store align=4 local.get $0 i32.const 5 - local.get $1 + local.get $3 local.get $5 call $__ZN11ContextBase13metadataValueE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf5ValueE + local.tee $0 if $if - i32.const 32 - call $__Znwm - local.tee $0 - i32.const 7084 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7092 - i64.load align=1 - i64.store offset=8 align=1 - local.get $0 - i32.const 7100 - i64.load align=1 - i64.store offset=16 align=1 - local.get $0 - i32.const 7108 - i32.load align=1 - i32.store offset=24 align=1 - local.get $0 - i32.const 7112 - i32.load16_s align=1 - i32.store16 offset=28 align=1 - local.get $0 - i32.const 7114 - i32.load8_s - i32.store8 offset=30 + local.get $1 local.get $0 - i32.const 0 - i32.store8 offset=31 + call $__Z8toString10WasmResult i32.const 1 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $7 + select + local.get $1 + i32.load offset=4 local.get $0 - i32.const 31 + i32.const 255 + i32.and + local.get $7 + select call $_proxy_log - local.get $0 - call $_free + drop + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $1 + i32.load + call $_free + end ;; $if_0 end ;; $if local.get $2 call $__ZN6google8protobuf5ValueC2Ev local.get $2 call $__ZN6google8protobuf5Value16set_string_valueEPKcm - local.get $1 + local.get $3 i64.const 0 i64.store align=4 - local.get $1 + local.get $3 i32.const 0 i32.store offset=8 local.get $2 - local.get $1 + local.get $3 call $__ZNK6google8protobuf11MessageLite17SerializeToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE - if $if_0 (result i32) + if $if_1 (result i32) i32.const 0 - i32.const 7116 + i32.const 11050 i32.const 20 - local.get $1 + local.get $3 i32.load - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $1 select - local.get $1 + local.get $3 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $1 select call $_proxy_setMetadata else i32.const 3 - end ;; $if_0 + end ;; $if_1 local.set $0 - local.get $1 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_1 - local.get $1 + if $if_2 + local.get $3 i32.load call $_free - end ;; $if_1 + end ;; $if_2 local.get $2 call $__ZN6google8protobuf5ValueD2Ev local.get $0 - if $if_2 - i32.const 32 - call $__Znwm - local.tee $0 - i32.const 7084 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7092 - i64.load align=1 - i64.store offset=8 align=1 - local.get $0 - i32.const 7100 - i64.load align=1 - i64.store offset=16 align=1 - local.get $0 - i32.const 7108 - i32.load align=1 - i32.store offset=24 align=1 - local.get $0 - i32.const 7112 - i32.load16_s align=1 - i32.store16 offset=28 align=1 - local.get $0 - i32.const 7114 - i32.load8_s - i32.store8 offset=30 + if $if_3 + local.get $4 local.get $0 - i32.const 0 - i32.store8 offset=31 + call $__Z8toString10WasmResult i32.const 1 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $1 + select + local.get $4 + i32.load offset=4 local.get $0 - i32.const 31 + i32.const 255 + i32.and + local.get $1 + select call $_proxy_log - local.get $0 - call $_free - end ;; $if_2 - local.get $1 + drop + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $4 + i32.load + call $_free + end ;; $if_4 + end ;; $if_3 + local.get $3 i32.const 0 i32.store local.get $2 i32.const 0 i32.store i32.const 0 - i32.const 7160 + i32.const 11094 i32.const 5 - local.get $1 + local.get $3 local.get $2 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm - local.set $6 + local.set $4 local.get $2 i32.load - local.set $3 - local.get $6 - local.get $1 + local.set $1 + local.get $4 + local.get $3 i32.load local.tee $8 i32.store - local.get $6 - local.get $3 + local.get $4 + local.get $1 i32.store offset=4 - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $2 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $2 + local.get $3 i32.const 12 i32.store offset=4 local.get $0 - i32.const 7166 + i32.const 11100 i64.load align=1 i64.store align=1 local.get $0 - i32.const 7174 + i32.const 11108 i32.load align=1 i32.store offset=8 align=1 local.get $0 i32.const 0 i32.store8 offset=12 - local.get $4 + local.get $2 i64.const 0 i64.store align=4 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 - local.get $3 + local.get $1 i32.const -17 i32.gt_u - if $if_3 + if $if_5 call $_abort - end ;; $if_3 + end ;; $if_5 block $block block $block_0 - local.get $3 + local.get $1 i32.const 11 i32.lt_u - if $if_4 (result i32) - local.get $4 + if $if_6 (result i32) + local.get $2 i32.const 11 i32.add local.tee $7 - local.get $3 + local.get $1 i32.store8 - local.get $3 - if $if_5 (result i32) - local.get $4 + local.get $1 + if $if_7 (result i32) + local.get $2 local.set $0 br $block_0 else - local.get $4 - end ;; $if_5 + local.get $2 + end ;; $if_7 else - local.get $4 - local.get $3 + local.get $2 + local.get $1 i32.const 16 i32.add i32.const -16 @@ -911,58 +1418,58 @@ call $__Znwm local.tee $0 i32.store - local.get $4 + local.get $2 local.get $7 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 - local.get $3 + local.get $2 + local.get $1 i32.store offset=4 - local.get $4 + local.get $2 i32.const 11 i32.add local.set $7 br $block_0 - end ;; $if_4 + end ;; $if_6 local.set $0 br $block end ;; $block_0 local.get $0 local.get $8 - local.get $3 + local.get $1 call $_memcpy drop end ;; $block local.get $0 - local.get $3 + local.get $1 i32.add i32.const 0 i32.store8 - local.get $1 + local.get $6 + local.get $3 local.get $2 - local.get $4 i32.load - local.get $4 + local.get $2 local.get $7 i32.load8_s local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $1 select - local.get $4 + local.get $2 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $1 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $1 + local.get $6 local.get $0 i32.load offset=8 i32.store offset=8 @@ -973,95 +1480,100 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $1 + local.get $6 i32.load - local.get $1 - local.get $1 + local.get $6 + local.get $6 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $1 select - local.get $1 + local.get $6 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $1 select call $_proxy_log - local.get $1 + drop + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_6 - local.get $1 + if $if_8 + local.get $6 i32.load call $_free - end ;; $if_6 + end ;; $if_8 local.get $7 i32.load8_s i32.const 0 i32.lt_s - if $if_7 - local.get $4 + if $if_9 + local.get $2 i32.load call $_free - end ;; $if_7 - local.get $2 + end ;; $if_9 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_8 + if $if_10 i32.const 0 - i32.const 7179 + i32.const 11113 i32.const 9 - i32.const 7189 + i32.const 11123 i32.const 14 call $_proxy_addHeaderMapValue + drop i32.const 0 - i32.const 7204 + i32.const 11138 i32.const 6 - i32.const 7211 + i32.const 11145 i32.const 10 call $_proxy_replaceHeaderMapValue - local.get $6 + drop + local.get $4 i32.load call $_free - local.get $6 + local.get $4 call $_free local.get $5 call $__ZN6google8protobuf5ValueD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return - end ;; $if_8 - local.get $2 + end ;; $if_10 + local.get $3 i32.load call $_free i32.const 0 - i32.const 7179 + i32.const 11113 i32.const 9 - i32.const 7189 + i32.const 11123 i32.const 14 call $_proxy_addHeaderMapValue + drop i32.const 0 - i32.const 7204 + i32.const 11138 i32.const 6 - i32.const 7211 + i32.const 11145 i32.const 10 call $_proxy_replaceHeaderMapValue - local.get $6 + drop + local.get $4 i32.load call $_free - local.get $6 + local.get $4 call $_free local.get $5 call $__ZN6google8protobuf5ValueD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -1080,54 +1592,73 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + (local $13 i32) + (local $14 i32) + (local $15 i32) + global.get $32 local.set $1 - global.get $30 - i32.const 160 + global.get $32 + i32.const 208 i32.add - global.set $30 + global.set $32 local.get $1 - i32.const 140 + i32.const 188 i32.add local.set $2 local.get $1 i32.const 24 i32.add + local.set $5 + local.get $1 + i32.const 176 + i32.add + local.set $3 + local.get $1 + i32.const 164 + i32.add local.set $4 local.get $1 i32.const 112 i32.add - local.set $9 + local.set $13 local.get $1 - i32.const 84 + i32.const 72 i32.add - local.set $10 + local.set $14 local.get $1 - i32.const 72 + i32.const 152 i32.add local.set $11 local.get $1 + i32.const 140 + i32.add + local.set $12 + local.get $1 + i32.const 100 + i32.add + local.set $7 + local.get $1 i32.const 60 i32.add - local.set $5 + local.set $6 local.get $1 i32.const 48 i32.add - local.set $6 + local.set $8 local.get $1 i32.const 36 i32.add - local.set $7 + local.set $9 local.get $1 call $__ZN6google8protobuf5ValueC2Ev - local.get $4 - i32.const 7036 + local.get $5 + i32.const 11024 i32.store - local.get $4 + local.get $5 i32.const 17 i32.store offset=4 local.get $2 - local.get $4 + local.get $5 i64.load align=4 i64.store align=4 local.get $0 @@ -1135,70 +1666,68 @@ local.get $2 local.get $1 call $__ZN11ContextBase13metadataValueE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf5ValueE + local.tee $10 if $if - i32.const 32 - call $__Znwm - local.tee $3 - i32.const 7084 - i64.load align=1 - i64.store align=1 - local.get $3 - i32.const 7092 - i64.load align=1 - i64.store offset=8 align=1 - local.get $3 - i32.const 7100 - i64.load align=1 - i64.store offset=16 align=1 local.get $3 - i32.const 7108 - i32.load align=1 - i32.store offset=24 align=1 + local.get $10 + call $__Z8toString10WasmResult + i32.const 1 local.get $3 - i32.const 7112 - i32.load16_s align=1 - i32.store16 offset=28 align=1 + i32.load local.get $3 - i32.const 7114 - i32.load8_s - i32.store8 offset=30 local.get $3 + i32.load8_s offset=11 + local.tee $10 i32.const 0 - i32.store8 offset=31 - i32.const 1 + i32.lt_s + local.tee $15 + select local.get $3 - i32.const 31 + i32.load offset=4 + local.get $10 + i32.const 255 + i32.and + local.get $15 + select call $_proxy_log + drop local.get $3 - call $_free + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 + local.get $3 + i32.load + call $_free + end ;; $if_0 end ;; $if - local.get $4 + local.get $2 i64.const 0 i64.store align=4 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $2 i32.const 16 call $__Znwm local.tee $3 i32.store - local.get $4 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $2 i32.const 14 i32.store offset=4 local.get $3 - i32.const 7222 + i32.const 11156 i64.load align=1 i64.store align=1 local.get $3 - i32.const 7230 + i32.const 11164 i32.load align=1 i32.store offset=8 align=1 local.get $3 - i32.const 7234 + i32.const 11168 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $3 @@ -1206,7 +1735,7 @@ i32.store8 offset=14 local.get $1 i32.load offset=8 - i32.const 16072 + i32.const 25272 local.get $1 i32.load offset=20 i32.const 3 @@ -1214,29 +1743,29 @@ select local.tee $3 i32.load8_s offset=11 - local.tee $12 + local.tee $15 i32.const 0 i32.lt_s - local.set $8 - local.get $2 + local.set $10 local.get $4 + local.get $2 local.get $3 i32.load local.get $3 - local.get $8 + local.get $10 select local.get $3 i32.load offset=4 - local.get $12 + local.get $15 i32.const 255 i32.and - local.get $8 + local.get $10 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $3 i64.load align=4 i64.store align=4 - local.get $2 + local.get $4 local.get $3 i32.load offset=8 i32.store offset=8 @@ -1247,211 +1776,208 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $2 + local.get $4 i32.load - local.get $2 - local.get $2 + local.get $4 + local.get $4 i32.load8_s offset=11 local.tee $3 i32.const 0 i32.lt_s - local.tee $8 + local.tee $10 select - local.get $2 + local.get $4 i32.load offset=4 local.get $3 i32.const 255 i32.and - local.get $8 + local.get $10 select call $_proxy_log - local.get $2 + drop + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_0 - local.get $2 + if $if_1 + local.get $4 i32.load call $_free - end ;; $if_0 - local.get $4 + end ;; $if_1 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_1 - local.get $4 + if $if_2 + local.get $2 i32.load call $_free - end ;; $if_1 - local.get $9 + end ;; $if_2 + local.get $13 call $__ZN6google8protobuf6StructC2Ev - local.get $10 + local.get $14 call $__ZN6google8protobuf6StructC2Ev - local.get $4 - i32.const 16913 + local.get $5 + i32.const 26118 i32.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=4 local.get $2 - local.get $4 + local.get $5 i64.load align=4 i64.store align=4 local.get $0 i32.const 0 local.get $2 - local.get $9 + local.get $13 call $__ZN11ContextBase14metadataStructE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf6StructE - if $if_2 - i32.const 32 - call $__Znwm - local.tee $3 - i32.const 7084 - i64.load align=1 - i64.store align=1 - local.get $3 - i32.const 7092 - i64.load align=1 - i64.store offset=8 align=1 - local.get $3 - i32.const 7100 - i64.load align=1 - i64.store offset=16 align=1 - local.get $3 - i32.const 7108 - i32.load align=1 - i32.store offset=24 align=1 - local.get $3 - i32.const 7112 - i32.load16_s align=1 - i32.store16 offset=28 align=1 - local.get $3 - i32.const 7114 - i32.load8_s - i32.store8 offset=30 - local.get $3 - i32.const 0 - i32.store8 offset=31 + local.tee $4 + if $if_3 + local.get $11 + local.get $4 + call $__Z8toString10WasmResult i32.const 1 + local.get $11 + i32.load + local.get $11 + local.get $11 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $11 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $3 - i32.const 31 + select call $_proxy_log - local.get $3 - call $_free - end ;; $if_2 - local.get $4 - i32.const 16913 + drop + local.get $11 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $11 + i32.load + call $_free + end ;; $if_4 + end ;; $if_3 + local.get $5 + i32.const 26118 i32.store - local.get $4 + local.get $5 i32.const 0 i32.store offset=4 local.get $2 - local.get $4 + local.get $5 i64.load align=4 i64.store align=4 local.get $0 i32.const 0 local.get $2 - local.get $10 + local.get $14 call $__ZN11ContextBase14metadataStructE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf6StructE - if $if_3 - i32.const 32 - call $__Znwm - local.tee $0 - i32.const 7084 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7092 - i64.load align=1 - i64.store offset=8 align=1 - local.get $0 - i32.const 7100 - i64.load align=1 - i64.store offset=16 align=1 - local.get $0 - i32.const 7108 - i32.load align=1 - i32.store offset=24 align=1 - local.get $0 - i32.const 7112 - i32.load16_s align=1 - i32.store16 offset=28 align=1 - local.get $0 - i32.const 7114 - i32.load8_s - i32.store8 offset=30 + local.tee $0 + if $if_5 + local.get $12 local.get $0 - i32.const 0 - i32.store8 offset=31 + call $__Z8toString10WasmResult i32.const 1 + local.get $12 + i32.load + local.get $12 + local.get $12 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $4 + select + local.get $12 + i32.load offset=4 local.get $0 - i32.const 31 + i32.const 255 + i32.and + local.get $4 + select call $_proxy_log - local.get $0 - call $_free - end ;; $if_3 - local.get $5 + drop + local.get $12 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $12 + i32.load + call $_free + end ;; $if_6 + end ;; $if_5 + local.get $6 i32.const 0 i32.store offset=8 - local.get $5 + local.get $6 i32.const 7 i32.store8 offset=11 - local.get $5 - i32.const 7237 + local.get $6 + i32.const 11171 i32.load align=1 i32.store align=1 - local.get $5 - i32.const 7241 + local.get $6 + i32.const 11175 i32.load16_s align=1 i32.store16 offset=4 align=1 - local.get $5 - i32.const 7243 + local.get $6 + i32.const 11177 i32.load8_s i32.store8 offset=6 - local.get $5 + local.get $6 i32.const 0 i32.store8 offset=7 - local.get $6 + local.get $8 i64.const 0 i64.store align=4 - local.get $6 + local.get $8 i32.const 0 i32.store offset=8 - local.get $6 + local.get $8 i32.const 32 call $__Znwm local.tee $0 i32.store - local.get $6 + local.get $8 i32.const -2147483616 i32.store offset=8 - local.get $6 + local.get $8 i32.const 20 i32.store offset=4 local.get $0 - i32.const 7245 + i32.const 11179 i64.load align=1 i64.store align=1 local.get $0 - i32.const 7253 + i32.const 11187 i64.load align=1 i64.store offset=8 align=1 local.get $0 - i32.const 7261 + i32.const 11195 i32.load align=1 i32.store offset=16 align=1 local.get $0 i32.const 0 i32.store8 offset=20 - local.get $9 + local.get $13 i32.const 12 i32.add - local.get $6 + local.get $8 call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE2atERKS8_ local.tee $0 i32.load offset=8 - i32.const 16072 + i32.const 25272 local.get $0 i32.load offset=20 i32.const 3 @@ -1459,29 +1985,29 @@ select local.tee $0 i32.load8_s offset=11 - local.tee $8 + local.tee $3 i32.const 0 i32.lt_s - local.set $3 - local.get $11 + local.set $4 local.get $5 + local.get $6 local.get $0 i32.load local.get $0 - local.get $3 + local.get $4 select local.get $0 i32.load offset=4 - local.get $8 + local.get $3 i32.const 255 i32.and - local.get $3 + local.get $4 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $11 + local.get $5 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1491,14 +2017,14 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $4 - local.get $11 - i32.const 7266 + local.get $2 + local.get $5 + i32.const 18761 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 i64.load align=4 i64.store align=4 - local.get $4 + local.get $2 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1508,46 +2034,46 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $7 + local.get $9 i64.const 0 i64.store align=4 - local.get $7 + local.get $9 i32.const 0 i32.store offset=8 - local.get $7 + local.get $9 i32.const 32 call $__Znwm local.tee $0 i32.store - local.get $7 + local.get $9 i32.const -2147483616 i32.store offset=8 - local.get $7 + local.get $9 i32.const 20 i32.store offset=4 local.get $0 - i32.const 7245 + i32.const 11179 i64.load align=1 i64.store align=1 local.get $0 - i32.const 7253 + i32.const 11187 i64.load align=1 i64.store offset=8 align=1 local.get $0 - i32.const 7261 + i32.const 11195 i32.load align=1 i32.store offset=16 align=1 local.get $0 i32.const 0 i32.store8 offset=20 - local.get $10 + local.get $14 i32.const 12 i32.add - local.get $7 + local.get $9 call $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE2atERKS8_ local.tee $0 i32.load offset=8 - i32.const 16072 + i32.const 25272 local.get $0 i32.load offset=20 i32.const 3 @@ -1555,29 +2081,29 @@ select local.tee $0 i32.load8_s offset=11 - local.tee $8 + local.tee $3 i32.const 0 i32.lt_s - local.set $3 + local.set $4 + local.get $7 local.get $2 - local.get $4 local.get $0 i32.load local.get $0 - local.get $3 + local.get $4 select local.get $0 i32.load offset=4 - local.get $8 + local.get $3 i32.const 255 i32.and - local.get $3 + local.get $4 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $7 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1588,96 +2114,97 @@ i32.const 0 i32.store offset=8 i32.const 0 - local.get $2 + local.get $7 i32.load - local.get $2 - local.get $2 + local.get $7 + local.get $7 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 select - local.get $2 + local.get $7 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $4 select call $_proxy_log - local.get $2 + drop + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_4 - local.get $2 + if $if_7 + local.get $7 i32.load call $_free - end ;; $if_4 - local.get $7 + end ;; $if_7 + local.get $9 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 - local.get $7 + if $if_8 + local.get $9 i32.load call $_free - end ;; $if_5 - local.get $4 + end ;; $if_8 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_6 - local.get $4 + if $if_9 + local.get $2 i32.load call $_free - end ;; $if_6 - local.get $11 + end ;; $if_9 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_7 - local.get $11 + if $if_10 + local.get $5 i32.load call $_free - end ;; $if_7 - local.get $6 + end ;; $if_10 + local.get $8 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 - local.get $6 + if $if_11 + local.get $8 i32.load call $_free - end ;; $if_8 - local.get $5 + end ;; $if_11 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_9 - local.get $10 + if $if_12 + local.get $14 call $__ZN6google8protobuf6StructD2Ev - local.get $9 + local.get $13 call $__ZN6google8protobuf6StructD2Ev local.get $1 call $__ZN6google8protobuf5ValueD2Ev local.get $1 - global.set $30 + global.set $32 i32.const 0 return - end ;; $if_9 - local.get $5 + end ;; $if_12 + local.get $6 i32.load call $_free - local.get $10 + local.get $14 call $__ZN6google8protobuf6StructD2Ev - local.get $9 + local.get $13 call $__ZN6google8protobuf6StructD2Ev local.get $1 call $__ZN6google8protobuf5ValueD2Ev local.get $1 - global.set $30 + global.set $32 i32.const 0 ) @@ -1686,12 +2213,12 @@ (param $1 i32) (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -1710,7 +2237,7 @@ i32.add local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -1718,7 +2245,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 1058 @@ -1730,9 +2257,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8068 + i32.const 11601 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 8096 + i32.const 11629 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $1 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE @@ -1745,7 +2272,7 @@ i32.add local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -1761,47 +2288,48 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $7 + global.get $32 i32.const -64 i32.sub - global.set $30 - local.get $6 + global.set $32 + local.get $7 i32.const 24 i32.add - local.set $7 - local.get $6 + local.set $3 + local.get $7 i32.const 12 i32.add local.set $9 - local.get $6 + local.get $7 local.tee $1 i32.const 48 i32.add - local.tee $3 + local.tee $5 i32.const 0 i32.store local.get $1 i32.const 36 i32.add - local.tee $5 + local.tee $6 i32.const 0 i32.store i32.const 0 - i32.const 7160 + i32.const 11094 i32.const 5 - local.get $3 local.get $5 + local.get $6 call $_proxy_getHeaderMapValue + drop i32.const 8 call $__Znwm local.set $4 - local.get $5 + local.get $6 i32.load local.set $2 local.get $4 - local.get $3 + local.get $5 i32.load i32.store local.get $4 @@ -1813,14 +2341,14 @@ i32.sub i32.load call $__ZNSt3__29to_stringEj - local.get $7 + local.get $6 local.get $9 - i32.const 7268 + i32.const 11200 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 i64.store align=4 - local.get $7 + local.get $6 local.get $0 i32.load offset=8 i32.store offset=8 @@ -1831,8 +2359,8 @@ i32.const 0 i32.store offset=8 local.get $5 - local.get $7 - i32.const 7266 + local.get $6 + i32.const 18761 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 i64.load align=4 @@ -1976,6 +2504,7 @@ local.get $2 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 @@ -2003,12 +2532,12 @@ i32.load call $_free end ;; $if_4 - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_5 @@ -2022,8 +2551,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 return end ;; $if_6 local.get $9 @@ -2034,8 +2563,8 @@ call $_free local.get $4 call $_free - local.get $6 - global.set $30 + local.get $7 + global.set $32 ) (func $__ZN14ExampleContext6onDoneEv (type $0) @@ -2043,17 +2572,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $2 + global.set $32 + local.get $1 i32.const 12 i32.add - local.set $1 - local.get $2 + local.tee $2 local.get $0 i32.const -64 i32.sub @@ -2061,7 +2589,7 @@ call $__ZNSt3__29to_stringEj local.get $1 local.get $2 - i32.const 7275 + i32.const 11207 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc local.tee $0 i64.load align=4 @@ -2095,6 +2623,7 @@ local.get $3 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -2109,15 +2638,15 @@ i32.const 0 i32.ge_s if $if_0 - local.get $2 - global.set $30 + local.get $1 + global.set $32 return end ;; $if_0 local.get $2 i32.load call $_free - local.get $2 - global.set $30 + local.get $1 + global.set $32 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -2125,7 +2654,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5648 + i32.const 6688 i32.store local.get $0 i32.load offset=52 @@ -2314,7 +2843,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 5680 + i32.const 6720 i32.store local.get $0 i32.load offset=148 @@ -2323,30 +2852,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -2370,30 +2899,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -2417,46 +2946,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 + call_indirect $28 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -2466,59 +2978,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $28 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -2526,19 +3021,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -2574,19 +3069,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $32 block $block local.get $0 i32.load offset=84 @@ -2594,10 +3082,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -2605,7 +3090,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -2627,55 +3112,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -2683,13 +3168,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -2709,244 +3194,557 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $32 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 43 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=20 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $6 + call_indirect $28 (type $1) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 - i32.load - local.set $0 - local.get $8 - i32.const 0 - i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 - return - end ;; $block - local.get $6 - global.set $30 - ) - - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=124 - local.tee $2 - if $if + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block local.get $0 - i32.load offset=120 - local.get $2 - local.get $2 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 i32.const -1 i32.add - local.tee $4 + local.tee $7 i32.and i32.eqz local.tee $6 - if $if_0 (result i32) + if $if_11 (result i32) local.get $1 - local.get $4 + local.get $7 i32.and else - local.get $2 + local.get $5 local.get $1 i32.gt_u - if $if_1 (result i32) + if $if_12 (result i32) local.get $1 else - local.get $2 - if $if_2 (result i32) + local.get $5 + if $if_13 (result i32) local.get $1 - local.get $2 + local.get $5 i32.rem_u else i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block - block $block_0 - local.get $6 - if $if_5 - loop $loop - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $6 - if $if_6 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_6 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block - unreachable - end ;; $loop - unreachable + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 else - loop $loop_0 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) local.get $4 - local.get $2 - i32.ge_u - if $if_8 (result i32) - local.get $2 - if $if_9 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 + return + end ;; $block + local.get $8 + global.set $32 + ) + + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=124 + local.tee $2 + if $if + local.get $0 + i32.load offset=120 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $2 + if $if_2 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_3 + local.get $3 + i32.load + local.tee $3 + if $if_4 + block $block + block $block_0 + local.get $6 + if $if_5 + loop $loop + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $6 + if $if_6 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_6 + local.get $3 + i32.load + local.tee $3 + br_if $loop + br $block + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_7 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_8 (result i32) + local.get $2 + if $if_9 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $4 + end ;; $if_8 local.get $5 i32.ne br_if $block @@ -2970,11 +3768,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) return end ;; $block end ;; $if_4 @@ -3117,11 +3915,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $3) @@ -3268,11 +4066,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $3) @@ -3419,11 +4217,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $2) @@ -3439,68 +4237,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $32 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -3513,24 +4302,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -3551,7 +4340,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -3560,22 +4349,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -3592,197 +4381,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 43 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $8 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) - local.get $7 + call_indirect $28 (type $2) + local.get $6 i32.load - local.set $0 - local.get $7 + local.set $1 + local.get $6 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $6 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $8 - local.get $0 - i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $3 - if $if_15 (result i32) - local.get $1 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $7 local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_16 - local.get $5 - i32.load - local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 - local.get $1 - local.get $5 - i32.load offset=4 - local.tee $3 - i32.eq + local.get $3 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $6 + local.get $0 + i32.const 120 + i32.add + local.set $7 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $7 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $11 + if $if_38 (result i32) + local.get $1 + local.get $3 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) + local.get $1 + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + if $if_41 + local.get $5 + i32.load + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -3791,82 +4891,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $7 + call_indirect $28 (type $3) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -3880,82 +4980,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -3964,44 +5064,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $6 + call_indirect $28 (type $3) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $30 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $1) @@ -4018,17 +5118,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $8 + global.get $32 i32.const 16 i32.add - local.set $10 + global.set $32 local.get $8 i32.const 8 i32.add @@ -4036,31 +5131,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -4084,42 +5175,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -4128,39 +5219,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -4171,59 +5262,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 43 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -4236,133 +5638,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -4370,12 +5772,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -4383,9 +5785,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $7 i32.load local.set $0 @@ -4393,58 +5795,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -4457,82 +5859,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -4564,11 +5966,11 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 return end ;; $block local.get $8 - global.set $30 + global.set $32 ) (func $__ZN11ContextBase13metadataValueE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf5ValueE (type $16) @@ -4592,13 +5994,12 @@ (local $16 i32) (local $17 i32) (local $18 i64) - (local $19 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 80 i32.add @@ -4608,11 +6009,11 @@ local.get $0 i32.load i32.load offset=16 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) if $if local.get $0 local.get $0 @@ -4620,7 +6021,7 @@ i32.load offset=12 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $7 if $if_0 local.get $7 @@ -4641,26 +6042,23 @@ call $__ZN11ContextBase13metadataValueE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf5ValueE local.set $0 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 end ;; $if - local.get $2 - i64.load align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $18 - i32.wrap_i64 - local.set $6 local.get $4 i64.const 0 i64.store align=4 local.get $4 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $10 + local.get $2 + i32.load offset=4 + local.tee $6 i32.const -17 i32.gt_u if $if_1 @@ -4673,14 +6071,11 @@ local.get $5 i32.const 48 i32.add - local.set $10 + local.set $11 local.get $5 i32.const 32 i32.add local.set $8 - local.get $19 - i32.wrap_i64 - local.set $11 block $block block $block_0 local.get $6 @@ -4688,8 +6083,8 @@ i32.lt_u if $if_2 (result i32) local.get $4 - local.get $18 - i64.store8 offset=11 + local.get $6 + i32.store8 offset=11 local.get $6 if $if_3 (result i32) local.get $4 @@ -4723,7 +6118,7 @@ br $block end ;; $block_0 local.get $7 - local.get $11 + local.get $10 local.get $6 call $_memcpy drop @@ -4766,11 +6161,11 @@ local.get $0 i32.load i32.load offset=20 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz if $if_5 local.get $2 @@ -4811,7 +6206,7 @@ if $if_8 local.get $3 call $__ZN6google8protobuf5Value5ClearEv - i32.const 5 + i32.const 4 local.set $0 br $block_2 end ;; $if_8 @@ -4922,7 +6317,7 @@ i32.store offset=4 local.get $0 i32.load offset=4 - local.set $11 + local.set $10 local.get $0 i32.const 8 i32.add @@ -4946,10 +6341,10 @@ i32.shl local.get $0 i32.add - local.get $11 + local.get $10 i32.store offset=12 local.get $7 - local.get $11 + local.get $10 i32.const 1 i32.add i32.add @@ -4979,7 +6374,7 @@ end ;; $if_9 local.get $4 i32.load offset=4 - local.tee $11 + local.tee $10 local.get $0 i32.eq if $if_13 @@ -5000,27 +6395,21 @@ i32.load offset=12 call $__ZN6google8protobuf11MessageLite14ParseFromArrayEPKvi if $if_14 - local.get $2 - i64.load align=4 - local.tee $19 - i64.const 32 - i64.shr_u - local.tee $18 - i32.wrap_i64 - local.set $6 local.get $8 i64.const 0 i64.store align=4 local.get $8 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $12 + local.get $2 + i32.load offset=4 + local.tee $6 i32.const -17 i32.gt_u br_if $block_5 - local.get $19 - i32.wrap_i64 - local.set $12 block $block_6 block $block_7 local.get $6 @@ -5028,8 +6417,8 @@ i32.lt_u if $if_15 (result i32) local.get $8 - local.get $18 - i64.store8 offset=11 + local.get $6 + i32.store8 offset=11 local.get $6 if $if_16 (result i32) local.get $8 @@ -5073,28 +6462,28 @@ i32.add i32.const 0 i32.store8 - local.get $10 + local.get $11 local.get $1 i32.store - local.get $10 + local.get $11 local.get $8 i64.load align=4 i64.store offset=4 align=4 - local.get $10 + local.get $11 local.get $8 i32.load offset=8 i32.store offset=12 local.get $16 - local.get $10 + local.get $11 call $__ZNSt3__213unordered_mapINS_4pairIiNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEN6google8protobuf5ValueE8PairHashNS_8equal_toIS8_EENS5_INS1_IKS8_SB_EEEEEixERSF_ local.get $5 call $__ZN6google8protobuf5Value8CopyFromERKS1_ - local.get $10 + local.get $11 i32.load8_s offset=15 i32.const 0 i32.lt_s if $if_17 - local.get $10 + local.get $11 i32.load offset=4 call $_free end ;; $if_17 @@ -5105,7 +6494,7 @@ i32.const 16 i32.add local.tee $2 - local.get $11 + local.get $10 i32.ne br_if $loop_0 end ;; $loop_0 @@ -5137,7 +6526,7 @@ call $__ZN6google8protobuf5Value8CopyFromERKS1_ i32.const 0 else - i32.const 2 + i32.const 1 end ;; $if_19 local.set $0 local.get $13 @@ -5157,7 +6546,7 @@ call $_free end ;; $if_20 local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -6436,11 +7825,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6956 + i32.const 10944 i32.store local.get $2 - i32.const 5392 - i32.const 50 + i32.const 6424 + i32.const 111 call $___cxa_throw else local.get $4 @@ -6666,11 +8055,11 @@ local.tee $2 call $__ZNSt11logic_errorC2EPKc local.get $2 - i32.const 6956 + i32.const 10944 i32.store local.get $2 - i32.const 5392 - i32.const 50 + i32.const 6424 + i32.const 111 call $___cxa_throw end ;; $if_1 local.get $1 @@ -7198,12 +8587,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=20 i32.const 3 @@ -7215,7 +8604,7 @@ i32.const 3 i32.store offset=20 local.get $0 - i32.const 16072 + i32.const 25272 i32.store offset=8 end ;; $if local.get $1 @@ -7236,7 +8625,7 @@ i32.const 22 i32.store offset=4 local.get $2 - i32.const 7137 + i32.const 11071 i32.const 22 call $_memcpy drop @@ -7263,7 +8652,7 @@ local.tee $0 i32.load local.tee $3 - i32.const 16072 + i32.const 25272 i32.eq if $if_1 local.get $0 @@ -7281,14 +8670,14 @@ i32.ge_s if $if_2 local.get $1 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 i32.load call $_free local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $2) @@ -7296,12 +8685,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $2 i32.eqz if $if @@ -7309,7 +8698,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7358 + i32.const 11403 i32.store offset=4 local.get $3 i32.const 370 @@ -7321,7 +8710,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7407 + i32.const 11452 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -7339,7 +8728,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -7352,13 +8741,13 @@ i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 55 + i32.const 116 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -7367,7 +8756,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEEEvPv (type $0) @@ -7400,13 +8789,12 @@ (local $11 i32) (local $12 i32) (local $13 i64) - (local $14 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 56 i32.add @@ -7416,11 +8804,11 @@ local.get $0 i32.load i32.load offset=16 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) if $if local.get $0 local.get $0 @@ -7428,10 +8816,10 @@ i32.load offset=12 i32.const 63 i32.and - call_indirect $26 (type $5) - local.tee $8 + call_indirect $28 (type $5) + local.tee $6 if $if_0 - local.get $8 + local.get $6 i32.load offset=68 local.set $0 local.get $5 @@ -7449,26 +8837,23 @@ call $__ZN11ContextBase14metadataStructE12MetadataTypeNSt3__217basic_string_viewIcNS1_11char_traitsIcEEEEPN6google8protobuf6StructE local.set $0 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 end ;; $if - local.get $2 - i64.load align=4 - local.tee $14 - i64.const 32 - i64.shr_u - local.tee $13 - i32.wrap_i64 - local.set $6 local.get $4 i64.const 0 i64.store align=4 local.get $4 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $11 + local.get $2 + i32.load offset=4 + local.tee $7 i32.const -17 i32.gt_u if $if_1 @@ -7485,37 +8870,34 @@ local.get $5 i32.const 8 i32.add - local.set $7 - local.get $14 - i32.wrap_i64 - local.set $11 + local.set $8 block $block block $block_0 - local.get $6 + local.get $7 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $4 - local.get $13 - i64.store8 offset=11 - local.get $6 + local.get $7 + i32.store8 offset=11 + local.get $7 if $if_3 (result i32) local.get $4 - local.set $8 + local.set $6 br $block_0 else local.get $4 end ;; $if_3 else local.get $4 - local.get $6 + local.get $7 i32.const 16 i32.add i32.const -16 i32.and local.tee $12 call $__Znwm - local.tee $8 + local.tee $6 i32.store local.get $4 local.get $12 @@ -7523,40 +8905,40 @@ i32.or i32.store offset=8 local.get $4 - local.get $6 + local.get $7 i32.store offset=4 br $block_0 end ;; $if_2 - local.set $8 + local.set $6 br $block end ;; $block_0 - local.get $8 - local.get $11 local.get $6 + local.get $11 + local.get $7 call $_memcpy drop end ;; $block local.get $6 - local.get $8 + local.get $7 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $8 local.get $1 i32.store - local.get $7 + local.get $8 local.get $4 i64.load align=4 i64.store offset=4 align=4 - local.get $7 + local.get $8 local.get $4 i32.load offset=8 i32.store offset=12 local.get $0 i32.const 44 i32.add - local.tee $1 - local.get $7 + local.tee $6 + local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_4pairIiNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEN6google8protobuf5ValueEEENS_22__unordered_map_hasherIS9_SD_8PairHashLb1EEENS_21__unordered_map_equalIS9_SD_NS_8equal_toIS9_EELb1EEENS6_ISD_EEE4findIS9_EENS_15__hash_iteratorIPNS_11__hash_nodeISD_PvEEEERKT_ local.tee $0 if $if_4 @@ -7577,7 +8959,7 @@ local.get $9 i32.const 0 i32.store - i32.const 0 + local.get $1 local.get $13 i32.wrap_i64 local.get $13 @@ -7609,7 +8991,7 @@ call $__ZN6google8protobuf6Struct8CopyFromERKS1_ i32.const 0 else - i32.const 5 + i32.const 4 end ;; $if_6 local.set $0 local.get $10 @@ -7623,8 +9005,8 @@ local.get $3 call $__ZN6google8protobuf6Struct5ClearEv else - local.get $1 - local.get $7 + local.get $6 + local.get $8 call $__ZNSt3__213unordered_mapINS_4pairIiNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEN6google8protobuf6StructE8PairHashNS_8equal_toIS8_EENS5_INS1_IKS8_SB_EEEEEixERSF_ local.get $3 call $__ZN6google8protobuf6Struct8CopyFromERKS1_ @@ -7632,17 +9014,17 @@ local.set $0 end ;; $if_7 end ;; $if_4 - local.get $7 + local.get $8 i32.load8_s offset=15 i32.const 0 i32.lt_s if $if_8 - local.get $7 + local.get $8 i32.load offset=4 call $_free end ;; $if_8 local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -8381,7 +9763,7 @@ i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ (type $3) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -8714,638 +10096,240 @@ return end ;; $if_27 local.get $1 - i32.load offset=32 - local.tee $0 + i32.load offset=12 + local.set $0 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.const 0 + i32.store offset=12 + local.get $0 if $if_28 local.get $0 local.get $0 i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=4 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 + call_indirect $28 (type $0) end ;; $if_28 local.get $1 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) + (func $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $2) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - local.get $1 + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=8 + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.tee $8 i32.load local.set $4 local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 + i32.load offset=24 + local.set $7 + local.get $2 + i32.load + local.set $6 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $6 + i32.store + local.get $0 + local.get $1 + local.get $5 + local.get $7 + i32.const 1 i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl + i32.const 416 i32.add + call_indirect $28 (type $2) + local.get $5 i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 + local.set $1 + local.get $5 + i32.const 0 + i32.store local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 + if $if + local.get $1 + i32.load + call $_free + local.get $1 + call $_free + end ;; $if block $block - local.get $8 - if $if_5 - loop $loop + local.get $3 + i32.load offset=144 + local.tee $2 + i32.eqz + br_if $block + local.get $3 + i32.load offset=140 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $3 + local.get $4 + i32.and + else + local.get $4 + local.get $2 + i32.lt_u + if $if_1 (result i32) local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 + else local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 + if $if_2 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_0 + local.get $6 + if $if_3 + loop $loop local.get $4 local.get $1 i32.load offset=4 local.tee $2 i32.eq - if $if_8 + local.tee $6 + local.get $2 + local.get $3 + i32.and + local.get $7 + i32.eq + i32.or + if $if_4 + local.get $6 + if $if_5 + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_5 + local.get $1 + i32.load + local.tee $1 + br_if $loop + end ;; $if_4 + end ;; $loop + else + loop $loop_0 + block $block_1 local.get $4 local.get $1 - i32.load offset=8 + i32.load offset=4 + local.tee $3 i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) + if $if_6 + local.get $4 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_0 + else local.get $3 - if $if_10 (result i32) + local.get $2 + i32.ge_u + if $if_7 (result i32) local.get $2 - local.get $3 - i32.rem_u + if $if_8 (result i32) + local.get $3 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_8 else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 + local.get $3 + end ;; $if_7 + local.get $7 + i32.ne + br_if $block_1 + end ;; $if_6 + local.get $1 + i32.load + local.tee $1 + br_if $loop_0 + end ;; $block_1 + end ;; $loop_0 + end ;; $if_3 + local.get $5 + global.set $32 + return + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.load8_s offset=4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=8 + i32.const 140 + i32.add + local.get $8 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $5 + global.set $32 return end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=12 - local.set $0 - local.get $1 - i32.const 0 - i32.store offset=12 - local.get $0 - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_28 - local.get $1 - call $_free - ) - - (func $__ZN21GrpcStreamHandlerBase13doRemoteCloseE10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - global.get $30 - local.set $5 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.load offset=8 - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.tee $8 - i32.load - local.set $4 - local.get $0 - i32.load - i32.load offset=24 - local.set $7 - local.get $2 - i32.load - local.set $6 - local.get $2 - i32.const 0 - i32.store - local.get $5 - local.get $6 - i32.store - local.get $0 - local.get $1 - local.get $5 - local.get $7 - i32.const 1 - i32.and - i32.const 208 - i32.add - call_indirect $26 (type $2) - local.get $5 - i32.load - local.set $1 - local.get $5 - i32.const 0 - i32.store - local.get $1 - if $if - local.get $1 - i32.load - call $_free - local.get $1 - call $_free - end ;; $if - block $block - local.get $3 - i32.load offset=144 - local.tee $2 - i32.eqz - br_if $block - local.get $3 - i32.load offset=140 - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $3 - i32.and - i32.eqz - local.tee $6 - if $if_0 (result i32) - local.get $3 - local.get $4 - i32.and - else - local.get $4 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $2 - if $if_2 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - br_if $block - local.get $1 - i32.load - local.tee $1 - i32.eqz - br_if $block - block $block_0 - local.get $6 - if $if_3 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $3 - i32.and - local.get $7 - i32.eq - i32.or - if $if_4 - local.get $6 - if $if_5 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_5 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_4 - end ;; $loop - else - loop $loop_0 - block $block_1 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $3 - i32.eq - if $if_6 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block_0 - else - local.get $3 - local.get $2 - i32.ge_u - if $if_7 (result i32) - local.get $2 - if $if_8 (result i32) - local.get $3 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_8 - else - local.get $3 - end ;; $if_7 - local.get $7 - i32.ne - br_if $block_1 - end ;; $if_6 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_1 - end ;; $loop_0 - end ;; $if_3 - local.get $5 - global.set $30 - return - end ;; $block_0 - local.get $0 - i32.const 1 - i32.store8 offset=5 - local.get $0 - i32.load8_s offset=4 - i32.eqz - br_if $block - local.get $0 - i32.load offset=8 - i32.const 140 - i32.add - local.get $8 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ - local.get $5 - global.set $30 - return - end ;; $block - local.get $5 - global.set $30 + global.set $32 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $5) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5752 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5752 - i32.store - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $1) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -9384,107 +10368,64 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5496 - i32.store - local.get $0 - local.get $1 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7765 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $5) - (param $0 i32) - (result i32) - i32.const 4592 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv (type $5) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5796 + i32.const 6536 i32.store local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE (type $3) - (param $0 i32) - (param $1 i32) local.get $1 - i32.const 5796 i32.store ) - (func $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ (type $1) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) - local.get $2 - i32.load - local.set $1 local.get $3 i32.load - local.set $4 + local.set $5 local.get $3 i32.load offset=4 - local.set $3 + local.set $4 i32.const 160 call $__Znwm - local.tee $2 + local.tee $3 i64.const 0 i64.store offset=4 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=12 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=20 - local.get $2 + local.get $3 i64.const 0 i64.store offset=24 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=32 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=40 - local.get $2 + local.get $3 i64.const 0 i64.store offset=44 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=52 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=60 - local.get $2 + local.get $3 i32.const -64 i32.sub - local.get $1 - i32.store local.get $2 - i32.const 5680 i32.store - local.get $2 + local.get $3 + i32.const 6720 + i32.store + local.get $3 i32.const 68 i32.add local.tee $1 @@ -9493,7 +10434,7 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const -17 i32.gt_u if $if @@ -9501,114 +10442,93 @@ end ;; $if block $block block $block_0 - local.get $3 + local.get $4 i32.const 11 i32.lt_u if $if_0 - local.get $2 local.get $3 + local.get $4 i32.store8 offset=79 - local.get $3 + local.get $4 br_if $block_0 else local.get $1 - local.get $3 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and - local.tee $5 + local.tee $2 call $__Znwm local.tee $1 i32.store + local.get $3 local.get $2 - local.get $5 i32.const -2147483648 i32.or i32.store offset=76 - local.get $2 local.get $3 + local.get $4 i32.store offset=72 br $block_0 end ;; $if_0 br $block end ;; $block_0 local.get $1 + local.get $5 local.get $4 - local.get $3 call $_memcpy drop end ;; $block local.get $1 - local.get $3 + local.get $4 i32.add i32.const 0 i32.store8 - local.get $2 + local.get $3 i64.const 0 i64.store offset=80 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=88 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=96 - local.get $2 + local.get $3 i64.const 0 i64.store offset=100 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=108 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=116 - local.get $2 + local.get $3 i64.const 0 i64.store offset=120 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=128 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=136 - local.get $2 + local.get $3 i64.const 0 i64.store offset=140 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=148 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=156 - local.get $2 - i32.const 5576 + local.get $3 + i32.const 6616 i32.store local.get $0 - local.get $2 + local.get $3 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 8063 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv (type $5) - (param $0 i32) - (result i32) - i32.const 4624 - ) - (func $__ZNK6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap10FindHelperERKS8_PNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISF_PvEElEE (type $1) (param $0 i32) (param $1 i32) @@ -9623,12 +10543,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $10 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.load local.get $2 @@ -9814,7 +10734,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block_0 end ;; $if_2 @@ -9934,7 +10854,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block else @@ -9954,7 +10874,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $6) @@ -10139,118 +11059,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 - i32.const -64 - i32.sub - global.set $30 + global.get $32 + i32.const 48 + i32.add + global.set $32 local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5752 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $0 - i32.const 5796 - i32.store - local.get $0 + i32.const 6784 + i32.store offset=12 local.get $0 - i32.store offset=16 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 + local.get $1 + i32.const 6800 + i32.store offset=12 local.get $0 - i32.const 16913 - i32.store offset=48 + i32.const 26118 + i32.store local.get $0 i32.const 0 - i32.store offset=52 + i32.store offset=4 local.get $0 - i32.const 56 + i32.const 40 i32.add - local.tee $1 + local.tee $3 local.get $0 - i64.load offset=48 align=4 + i64.load align=4 i64.store align=4 local.get $2 - local.get $0 local.get $1 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ - local.get $0 - i32.load offset=16 - local.tee $1 - local.get $0 - i32.eq + local.get $1 + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $1 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $1 - if $if_0 - local.get $1 - i32.load - i32.load offset=20 - local.set $3 - local.get $1 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.load offset=16 + i32.load offset=12 + i32.load offset=4 local.tee $1 - local.get $2 - i32.eq - if $if_1 - local.get $1 - i32.load - i32.load offset=16 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - global.set $30 - return - end ;; $if_1 - local.get $1 i32.eqz - if $if_2 + if $if_0 local.get $0 - global.set $30 + global.set $32 return - end ;; $if_2 - local.get $1 + end ;; $if_0 + local.get $2 i32.load - i32.load offset=20 - local.set $2 local.get $1 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $5) @@ -10265,7 +11148,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $5) @@ -10317,17 +11200,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4632 + i32.const 4584 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 56 + i32.const 117 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -10348,68 +11231,68 @@ (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $0 - global.set $30 - i32.const 15932 + global.set $32 + i32.const 25132 i32.const 0 i32.store - i32.const 15924 - i32.const 16072 + i32.const 25124 + i32.const 25272 i32.store - i32.const 15928 + i32.const 25128 i32.const 0 i32.store - i32.const 15936 + i32.const 25136 i32.const 0 i32.store - i32.const 15920 - i32.const 5856 + i32.const 25120 + i32.const 6840 i32.store - i32.const 15944 + i32.const 25144 call $__ZN6google8protobuf6StructC2Ev - i32.const 57 - i32.const 15944 + i32.const 118 + i32.const 25144 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15976 - i32.const 5944 + i32.const 25176 + i32.const 6928 i32.store - i32.const 15980 + i32.const 25180 i32.const 0 i32.store - i32.const 15992 + i32.const 25192 i32.const 0 i32.store - i32.const 5832 + i32.const 6816 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 15996 + i32.const 25196 i32.const 0 i32.store - i32.const 57 - i32.const 15976 + i32.const 118 + i32.const 25176 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 16032 + i32.const 25232 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 57 - i32.const 16032 + i32.const 118 + i32.const 25232 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15928 - i32.const 15976 + i32.const 25128 + i32.const 25176 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 i64.const 0 @@ -10427,7 +11310,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -10439,7 +11322,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 i32.const 4 @@ -10453,7 +11336,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -10469,14 +11352,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 i32.load offset=4 @@ -10498,7 +11381,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $2 i32.const 915 @@ -10510,7 +11393,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9463 + i32.const 12998 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10547,11 +11430,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -10605,14 +11488,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -10644,19 +11527,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10750 + i32.const 14285 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10758 + i32.const 14293 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10766 + i32.const 14301 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10774 + i32.const 14309 i32.load8_s i32.store8 offset=24 local.get $1 @@ -10760,18 +11643,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4640 + i32.const 4768 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 10316 - i32.const 10357 + i32.const 13851 + i32.const 13892 i32.const 92 - i32.const 10406 + i32.const 13941 call $___assert_fail end ;; $if ) @@ -10788,12 +11671,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 40 i32.add @@ -10850,7 +11733,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6496 + i32.const 7496 i32.store local.get $3 local.get $5 @@ -11160,7 +12043,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_8 @@ -11168,7 +12051,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -11185,7 +12068,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $1 i32.const 1 i32.and @@ -11294,7 +12177,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $2 i32.const 1 i32.and @@ -11313,7 +12196,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $0 i32.const 1 i32.and @@ -11352,12 +12235,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -11370,7 +12253,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8343 + i32.const 11878 i32.store offset=4 local.get $3 i32.const 1505 @@ -11382,7 +12265,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8395 + i32.const 11930 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -11404,7 +12287,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -11412,7 +12295,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8343 + i32.const 11878 i32.store offset=4 local.get $2 i32.const 1506 @@ -11424,7 +12307,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8426 + i32.const 11961 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11440,7 +12323,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -11459,7 +12342,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $1 i32.const 1 i32.and @@ -11610,7 +12493,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $1 i32.const 1 i32.and @@ -11720,18 +12603,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $1 i32.const 1 i32.and @@ -11803,7 +12686,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) select local.set $3 local.get $4 @@ -11826,12 +12709,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -11848,13 +12731,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 6104 + i32.const 7088 i32.store local.get $1 local.get $7 @@ -11877,11 +12760,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $2 i32.const 16 i32.add @@ -11910,7 +12793,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -11952,7 +12835,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -12013,22 +12896,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return end ;; $block @@ -12036,7 +12919,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -12048,12 +12931,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -12082,7 +12965,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $3 i32.const 418 @@ -12094,7 +12977,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8552 + i32.const 12087 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12117,7 +13000,7 @@ i32.le_u if $if_1 local.get $2 - global.set $30 + global.set $32 return end ;; $if_1 local.get $5 @@ -12151,7 +13034,7 @@ br $block end ;; $block_0 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $1 @@ -12169,7 +13052,7 @@ local.get $3 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $3 @@ -12180,7 +13063,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 427 @@ -12192,7 +13075,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8669 + i32.const 12204 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12204,7 +13087,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -12216,12 +13099,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load i32.load offset=16 @@ -12231,7 +13114,7 @@ local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -12263,7 +13146,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 451 @@ -12275,7 +13158,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8509 + i32.const 12044 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12363,7 +13246,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $4) @@ -12378,12 +13261,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -12411,7 +13294,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $3 i32.const 476 @@ -12423,7 +13306,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8700 + i32.const 12235 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12532,12 +13415,12 @@ i32.ne local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $block_1 local.get $3 - global.set $30 + global.set $32 i32.const 1 ) @@ -12545,7 +13428,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6272 + i32.const 7256 i32.store local.get $0 i32.load offset=12 @@ -12555,7 +13438,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 16072 + i32.const 25272 i32.eq local.get $1 i32.eqz @@ -12585,18 +13468,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6272 + i32.const 7256 i32.store local.get $0 i32.load offset=12 @@ -12608,7 +13491,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 16072 + i32.const 25272 i32.eq local.get $1 i32.eqz @@ -12640,11 +13523,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 call $_free ) @@ -12669,7 +13552,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $0 i32.const 0 @@ -12678,7 +13561,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5856 + i32.const 6840 i32.store local.get $0 ) @@ -12705,7 +13588,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 16072 + i32.const 25272 i32.ne if $if local.get $1 @@ -12780,18 +13663,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4672 + i32.const 4768 + i32.const 4624 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 10316 - i32.const 10357 + i32.const 13851 + i32.const 13892 i32.const 92 - i32.const 10406 + i32.const 13941 call $___assert_fail end ;; $if ) @@ -12805,12 +13688,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $4 local.get $0 @@ -12881,13 +13764,13 @@ local.get $5 i32.load local.tee $2 - i32.const 16072 + i32.const 25272 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 16072 + i32.const 25272 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -13037,7 +13920,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -13048,12 +13931,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -13077,7 +13960,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -13130,7 +14013,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -13163,7 +14046,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -13174,7 +14057,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -13199,7 +14082,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -13252,7 +14135,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.load offset=16 local.tee $0 i32.const 1 @@ -13288,7 +14171,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $2 i32.const 10 @@ -13307,7 +14190,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $4 local.get $2 i32.const 18 @@ -13366,9 +14249,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $5) @@ -13390,19 +14273,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4768 + i32.const 4720 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5944 + i32.const 6928 i32.store local.get $1 local.get $0 @@ -13410,7 +14293,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5832 + i32.const 6816 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -13421,7 +14304,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 i32.const 0 @@ -13429,7 +14312,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5832 + i32.const 6816 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -13454,12 +14337,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -13516,7 +14399,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6496 + i32.const 7496 i32.store local.get $5 local.get $6 @@ -13721,7 +14604,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 16072 + i32.const 25272 i32.store end ;; $if_5 local.get $0 @@ -13743,12 +14626,12 @@ local.get $5 i32.load local.tee $3 - i32.const 16072 + i32.const 25272 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 16072 + i32.const 25272 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -13769,9 +14652,9 @@ i32.load local.tee $2 else - i32.const 16072 + i32.const 25272 local.set $2 - i32.const 16072 + i32.const 25272 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -13788,9 +14671,9 @@ i32.load local.tee $3 else - i32.const 16072 + i32.const 25272 local.set $3 - i32.const 16072 + i32.const 25272 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -13805,7 +14688,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8744 + i32.const 12279 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -14155,7 +15038,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_18 @@ -14163,7 +15046,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -14202,7 +15085,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 16072 + i32.const 25272 i32.eq local.get $1 i32.eqz @@ -14251,11 +15134,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $block local.get $0 i32.const 0 @@ -14282,12 +15165,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4720 + i32.const 4672 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -14313,12 +15196,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 72 i32.add @@ -14379,7 +15262,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6496 + i32.const 7496 i32.store local.get $7 local.get $4 @@ -14545,7 +15428,7 @@ local.get $6 select i32.const 0 - i32.const 8779 + i32.const 12314 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -14566,11 +15449,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -14673,7 +15556,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $30 + global.set $32 local.get $1 return end ;; $if_11 @@ -14681,7 +15564,7 @@ i32.load call $_free local.get $2 - global.set $30 + global.set $32 local.get $1 ) @@ -14705,12 +15588,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4640 + i32.const 4592 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -14726,7 +15609,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 local.get $1 @@ -14740,7 +15623,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -14759,12 +15642,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -14788,12 +15671,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if @@ -14816,14 +15699,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -14832,7 +15715,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -14851,7 +15734,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -14866,12 +15749,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -14880,7 +15763,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -14939,7 +15822,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_3 @@ -14949,7 +15832,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if_7 @@ -14957,10 +15840,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_2 @@ -14978,46 +15861,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 i32.const 0 - i32.store offset=12 + i32.store + local.get $0 + i32.load8_s offset=19 + i32.const 0 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -15026,7 +15922,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -15037,7 +15933,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $2 i32.const 0 @@ -15046,9 +15942,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5856 + i32.const 6840 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -15056,22 +15952,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -15081,22 +15975,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 16072 + i32.load + local.tee $5 + i32.const 25272 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 16072 + i32.const 25272 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -15111,13 +16005,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -15129,7 +16023,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -15149,8 +16043,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -15159,12 +16054,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -15175,19 +16068,19 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -15198,12 +16091,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $4 @@ -15237,7 +16130,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $30 + global.set $32 local.get $2 i32.const 16 i32.add @@ -15250,7 +16143,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 16 i32.add @@ -15263,12 +16156,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 32 i32.add @@ -15290,7 +16183,7 @@ i32.eqz if $if local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -15341,7 +16234,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $4) @@ -15355,9 +16248,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -15367,7 +16260,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $2 i32.const 0 @@ -15376,7 +16269,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5856 + i32.const 6840 i32.store end ;; $if local.get $0 @@ -15387,17 +16280,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -15433,7 +16324,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -15443,28 +16334,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 16072 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 16072 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 25272 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 25272 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -15473,6 +16366,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -15482,20 +16387,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -15503,34 +16405,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -15545,8 +16447,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -15555,28 +16458,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -15595,12 +16496,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4672 + i32.const 4624 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -15619,7 +16520,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $0 i32.const 0 @@ -15628,7 +16529,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5856 + i32.const 6840 i32.store local.get $0 ) @@ -15644,12 +16545,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 local.get $1 @@ -15943,17 +16844,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $3) @@ -15965,12 +16866,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -15979,7 +16880,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $4 i32.const 796 @@ -15991,7 +16892,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8818 + i32.const 12353 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -16120,7 +17021,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 16072 + i32.const 25272 i32.store end ;; $if_4 local.get $2 @@ -16140,7 +17041,7 @@ local.get $0 i32.load local.tee $2 - i32.const 16072 + i32.const 25272 i32.eq if $if_6 local.get $0 @@ -16153,7 +17054,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $30 + global.set $32 return end ;; $block_3 local.get $1 @@ -16216,7 +17117,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 15944 + i32.const 25144 end ;; $if_8 br $block_7 end ;; $block_8 @@ -16270,7 +17171,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 16032 + i32.const 25232 end ;; $if_10 br $block_9 end ;; $block_10 @@ -16284,11 +17185,11 @@ br $block end ;; $block_0 local.get $4 - global.set $30 + global.set $32 return end ;; $block local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $3) @@ -16299,12 +17200,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -16313,7 +17214,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $3 i32.const 341 @@ -16325,7 +17226,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8818 + i32.const 12353 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -16415,7 +17316,7 @@ i32.eqz if $if_2 local.get $3 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 @@ -16484,7 +17385,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $3) @@ -16494,12 +17395,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -16508,7 +17409,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $2 i32.const 1040 @@ -16520,7 +17421,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8818 + i32.const 12353 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -16541,7 +17442,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -16591,7 +17492,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $3) @@ -16603,12 +17504,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -16617,7 +17518,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8343 + i32.const 11878 i32.store offset=4 local.get $2 i32.const 1586 @@ -16629,7 +17530,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8852 + i32.const 12387 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -16641,7 +17542,7 @@ i32.eqz if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -16749,14 +17650,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $3) @@ -16775,7 +17676,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5944 + i32.const 6928 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -16838,12 +17739,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -16857,7 +17758,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 601 @@ -16869,7 +17770,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9349 + i32.const 12884 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -16931,7 +17832,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 607 @@ -16943,7 +17844,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9383 + i32.const 12918 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -16986,7 +17887,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $3 i32.const 612 @@ -16998,7 +17899,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9427 + i32.const 12962 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -17090,7 +17991,7 @@ i32.ne if $if_5 local.get $3 - global.set $30 + global.set $32 return end ;; $if_5 local.get $1 @@ -17100,7 +18001,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $30 + global.set $32 return end ;; $if_6 local.get $0 @@ -17128,7 +18029,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $6) @@ -18041,12 +18942,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -18067,7 +18968,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $1 i32.const 495 @@ -18079,7 +18980,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9463 + i32.const 12998 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -18090,13 +18991,13 @@ i32.eqz if $if_1 local.get $1 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $2) @@ -18109,12 +19010,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 16 i32.add @@ -18145,7 +19046,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 return end ;; $if block $block @@ -18267,12 +19168,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -18312,7 +19213,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $4) @@ -18332,7 +19233,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5944 + i32.const 6928 i32.store offset=16 local.get $0 i32.const 0 @@ -18340,7 +19241,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5832 + i32.const 6816 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -18357,12 +19258,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -18388,7 +19289,7 @@ i32.load local.set $0 local.get $2 - i32.const 5944 + i32.const 6928 i32.store offset=16 local.get $2 local.get $0 @@ -18396,7 +19297,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5832 + i32.const 6816 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -18422,12 +19323,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 7 i32.le_u @@ -18436,7 +19337,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 765 @@ -18448,7 +19349,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9933 + i32.const 13468 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -18588,13 +19489,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $30 + global.set $32 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $1) @@ -18607,12 +19508,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 48 i32.add @@ -18637,7 +19538,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $4 i32.const 672 @@ -18649,7 +19550,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9507 + i32.const 13042 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -18675,7 +19576,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $4 i32.const 678 @@ -18687,7 +19588,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9608 + i32.const 13143 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -18721,7 +19622,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $30 + global.set $32 return end ;; $if_3 i32.const 0 @@ -18761,7 +19662,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 return end ;; $if_5 else @@ -18769,7 +19670,7 @@ i32.const 3 i32.store local.get $6 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $6 i32.const 878 @@ -18781,7 +19682,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 9664 + i32.const 13199 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -18813,7 +19714,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $5 i32.const 685 @@ -18825,7 +19726,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9704 + i32.const 13239 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -18861,7 +19762,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $3) @@ -18877,12 +19778,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 72 i32.add @@ -18942,7 +19843,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 837 @@ -18954,7 +19855,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9826 + i32.const 13361 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -18970,12 +19871,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -19218,7 +20119,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 return end ;; $if_11 local.get $11 @@ -19226,7 +20127,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 848 @@ -19238,7 +20139,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9891 + i32.const 13426 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -19260,7 +20161,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $1) @@ -19271,12 +20172,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=16 local.tee $6 @@ -19300,7 +20201,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $4 i32.const 713 @@ -19312,7 +20213,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9779 + i32.const 13314 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -19358,7 +20259,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $1) @@ -19368,12 +20269,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $4 local.get $2 @@ -19389,7 +20290,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $1 @@ -19402,12 +20303,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -19467,7 +20368,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $6) @@ -20057,12 +20958,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 local.get $1 i32.load @@ -20088,7 +20989,7 @@ i32.load if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -20101,12 +21002,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -20158,7 +21059,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) @@ -20579,12 +21480,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -20597,7 +21498,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $2 i32.const 926 @@ -20609,7 +21510,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9986 + i32.const 13521 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -20625,7 +21526,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $3 i32.const 927 @@ -20637,7 +21538,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 10021 + i32.const 13556 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -20660,7 +21561,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -20676,13 +21577,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5464 + i32.const 6504 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -20694,7 +21595,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -20708,12 +21609,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 2 i32.shl @@ -20841,13 +21742,13 @@ local.get $0 if $if_4 local.get $4 - global.set $30 + global.set $32 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $3) @@ -20855,7 +21756,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 local.get $1 @@ -20880,7 +21781,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -20936,17 +21837,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4736 + i32.const 4688 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 58 + i32.const 119 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -21016,12 +21917,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 28 i32.add @@ -21043,7 +21944,7 @@ i32.eqz if $if local.get $1 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -21100,7 +22001,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -21115,12 +22016,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 i32.eqz @@ -21132,7 +22033,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -21218,7 +22119,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8468 + i32.const 12003 i32.store offset=4 local.get $5 i32.const 527 @@ -21230,7 +22131,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 10058 + i32.const 13593 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -21437,7 +22338,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -21465,14 +22366,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 i32.load offset=4 @@ -21494,7 +22395,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8283 + i32.const 11816 i32.store offset=4 local.get $1 i32.const 150 @@ -21506,7 +22407,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9463 + i32.const 12998 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -21549,14 +22450,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -21588,19 +22489,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 10416 + i32.const 13951 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10424 + i32.const 13959 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10432 + i32.const 13967 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10436 + i32.const 13971 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -21670,18 +22571,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4720 + i32.const 4768 + i32.const 4672 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 10316 - i32.const 10357 + i32.const 13851 + i32.const 13892 i32.const 92 - i32.const 10406 + i32.const 13941 call $___assert_fail end ;; $if ) @@ -21698,12 +22599,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 12 i32.add @@ -21768,12 +22669,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -21790,13 +22691,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 6104 + i32.const 7088 i32.store local.get $2 local.get $7 @@ -21815,11 +22716,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -21833,7 +22734,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) select local.set $3 local.get $5 @@ -21860,7 +22761,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8779 + i32.const 12314 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -21877,11 +22778,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) br $block end ;; $if_0 i32.const -1 @@ -21977,12 +22878,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -21999,13 +22900,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 16072 + i32.const 25272 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 6104 + i32.const 7088 i32.store local.get $2 local.get $4 @@ -22024,11 +22925,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -22042,7 +22943,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) select local.set $3 local.get $10 @@ -22068,7 +22969,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8779 + i32.const 12314 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -22085,11 +22986,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -22101,7 +23002,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $2 i32.const 1 i32.and @@ -22120,7 +23021,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $0 i32.const 1 i32.and @@ -22145,7 +23046,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $2) @@ -25161,13 +26062,13 @@ i32.add local.tee $2 i32.load - i32.const 16072 + i32.const 25272 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 16072 + i32.const 25272 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -25178,12 +26079,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 16072 + i32.const 25272 i32.eq if $if_2 local.get $2 @@ -25231,7 +26132,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $1 local.get $0 i32.load offset=8 @@ -25251,7 +26152,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 15928 + i32.const 25128 i32.load local.get $0 select @@ -25265,12 +26166,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -25281,7 +26182,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8343 + i32.const 11878 i32.store offset=4 local.get $1 i32.const 1567 @@ -25293,20 +26194,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10723 + i32.const 14258 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -25372,7 +26273,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -25380,7 +26281,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -25432,7 +26333,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -25497,19 +26398,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10805 + i32.const 14340 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10813 + i32.const 14348 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10821 + i32.const 14356 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10825 + i32.const 14360 i32.load8_s i32.store8 offset=20 local.get $1 @@ -25577,18 +26478,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 i32.const 4768 + i32.const 4720 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 10316 - i32.const 10357 + i32.const 13851 + i32.const 13892 i32.const 92 - i32.const 10406 + i32.const 13941 call $___assert_fail end ;; $if ) @@ -25651,7 +26552,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8744 + i32.const 12279 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -25662,7 +26563,7 @@ local.get $0 i32.load offset=8 else - i32.const 16072 + i32.const 25272 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -25712,7 +26613,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $2 i32.const 1 i32.and @@ -25731,7 +26632,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 16072 + i32.const 25272 local.get $0 i32.const 1 i32.and @@ -25819,7 +26720,7 @@ (func $__ZN6google8protobuf5ValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 i32.const 0 @@ -25827,7 +26728,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5832 + i32.const 6816 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -25894,12 +26795,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -25920,11 +26821,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $3 i32.load local.set $0 @@ -25935,7 +26836,7 @@ i32.eqz if $if local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -25944,7 +26845,7 @@ local.get $0 call $_free local.get $3 - global.set $30 + global.set $32 ) (func $_proxy_onCreate (type $3) @@ -25959,221 +26860,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 25308 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 25304 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $2 - call $_free local.get $3 - i32.load - local.set $8 - local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 25320 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 25316 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 25308 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 25304 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 25312 + i32.load + i32.store + i32.const 25312 + local.get $4 + i32.store + local.get $11 + i32.const 25312 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 25304 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 25316 + i32.const 25316 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 16148 + i32.const 25348 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -26181,103 +27344,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 43 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + local.get $1 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $5 + call_indirect $28 (type $1) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 + call_indirect $28 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_10 + call_indirect $28 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -26315,71 +27463,71 @@ local.get $0 i32.store local.get $1 - i32.const 6360 + i32.const 7344 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -26389,20 +27537,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 ) (func $_proxy_onDelete (type $0) @@ -26410,12 +27558,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__Z10getContextj local.tee $2 @@ -26424,18 +27572,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $30 + global.set $32 ) (func $_proxy_onDone (type $0) @@ -26449,11 +27597,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -26465,12 +27613,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -26493,11 +27641,11 @@ local.get $2 local.get $5 local.get $7 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $5 i32.load local.set $0 @@ -26508,7 +27656,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -26517,7 +27665,7 @@ local.get $0 call $_free local.get $5 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcCreateInitialMetadata (type $3) @@ -26533,11 +27681,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onGrpcReceive (type $1) @@ -26548,12 +27696,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -26577,9 +27725,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $4 i32.load local.set $0 @@ -26590,7 +27738,7 @@ i32.eqz if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -26599,7 +27747,7 @@ local.get $0 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $3) @@ -26615,11 +27763,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $3) @@ -26635,11 +27783,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onHttpCallResponse (type $17) @@ -26656,12 +27804,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $8 i32.const 8 i32.add @@ -26717,9 +27865,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $8 i32.load local.set $0 @@ -26758,7 +27906,7 @@ i32.eqz if $if_1 local.get $8 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 @@ -26767,7 +27915,7 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 ) (func $_proxy_onLog (type $0) @@ -26783,11 +27931,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onQueueReady (type $3) @@ -26803,11 +27951,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onRequestBody (type $6) @@ -26830,9 +27978,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $_proxy_onRequestHeaders (type $5) @@ -26849,7 +27997,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onRequestMetadata (type $5) @@ -26866,7 +28014,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onRequestTrailers (type $5) @@ -26883,7 +28031,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onResponseBody (type $6) @@ -26906,9 +28054,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $_proxy_onResponseHeaders (type $5) @@ -26925,7 +28073,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onResponseMetadata (type $5) @@ -26942,7 +28090,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onResponseTrailers (type $5) @@ -26959,7 +28107,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onStart (type $7) @@ -26978,29 +28126,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -27010,27 +28153,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 16108 + i32.const 25308 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 16104 + i32.const 25304 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -27049,7 +28192,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -27063,7 +28206,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -27071,16 +28214,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -27101,7 +28244,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -27110,22 +28253,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -27150,11 +28293,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $0 br $block end ;; $block_0 - i32.const 16144 + i32.const 25344 i32.load i32.eqz if $if_7 @@ -27193,7 +28336,7 @@ local.get $0 i32.store local.get $5 - i32.const 5680 + i32.const 6720 i32.store local.get $5 i32.const 68 @@ -27228,12 +28371,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -27245,7 +28388,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -27291,10 +28434,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -27308,20 +28451,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -27336,19 +28479,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -27358,12 +28501,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -27372,7 +28515,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -27382,53 +28525,36 @@ i32.add i32.const 0 i32.store8 - i32.const 16144 + i32.const 25344 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6832 - i32.store - local.get $2 - i32.const 5296 - i32.const 43 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $11 + call_indirect $28 (type $1) + local.get $10 i32.load local.tee $1 i32.load @@ -27438,22 +28564,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -27463,40 +28589,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_17 + call_indirect $28 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -27535,7 +28661,7 @@ local.get $0 i32.store local.get $2 - i32.const 5680 + i32.const 6720 i32.store local.get $2 i32.const 68 @@ -27549,15 +28675,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -27570,12 +28696,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -27583,11 +28709,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -27633,10 +28759,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -27645,29 +28771,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_20 + call_indirect $28 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -27681,35 +28807,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $12 + call_indirect $28 (type $3) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -27720,8 +28846,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 ) (func $_proxy_onTick (type $0) @@ -27735,11 +28861,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZL14getRootContextj (type $5) @@ -27750,7 +28876,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 16108 + i32.const 25308 i32.load local.tee $1 i32.eqz @@ -27758,7 +28884,7 @@ i32.const 0 return end ;; $if - i32.const 16104 + i32.const 25304 i32.load local.get $1 local.get $1 @@ -27893,7 +29019,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz if $if_11 i32.const 0 @@ -27909,7 +29035,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $5) @@ -27926,7 +29052,7 @@ local.get $0 i32.load local.set $4 - i32.const 16108 + i32.const 25308 i32.load local.tee $2 i32.eqz @@ -27935,7 +29061,7 @@ i32.const 0 local.set $0 else - i32.const 16104 + i32.const 25304 i32.load local.get $2 local.get $2 @@ -28074,13 +29200,13 @@ i32.const 0 i32.store local.get $6 - i32.const 16120 + i32.const 25320 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 16116 + i32.const 25316 i32.load i32.const 1 i32.add @@ -28140,7 +29266,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 16108 + i32.const 25308 i32.load local.tee $1 i32.const -1 @@ -28177,7 +29303,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 16104 + i32.const 25304 i32.load local.get $0 i32.const 2 @@ -28194,14 +29320,14 @@ br $block_4 else local.get $3 - i32.const 16112 + i32.const 25312 i32.load i32.store - i32.const 16112 + i32.const 25312 local.get $3 i32.store local.get $2 - i32.const 16112 + i32.const 25312 i32.store local.get $3 i32.load @@ -28210,7 +29336,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 16104 + i32.const 25304 i32.load local.get $1 local.get $1 @@ -28252,8 +29378,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 16116 - i32.const 16116 + i32.const 25316 + i32.const 25316 i32.load i32.const 1 i32.add @@ -28829,7 +29955,7 @@ i32.xor local.set $6 block $block_3 - i32.const 16128 + i32.const 25328 i32.load local.tee $2 i32.eqz @@ -28838,7 +29964,7 @@ i32.const 0 local.set $5 else - i32.const 16124 + i32.const 25324 i32.load local.get $2 local.get $2 @@ -29186,13 +30312,13 @@ i32.const 0 i32.store local.get $12 - i32.const 16140 + i32.const 25340 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 16136 + i32.const 25336 i32.load i32.const 1 i32.add @@ -29252,7 +30378,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 16128 + i32.const 25328 i32.load local.tee $0 i32.const -1 @@ -29289,7 +30415,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 16124 + i32.const 25324 i32.load local.get $5 i32.const 2 @@ -29308,14 +30434,14 @@ br $block_13 else local.get $4 - i32.const 16132 + i32.const 25332 i32.load i32.store - i32.const 16132 + i32.const 25332 local.get $4 i32.store local.get $2 - i32.const 16132 + i32.const 25332 i32.store local.get $4 i32.load @@ -29324,7 +30450,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 16124 + i32.const 25324 i32.load local.get $0 local.get $0 @@ -29366,8 +30492,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 16136 - i32.const 16136 + i32.const 25336 + i32.const 25336 i32.load i32.const 1 i32.add @@ -29407,7 +30533,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 16128 + i32.const 25328 i32.load local.tee $0 i32.gt_u @@ -29433,10 +30559,10 @@ i32.gt_u i32.and local.set $3 - i32.const 16136 + i32.const 25336 i32.load f32.convert_i32_u - i32.const 16140 + i32.const 25340 f32.load f32.div f32.ceil @@ -29518,10 +30644,10 @@ local.get $0 i32.eqz if $if - i32.const 16124 + i32.const 25324 i32.load local.set $0 - i32.const 16124 + i32.const 25324 i32.const 0 i32.store local.get $0 @@ -29529,7 +30655,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 16128 + i32.const 25328 i32.const 0 i32.store return @@ -29543,11 +30669,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6956 + i32.const 10944 i32.store local.get $1 - i32.const 5392 - i32.const 50 + i32.const 6424 + i32.const 111 call $___cxa_throw end ;; $if_1 local.get $0 @@ -29555,10 +30681,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 16124 + i32.const 25324 i32.load local.set $1 - i32.const 16124 + i32.const 25324 local.get $2 i32.store local.get $1 @@ -29566,13 +30692,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 16128 + i32.const 25328 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 16124 + i32.const 25324 i32.load local.get $1 i32.const 2 @@ -29588,7 +30714,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 16132 + i32.const 25332 i32.load local.tee $6 i32.eqz @@ -29598,7 +30724,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 16124 + i32.const 25324 i32.load local.get $0 local.get $0 @@ -29633,7 +30759,7 @@ i32.const 2 i32.shl i32.add - i32.const 16132 + i32.const 25332 i32.store local.get $6 i32.load @@ -29675,7 +30801,7 @@ local.get $4 else block $block (result i32) - i32.const 16124 + i32.const 25324 i32.load local.get $8 i32.const 2 @@ -29903,7 +31029,7 @@ i32.load i32.store local.get $1 - i32.const 16124 + i32.const 25324 i32.load local.get $8 i32.const 2 @@ -29912,7 +31038,7 @@ i32.load i32.load i32.store - i32.const 16124 + i32.const 25324 i32.load local.get $8 i32.const 2 @@ -29960,7 +31086,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 16108 + i32.const 25308 i32.load local.tee $0 i32.gt_u @@ -29986,10 +31112,10 @@ i32.gt_u i32.and local.set $3 - i32.const 16116 + i32.const 25316 i32.load f32.convert_i32_u - i32.const 16120 + i32.const 25320 f32.load f32.div f32.ceil @@ -30065,10 +31191,10 @@ local.get $0 i32.eqz if $if - i32.const 16104 + i32.const 25304 i32.load local.set $0 - i32.const 16104 + i32.const 25304 i32.const 0 i32.store local.get $0 @@ -30076,7 +31202,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 16108 + i32.const 25308 i32.const 0 i32.store return @@ -30090,11 +31216,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6956 + i32.const 10944 i32.store local.get $1 - i32.const 5392 - i32.const 50 + i32.const 6424 + i32.const 111 call $___cxa_throw end ;; $if_1 local.get $0 @@ -30102,10 +31228,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 16104 + i32.const 25304 i32.load local.set $1 - i32.const 16104 + i32.const 25304 local.get $2 i32.store local.get $1 @@ -30113,13 +31239,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 16108 + i32.const 25308 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 16104 + i32.const 25304 i32.load local.get $1 i32.const 2 @@ -30135,7 +31261,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 16112 + i32.const 25312 i32.load local.tee $4 i32.eqz @@ -30145,7 +31271,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 16104 + i32.const 25304 i32.load local.get $0 local.get $0 @@ -30180,7 +31306,7 @@ i32.const 2 i32.shl i32.add - i32.const 16112 + i32.const 25312 i32.store local.get $4 i32.load @@ -30207,7 +31333,7 @@ local.get $0 else block $block (result i32) - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30266,7 +31392,7 @@ i32.load i32.store local.get $1 - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30275,7 +31401,7 @@ i32.load i32.load i32.store - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30322,7 +31448,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30381,7 +31507,7 @@ i32.load i32.store local.get $2 - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30390,7 +31516,7 @@ i32.load i32.load i32.store - i32.const 16104 + i32.const 25304 i32.load local.get $3 i32.const 2 @@ -30417,7 +31543,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 16108 + i32.const 25308 i32.load local.tee $1 i32.eqz @@ -30425,7 +31551,7 @@ i32.const 0 return end ;; $if - i32.const 16104 + i32.const 25304 i32.load local.get $1 local.get $1 @@ -30560,7 +31686,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz if $if_11 i32.const 0 @@ -30576,7 +31702,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -30592,14 +31718,14 @@ local.get $0 i32.load local.set $3 - i32.const 16108 + i32.const 25308 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 16104 + i32.const 25304 i32.load local.tee $4 local.get $2 @@ -30767,7 +31893,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 16112 + i32.const 25312 i32.eq br_if $block_2 local.get $3 @@ -30877,7 +32003,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 16104 + i32.const 25304 i32.load local.get $2 i32.const 2 @@ -30897,8 +32023,8 @@ local.get $8 i32.const 0 i32.store - i32.const 16116 - i32.const 16116 + i32.const 25316 + i32.const 25316 i32.load i32.const -1 i32.add @@ -30920,349 +32046,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 16108 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 16104 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 16120 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 16116 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 16108 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 16104 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 16112 - i32.load - i32.store - i32.const 16112 - local.get $1 - i32.store - i32.const 16104 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 16112 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 16104 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 16116 - i32.const 16116 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $2) (param $0 i32) (param $1 i32) @@ -31274,15 +32067,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 + global.get $32 + local.set $8 + global.get $32 + i32.const 16 i32.add - global.set $30 - i32.const 16144 + global.set $32 + i32.const 25344 i32.load i32.eqz if $if @@ -31297,7 +32088,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 16144 + i32.const 25344 local.get $3 i32.store i32.const 20 @@ -31311,27 +32102,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 16148 + i32.const 25348 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 16148 + i32.const 25348 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -31339,25 +32122,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -31367,7 +32152,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -31382,7 +32167,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -31390,127 +32175,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $5) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $5) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $28 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 return - end ;; $if_9 - i32.const 16144 + end ;; $if_7 + i32.const 25344 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -31518,31 +32269,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -31550,12 +32303,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -31563,12 +32316,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -31580,97 +32333,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $5) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $5) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $28 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $30 + end ;; $if_13 + local.get $8 + global.set $32 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) @@ -32156,7 +32883,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -32173,8 +32900,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -32372,345 +33102,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $3) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -32723,794 +33127,838 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6956 - i32.store - local.get $2 - i32.const 5392 - i32.const 50 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6440 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6440 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free + end ;; $block_3 + local.get $3 + i32.const 20 + i32.add ) - (func $__ZNK6google8protobuf14FatalException4whatEv (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $1) (param $0 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if + i32.const 7832 + i32.store + local.get $0 + i32.const 5248 + i32.const 35 + call $___cxa_throw ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 16152 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 16156 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6440 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4784 - i32.const 38 - call $___cxa_throw - else local.get $1 - global.set $30 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 16156 - local.get $0 - i32.store - i32.const 60 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $30 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6572 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 16156 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 16156 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 16064 - i32.load8_s i32.eqz - if $if - i32.const 16064 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 16064 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 16160 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 16160 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $30 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $3) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -33521,273 +33969,439 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10944 + i32.store + local.get $2 + i32.const 6424 + i32.const 111 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6956 - i32.store - local.get $3 - i32.const 5392 - i32.const 50 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 + i32.const -1 + i32.add + local.tee $14 i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 11726 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 14222 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $4) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 11729 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) - (param $0 i32) + i32.const 7440 + i32.store local.get $0 i32.load8_s offset=23 i32.const 0 @@ -33800,1182 +34414,1821 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 16164 - i64.const 0 - i64.store align=4 - i32.const 16172 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 16913 + i32.const 7440 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 16180 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 16913 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $5) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 16196 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $30 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $2) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 + global.set $32 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $30 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 - local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $6) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 + i32.const 4 i32.add - global.set $30 - local.get $1 + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq if $if (result i32) - local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select + i32.const 3 else - local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 + local.get $1 i32.const 3 i32.store - local.get $3 - i32.const 11733 - i32.store offset=4 - local.get $3 - i32.const 116 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11758 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $5) - local.tee $2 - local.get $1 - i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 25352 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 25356 + i32.load + drop + local.get $0 + i32.load + end ;; $if local.get $0 - local.get $4 + i32.load offset=4 local.get $0 i32.load offset=8 + local.get $0 + i32.const 12 i32.add - i32.store offset=8 - local.get $3 - global.set $30 - local.get $2 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=24 + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7440 i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 + local.get $1 local.get $3 - i32.const 8 + i32.store offset=4 + local.get $1 + local.get $4 + i32.store offset=8 + local.get $1 + i32.const 12 i32.add - local.tee $4 - i32.store offset=28 local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 + i32.const 12 i32.add - local.tee $6 - i32.store offset=32 - local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop - local.get $4 - local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4736 + i32.const 30 + call $___cxa_throw + else + local.get $1 + global.set $32 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 25356 + local.get $0 i32.store - local.get $3 - local.get $2 - i32.store offset=12 + i32.const 121 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.load + i32.load + i32.load + local.set $0 + local.get $0 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $1) (param $0 i32) (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) (local $4 i32) (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $0 - i32.load offset=8 - local.tee $3 - local.set $2 - local.get $3 - i32.load offset=8 + i32.const 0 + i32.lt_s + if $if + local.get $4 + global.set $32 + return + end ;; $if + i32.const 7576 + i32.load local.set $5 - local.get $0 - i32.load offset=24 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select local.set $3 + local.get $4 local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $2 - i32.load offset=4 - i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 - local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 - local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load + i32.store + local.get $4 local.get $1 + i32.store offset=4 local.get $4 - i32.add - i32.store offset=20 + local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop local.get $4 + global.set $32 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 25356 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 25356 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + ) + + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $3) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4800 - i64.load - local.get $0 - i64.load offset=16 - i64.eq + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 25264 + i32.load8_s + i32.eqz if $if - i32.const 4808 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 + i32.const 25264 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4800 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 25360 + local.get $2 + i32.store + i32.const 25264 + i32.const 0 + i32.store + i32.const 25264 + i32.const 25264 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 end ;; $if + i32.const 25360 + i32.load + local.set $2 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 + i32.load offset=4 local.tee $0 - i32.sub - local.get $1 + local.get $2 + i32.load offset=8 i32.lt_u - if $if_1 (result i32) + if $if_1 + local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else local.get $2 - local.get $0 - local.get $1 + i32.load offset=4 + i32.const 8 i32.add - i32.store offset=20 - local.get $0 + i32.store offset=4 + else + local.get $2 + local.get $3 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ end ;; $if_1 + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $3) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4800 - i64.load + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $0 - i64.load offset=16 - i64.eq + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4808 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4800 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $5) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4800 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - i32.const 56 + i32.const 536870911 i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $5) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4800 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc local.get $3 + i32.const 10944 i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 + local.get $3 + i32.const 6424 + i32.const 111 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 end ;; $if_1 - end ;; $block - i32.const 4808 - local.get $3 - i32.store - i32.const 4800 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 local.get $0 - i64.load offset=16 - i64.store + local.get $5 + i32.store local.get $0 local.get $3 + i32.const 8 + i32.add i32.store offset=4 - local.get $3 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $6) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) - (local $3 i32) - i32.const 4800 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4808 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4800 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block - end ;; $if + i32.const 12 + i32.add + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $0 - i32.load offset=24 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) local.get $0 - i32.load offset=20 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s local.tee $3 - i32.sub + select local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 - local.get $0 - i32.load offset=28 - local.tee $1 - local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $6) + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4800 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4808 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 4800 - i32.eq - br_if $block - drop - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_1 + i32.store + local.get $2 + i32.const 128 + i32.const 15261 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 local.get $0 - i32.load offset=32 - i32.eq - if $if_2 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_2 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4800 - i64.load + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 17755 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4808 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4800 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E - return - end ;; $block - end ;; $if + i32.const 12 + i32.add local.get $2 - i32.load offset=28 - local.tee $0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $2 - i32.load offset=32 - i32.eq - if $if_1 - local.get $2 - local.get $1 - i32.const 55 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 55 - i32.store offset=4 - local.get $2 - local.get $0 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_1 + global.set $32 + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEm (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4800 - i64.load + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 15264 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4808 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4800 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if + i32.const 12 + i32.add local.get $2 - i32.load offset=28 - local.tee $0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop local.get $2 - i32.load offset=32 - i32.eq - if $if_1 - local.get $2 - local.get $1 - i32.const 55 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 55 - i32.store offset=4 - local.get $2 - local.get $0 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_1 + global.set $32 + local.get $0 ) - (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) (local $1 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 25364 + i64.const 0 + i64.store align=4 + i32.const 25372 + i64.const 0 + i64.store align=4 local.get $0 - i32.load - i32.load - local.set $1 + i32.const 26118 + i32.store local.get $0 - local.get $1 - i32.const 63 - i32.and - i32.const 112 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 i32.add - call_indirect $26 (type $0) + local.tee $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 25380 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 26118 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 25396 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $32 ) - (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (result i32) + (local $3 i32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i64) - (local $19 i64) - global.get $30 - local.set $6 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $6 - local.get $4 + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + local.get $1 i32.store - local.get $6 + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 local.get $3 - i32.const 1 - i32.and - local.tee $14 - i32.store8 offset=4 - local.get $2 i32.const 0 - i32.le_s + i32.store offset=8 + local.get $1 + i32.eqz if $if - local.get $6 - i32.load - local.set $0 - local.get $6 - global.set $30 - local.get $0 + local.get $5 + global.set $32 return end ;; $if - local.get $6 + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 + if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 11 + i32.add + local.set $0 + br $block_0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 i32.const 32 i32.add - local.set $11 - local.get $6 - i32.const 8 - i32.add - local.set $12 - loop $loop + global.set $32 + local.get $1 + if $if (result i32) local.get $0 - local.get $8 - i32.const 20 - i32.mul + i32.load offset=28 + local.tee $4 local.get $1 - i32.add - local.tee $3 - i32.load - i32.add - local.set $7 - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - block $block_16 - block $block_17 - block $block_18 - block $block_19 - block $block_20 - block $block_21 - block $block_22 - block $block_23 - block $block_24 - block $block_25 - block $block_26 - block $block_27 - block $block_28 - block $block_29 - block $block_30 - block $block_31 - block $block_32 - block $block_33 - block $block_34 - block $block_35 - block $block_36 - block $block_37 - block $block_38 - block $block_39 - block $block_40 - block $block_41 - block $block_42 - block $block_43 - block $block_44 - block $block_45 - block $block_46 - block $block_47 - block $block_48 - block $block_49 - block $block_50 - block $block_51 - block $block_52 - block $block_53 - block $block_54 - block $block_55 - block $block_56 - block $block_57 - block $block_58 - block $block_59 - block $block_60 - block $block_61 - block $block_62 - block $block_63 - block $block_64 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select + else + local.get $0 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 + local.get $3 + i32.const 3 + i32.store + local.get $3 + i32.const 15268 + i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 15293 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $5) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $0 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $32 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $6 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 8 + i32.add + local.tee $4 + i32.store offset=28 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store + local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 16 + i32.add + i32.store offset=28 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4760 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4752 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4760 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4752 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4752 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $5) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4752 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4760 + local.get $3 + i32.store + i32.const 4752 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4760 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4752 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4760 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4752 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4760 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4752 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 116 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 116 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4752 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4760 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4752 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 116 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 116 + i32.store offset=4 + local.get $2 + local.get $0 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal14DestroyMessageEPKv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.load + i32.load + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + ) + + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i64) + (local $19 i64) + global.get $32 + local.set $6 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $6 + local.get $4 + i32.store + local.get $6 + local.get $3 + i32.const 1 + i32.and + local.tee $14 + i32.store8 offset=4 + local.get $2 + i32.const 0 + i32.le_s + if $if + local.get $6 + i32.load + local.set $0 + local.get $6 + global.set $32 + local.get $0 + return + end ;; $if + local.get $6 + i32.const 32 + i32.add + local.set $11 + local.get $6 + i32.const 8 + i32.add + local.set $12 + loop $loop + local.get $0 + local.get $8 + i32.const 20 + i32.mul + local.get $1 + i32.add + local.tee $3 + i32.load + i32.add + local.set $7 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + block $block_38 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + block $block_61 + block $block_62 + block $block_63 + block $block_64 block $block_65 block $block_66 block $block_67 @@ -39449,9 +40702,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) end ;; $if_190 local.tee $4 i32.store @@ -39595,9 +40848,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) end ;; $if_196 local.tee $4 i32.store @@ -39760,9 +41013,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) end ;; $if_202 local.tee $4 i32.store @@ -39930,9 +41183,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) end ;; $if_208 local.tee $4 i32.store @@ -40133,7 +41386,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $6 i32.load @@ -40192,9 +41445,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.store end ;; $if_214 br $block @@ -40334,7 +41587,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $6 i32.load @@ -40393,9 +41646,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.store end ;; $if_222 br $block @@ -40554,7 +41807,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $6 i32.load @@ -40612,9 +41865,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) end ;; $if_230 i32.store local.get $9 @@ -40777,7 +42030,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $3 local.get $6 i32.load @@ -40836,9 +42089,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.store end ;; $if_238 br $block @@ -44865,7 +46118,7 @@ i32.load local.set $4 local.get $11 - i32.const 6460 + i32.const 7460 i32.store local.get $11 local.get $4 @@ -44912,9 +46165,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -44933,7 +46186,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11845 + i32.const 15380 i32.store offset=4 local.get $11 i32.const 571 @@ -44945,7 +46198,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11887 + i32.const 15422 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -44965,24 +46218,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11845 + i32.const 15380 i32.store offset=4 local.get $1 i32.const 534 @@ -44994,12 +46247,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11887 + i32.const 15422 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11917 + i32.const 15452 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -45008,50 +46261,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 16096 + global.set $32 + i32.const 25296 i32.load8_s i32.eqz if $if - i32.const 16096 + i32.const 25296 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 16096 + i32.const 25296 + i32.const 0 + i32.store + i32.const 25296 + i32.const 25296 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 16240 + i32.const 25440 i32.load - i32.const 6580 + i32.const 7580 call $_pthread_equal if $if_1 - i32.const 5832 + i32.const 6816 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11845 + i32.const 15380 i32.store offset=4 local.get $0 i32.const 801 @@ -45063,53 +46324,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11929 + i32.const 15464 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 16088 + i32.const 25288 i32.load8_s i32.eqz if $if_3 - i32.const 16088 + i32.const 25288 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 16088 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 16072 + i32.xor + if $if_4 + i32.const 25272 i64.const 0 i64.store - i32.const 16080 + i32.const 25280 i32.const 0 i32.store - i32.const 61 - i32.const 16072 + i32.const 122 + i32.const 25272 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 25288 + i32.const 0 + i32.store + i32.const 25288 + i32.const 25288 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 16240 - i32.const 6580 + i32.const 25440 + i32.const 7580 i32.store - i32.const 5832 + i32.const 6816 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 16240 + i32.const 25440 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -45168,9 +46432,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -45197,31 +46461,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 12094 + i32.const 15629 i64.load align=1 i64.store align=1 local.get $1 - i32.const 12102 + i32.const 15637 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 12110 + i32.const 15645 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 12118 + i32.const 15653 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 12126 + i32.const 15661 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 12134 + i32.const 15669 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 12142 + i32.const 15677 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -45241,7 +46505,7 @@ i32.load local.set $2 local.get $0 - i32.const 16914 + i32.const 26109 i32.load8_s i32.const 1 i32.and @@ -45251,9 +46515,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $6) @@ -45266,19 +46530,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $3 if $if local.get $0 @@ -45295,7 +46559,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -45305,7 +46569,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $6 local.set $5 local.get $4 @@ -45313,7 +46577,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6460 + i32.const 7460 i32.store local.get $3 local.get $2 @@ -45346,11 +46610,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $3 i32.load8_s offset=16 if $if_0 @@ -45358,7 +46622,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $4 i32.const 373 @@ -45370,7 +46634,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12056 + i32.const 15591 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -45383,7 +46647,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -45396,12 +46660,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 96 i32.add @@ -45459,21 +46723,21 @@ local.get $0 i32.load i32.load offset=28 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $3 local.get $0 i32.load i32.load offset=44 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) if $if local.get $0 local.get $0 @@ -45481,7 +46745,7 @@ i32.load offset=32 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) if $if_0 local.get $3 i32.load8_s offset=24 @@ -45491,7 +46755,7 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -45499,7 +46763,7 @@ i32.const 2 i32.store local.get $6 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $6 i32.const 121 @@ -45517,15 +46781,15 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 12183 + i32.const 15718 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc drop local.get $5 - i32.const 12177 + i32.const 15712 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc drop local.get $5 - i32.const 12190 + i32.const 15725 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc drop local.get $4 @@ -45533,11 +46797,11 @@ local.get $0 i32.load i32.load offset=8 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $5 local.get $4 i32.load @@ -45568,7 +46832,7 @@ call $_free end ;; $if_1 local.get $5 - i32.const 12209 + i32.const 15744 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc drop local.get $4 @@ -45576,11 +46840,11 @@ local.get $0 i32.load i32.load offset=36 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $5 local.get $4 i32.load @@ -45629,7 +46893,7 @@ local.get $3 call $__ZN6google8protobuf2io16CodedInputStreamD2Ev local.get $3 - global.set $30 + global.set $32 i32.const 0 ) @@ -45641,12 +46905,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -45663,7 +46927,7 @@ i32.const 3 i32.store local.get $6 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $6 i32.const 68 @@ -45675,7 +46939,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 12291 + i32.const 15826 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $1 local.get $5 @@ -45683,15 +46947,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $1 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 12375 + i32.const 15910 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -45714,7 +46978,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $4 i32.const 75 @@ -45726,13 +46990,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12665 + i32.const 16200 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $30 + global.set $32 return end ;; $if_1 local.get $4 @@ -45743,7 +47007,7 @@ i32.const 3 i32.store local.get $0 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $0 i32.const 71 @@ -45755,9 +47019,9 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12424 + i32.const 15959 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12510 + i32.const 16045 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.set $0 local.get $5 @@ -45765,15 +47029,15 @@ local.get $3 i32.load i32.load offset=8 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 local.get $5 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 14151 + i32.const 20453 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -45791,7 +47055,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $4 i32.const 75 @@ -45803,13 +47067,13 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12665 + i32.const 16200 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $4 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite21AppendPartialToStringEPNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE (type $4) @@ -45819,12 +47083,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -45845,7 +47109,7 @@ i32.load offset=48 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $3 i32.const 0 i32.lt_s @@ -45854,7 +47118,7 @@ i32.const 2 i32.store local.get $2 - i32.const 12024 + i32.const 15559 i32.store offset=4 local.get $2 i32.const 289 @@ -45866,7 +47130,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12251 + i32.const 15786 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEm @@ -45874,7 +47138,7 @@ local.get $2 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_0 @@ -45901,18 +47165,18 @@ local.get $0 i32.load i32.load offset=56 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $1 i32.sub local.tee $1 i32.eq if $if_2 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -45923,12 +47187,12 @@ i32.load offset=48 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $1 local.get $0 call $__ZN6google8protobuf12_GLOBAL__N_124ByteSizeConsistencyErrorEmmmRKNS0_11MessageLiteE local.get $2 - global.set $30 + global.set $32 i32.const 1 ) @@ -45970,12 +47234,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -45991,7 +47255,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -46027,7 +47291,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12718 + i32.const 16253 i32.store offset=4 local.get $3 i32.const 59 @@ -46039,9 +47303,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12752 + i32.const 16287 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12869 + i32.const 16404 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46073,13 +47337,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5456 + i32.const 6496 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -46143,7 +47407,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -46156,12 +47420,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -46210,7 +47474,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -46248,7 +47512,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -46327,7 +47591,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -46413,7 +47677,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -46457,17 +47721,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -46631,12 +47895,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -46775,7 +48039,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -46845,7 +48109,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -47401,17 +48665,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -47669,12 +48933,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -47724,7 +48988,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12917 + i32.const 16452 i32.store offset=4 local.get $4 i32.const 507 @@ -47736,7 +49000,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12953 + i32.const 16488 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -47788,7 +49052,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -47870,7 +49134,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $3) @@ -47881,12 +49145,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -47936,7 +49200,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12917 + i32.const 16452 i32.store offset=4 local.get $4 i32.const 516 @@ -47948,7 +49212,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12953 + i32.const 16488 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -48074,7 +49338,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $2) @@ -48167,7 +49431,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $0 local.get $2 i32.load offset=8 @@ -48184,11 +49448,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) return end ;; $if_2 local.get $2 @@ -48257,11 +49521,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $3) @@ -48313,7 +49577,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.set $4 local.get $1 i32.load offset=8 @@ -48427,9 +49691,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop return end ;; $if_4 @@ -48439,11 +49703,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $4) @@ -48559,18 +49823,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -48627,13 +49891,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 12999 + i32.const 16534 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 13011 + i32.const 16546 local.get $2 select local.set $3 @@ -48645,7 +49909,7 @@ i32.const 2 i32.store local.get $1 - i32.const 12917 + i32.const 16452 i32.store offset=4 local.get $1 i32.const 626 @@ -48657,21 +49921,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13025 + i32.const 16560 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 13038 + i32.const 16573 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13057 + i32.const 16592 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13074 + i32.const 16609 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13087 + i32.const 16622 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13143 + i32.const 16678 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -48686,7 +49950,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -48726,11 +49990,11 @@ local.get $1 local.get $2 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 local.get $0 i32.load offset=12 @@ -48863,12 +50127,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -48911,7 +50175,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -49034,7 +50298,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -49062,7 +50326,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -49433,12 +50697,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -49478,9 +50742,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $4 @@ -49507,7 +50771,7 @@ i32.const 3 i32.store local.get $2 - i32.const 13151 + i32.const 16686 i32.store offset=4 local.get $2 i32.const 591 @@ -49519,7 +50783,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13186 + i32.const 16721 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -49612,7 +50876,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -49628,7 +50892,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -49638,31 +50902,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 13151 + i32.const 16686 i32.store offset=4 local.get $1 i32.const 190 @@ -49674,18 +50938,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 13223 + i32.const 16758 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 13290 + i32.const 16825 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $4) @@ -49821,11 +51085,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) drop i32.const 0 return @@ -49839,11 +51103,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) if $if_2 (result i32) local.get $0 local.get $0 @@ -49864,9 +51128,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -50113,12 +51377,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -50191,7 +51455,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -50204,7 +51468,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -50218,12 +51482,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -50296,7 +51560,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -50309,7 +51573,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -50324,12 +51588,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -50377,7 +51641,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -50547,7 +51811,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -50610,7 +51874,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -50618,7 +51882,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -50632,12 +51896,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -50735,7 +51999,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -50776,7 +52040,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -50935,12 +52199,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -50949,12 +52213,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -50983,9 +52247,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) if $if local.get $0 local.get $2 @@ -51013,19 +52277,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -51042,7 +52306,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -51067,11 +52331,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 local.get $0 i32.load offset=12 @@ -51096,12 +52360,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -51139,9 +52403,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $0 @@ -51181,7 +52445,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -51203,7 +52467,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $2) @@ -51252,11 +52516,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 i32.const 12 i32.add @@ -51306,9 +52570,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.const 1 i32.xor i32.const 1 @@ -51329,12 +52593,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -51361,7 +52625,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -51403,9 +52667,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $0 @@ -51445,7 +52709,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -51466,7 +52730,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -51480,12 +52744,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -51512,7 +52776,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -51552,9 +52816,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $0 @@ -51594,7 +52858,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -51615,7 +52879,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $3) @@ -51627,12 +52891,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -51720,9 +52984,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $0 @@ -51762,7 +53026,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -51787,7 +53051,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -51801,12 +53065,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -51898,9 +53162,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.eqz br_if $block_0 local.get $0 @@ -51940,7 +53204,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -51962,7 +53226,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $4) @@ -52056,6 +53320,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $6) (param $0 i32) (param $1 i32) @@ -52117,12 +53387,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -52137,7 +53407,7 @@ i32.const 3 i32.store local.get $2 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $2 i32.const 132 @@ -52149,9 +53419,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13515 + i32.const 17050 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13559 + i32.const 17094 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -52172,7 +53442,7 @@ i32.const 3 i32.store local.get $2 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $2 i32.const 134 @@ -52184,7 +53454,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13614 + i32.const 17149 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -52204,14 +53474,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $3 i32.const 135 @@ -52223,7 +53493,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13484 + i32.const 17019 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -52238,7 +53508,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -52259,12 +53529,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -52279,7 +53549,7 @@ i32.const 3 i32.store local.get $3 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $3 i32.const 151 @@ -52291,7 +53561,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13704 + i32.const 17239 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -52365,7 +53635,7 @@ i32.const 2 i32.store local.get $5 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $5 i32.const 164 @@ -52377,15 +53647,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13781 + i32.const 17316 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13831 + i32.const 17366 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -52426,7 +53696,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -52436,12 +53706,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -52454,7 +53724,7 @@ i32.const 3 i32.store local.get $2 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $2 i32.const 182 @@ -52466,7 +53736,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13484 + i32.const 17019 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -52487,7 +53757,7 @@ i32.const 3 i32.store local.get $2 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $2 i32.const 183 @@ -52499,7 +53769,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 13704 + i32.const 17239 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -52529,7 +53799,7 @@ i32.const 3 i32.store local.get $3 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $3 i32.const 184 @@ -52541,7 +53811,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 13736 + i32.const 17271 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -52577,7 +53847,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -52586,12 +53856,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -52602,7 +53872,7 @@ i32.const 3 i32.store local.get $1 - i32.const 13435 + i32.const 16970 i32.store offset=4 local.get $1 i32.const 189 @@ -52614,7 +53884,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 13704 + i32.const 17239 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -52635,11 +53905,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -52654,12 +53924,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -52669,7 +53939,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 13019 + i32.const 16554 local.get $2 call $_vsnprintf local.tee $4 @@ -52681,7 +53951,7 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -52702,7 +53972,7 @@ i32.store local.get $3 local.get $5 - i32.const 13019 + i32.const 16554 local.get $2 call $_vsnprintf local.tee $1 @@ -52724,19 +53994,19 @@ call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -52750,7 +54020,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $6) @@ -52779,7 +54049,7 @@ i32.const 241 return end ;; $if - i32.const 6540 + i32.const 7540 i32.load local.set $13 local.get $0 @@ -52789,18 +54059,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6568 + i32.const 7568 i32.load local.set $4 - i32.const 6548 + i32.const 7548 i32.load local.set $11 - i32.const 6552 + i32.const 7552 i32.load local.set $12 - i32.const 6556 + i32.const 7556 i32.load - i32.const 6524 + i32.const 7524 i32.load i32.add local.tee $8 @@ -53013,7 +54283,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.ge_u if $if_7 @@ -53045,7 +54315,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.lt_u if $if_9 (result i32) @@ -53093,17 +54363,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -53226,7 +54496,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -53239,17 +54509,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 13893 + i32.const 17428 i32.store offset=4 local.get $0 i32.const 47 @@ -53261,13 +54531,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 13932 + i32.const 17467 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -53275,12 +54545,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -53292,7 +54562,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 16308 + i32.const 25508 i32.const 0 local.get $0 i32.sub @@ -53301,8 +54571,135 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $___stdout_write (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.const 10 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 + local.get $0 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 + local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $___stdio_seek (type $12) + (param $0 i32) + (param $1 i64) + (param $2 i32) + (result i64) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.tee $4 local.get $0 + i32.load offset=60 + i32.store + local.get $4 + local.get $1 + i64.const 32 + i64.shr_u + i64.store32 offset=4 + local.get $4 + local.get $1 + i64.store32 offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $4 + local.get $2 + i32.store offset=16 + i32.const 140 + local.get $4 + call $___syscall140 + local.tee $0 + i32.const -4096 + i32.gt_u + if $if (result i32) + i32.const 25508 + i32.const 0 + local.get $0 + i32.sub + i32.store + i32.const -1 + else + local.get $0 + end ;; $if + i32.const 0 + i32.lt_s + if $if_0 (result i64) + local.get $3 + i64.const -1 + i64.store + i64.const -1 + else + local.get $3 + i64.load + end ;; $if_0 + local.set $1 + local.get $3 + global.set $32 + local.get $1 + ) + + (func $___errno_location (type $14) + (result i32) + i32.const 25508 ) (func $___stdio_write (type $6) @@ -53317,12 +54714,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 32 i32.add @@ -53373,7 +54770,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 16308 + i32.const 25508 i32.const 0 local.get $1 i32.sub @@ -53450,7 +54847,7 @@ i32.const -4096 i32.gt_u if $if_1 - i32.const 16308 + i32.const 25508 i32.const 0 local.get $1 i32.sub @@ -53510,135 +54907,89 @@ i32.store offset=20 end ;; $block local.get $6 - global.set $30 + global.set $32 local.get $2 ) - (func $___stdio_seek (type $12) - (param $0 i32) - (param $1 i64) - (param $2 i32) - (result i64) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - local.get $0 - i32.load offset=60 - i32.store - local.get $4 - local.get $1 - i64.const 32 - i64.shr_u - i64.store32 offset=4 - local.get $4 - local.get $1 - i64.store32 offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $4 - local.get $2 - i32.store offset=16 - i32.const 140 - local.get $4 - call $___syscall140 - local.tee $0 - i32.const -4096 - i32.gt_u - if $if (result i32) - i32.const 16308 - i32.const 0 - local.get $0 - i32.sub - i32.store - i32.const -1 - else - local.get $0 - end ;; $if - i32.const 0 - i32.lt_s - if $if_0 (result i64) - local.get $3 - i64.const -1 - i64.store - i64.const -1 - else - local.get $3 - i64.load - end ;; $if_0 - local.set $1 - local.get $3 - global.set $30 - local.get $1 - ) - - (func $___errno_location (type $14) - (result i32) - i32.const 16308 - ) - - (func $___stdout_write (type $6) + (func $_strlen (type $5) (param $0 i32) - (param $1 i32) - (param $2 i32) (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $3 - i32.const 16 - i32.add - local.set $4 - local.get $0 - i32.const 9 - i32.store offset=36 - local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 - local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $6) @@ -53692,6 +55043,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $4) (param $0 i32) (param $1 i32) @@ -53814,6 +55292,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -53822,18 +55327,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5152 + i32.const 5104 i32.const 144 call $_memcpy drop @@ -53847,7 +55352,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 16308 + i32.const 25508 i32.const 75 i32.store i32.const -1 @@ -53912,7 +55417,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -53958,12 +55463,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -53995,13 +55500,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 14116 + i32.const 17651 local.set $18 i32.const 1 else - i32.const 14119 - i32.const 14122 - i32.const 14117 + i32.const 17654 + i32.const 17657 + i32.const 17652 local.get $4 i32.const 1 i32.and @@ -54024,8 +55529,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 14143 - i32.const 14147 + i32.const 17678 + i32.const 17682 local.get $5 i32.const 32 i32.and @@ -54033,8 +55538,8 @@ i32.ne local.tee $3 select - i32.const 14135 - i32.const 14139 + i32.const 17670 + i32.const 17674 local.get $3 select local.get $1 @@ -54052,15 +55557,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -54068,7 +55573,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -54326,11 +55831,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -54338,14 +55843,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -54358,11 +55863,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -54370,7 +55875,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -55277,11 +56782,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -55289,7 +56794,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -55358,7 +56863,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -55382,9 +56887,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 14151 + i32.const 20453 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -55431,7 +56936,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -55461,7 +56966,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -55529,7 +57034,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -55541,9 +57046,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 14151 + i32.const 20453 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -55580,7 +57085,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -55604,13 +57109,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -55619,13 +57124,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -55668,12 +57173,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -55784,9 +57289,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop local.get $1 i32.const -1 @@ -55829,7 +57334,7 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -55861,12 +57366,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -55915,7 +57420,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 16308 + i32.const 25508 i32.const 75 i32.store i32.const -1 @@ -56005,7 +57510,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -56218,7 +57723,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -56254,7 +57759,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -56444,7 +57949,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -56631,7 +58136,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 14099 + i32.const 17634 local.set $8 br $block_14 end ;; $block_25 @@ -56647,13 +58152,13 @@ i64.sub local.tee $25 i64.store - i32.const 14099 + i32.const 17634 local.set $8 i32.const 1 else - i32.const 14100 - i32.const 14101 - i32.const 14099 + i32.const 17635 + i32.const 17636 + i32.const 17634 local.get $7 i32.const 1 i32.and @@ -56677,7 +58182,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 14099 + i32.const 17634 local.set $8 br $block_16 end ;; $block_23 @@ -56693,7 +58198,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 14099 + i32.const 17634 local.set $8 local.get $18 local.set $1 @@ -56702,7 +58207,7 @@ local.get $10 i32.load local.tee $5 - i32.const 14109 + i32.const 17644 local.get $5 select local.tee $6 @@ -56722,7 +58227,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 14099 + i32.const 17634 local.set $8 local.get $1 local.get $6 @@ -56758,7 +58263,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -56773,7 +58278,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -56783,7 +58288,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 14099 + i32.const 17634 local.set $8 local.get $18 local.set $1 @@ -56811,11 +58316,11 @@ local.tee $8 select local.set $12 - i32.const 14099 + i32.const 17634 local.get $6 i32.const 4 i32.shr_u - i32.const 14099 + i32.const 17634 i32.add local.get $8 select @@ -56881,7 +58386,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -56912,7 +58417,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -56975,7 +58480,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -57008,11 +58513,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -57020,17 +58525,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -57038,7 +58543,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -57070,7 +58575,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -57111,11 +58616,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $2) + (func $_out (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -57132,7 +58637,7 @@ end ;; $if ) - (func $_getint_280 (type $5) + (func $_getint (type $5) (param $0 i32) (result i32) (local $1 i32) @@ -57174,7 +58679,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $2) + (func $_pop_arg (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -57398,13 +58903,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 200 - call_indirect $26 (type $3) + i32.const 396 + call_indirect $28 (type $3) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -57440,7 +58945,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -57472,7 +58977,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -57545,19 +59050,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -57596,7 +59101,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -57613,10 +59118,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $4) @@ -57650,7 +59155,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6768 + i32.const 7768 i32.load i32.load i32.eqz @@ -57667,7 +59172,7 @@ i32.const 1 br $block else - i32.const 16308 + i32.const 25508 i32.const 84 i32.store i32.const -1 @@ -57772,7 +59277,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 16308 + i32.const 25508 i32.const 84 i32.store i32.const -1 @@ -57822,9 +59327,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop br $block end ;; $if_0 @@ -57869,9 +59374,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $3 i32.lt_u br_if $block @@ -57952,76 +59457,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $6) (param $0 i32) (param $1 i32) @@ -58056,176 +59491,26 @@ local.get $2 ) - (func $_strlen (type $5) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $16) + (func $_fprintf (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 15141 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -58233,12 +59518,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -58288,9 +59573,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) i32.const 1 i32.eq if $if_2 (result i32) @@ -58302,29 +59587,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 11606 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $5) @@ -58348,10 +59611,10 @@ end ;; $block local.set $0 else - i32.const 6576 + i32.const 7572 i32.load if $if_1 (result i32) - i32.const 6576 + i32.const 7572 i32.load call $_fflush else @@ -58359,9 +59622,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 16312 + i32.const 25512 call $___lock - i32.const 16320 + i32.const 25520 i32.load local.tee $1 end ;; $block_0 @@ -58395,7 +59658,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 16312 + i32.const 25512 call $___unlock end ;; $if local.get $0 @@ -58424,9 +59687,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop local.get $0 i32.load offset=20 @@ -58454,9 +59717,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -58478,6 +59741,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $5) (param $0 i32) (result i32) @@ -58503,17 +59830,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 16324 + i32.const 25524 i32.load local.tee $6 i32.const 16 @@ -58545,7 +59872,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.tee $3 i32.load offset=8 @@ -58558,7 +59885,7 @@ local.get $3 i32.eq if $if_1 - i32.const 16324 + i32.const 25524 local.get $6 i32.const 1 local.get $0 @@ -58568,7 +59895,7 @@ i32.and i32.store else - i32.const 16340 + i32.const 25540 i32.load local.get $4 i32.gt_u @@ -58608,12 +59935,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 16332 + i32.const 25532 i32.load local.tee $13 i32.gt_u @@ -58692,7 +60019,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.tee $1 i32.load offset=8 @@ -58705,7 +60032,7 @@ local.get $1 i32.eq if $if_6 - i32.const 16324 + i32.const 25524 local.get $6 i32.const 1 local.get $0 @@ -58716,7 +60043,7 @@ local.tee $8 i32.store else - i32.const 16340 + i32.const 25540 i32.load local.get $2 i32.gt_u @@ -58766,7 +60093,7 @@ i32.store local.get $13 if $if_9 - i32.const 16344 + i32.const 25544 i32.load local.set $10 local.get $13 @@ -58775,7 +60102,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.set $2 local.get $8 @@ -58785,7 +60112,7 @@ local.tee $0 i32.and if $if_10 - i32.const 16340 + i32.const 25540 i32.load local.get $2 i32.const 8 @@ -58803,7 +60130,7 @@ local.set $4 end ;; $if_11 else - i32.const 16324 + i32.const 25524 local.get $0 local.get $8 i32.or @@ -58828,18 +60155,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 16332 + i32.const 25532 local.get $6 i32.store - i32.const 16344 + i32.const 25544 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 16328 + i32.const 25528 i32.load local.tee $11 if $if_12 (result i32) @@ -58902,7 +60229,7 @@ i32.add i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add i32.load local.tee $0 @@ -58952,7 +60279,7 @@ br $loop end ;; $block end ;; $loop - i32.const 16340 + i32.const 25540 i32.load local.tee $7 local.get $9 @@ -59076,7 +60403,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.tee $0 i32.load @@ -59089,7 +60416,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 16328 + i32.const 25528 local.get $11 i32.const 1 local.get $1 @@ -59101,7 +60428,7 @@ br $block_2 end ;; $if_25 else - i32.const 16340 + i32.const 25540 i32.load local.get $18 i32.gt_u @@ -59126,7 +60453,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 16340 + i32.const 25540 i32.load local.tee $0 local.get $3 @@ -59159,7 +60486,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 16340 + i32.const 25540 i32.load local.get $0 i32.gt_u @@ -59215,7 +60542,7 @@ i32.store local.get $13 if $if_33 - i32.const 16344 + i32.const 25544 i32.load local.set $4 local.get $13 @@ -59224,7 +60551,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.set $3 local.get $6 @@ -59234,7 +60561,7 @@ local.tee $0 i32.and if $if_34 - i32.const 16340 + i32.const 25540 i32.load local.get $3 i32.const 8 @@ -59252,7 +60579,7 @@ local.set $12 end ;; $if_35 else - i32.const 16324 + i32.const 25524 local.get $0 local.get $6 i32.or @@ -59277,15 +60604,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 16332 + i32.const 25532 local.get $10 i32.store - i32.const 16344 + i32.const 25544 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -59311,7 +60638,7 @@ i32.const -8 i32.and local.set $15 - i32.const 16328 + i32.const 25528 i32.load local.tee $4 if $if_37 (result i32) @@ -59391,7 +60718,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add i32.load local.tee $0 @@ -59556,7 +60883,7 @@ i32.add i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add i32.load local.set $0 @@ -59619,13 +60946,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 16332 + i32.const 25532 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 16340 + i32.const 25540 i32.load local.tee $12 local.get $2 @@ -59749,7 +61076,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.tee $0 i32.load @@ -59762,7 +61089,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 16328 + i32.const 25528 local.get $4 i32.const 1 local.get $3 @@ -59775,7 +61102,7 @@ br $block_9 end ;; $if_60 else - i32.const 16340 + i32.const 25540 i32.load local.get $8 i32.gt_u @@ -59804,7 +61131,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 16340 + i32.const 25540 i32.load local.tee $0 local.get $13 @@ -59837,7 +61164,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 16340 + i32.const 25540 i32.load local.get $0 i32.gt_u @@ -59911,10 +61238,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.set $3 - i32.const 16324 + i32.const 25524 i32.load local.tee $1 i32.const 1 @@ -59923,7 +61250,7 @@ local.tee $0 i32.and if $if_70 - i32.const 16340 + i32.const 25540 i32.load local.get $3 i32.const 8 @@ -59941,7 +61268,7 @@ local.set $11 end ;; $if_71 else - i32.const 16324 + i32.const 25524 local.get $0 local.get $1 i32.or @@ -60037,7 +61364,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.set $3 local.get $5 @@ -60057,7 +61384,7 @@ i32.and i32.eqz if $if_74 - i32.const 16328 + i32.const 25528 local.get $0 local.get $1 i32.or @@ -60138,7 +61465,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 16340 + i32.const 25540 i32.load local.get $4 i32.gt_u @@ -60161,7 +61488,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 16340 + i32.const 25540 i32.load local.tee $0 local.get $6 @@ -60194,7 +61521,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -60214,13 +61541,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 16332 + i32.const 25532 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 16344 + i32.const 25544 i32.load local.set $0 local.get $3 @@ -60230,13 +61557,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 16344 + i32.const 25544 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 16332 + i32.const 25532 local.get $2 i32.store local.get $1 @@ -60255,10 +61582,10 @@ i32.or i32.store offset=4 else - i32.const 16332 + i32.const 25532 i32.const 0 i32.store - i32.const 16344 + i32.const 25544 i32.const 0 i32.store local.get $0 @@ -60279,13 +61606,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 16336 + i32.const 25536 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 16336 + i32.const 25536 local.get $12 local.get $11 i32.sub @@ -60293,31 +61620,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 16796 + i32.const 25996 i32.load if $if_83 (result i32) - i32.const 16804 + i32.const 26004 i32.load else - i32.const 16804 + i32.const 26004 i32.const 4096 i32.store - i32.const 16800 + i32.const 26000 i32.const 4096 i32.store - i32.const 16808 + i32.const 26008 i32.const -1 i32.store - i32.const 16812 + i32.const 26012 i32.const -1 i32.store - i32.const 16816 + i32.const 26016 i32.const 0 i32.store - i32.const 16768 + i32.const 25968 i32.const 0 i32.store - i32.const 16796 + i32.const 25996 local.get $17 i32.const -16 i32.and @@ -60344,11 +61671,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 16764 + i32.const 25964 i32.load local.tee $2 if $if_85 - i32.const 16756 + i32.const 25956 i32.load local.tee $1 local.get $8 @@ -60370,7 +61697,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 16768 + i32.const 25968 i32.load i32.const 4 i32.and @@ -60381,12 +61708,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 16348 + i32.const 25548 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 16772 + i32.const 25972 local.set $2 loop $loop_5 block $block_20 @@ -60449,11 +61776,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 16756 + i32.const 25956 i32.load local.tee $4 local.get $0 - i32.const 16800 + i32.const 26000 i32.load local.tee $2 i32.const -1 @@ -60484,7 +61811,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 16764 + i32.const 25964 i32.load local.tee $1 if $if_92 @@ -60542,7 +61869,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 16804 + i32.const 26004 i32.load local.tee $1 local.get $6 @@ -60579,8 +61906,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 16768 - i32.const 16768 + i32.const 25968 + i32.const 25968 i32.load i32.const 4 i32.or @@ -60635,28 +61962,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 16756 - i32.const 16756 + i32.const 25956 + i32.const 25956 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 16760 + i32.const 25960 i32.load i32.gt_u if $if_98 - i32.const 16760 + i32.const 25960 local.get $1 i32.store end ;; $if_98 - i32.const 16348 + i32.const 25548 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 16772 + i32.const 25972 local.set $2 block $block_22 block $block_23 @@ -60714,7 +62041,7 @@ local.tee $1 i32.add local.set $2 - i32.const 16336 + i32.const 25536 i32.load local.get $3 i32.add @@ -60722,10 +62049,10 @@ local.get $1 i32.sub local.set $1 - i32.const 16348 + i32.const 25548 local.get $2 i32.store - i32.const 16336 + i32.const 25536 local.get $1 i32.store local.get $2 @@ -60738,8 +62065,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 16352 - i32.const 16812 + i32.const 25552 + i32.const 26012 i32.load i32.store br $block_21 @@ -60747,12 +62074,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 16340 + i32.const 25540 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 16340 + i32.const 25540 local.get $0 i32.store local.get $0 @@ -60762,7 +62089,7 @@ local.get $3 i32.add local.set $1 - i32.const 16772 + i32.const 25972 local.set $8 block $block_24 block $block_25 @@ -60843,14 +62170,14 @@ local.get $6 i32.eq if $if_104 - i32.const 16336 - i32.const 16336 + i32.const 25536 + i32.const 25536 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 16348 + i32.const 25548 local.get $5 i32.store local.get $5 @@ -60860,19 +62187,19 @@ i32.store offset=4 else block $block_26 - i32.const 16344 + i32.const 25544 i32.load local.get $3 i32.eq if $if_105 - i32.const 16332 - i32.const 16332 + i32.const 25532 + i32.const 25532 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 16344 + i32.const 25544 local.get $5 i32.store local.get $5 @@ -60917,7 +62244,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.tee $0 i32.ne @@ -60941,8 +62268,8 @@ local.get $6 i32.eq if $if_110 - i32.const 16324 - i32.const 16324 + i32.const 25524 + i32.const 25524 i32.load i32.const 1 local.get $1 @@ -61100,7 +62427,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.tee $0 i32.load @@ -61113,8 +62440,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 16328 - i32.const 16328 + i32.const 25528 + i32.const 25528 i32.load i32.const 1 local.get $1 @@ -61126,7 +62453,7 @@ br $block_27 end ;; $block_32 else - i32.const 16340 + i32.const 25540 i32.load local.get $8 i32.gt_u @@ -61151,7 +62478,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 16340 + i32.const 25540 i32.load local.tee $0 local.get $16 @@ -61185,7 +62512,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 16340 + i32.const 25540 i32.load local.get $0 i32.gt_u @@ -61237,10 +62564,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.set $2 - i32.const 16324 + i32.const 25524 i32.load local.tee $1 i32.const 1 @@ -61250,7 +62577,7 @@ i32.and if $if_128 block $block_33 - i32.const 16340 + i32.const 25540 i32.load local.get $2 i32.const 8 @@ -61269,7 +62596,7 @@ call $_abort end ;; $block_33 else - i32.const 16324 + i32.const 25524 local.get $0 local.get $1 i32.or @@ -61365,7 +62692,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.set $2 local.get $5 @@ -61377,7 +62704,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 16328 + i32.const 25528 i32.load local.tee $1 i32.const 1 @@ -61387,7 +62714,7 @@ i32.and i32.eqz if $if_132 - i32.const 16328 + i32.const 25528 local.get $0 local.get $1 i32.or @@ -61468,7 +62795,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 16340 + i32.const 25540 i32.load local.get $2 i32.gt_u @@ -61491,821 +62818,2746 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 16340 + i32.const 25540 i32.load local.tee $0 local.get $9 i32.le_u local.get $0 - local.get $9 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_137 - local.get $0 - local.get $5 - i32.store offset=12 - local.get $9 - local.get $5 - i32.store offset=8 - local.get $5 - local.get $0 - i32.store offset=8 - local.get $5 - local.get $9 - i32.store offset=12 - local.get $5 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_137 - end ;; $block_26 - end ;; $if_104 - local.get $17 - global.set $30 - local.get $12 - i32.const 8 - i32.add - return - end ;; $if_103 - end ;; $block_24 - i32.const 16772 + local.get $9 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_137 + local.get $0 + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store offset=8 + local.get $5 + local.get $0 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=12 + local.get $5 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_137 + end ;; $block_26 + end ;; $if_104 + local.get $17 + global.set $32 + local.get $12 + i32.const 8 + i32.add + return + end ;; $if_103 + end ;; $block_24 + i32.const 25972 + local.set $2 + loop $loop_10 + block $block_35 + local.get $2 + i32.load + local.tee $1 + local.get $6 + i32.le_u + if $if_138 + local.get $1 + local.get $2 + i32.load offset=4 + i32.add + local.tee $7 + local.get $6 + i32.gt_u + br_if $block_35 + end ;; $if_138 + local.get $2 + i32.load offset=8 + local.set $2 + br $loop_10 + end ;; $block_35 + end ;; $loop_10 + i32.const 25548 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 25536 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 25552 + i32.const 26012 + i32.load + i32.store + local.get $6 + i32.const 0 + local.get $7 + i32.const -47 + i32.add + local.tee $2 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.get $2 + i32.add + local.tee $1 + local.get $1 + local.get $6 + i32.const 16 + i32.add + i32.lt_u + select + local.tee $2 + i32.const 27 + i32.store offset=4 + local.get $2 + i32.const 25972 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + i32.const 25980 + i64.load align=4 + i64.store offset=16 align=4 + i32.const 25972 + local.get $0 + i32.store + i32.const 25976 + local.get $3 + i32.store + i32.const 25984 + i32.const 0 + i32.store + i32.const 25980 + local.get $2 + i32.const 8 + i32.add + i32.store + local.get $2 + i32.const 24 + i32.add + local.set $0 + loop $loop_11 + local.get $0 + i32.const 4 + i32.add + local.tee $1 + i32.const 7 + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $7 + i32.lt_u + if $if_139 + local.get $1 + local.set $0 + br $loop_11 + end ;; $if_139 + end ;; $loop_11 + local.get $2 + local.get $6 + i32.ne + if $if_140 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $6 + local.get $2 + local.get $6 + i32.sub + local.tee $4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $4 + i32.store + local.get $4 + i32.const 3 + i32.shr_u + local.set $0 + local.get $4 + i32.const 256 + i32.lt_u + if $if_141 + local.get $0 + i32.const 3 + i32.shl + i32.const 25564 + i32.add + local.set $2 + i32.const 25524 + i32.load + local.tee $1 + i32.const 1 + local.get $0 + i32.shl + local.tee $0 + i32.and + if $if_142 + i32.const 25540 + i32.load + local.get $2 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $0 + i32.gt_u + if $if_143 + call $_abort + else + local.get $1 + local.set $22 + local.get $0 + local.set $5 + end ;; $if_143 + else + i32.const 25524 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + i32.const 8 + i32.add + local.set $22 + local.get $2 + local.set $5 + end ;; $if_142 + local.get $22 + local.get $6 + i32.store + local.get $5 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $5 + i32.store offset=8 + local.get $6 + local.get $2 + i32.store offset=12 + br $block_21 + end ;; $if_141 + local.get $4 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_144 (result i32) + local.get $4 + i32.const 16777215 + i32.gt_u + if $if_145 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $2 + i32.shl + local.tee $0 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $3 + local.get $4 + i32.const 14 + local.get $0 + local.get $3 + i32.shl + local.tee $1 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.tee $0 + local.get $2 + local.get $3 + i32.or + i32.or + i32.sub + local.get $1 + local.get $0 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_145 + else + i32.const 0 + end ;; $if_144 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25828 + i32.add + local.set $2 + local.get $6 + local.get $3 + i32.store offset=28 + local.get $6 + i32.const 0 + i32.store offset=20 + local.get $6 + i32.const 0 + i32.store offset=16 + i32.const 25528 + i32.load + local.tee $1 + i32.const 1 + local.get $3 + i32.shl + local.tee $0 + i32.and + i32.eqz + if $if_146 + i32.const 25528 + local.get $0 + local.get $1 + i32.or + i32.store + local.get $2 + local.get $6 + i32.store + local.get $6 + local.get $2 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_146 + local.get $2 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_147 + local.get $0 + local.set $10 + else + block $block_36 + local.get $4 + i32.const 0 + i32.const 25 + local.get $3 + i32.const 1 + i32.shr_u + i32.sub + local.get $3 + i32.const 31 + i32.eq + select + i32.shl + local.set $2 + loop $loop_12 + local.get $0 + i32.const 16 + i32.add + local.get $2 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.tee $1 + if $if_148 + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $4 + i32.eq + if $if_149 + local.get $1 + local.set $10 + br $block_36 + else + local.get $1 + local.set $0 + br $loop_12 + end ;; $if_149 + unreachable + end ;; $if_148 + end ;; $loop_12 + i32.const 25540 + i32.load + local.get $3 + i32.gt_u + if $if_150 + call $_abort + else + local.get $3 + local.get $6 + i32.store + local.get $6 + local.get $0 + i32.store offset=24 + local.get $6 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $6 + i32.store offset=8 + br $block_21 + end ;; $if_150 + end ;; $block_36 + end ;; $if_147 + i32.const 25540 + i32.load + local.tee $0 + local.get $10 + i32.le_u + local.get $0 + local.get $10 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_151 + local.get $0 + local.get $6 + i32.store offset=12 + local.get $10 + local.get $6 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=8 + local.get $6 + local.get $10 + i32.store offset=12 + local.get $6 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_151 + end ;; $if_140 + end ;; $block_21 + else + i32.const 25540 + i32.load + local.tee $1 + i32.eqz + local.get $0 + local.get $1 + i32.lt_u + i32.or + if $if_152 + i32.const 25540 + local.get $0 + i32.store + end ;; $if_152 + i32.const 25972 + local.get $0 + i32.store + i32.const 25976 + local.get $3 + i32.store + i32.const 25984 + i32.const 0 + i32.store + i32.const 25560 + i32.const 25996 + i32.load + i32.store + i32.const 25556 + i32.const -1 + i32.store + i32.const 25576 + i32.const 25564 + i32.store + i32.const 25572 + i32.const 25564 + i32.store + i32.const 25584 + i32.const 25572 + i32.store + i32.const 25580 + i32.const 25572 + i32.store + i32.const 25592 + i32.const 25580 + i32.store + i32.const 25588 + i32.const 25580 + i32.store + i32.const 25600 + i32.const 25588 + i32.store + i32.const 25596 + i32.const 25588 + i32.store + i32.const 25608 + i32.const 25596 + i32.store + i32.const 25604 + i32.const 25596 + i32.store + i32.const 25616 + i32.const 25604 + i32.store + i32.const 25612 + i32.const 25604 + i32.store + i32.const 25624 + i32.const 25612 + i32.store + i32.const 25620 + i32.const 25612 + i32.store + i32.const 25632 + i32.const 25620 + i32.store + i32.const 25628 + i32.const 25620 + i32.store + i32.const 25640 + i32.const 25628 + i32.store + i32.const 25636 + i32.const 25628 + i32.store + i32.const 25648 + i32.const 25636 + i32.store + i32.const 25644 + i32.const 25636 + i32.store + i32.const 25656 + i32.const 25644 + i32.store + i32.const 25652 + i32.const 25644 + i32.store + i32.const 25664 + i32.const 25652 + i32.store + i32.const 25660 + i32.const 25652 + i32.store + i32.const 25672 + i32.const 25660 + i32.store + i32.const 25668 + i32.const 25660 + i32.store + i32.const 25680 + i32.const 25668 + i32.store + i32.const 25676 + i32.const 25668 + i32.store + i32.const 25688 + i32.const 25676 + i32.store + i32.const 25684 + i32.const 25676 + i32.store + i32.const 25696 + i32.const 25684 + i32.store + i32.const 25692 + i32.const 25684 + i32.store + i32.const 25704 + i32.const 25692 + i32.store + i32.const 25700 + i32.const 25692 + i32.store + i32.const 25712 + i32.const 25700 + i32.store + i32.const 25708 + i32.const 25700 + i32.store + i32.const 25720 + i32.const 25708 + i32.store + i32.const 25716 + i32.const 25708 + i32.store + i32.const 25728 + i32.const 25716 + i32.store + i32.const 25724 + i32.const 25716 + i32.store + i32.const 25736 + i32.const 25724 + i32.store + i32.const 25732 + i32.const 25724 + i32.store + i32.const 25744 + i32.const 25732 + i32.store + i32.const 25740 + i32.const 25732 + i32.store + i32.const 25752 + i32.const 25740 + i32.store + i32.const 25748 + i32.const 25740 + i32.store + i32.const 25760 + i32.const 25748 + i32.store + i32.const 25756 + i32.const 25748 + i32.store + i32.const 25768 + i32.const 25756 + i32.store + i32.const 25764 + i32.const 25756 + i32.store + i32.const 25776 + i32.const 25764 + i32.store + i32.const 25772 + i32.const 25764 + i32.store + i32.const 25784 + i32.const 25772 + i32.store + i32.const 25780 + i32.const 25772 + i32.store + i32.const 25792 + i32.const 25780 + i32.store + i32.const 25788 + i32.const 25780 + i32.store + i32.const 25800 + i32.const 25788 + i32.store + i32.const 25796 + i32.const 25788 + i32.store + i32.const 25808 + i32.const 25796 + i32.store + i32.const 25804 + i32.const 25796 + i32.store + i32.const 25816 + i32.const 25804 + i32.store + i32.const 25812 + i32.const 25804 + i32.store + i32.const 25824 + i32.const 25812 + i32.store + i32.const 25820 + i32.const 25812 + i32.store + i32.const 25548 + i32.const 0 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.sub + i32.const 7 + i32.and + i32.const 0 + local.get $1 + i32.const 7 + i32.and + select + local.tee $1 + local.get $0 + i32.add + local.tee $4 + i32.store + i32.const 25536 + local.get $3 + i32.const -40 + i32.add + local.tee $2 + local.get $1 + i32.sub + local.tee $1 + i32.store + local.get $4 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 25552 + i32.const 26012 + i32.load + i32.store + end ;; $if_99 + i32.const 25536 + i32.load + local.tee $0 + local.get $11 + i32.gt_u + if $if_153 + i32.const 25536 + local.get $0 + local.get $11 + i32.sub + local.tee $3 + i32.store + br $block_14 + end ;; $if_153 + end ;; $block_15 + i32.const 25508 + i32.const 12 + i32.store + br $block_12 + end ;; $block_14 + i32.const 25548 + i32.const 25548 + i32.load + local.tee $0 + local.get $11 + i32.add + local.tee $1 + i32.store + local.get $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.const 3 + i32.or + i32.store offset=4 + end ;; $block_13 + local.get $17 + global.set $32 + local.get $0 + i32.const 8 + i32.add + return + end ;; $block_12 + local.get $17 + global.set $32 + i32.const 0 + ) + + (func $_free (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + local.get $0 + i32.eqz + if $if + return + end ;; $if + local.get $0 + i32.const -8 + i32.add + local.tee $5 + i32.const 25540 + i32.load + local.tee $11 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $0 + i32.const 3 + i32.and + local.tee $12 + i32.const 1 + i32.eq + if $if_1 + call $_abort + end ;; $if_1 + local.get $5 + local.get $0 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.set $7 + local.get $0 + i32.const 1 + i32.and + if $if_2 + local.get $5 + local.tee $4 + local.set $3 + local.get $2 + local.set $1 + else + block $block + local.get $5 + i32.load + local.set $10 + local.get $12 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $5 + local.get $10 + i32.sub + local.tee $0 + local.get $11 + i32.lt_u + if $if_4 + call $_abort + end ;; $if_4 + local.get $2 + local.get $10 + i32.add + local.set $5 + i32.const 25544 + i32.load + local.get $0 + i32.eq + if $if_5 + local.get $7 + i32.load offset=4 + local.tee $4 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_6 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_6 + i32.const 25532 + local.get $5 + i32.store + local.get $7 + local.get $4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $5 + i32.add + local.get $5 + i32.store + return + end ;; $if_5 + local.get $10 + i32.const 3 + i32.shr_u + local.set $2 + local.get $10 + i32.const 256 + i32.lt_u + if $if_7 + local.get $0 + i32.load offset=12 + local.set $1 + local.get $0 + i32.load offset=8 + local.tee $3 + local.get $2 + i32.const 3 + i32.shl + i32.const 25564 + i32.add + local.tee $4 + i32.ne + if $if_8 + local.get $11 + local.get $3 + i32.gt_u + if $if_9 + call $_abort + end ;; $if_9 + local.get $0 + local.get $3 + i32.load offset=12 + i32.ne + if $if_10 + call $_abort + end ;; $if_10 + end ;; $if_8 + local.get $1 + local.get $3 + i32.eq + if $if_11 + i32.const 25524 + i32.const 25524 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_11 + local.get $1 + local.get $4 + i32.eq + if $if_12 + local.get $1 + i32.const 8 + i32.add + local.set $6 + else + local.get $11 + local.get $1 + i32.gt_u + if $if_13 + call $_abort + end ;; $if_13 + local.get $1 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_14 + local.get $4 + local.set $6 + else + call $_abort + end ;; $if_14 + end ;; $if_12 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $6 + local.get $3 + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_7 + local.get $0 + i32.load offset=24 + local.set $13 + local.get $0 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.eq + if $if_15 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.const 4 + i32.add + local.tee $10 + i32.load + local.tee $2 + if $if_16 + local.get $10 + local.set $6 + else + local.get $6 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + end ;; $if_16 + loop $loop + block $block_1 + local.get $2 + i32.const 20 + i32.add + local.tee $10 + i32.load + local.tee $12 + i32.eqz + if $if_17 + local.get $2 + i32.const 16 + i32.add + local.tee $10 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_17 + local.get $10 + local.set $6 + local.get $12 local.set $2 - loop $loop_10 - block $block_35 - local.get $2 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $6 + i32.gt_u + if $if_18 + call $_abort + else + local.get $6 + i32.const 0 + i32.store + local.get $2 + local.set $8 + end ;; $if_18 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.gt_u + if $if_19 + call $_abort + end ;; $if_19 + local.get $0 + local.get $6 + i32.load offset=12 + i32.ne + if $if_20 + call $_abort + end ;; $if_20 + local.get $2 + i32.load offset=8 + local.get $0 + i32.eq + if $if_21 + local.get $6 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $6 + i32.store offset=8 + local.get $2 + local.set $8 + else + call $_abort + end ;; $if_21 + end ;; $if_15 + local.get $13 + if $if_22 + local.get $0 + i32.load offset=28 + local.tee $2 + i32.const 2 + i32.shl + i32.const 25828 + i32.add + local.tee $6 + i32.load + local.get $0 + i32.eq + if $if_23 + local.get $6 + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_24 + i32.const 25528 + i32.const 25528 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_24 + else + i32.const 25540 + i32.load + local.get $13 + i32.gt_u + if $if_25 + call $_abort + else + local.get $13 + i32.const 16 + i32.add + local.tee $2 + local.get $13 + i32.const 20 + i32.add + local.get $2 + i32.load + local.get $0 + i32.eq + select + local.get $8 + i32.store + local.get $8 + i32.eqz + if $if_26 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + br $block + end ;; $if_26 + end ;; $if_25 + end ;; $if_23 + i32.const 25540 + i32.load + local.tee $6 + local.get $8 + i32.gt_u + if $if_27 + call $_abort + end ;; $if_27 + local.get $8 + local.get $13 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $2 + if $if_28 + local.get $6 + local.get $2 + i32.gt_u + if $if_29 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=16 + local.get $2 + local.get $8 + i32.store offset=24 + end ;; $if_29 + end ;; $if_28 + local.get $0 + i32.load offset=20 + local.tee $2 + if $if_30 + i32.const 25540 + i32.load + local.get $2 + i32.gt_u + if $if_31 + call $_abort + else + local.get $8 + local.get $2 + i32.store offset=20 + local.get $2 + local.get $8 + i32.store offset=24 + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_31 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_30 + else + local.get $0 + local.tee $4 + local.set $3 + local.get $5 + local.set $1 + end ;; $if_22 + end ;; $block + end ;; $if_2 + local.get $4 + local.get $7 + i32.ge_u + if $if_32 + call $_abort + end ;; $if_32 + local.get $7 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.and + i32.eqz + if $if_33 + call $_abort + end ;; $if_33 + local.get $0 + i32.const 2 + i32.and + if $if_34 + local.get $7 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $3 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $4 + i32.add + local.get $1 + i32.store + else + i32.const 25548 + i32.load + local.get $7 + i32.eq + if $if_35 + i32.const 25536 + i32.const 25536 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 25548 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $3 + i32.const 25544 + i32.load + i32.ne + if $if_36 + return + end ;; $if_36 + i32.const 25544 + i32.const 0 + i32.store + i32.const 25532 + i32.const 0 + i32.store + return + end ;; $if_35 + i32.const 25544 + i32.load + local.get $7 + i32.eq + if $if_37 + i32.const 25532 + i32.const 25532 + i32.load + local.get $1 + i32.add + local.tee $0 + i32.store + i32.const 25544 + local.get $4 + i32.store + local.get $3 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $4 + i32.add + local.get $0 + i32.store + return + end ;; $if_37 + local.get $0 + i32.const -8 + i32.and + local.get $1 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $6 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_38 + local.get $7 + i32.load offset=12 + local.set $1 + local.get $7 + i32.load offset=8 + local.tee $2 + local.get $6 + i32.const 3 + i32.shl + i32.const 25564 + i32.add + local.tee $0 + i32.ne + if $if_39 + i32.const 25540 + i32.load + local.get $2 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $7 + local.get $2 + i32.load offset=12 + i32.ne + if $if_41 + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $1 + local.get $2 + i32.eq + if $if_42 + i32.const 25524 + i32.const 25524 + i32.load + i32.const 1 + local.get $6 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_42 + local.get $0 + local.get $1 + i32.eq + if $if_43 + local.get $1 + i32.const 8 + i32.add + local.set $16 + else + i32.const 25540 + i32.load + local.get $1 + i32.gt_u + if $if_44 + call $_abort + end ;; $if_44 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $7 + i32.eq + if $if_45 + local.get $0 + local.set $16 + else + call $_abort + end ;; $if_45 + end ;; $if_43 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $16 + local.get $2 + i32.store + else + local.get $7 + i32.load offset=24 + local.set $8 + local.get $7 + i32.load offset=12 + local.tee $0 + local.get $7 + i32.eq + if $if_46 + block $block_3 + local.get $7 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $2 + i32.load + local.tee $0 + if $if_47 + local.get $2 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_47 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $2 + i32.load + local.tee $6 + i32.eqz + if $if_48 + local.get $0 + i32.const 16 + i32.add + local.tee $2 i32.load - local.tee $1 - local.get $6 - i32.le_u - if $if_138 - local.get $1 - local.get $2 - i32.load offset=4 - i32.add - local.tee $7 - local.get $6 - i32.gt_u - br_if $block_35 - end ;; $if_138 - local.get $2 - i32.load offset=8 - local.set $2 - br $loop_10 - end ;; $block_35 - end ;; $loop_10 - i32.const 16348 + local.tee $6 + i32.eqz + br_if $block_4 + end ;; $if_48 + local.get $2 + local.set $1 + local.get $6 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + i32.const 25540 + i32.load + local.get $1 + i32.gt_u + if $if_49 + call $_abort + else + local.get $1 i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_49 + end ;; $block_3 + else + i32.const 25540 + i32.load + local.get $7 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_50 + call $_abort + end ;; $if_50 + local.get $7 + local.get $1 + i32.load offset=12 + i32.ne + if $if_51 + call $_abort + end ;; $if_51 + local.get $0 + i32.load offset=8 + local.get $7 + i32.eq + if $if_52 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_52 + end ;; $if_46 + local.get $8 + if $if_53 + local.get $7 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 25828 + i32.add + local.tee $1 + i32.load + local.get $7 + i32.eq + if $if_54 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_55 + i32.const 25528 + i32.const 25528 + i32.load + i32.const 1 local.get $0 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 + i32.shl + i32.const -1 + i32.xor i32.and - select - local.tee $1 - local.get $0 - i32.add - local.tee $4 i32.store - i32.const 16336 - local.get $3 - i32.const -40 + br $block_2 + end ;; $if_55 + else + i32.const 25540 + i32.load + local.get $8 + i32.gt_u + if $if_56 + call $_abort + else + local.get $8 + i32.const 16 i32.add - local.tee $2 - local.get $1 - i32.sub - local.tee $1 - i32.store - local.get $4 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 + local.tee $0 + local.get $8 + i32.const 20 i32.add - i32.const 40 - i32.store offset=4 - i32.const 16352 - i32.const 16812 + local.get $0 i32.load - i32.store - local.get $6 - i32.const 0 local.get $7 - i32.const -47 - i32.add - local.tee $2 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.get $2 - i32.add - local.tee $1 - local.get $1 - local.get $6 - i32.const 16 - i32.add - i32.lt_u + i32.eq select - local.tee $2 - i32.const 27 - i32.store offset=4 - local.get $2 - i32.const 16772 - i64.load align=4 - i64.store offset=8 align=4 - local.get $2 - i32.const 16780 - i64.load align=4 - i64.store offset=16 align=4 - i32.const 16772 - local.get $0 - i32.store - i32.const 16776 - local.get $3 - i32.store - i32.const 16784 - i32.const 0 - i32.store - i32.const 16780 - local.get $2 - i32.const 8 - i32.add + local.get $9 i32.store - local.get $2 - i32.const 24 - i32.add - local.set $0 - loop $loop_11 - local.get $0 - i32.const 4 - i32.add - local.tee $1 - i32.const 7 - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $7 - i32.lt_u - if $if_139 - local.get $1 - local.set $0 - br $loop_11 - end ;; $if_139 - end ;; $loop_11 - local.get $2 - local.get $6 - i32.ne - if $if_140 - local.get $2 - local.get $2 - i32.load offset=4 - i32.const -2 - i32.and - i32.store offset=4 - local.get $6 - local.get $2 - local.get $6 - i32.sub - local.tee $4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $4 - i32.store - local.get $4 - i32.const 3 - i32.shr_u - local.set $0 - local.get $4 - i32.const 256 - i32.lt_u - if $if_141 - local.get $0 - i32.const 3 - i32.shl - i32.const 16364 - i32.add - local.set $2 - i32.const 16324 - i32.load - local.tee $1 - i32.const 1 - local.get $0 - i32.shl - local.tee $0 - i32.and - if $if_142 - i32.const 16340 - i32.load - local.get $2 - i32.const 8 - i32.add - local.tee $1 - i32.load - local.tee $0 - i32.gt_u - if $if_143 - call $_abort - else - local.get $1 - local.set $22 - local.get $0 - local.set $5 - end ;; $if_143 - else - i32.const 16324 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - i32.const 8 - i32.add - local.set $22 - local.get $2 - local.set $5 - end ;; $if_142 - local.get $22 - local.get $6 - i32.store - local.get $5 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $5 - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=12 - br $block_21 - end ;; $if_141 - local.get $4 - i32.const 8 - i32.shr_u - local.tee $0 - if $if_144 (result i32) - local.get $4 - i32.const 16777215 - i32.gt_u - if $if_145 (result i32) - i32.const 31 - else - local.get $0 - local.get $0 - i32.const 1048320 - i32.add - i32.const 16 - i32.shr_u - i32.const 8 - i32.and - local.tee $2 - i32.shl - local.tee $0 - i32.const 520192 - i32.add - i32.const 16 - i32.shr_u - i32.const 4 - i32.and - local.set $3 - local.get $4 - i32.const 14 - local.get $0 - local.get $3 - i32.shl - local.tee $1 - i32.const 245760 - i32.add - i32.const 16 - i32.shr_u - i32.const 2 - i32.and - local.tee $0 - local.get $2 - local.get $3 - i32.or - i32.or - i32.sub - local.get $1 - local.get $0 - i32.shl - i32.const 15 - i32.shr_u - i32.add - local.tee $0 - i32.const 7 - i32.add - i32.shr_u - i32.const 1 - i32.and - local.get $0 - i32.const 1 - i32.shl - i32.or - end ;; $if_145 - else - i32.const 0 - end ;; $if_144 - local.tee $3 - i32.const 2 - i32.shl - i32.const 16628 - i32.add - local.set $2 - local.get $6 + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_56 + end ;; $if_54 + i32.const 25540 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_57 + call $_abort + end ;; $if_57 + local.get $9 + local.get $8 + i32.store offset=24 + local.get $7 + i32.load offset=16 + local.tee $0 + if $if_58 + local.get $1 + local.get $0 + i32.gt_u + if $if_59 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_59 + end ;; $if_58 + local.get $7 + i32.load offset=20 + local.tee $0 + if $if_60 + i32.const 25540 + i32.load + local.get $0 + i32.gt_u + if $if_61 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_61 + end ;; $if_60 + end ;; $if_53 + end ;; $if_38 + end ;; $block_2 + local.get $3 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $4 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 25544 + i32.load + local.get $3 + i32.eq + if $if_62 (result i32) + i32.const 25532 + local.get $5 + i32.store + return + else + local.get $5 + end ;; $if_62 + local.set $1 + end ;; $if_34 + local.get $1 + i32.const 3 + i32.shr_u + local.set $4 + local.get $1 + i32.const 256 + i32.lt_u + if $if_63 + local.get $4 + i32.const 3 + i32.shl + i32.const 25564 + i32.add + local.set $0 + i32.const 25524 + i32.load + local.tee $1 + i32.const 1 + local.get $4 + i32.shl + local.tee $4 + i32.and + if $if_64 + i32.const 25540 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load + local.tee $1 + i32.gt_u + if $if_65 + call $_abort + else + local.get $4 + local.set $17 + local.get $1 + local.set $15 + end ;; $if_65 + else + i32.const 25524 + local.get $1 + local.get $4 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $17 + local.get $0 + local.set $15 + end ;; $if_64 + local.get $17 + local.get $3 + i32.store + local.get $15 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $15 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=12 + return + end ;; $if_63 + local.get $1 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_66 (result i32) + local.get $1 + i32.const 16777215 + i32.gt_u + if $if_67 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $5 + i32.shl + local.tee $4 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $4 + local.get $0 + i32.shl + local.tee $2 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $4 + local.get $1 + i32.const 14 + local.get $0 + local.get $5 + i32.or + local.get $4 + i32.or + i32.sub + local.get $2 + local.get $4 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_67 + else + i32.const 0 + end ;; $if_66 + local.tee $4 + i32.const 2 + i32.shl + i32.const 25828 + i32.add + local.set $0 + local.get $3 + local.get $4 + i32.store offset=28 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 0 + i32.store offset=16 + i32.const 25528 + i32.load + local.tee $5 + i32.const 1 + local.get $4 + i32.shl + local.tee $2 + i32.and + if $if_68 + block $block_5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_69 + local.get $0 + local.set $14 + else + block $block_6 + local.get $1 + i32.const 0 + i32.const 25 + local.get $4 + i32.const 1 + i32.shr_u + i32.sub + local.get $4 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $5 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + local.tee $4 + if $if_70 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $4 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.eq + if $if_71 + local.get $4 + local.set $14 + br $block_6 + else + local.get $4 + local.set $0 + br $loop_1 + end ;; $if_71 + unreachable + end ;; $if_70 + end ;; $loop_1 + i32.const 25540 + i32.load + local.get $2 + i32.gt_u + if $if_72 + call $_abort + else + local.get $2 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + br $block_5 + end ;; $if_72 + end ;; $block_6 + end ;; $if_69 + i32.const 25540 + i32.load + local.tee $0 + local.get $14 + i32.le_u + local.get $0 + local.get $14 + i32.load offset=8 + local.tee $0 + i32.le_u + i32.and + if $if_73 + local.get $0 + local.get $3 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + local.get $14 + i32.store offset=12 + local.get $3 + i32.const 0 + i32.store offset=24 + else + call $_abort + end ;; $if_73 + end ;; $block_5 + else + i32.const 25528 + local.get $2 + local.get $5 + i32.or + i32.store + local.get $0 + local.get $3 + i32.store + local.get $3 + local.get $0 + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $3 + i32.store offset=8 + end ;; $if_68 + i32.const 25556 + i32.const 25556 + i32.load + i32.const -1 + i32.add + local.tee $0 + i32.store + local.get $0 + if $if_74 + return + end ;; $if_74 + i32.const 25980 + local.set $0 + loop $loop_2 + local.get $0 + i32.load + local.tee $4 + i32.const 8 + i32.add + local.set $0 + local.get $4 + br_if $loop_2 + end ;; $loop_2 + i32.const 25556 + i32.const -1 + i32.store + ) + + (func $_realloc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 25508 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 + ) + + (func $_try_realloc_chunk (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 + i32.add + local.tee $4 + local.get $0 + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 25540 + i32.load + local.tee $10 + local.get $0 + i32.le_u + i32.and + i32.and + i32.eqz + if $if + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 26004 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $3 + call $_dispose_chunk + local.get $0 + return + end ;; $if_4 + i32.const 25548 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 25536 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 + i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 25548 + local.get $2 + i32.store + i32.const 25536 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 25544 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 25532 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 25532 + local.get $3 + i32.store + i32.const 25544 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 25564 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 25524 + i32.const 25524 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 + block $block_1 + local.get $4 + i32.const 16 + i32.add + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 local.get $3 - i32.store offset=28 - local.get $6 - i32.const 0 - i32.store offset=20 - local.get $6 - i32.const 0 - i32.store offset=16 - i32.const 16328 + i32.const 20 + i32.add + local.tee $6 i32.load - local.tee $1 - i32.const 1 - local.get $3 - i32.shl - local.tee $0 - i32.and + local.tee $8 i32.eqz - if $if_146 - i32.const 16328 - local.get $0 - local.get $1 - i32.or - i32.store - local.get $2 - local.get $6 - i32.store - local.get $6 - local.get $2 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_146 - local.get $2 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_147 - local.get $0 - local.set $10 - else - block $block_36 - local.get $4 - i32.const 0 - i32.const 25 - local.get $3 - i32.const 1 - i32.shr_u - i32.sub - local.get $3 - i32.const 31 - i32.eq - select - i32.shl - local.set $2 - loop $loop_12 - local.get $0 - i32.const 16 - i32.add - local.get $2 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $3 - i32.load - local.tee $1 - if $if_148 - local.get $2 - i32.const 1 - i32.shl - local.set $2 - local.get $1 - i32.load offset=4 - i32.const -8 - i32.and - local.get $4 - i32.eq - if $if_149 - local.get $1 - local.set $10 - br $block_36 - else - local.get $1 - local.set $0 - br $loop_12 - end ;; $if_149 - unreachable - end ;; $if_148 - end ;; $loop_12 - i32.const 16340 - i32.load - local.get $3 - i32.gt_u - if $if_150 - call $_abort - else - local.get $3 - local.get $6 - i32.store - local.get $6 - local.get $0 - i32.store offset=24 - local.get $6 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $6 - i32.store offset=8 - br $block_21 - end ;; $if_150 - end ;; $block_36 - end ;; $if_147 - i32.const 16340 - i32.load - local.tee $0 - local.get $10 - i32.le_u - local.get $0 - local.get $10 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_151 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $10 - local.get $6 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $6 - local.get $10 - i32.store offset=12 - local.get $6 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_151 - end ;; $if_140 - end ;; $block_21 - else - i32.const 16340 - i32.load - local.tee $1 - i32.eqz - local.get $0 - local.get $1 - i32.lt_u - i32.or - if $if_152 - i32.const 16340 - local.get $0 + if $if_19 + local.get $3 + i32.const 16 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 i32.store - end ;; $if_152 - i32.const 16772 - local.get $0 - i32.store - i32.const 16776 + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 local.get $3 - i32.store - i32.const 16784 - i32.const 0 - i32.store - i32.const 16360 - i32.const 16796 - i32.load - i32.store - i32.const 16356 - i32.const -1 - i32.store - i32.const 16376 - i32.const 16364 - i32.store - i32.const 16372 - i32.const 16364 - i32.store - i32.const 16384 - i32.const 16372 - i32.store - i32.const 16380 - i32.const 16372 - i32.store - i32.const 16392 - i32.const 16380 - i32.store - i32.const 16388 - i32.const 16380 - i32.store - i32.const 16400 - i32.const 16388 - i32.store - i32.const 16396 - i32.const 16388 - i32.store - i32.const 16408 - i32.const 16396 - i32.store - i32.const 16404 - i32.const 16396 - i32.store - i32.const 16416 - i32.const 16404 - i32.store - i32.const 16412 - i32.const 16404 - i32.store - i32.const 16424 - i32.const 16412 - i32.store - i32.const 16420 - i32.const 16412 - i32.store - i32.const 16432 - i32.const 16420 - i32.store - i32.const 16428 - i32.const 16420 - i32.store - i32.const 16440 - i32.const 16428 - i32.store - i32.const 16436 - i32.const 16428 - i32.store - i32.const 16448 - i32.const 16436 - i32.store - i32.const 16444 - i32.const 16436 - i32.store - i32.const 16456 - i32.const 16444 - i32.store - i32.const 16452 - i32.const 16444 - i32.store - i32.const 16464 - i32.const 16452 - i32.store - i32.const 16460 - i32.const 16452 - i32.store - i32.const 16472 - i32.const 16460 - i32.store - i32.const 16468 - i32.const 16460 - i32.store - i32.const 16480 - i32.const 16468 - i32.store - i32.const 16476 - i32.const 16468 - i32.store - i32.const 16488 - i32.const 16476 - i32.store - i32.const 16484 - i32.const 16476 - i32.store - i32.const 16496 - i32.const 16484 - i32.store - i32.const 16492 - i32.const 16484 - i32.store - i32.const 16504 - i32.const 16492 - i32.store - i32.const 16500 - i32.const 16492 - i32.store - i32.const 16512 - i32.const 16500 - i32.store - i32.const 16508 - i32.const 16500 - i32.store - i32.const 16520 - i32.const 16508 - i32.store - i32.const 16516 - i32.const 16508 - i32.store - i32.const 16528 - i32.const 16516 - i32.store - i32.const 16524 - i32.const 16516 - i32.store - i32.const 16536 - i32.const 16524 - i32.store - i32.const 16532 - i32.const 16524 - i32.store - i32.const 16544 - i32.const 16532 - i32.store - i32.const 16540 - i32.const 16532 - i32.store - i32.const 16552 - i32.const 16540 - i32.store - i32.const 16548 - i32.const 16540 - i32.store - i32.const 16560 - i32.const 16548 - i32.store - i32.const 16556 - i32.const 16548 - i32.store - i32.const 16568 - i32.const 16556 - i32.store - i32.const 16564 - i32.const 16556 - i32.store - i32.const 16576 - i32.const 16564 - i32.store - i32.const 16572 - i32.const 16564 - i32.store - i32.const 16584 - i32.const 16572 - i32.store - i32.const 16580 - i32.const 16572 - i32.store - i32.const 16592 - i32.const 16580 - i32.store - i32.const 16588 - i32.const 16580 - i32.store - i32.const 16600 - i32.const 16588 - i32.store - i32.const 16596 - i32.const 16588 - i32.store - i32.const 16608 - i32.const 16596 - i32.store - i32.const 16604 - i32.const 16596 - i32.store - i32.const 16616 - i32.const 16604 - i32.store - i32.const 16612 - i32.const 16604 - i32.store - i32.const 16624 - i32.const 16612 - i32.store - i32.const 16620 - i32.const 16612 - i32.store - i32.const 16348 - i32.const 0 - local.get $0 - i32.const 8 - i32.add - local.tee $1 - i32.sub - i32.const 7 - i32.and - i32.const 0 - local.get $1 - i32.const 7 - i32.and - select - local.tee $1 - local.get $0 - i32.add - local.tee $4 - i32.store - i32.const 16336 + i32.store offset=12 local.get $3 - i32.const -40 - i32.add - local.tee $2 - local.get $1 - i32.sub - local.tee $1 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25828 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 i32.store - local.get $4 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 + local.get $5 + i32.eqz + if $if_26 + i32.const 25528 + i32.const 25528 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 25540 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 25540 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 local.get $2 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 16352 - i32.const 16812 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 25540 i32.load - i32.store - end ;; $if_99 - i32.const 16336 - i32.load - local.tee $0 - local.get $11 - i32.gt_u - if $if_153 - i32.const 16336 - local.get $0 - local.get $11 - i32.sub - local.tee $3 - i32.store - br $block_14 - end ;; $if_153 - end ;; $block_15 - i32.const 16308 - i32.const 12 - i32.store - br $block_12 - end ;; $block_14 - i32.const 16348 - i32.const 16348 - i32.load - local.tee $0 + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 local.get $11 i32.add local.tee $1 - i32.store local.get $1 - local.get $3 + i32.load offset=4 i32.const 1 i32.or i32.store offset=4 + else local.get $0 - local.get $11 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 i32.const 3 i32.or i32.store offset=4 - end ;; $block_13 - local.get $17 - global.set $30 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 local.get $0 - i32.const 8 - i32.add return - end ;; $block_12 - local.get $17 - global.set $30 + end ;; $block i32.const 0 ) - (func $_free (type $0) + (func $_dispose_chunk (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -62320,670 +65572,624 @@ (local $13 i32) (local $14 i32) (local $15 i32) - (local $16 i32) - (local $17 i32) - local.get $0 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.const -8 - i32.add - local.tee $5 - i32.const 16340 - i32.load - local.tee $11 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $0 - i32.const -4 - i32.add - i32.load - local.tee $0 - i32.const 3 - i32.and - local.tee $12 - i32.const 1 - i32.eq - if $if_1 - call $_abort - end ;; $if_1 - local.get $5 local.get $0 - i32.const -8 - i32.and - local.tee $2 + local.get $1 i32.add - local.set $7 + local.set $6 local.get $0 + i32.load offset=4 + local.tee $8 i32.const 1 i32.and - if $if_2 - local.get $5 - local.tee $4 - local.set $3 - local.get $2 - local.set $1 + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 else block $block - local.get $5 + local.get $0 i32.load - local.set $10 - local.get $12 + local.set $4 + local.get $8 + i32.const 3 + i32.and i32.eqz - if $if_3 + if $if_0 return - end ;; $if_3 - local.get $5 - local.get $10 + end ;; $if_0 + local.get $0 + local.get $4 i32.sub local.tee $0 - local.get $11 + i32.const 25540 + i32.load + local.tee $11 i32.lt_u - if $if_4 + if $if_1 call $_abort - end ;; $if_4 - local.get $2 - local.get $10 + end ;; $if_1 + local.get $1 + local.get $4 i32.add - local.set $5 - i32.const 16344 + local.set $1 + i32.const 25544 i32.load local.get $0 i32.eq - if $if_5 - local.get $7 + if $if_2 + local.get $6 i32.load offset=4 - local.tee $4 + local.tee $5 i32.const 3 i32.and i32.const 3 i32.ne - if $if_6 + if $if_3 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_6 - i32.const 16332 - local.get $5 + end ;; $if_3 + i32.const 25532 + local.get $1 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $5 i32.const -2 i32.and i32.store offset=4 local.get $0 - local.get $5 + local.get $1 i32.const 1 i32.or i32.store offset=4 - local.get $0 - local.get $5 - i32.add - local.get $5 + local.get $6 + local.get $1 i32.store return - end ;; $if_5 - local.get $10 + end ;; $if_2 + local.get $4 i32.const 3 i32.shr_u - local.set $2 - local.get $10 + local.set $8 + local.get $4 i32.const 256 i32.lt_u - if $if_7 + if $if_4 local.get $0 i32.load offset=12 - local.set $1 + local.set $2 local.get $0 i32.load offset=8 - local.tee $3 - local.get $2 + local.tee $4 + local.get $8 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add - local.tee $4 + local.tee $5 i32.ne - if $if_8 + if $if_5 local.get $11 - local.get $3 + local.get $4 i32.gt_u - if $if_9 + if $if_6 call $_abort - end ;; $if_9 + end ;; $if_6 local.get $0 - local.get $3 + local.get $4 i32.load offset=12 i32.ne - if $if_10 + if $if_7 call $_abort - end ;; $if_10 - end ;; $if_8 - local.get $1 - local.get $3 + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 i32.eq - if $if_11 - i32.const 16324 - i32.const 16324 + if $if_8 + i32.const 25524 + i32.const 25524 i32.load i32.const 1 - local.get $2 + local.get $8 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_11 - local.get $1 - local.get $4 + end ;; $if_8 + local.get $2 + local.get $5 i32.eq - if $if_12 - local.get $1 + if $if_9 + local.get $2 i32.const 8 i32.add - local.set $6 + local.set $3 else local.get $11 - local.get $1 + local.get $2 i32.gt_u - if $if_13 + if $if_10 call $_abort - end ;; $if_13 - local.get $1 + end ;; $if_10 + local.get $2 i32.const 8 i32.add - local.tee $4 + local.tee $5 i32.load local.get $0 i32.eq - if $if_14 - local.get $4 - local.set $6 + if $if_11 + local.get $5 + local.set $3 else call $_abort - end ;; $if_14 - end ;; $if_12 - local.get $3 - local.get $1 + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 i32.store offset=12 - local.get $6 local.get $3 + local.get $4 i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_7 + end ;; $if_4 local.get $0 i32.load offset=24 - local.set $13 + local.set $10 local.get $0 i32.load offset=12 - local.tee $2 + local.tee $3 local.get $0 i32.eq - if $if_15 + if $if_12 block $block_0 local.get $0 i32.const 16 i32.add - local.tee $6 + local.tee $4 i32.const 4 i32.add - local.tee $10 + local.tee $8 i32.load - local.tee $2 - if $if_16 - local.get $10 - local.set $6 + local.tee $3 + if $if_13 + local.get $8 + local.set $4 else - local.get $6 + local.get $4 i32.load - local.tee $2 + local.tee $3 i32.eqz br_if $block_0 - end ;; $if_16 + end ;; $if_13 loop $loop block $block_1 - local.get $2 + local.get $3 i32.const 20 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz - if $if_17 - local.get $2 + if $if_14 + local.get $3 i32.const 16 i32.add - local.tee $10 + local.tee $8 i32.load local.tee $12 i32.eqz br_if $block_1 - end ;; $if_17 - local.get $10 - local.set $6 + end ;; $if_14 + local.get $8 + local.set $4 local.get $12 - local.set $2 + local.set $3 br $loop end ;; $block_1 end ;; $loop local.get $11 - local.get $6 + local.get $4 i32.gt_u - if $if_18 + if $if_15 call $_abort else - local.get $6 + local.get $4 i32.const 0 i32.store - local.get $2 - local.set $8 - end ;; $if_18 + local.get $3 + local.set $7 + end ;; $if_15 end ;; $block_0 else local.get $11 local.get $0 i32.load offset=8 - local.tee $6 + local.tee $4 i32.gt_u - if $if_19 + if $if_16 call $_abort - end ;; $if_19 + end ;; $if_16 local.get $0 - local.get $6 + local.get $4 i32.load offset=12 i32.ne - if $if_20 + if $if_17 call $_abort - end ;; $if_20 - local.get $2 + end ;; $if_17 + local.get $3 i32.load offset=8 local.get $0 i32.eq - if $if_21 - local.get $6 - local.get $2 + if $if_18 + local.get $4 + local.get $3 i32.store offset=12 - local.get $2 - local.get $6 + local.get $3 + local.get $4 i32.store offset=8 - local.get $2 - local.set $8 + local.get $3 + local.set $7 else call $_abort - end ;; $if_21 - end ;; $if_15 - local.get $13 - if $if_22 + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 local.get $0 i32.load offset=28 - local.tee $2 + local.tee $3 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add - local.tee $6 + local.tee $4 i32.load local.get $0 i32.eq - if $if_23 - local.get $6 - local.get $8 + if $if_20 + local.get $4 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_24 - i32.const 16328 - i32.const 16328 + if $if_21 + i32.const 25528 + i32.const 25528 i32.load i32.const 1 - local.get $2 + local.get $3 i32.shl i32.const -1 i32.xor i32.and i32.store local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_24 + end ;; $if_21 else - i32.const 16340 + i32.const 25540 i32.load - local.get $13 + local.get $10 i32.gt_u - if $if_25 + if $if_22 call $_abort else - local.get $13 + local.get $10 i32.const 16 i32.add - local.tee $2 - local.get $13 + local.tee $3 + local.get $10 i32.const 20 i32.add - local.get $2 + local.get $3 i32.load local.get $0 i32.eq select - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.eqz - if $if_26 + if $if_23 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 + local.set $2 + local.get $1 + local.set $5 br $block - end ;; $if_26 - end ;; $if_25 - end ;; $if_23 - i32.const 16340 + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 25540 i32.load - local.tee $6 - local.get $8 + local.tee $4 + local.get $7 i32.gt_u - if $if_27 + if $if_24 call $_abort - end ;; $if_27 - local.get $8 - local.get $13 + end ;; $if_24 + local.get $7 + local.get $10 i32.store offset=24 local.get $0 i32.load offset=16 - local.tee $2 - if $if_28 - local.get $6 - local.get $2 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 i32.gt_u - if $if_29 + if $if_26 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=16 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 - end ;; $if_29 - end ;; $if_28 + end ;; $if_26 + end ;; $if_25 local.get $0 i32.load offset=20 - local.tee $2 - if $if_30 - i32.const 16340 + local.tee $3 + if $if_27 + i32.const 25540 i32.load - local.get $2 + local.get $3 i32.gt_u - if $if_31 + if $if_28 call $_abort else - local.get $8 - local.get $2 + local.get $7 + local.get $3 i32.store offset=20 - local.get $2 - local.get $8 + local.get $3 + local.get $7 i32.store offset=24 local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_31 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_30 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 else local.get $0 - local.tee $4 - local.set $3 - local.get $5 - local.set $1 - end ;; $if_22 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 end ;; $block - end ;; $if_2 - local.get $4 - local.get $7 - i32.ge_u - if $if_32 + end ;; $if + local.get $6 + i32.const 25540 + i32.load + local.tee $8 + i32.lt_u + if $if_29 call $_abort - end ;; $if_32 - local.get $7 + end ;; $if_29 + local.get $6 i32.load offset=4 local.tee $0 - i32.const 1 - i32.and - i32.eqz - if $if_33 - call $_abort - end ;; $if_33 - local.get $0 i32.const 2 i32.and - if $if_34 - local.get $7 + if $if_30 + local.get $6 local.get $0 i32.const -2 i32.and i32.store offset=4 - local.get $3 - local.get $1 + local.get $2 + local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $1 - local.get $4 + local.get $2 + local.get $5 i32.add - local.get $1 + local.get $5 i32.store else - i32.const 16348 + i32.const 25548 i32.load - local.get $7 + local.get $6 i32.eq - if $if_35 - i32.const 16336 - i32.const 16336 + if $if_31 + i32.const 25536 + i32.const 25536 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 16348 - local.get $3 + i32.const 25548 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 - local.get $3 - i32.const 16344 + local.get $2 + i32.const 25544 i32.load i32.ne - if $if_36 + if $if_32 return - end ;; $if_36 - i32.const 16344 + end ;; $if_32 + i32.const 25544 i32.const 0 i32.store - i32.const 16332 + i32.const 25532 i32.const 0 i32.store return - end ;; $if_35 - i32.const 16344 + end ;; $if_31 + i32.const 25544 i32.load - local.get $7 + local.get $6 i32.eq - if $if_37 - i32.const 16332 - i32.const 16332 + if $if_33 + i32.const 25532 + i32.const 25532 i32.load - local.get $1 + local.get $5 i32.add local.tee $0 i32.store - i32.const 16344 - local.get $4 + i32.const 25544 + local.get $2 i32.store - local.get $3 + local.get $2 local.get $0 i32.const 1 i32.or i32.store offset=4 local.get $0 - local.get $4 + local.get $2 i32.add local.get $0 i32.store return - end ;; $if_37 + end ;; $if_33 local.get $0 i32.const -8 i32.and - local.get $1 + local.get $5 i32.add local.set $5 local.get $0 i32.const 3 i32.shr_u - local.set $6 + local.set $4 block $block_2 local.get $0 i32.const 256 i32.lt_u - if $if_38 - local.get $7 + if $if_34 + local.get $6 i32.load offset=12 local.set $1 - local.get $7 - i32.load offset=8 - local.tee $2 local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.tee $0 i32.ne - if $if_39 - i32.const 16340 - i32.load - local.get $2 + if $if_35 + local.get $8 + local.get $3 i32.gt_u - if $if_40 + if $if_36 call $_abort - end ;; $if_40 - local.get $7 - local.get $2 + end ;; $if_36 + local.get $6 + local.get $3 i32.load offset=12 i32.ne - if $if_41 + if $if_37 call $_abort - end ;; $if_41 - end ;; $if_39 + end ;; $if_37 + end ;; $if_35 local.get $1 - local.get $2 + local.get $3 i32.eq - if $if_42 - i32.const 16324 - i32.const 16324 + if $if_38 + i32.const 25524 + i32.const 25524 i32.load i32.const 1 - local.get $6 + local.get $4 i32.shl i32.const -1 i32.xor i32.and i32.store br $block_2 - end ;; $if_42 + end ;; $if_38 local.get $0 local.get $1 i32.eq - if $if_43 + if $if_39 local.get $1 i32.const 8 i32.add - local.set $16 + local.set $14 else - i32.const 16340 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_44 + if $if_40 call $_abort - end ;; $if_44 + end ;; $if_40 local.get $1 i32.const 8 i32.add local.tee $0 i32.load - local.get $7 + local.get $6 i32.eq - if $if_45 + if $if_41 local.get $0 - local.set $16 + local.set $14 else call $_abort - end ;; $if_45 - end ;; $if_43 - local.get $2 + end ;; $if_41 + end ;; $if_39 + local.get $3 local.get $1 i32.store offset=12 - local.get $16 - local.get $2 + local.get $14 + local.get $3 i32.store else - local.get $7 + local.get $6 i32.load offset=24 - local.set $8 - local.get $7 + local.set $7 + local.get $6 i32.load offset=12 local.tee $0 - local.get $7 + local.get $6 i32.eq - if $if_46 + if $if_42 block $block_3 - local.get $7 + local.get $6 i32.const 16 i32.add local.tee $1 i32.const 4 i32.add - local.tee $2 + local.tee $3 i32.load local.tee $0 - if $if_47 - local.get $2 + if $if_43 + local.get $3 local.set $1 else local.get $1 @@ -62991,38 +66197,37 @@ local.tee $0 i32.eqz br_if $block_3 - end ;; $if_47 + end ;; $if_43 loop $loop_0 block $block_4 local.get $0 i32.const 20 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz - if $if_48 + if $if_44 local.get $0 i32.const 16 i32.add - local.tee $2 + local.tee $3 i32.load - local.tee $6 + local.tee $4 i32.eqz br_if $block_4 - end ;; $if_48 - local.get $2 + end ;; $if_44 + local.get $3 local.set $1 - local.get $6 + local.get $4 local.set $0 br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 16340 - i32.load + local.get $8 local.get $1 i32.gt_u - if $if_49 + if $if_45 call $_abort else local.get $1 @@ -63030,30 +66235,29 @@ i32.store local.get $0 local.set $9 - end ;; $if_49 + end ;; $if_45 end ;; $block_3 else - i32.const 16340 - i32.load - local.get $7 + local.get $8 + local.get $6 i32.load offset=8 local.tee $1 i32.gt_u - if $if_50 + if $if_46 call $_abort - end ;; $if_50 - local.get $7 + end ;; $if_46 + local.get $6 local.get $1 i32.load offset=12 i32.ne - if $if_51 + if $if_47 call $_abort - end ;; $if_51 + end ;; $if_47 local.get $0 i32.load offset=8 - local.get $7 + local.get $6 i32.eq - if $if_52 + if $if_48 local.get $1 local.get $0 i32.store offset=12 @@ -63064,30 +66268,30 @@ local.set $9 else call $_abort - end ;; $if_52 - end ;; $if_46 - local.get $8 - if $if_53 - local.get $7 + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 i32.load offset=28 local.tee $0 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.tee $1 i32.load - local.get $7 + local.get $6 i32.eq - if $if_54 + if $if_50 local.get $1 local.get $9 i32.store local.get $9 i32.eqz - if $if_55 - i32.const 16328 - i32.const 16328 + if $if_51 + i32.const 25528 + i32.const 25528 i32.load i32.const 1 local.get $0 @@ -63097,25 +66301,25 @@ i32.and i32.store br $block_2 - end ;; $if_55 + end ;; $if_51 else - i32.const 16340 + i32.const 25540 i32.load - local.get $8 + local.get $7 i32.gt_u - if $if_56 + if $if_52 call $_abort else - local.get $8 + local.get $7 i32.const 16 i32.add local.tee $0 - local.get $8 + local.get $7 i32.const 20 i32.add local.get $0 i32.load - local.get $7 + local.get $6 i32.eq select local.get $9 @@ -63123,27 +66327,27 @@ local.get $9 i32.eqz br_if $block_2 - end ;; $if_56 - end ;; $if_54 - i32.const 16340 + end ;; $if_52 + end ;; $if_50 + i32.const 25540 i32.load local.tee $1 local.get $9 i32.gt_u - if $if_57 + if $if_53 call $_abort - end ;; $if_57 + end ;; $if_53 local.get $9 - local.get $8 - i32.store offset=24 local.get $7 + i32.store offset=24 + local.get $6 i32.load offset=16 local.tee $0 - if $if_58 + if $if_54 local.get $1 local.get $0 i32.gt_u - if $if_59 + if $if_55 call $_abort else local.get $9 @@ -63152,17 +66356,17 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_59 - end ;; $if_58 - local.get $7 + end ;; $if_55 + end ;; $if_54 + local.get $6 i32.load offset=20 local.tee $0 - if $if_60 - i32.const 16340 + if $if_56 + i32.const 25540 i32.load local.get $0 i32.gt_u - if $if_61 + if $if_57 call $_abort else local.get $9 @@ -63171,111 +66375,108 @@ local.get $0 local.get $9 i32.store offset=24 - end ;; $if_61 - end ;; $if_60 - end ;; $if_53 - end ;; $if_38 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 end ;; $block_2 - local.get $3 + local.get $2 local.get $5 i32.const 1 i32.or i32.store offset=4 - local.get $4 + local.get $2 local.get $5 i32.add local.get $5 i32.store - i32.const 16344 + i32.const 25544 i32.load - local.get $3 + local.get $2 i32.eq - if $if_62 (result i32) - i32.const 16332 + if $if_58 + i32.const 25532 local.get $5 i32.store return - else - local.get $5 - end ;; $if_62 - local.set $1 - end ;; $if_34 - local.get $1 + end ;; $if_58 + end ;; $if_30 + local.get $5 i32.const 3 i32.shr_u - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 256 i32.lt_u - if $if_63 - local.get $4 + if $if_59 + local.get $1 i32.const 3 i32.shl - i32.const 16364 + i32.const 25564 i32.add local.set $0 - i32.const 16324 + i32.const 25524 i32.load - local.tee $1 + local.tee $5 i32.const 1 - local.get $4 + local.get $1 i32.shl - local.tee $4 + local.tee $1 i32.and - if $if_64 - i32.const 16340 + if $if_60 + i32.const 25540 i32.load local.get $0 i32.const 8 i32.add - local.tee $4 - i32.load local.tee $1 + i32.load + local.tee $5 i32.gt_u - if $if_65 + if $if_61 call $_abort else - local.get $4 - local.set $17 local.get $1 local.set $15 - end ;; $if_65 + local.get $5 + local.set $13 + end ;; $if_61 else - i32.const 16324 + i32.const 25524 local.get $1 - local.get $4 + local.get $5 i32.or i32.store local.get $0 i32.const 8 i32.add - local.set $17 - local.get $0 local.set $15 - end ;; $if_64 - local.get $17 - local.get $3 - i32.store + local.get $0 + local.set $13 + end ;; $if_60 local.get $15 - local.get $3 + local.get $2 + i32.store + local.get $13 + local.get $2 i32.store offset=12 - local.get $3 - local.get $15 + local.get $2 + local.get $13 i32.store offset=8 - local.get $3 + local.get $2 local.get $0 i32.store offset=12 return - end ;; $if_63 - local.get $1 + end ;; $if_59 + local.get $5 i32.const 8 i32.shr_u local.tee $0 - if $if_66 (result i32) - local.get $1 + if $if_62 (result i32) + local.get $5 i32.const 16777215 i32.gt_u - if $if_67 (result i32) + if $if_63 (result i32) i32.const 31 else local.get $0 @@ -63286,9 +66487,9 @@ i32.shr_u i32.const 8 i32.and - local.tee $5 + local.tee $3 i32.shl - local.tee $4 + local.tee $1 i32.const 520192 i32.add i32.const 16 @@ -63296,27 +66497,27 @@ i32.const 4 i32.and local.set $0 - local.get $4 + local.get $1 local.get $0 i32.shl - local.tee $2 + local.tee $4 i32.const 245760 i32.add i32.const 16 i32.shr_u i32.const 2 i32.and - local.set $4 - local.get $1 + local.set $1 + local.get $5 i32.const 14 local.get $0 - local.get $5 + local.get $3 i32.or - local.get $4 + local.get $1 i32.or i32.sub - local.get $2 local.get $4 + local.get $1 i32.shl i32.const 15 i32.shr_u @@ -63331,203 +66532,164 @@ i32.const 1 i32.shl i32.or - end ;; $if_67 + end ;; $if_63 else i32.const 0 - end ;; $if_66 - local.tee $4 + end ;; $if_62 + local.tee $1 i32.const 2 i32.shl - i32.const 16628 + i32.const 25828 i32.add local.set $0 - local.get $3 - local.get $4 + local.get $2 + local.get $1 i32.store offset=28 - local.get $3 + local.get $2 i32.const 0 i32.store offset=20 - local.get $3 + local.get $2 i32.const 0 i32.store offset=16 - i32.const 16328 - i32.load - local.tee $5 - i32.const 1 - local.get $4 - i32.shl - local.tee $2 - i32.and - if $if_68 - block $block_5 + block $block_5 + i32.const 25528 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 25528 + local.get $3 + local.get $4 + i32.or + i32.store local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_69 - local.get $0 - local.set $14 - else - block $block_6 - local.get $1 - i32.const 0 - i32.const 25 - local.get $4 - i32.const 1 - i32.shr_u - i32.sub - local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 i32.const 31 - i32.eq - select + i32.shr_u + i32.const 2 i32.shl - local.set $5 - loop $loop_1 - local.get $0 - i32.const 16 - i32.add - local.get $5 - i32.const 31 - i32.shr_u - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - local.tee $4 - if $if_70 - local.get $5 - i32.const 1 - i32.shl - local.set $5 - local.get $4 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.eq - if $if_71 - local.get $4 - local.set $14 - br $block_6 - else - local.get $4 - local.set $0 - br $loop_1 - end ;; $if_71 - unreachable - end ;; $if_70 - end ;; $loop_1 - i32.const 16340 + i32.add + local.tee $4 i32.load - local.get $2 - i32.gt_u - if $if_72 - call $_abort - else - local.get $2 - local.get $3 - i32.store - local.get $3 - local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 - i32.store offset=12 - local.get $3 + local.tee $1 + if $if_66 local.get $3 - i32.store offset=8 - br $block_5 - end ;; $if_72 - end ;; $block_6 - end ;; $if_69 - i32.const 16340 - i32.load - local.tee $0 - local.get $14 - i32.le_u - local.get $0 - local.get $14 - i32.load offset=8 - local.tee $0 - i32.le_u - i32.and - if $if_73 - local.get $0 - local.get $3 - i32.store offset=12 - local.get $14 - local.get $3 - i32.store offset=8 - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - local.get $14 - i32.store offset=12 - local.get $3 - i32.const 0 - i32.store offset=24 - else - call $_abort - end ;; $if_73 - end ;; $block_5 - else - i32.const 16328 - local.get $2 - local.get $5 - i32.or - i32.store + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 25540 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 25540 + i32.load + local.tee $1 local.get $0 - local.get $3 - i32.store - local.get $3 + i32.le_u + local.get $1 local.get $0 - i32.store offset=24 - local.get $3 - local.get $3 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 i32.store offset=12 - local.get $3 - local.get $3 + local.get $0 + local.get $2 i32.store offset=8 - end ;; $if_68 - i32.const 16356 - i32.const 16356 - i32.load - i32.const -1 - i32.add - local.tee $0 - i32.store - local.get $0 - if $if_74 - return - end ;; $if_74 - i32.const 16780 - local.set $0 - loop $loop_2 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 local.get $0 - i32.load - local.tee $4 - i32.const 8 - i32.add - local.set $0 - local.get $4 - br_if $loop_2 - end ;; $loop_2 - i32.const 16356 - i32.const -1 - i32.store + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 ) (func $__ZSt18uncaught_exceptionv (type $14) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -63535,7 +66697,7 @@ (func $__ZNKSt3__217bad_function_call4whatEv (type $5) (param $0 i32) (result i32) - i32.const 14153 + i32.const 17686 ) (func $__ZNSt3__212__next_primeEm (type $5) @@ -63551,12 +66713,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.tee $8 i32.const 4 @@ -63893,4092 +67055,29586 @@ local.tee $1 local.get $2 i32.lt_u - if $if_23 + if $if_23 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_23 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_24 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_24 + local.get $4 + i32.const 36 + i32.add + local.tee $2 + local.tee $1 + if $if_25 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_25 + local.tee $1 + local.get $2 + i32.lt_u + if $if_26 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_26 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_27 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_27 + local.get $4 + i32.const 40 + i32.add + local.tee $2 + local.tee $1 + if $if_28 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_28 + local.tee $1 + local.get $2 + i32.lt_u + if $if_29 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_29 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_30 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_30 + local.get $4 + i32.const 42 + i32.add + local.tee $2 + local.tee $1 + if $if_31 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_31 + local.tee $1 + local.get $2 + i32.lt_u + if $if_32 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_32 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_33 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_33 + local.get $4 + i32.const 46 + i32.add + local.tee $2 + local.tee $1 + if $if_34 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_34 + local.tee $1 + local.get $2 + i32.lt_u + if $if_35 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_35 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_36 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_36 + local.get $4 + i32.const 52 + i32.add + local.tee $2 + local.tee $1 + if $if_37 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_37 + local.tee $1 + local.get $2 + i32.lt_u + if $if_38 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_38 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_39 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_39 + local.get $4 + i32.const 58 + i32.add + local.tee $2 + local.tee $1 + if $if_40 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_40 + local.tee $1 + local.get $2 + i32.lt_u + if $if_41 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_41 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_42 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_42 + local.get $4 + i32.const 60 + i32.add + local.tee $2 + local.tee $1 + if $if_43 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_43 + local.tee $1 + local.get $2 + i32.lt_u + if $if_44 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_44 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_45 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_45 + local.get $4 + i32.const 66 + i32.add + local.tee $2 + local.tee $1 + if $if_46 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_46 + local.tee $1 + local.get $2 + i32.lt_u + if $if_47 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_47 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_48 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_48 + local.get $4 + i32.const 70 + i32.add + local.tee $2 + local.tee $1 + if $if_49 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_49 + local.tee $1 + local.get $2 + i32.lt_u + if $if_50 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_50 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_51 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_51 + local.get $4 + i32.const 72 + i32.add + local.tee $2 + local.tee $1 + if $if_52 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_52 + local.tee $1 + local.get $2 + i32.lt_u + if $if_53 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_53 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_54 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_54 + local.get $4 + i32.const 78 + i32.add + local.tee $2 + local.tee $1 + if $if_55 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_55 + local.tee $1 + local.get $2 + i32.lt_u + if $if_56 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_56 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_57 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_57 + local.get $4 + i32.const 82 + i32.add + local.tee $2 + local.tee $1 + if $if_58 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_58 + local.tee $1 + local.get $2 + i32.lt_u + if $if_59 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_59 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_60 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_60 + local.get $4 + i32.const 88 + i32.add + local.tee $2 + local.tee $1 + if $if_61 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_61 + local.tee $1 + local.get $2 + i32.lt_u + if $if_62 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_23 + end ;; $if_62 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_24 + if $if_63 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_24 + end ;; $if_63 local.get $4 - i32.const 36 + i32.const 96 i32.add local.tee $2 local.tee $1 - if $if_25 (result i32) + if $if_64 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_25 + end ;; $if_64 local.tee $1 local.get $2 i32.lt_u - if $if_26 + if $if_65 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_26 + end ;; $if_65 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_27 + if $if_66 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_27 + end ;; $if_66 local.get $4 - i32.const 40 + i32.const 100 i32.add local.tee $2 local.tee $1 - if $if_28 (result i32) + if $if_67 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_28 + end ;; $if_67 local.tee $1 local.get $2 i32.lt_u - if $if_29 + if $if_68 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_29 + end ;; $if_68 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_30 + if $if_69 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_30 + end ;; $if_69 local.get $4 - i32.const 42 + i32.const 102 i32.add local.tee $2 local.tee $1 - if $if_31 (result i32) + if $if_70 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_31 + end ;; $if_70 local.tee $1 local.get $2 i32.lt_u - if $if_32 + if $if_71 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_32 + end ;; $if_71 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_33 + if $if_72 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_33 + end ;; $if_72 local.get $4 - i32.const 46 + i32.const 106 i32.add local.tee $2 local.tee $1 - if $if_34 (result i32) + if $if_73 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_34 + end ;; $if_73 local.tee $1 local.get $2 i32.lt_u - if $if_35 + if $if_74 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_35 + end ;; $if_74 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_36 + if $if_75 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_36 + end ;; $if_75 local.get $4 - i32.const 52 + i32.const 108 i32.add local.tee $2 local.tee $1 - if $if_37 (result i32) + if $if_76 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_37 + end ;; $if_76 local.tee $1 local.get $2 i32.lt_u - if $if_38 + if $if_77 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_38 + end ;; $if_77 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_39 + if $if_78 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_39 + end ;; $if_78 local.get $4 - i32.const 58 + i32.const 112 i32.add local.tee $2 local.tee $1 - if $if_40 (result i32) + if $if_79 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_40 + end ;; $if_79 local.tee $1 local.get $2 i32.lt_u - if $if_41 + if $if_80 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_41 + end ;; $if_80 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_42 + if $if_81 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_42 + end ;; $if_81 local.get $4 - i32.const 60 + i32.const 120 i32.add local.tee $2 local.tee $1 - if $if_43 (result i32) + if $if_82 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_43 + end ;; $if_82 local.tee $1 local.get $2 i32.lt_u - if $if_44 + if $if_83 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_44 + end ;; $if_83 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_45 + if $if_84 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_45 + end ;; $if_84 local.get $4 - i32.const 66 + i32.const 126 i32.add local.tee $2 local.tee $1 - if $if_46 (result i32) + if $if_85 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_46 + end ;; $if_85 local.tee $1 local.get $2 i32.lt_u - if $if_47 + if $if_86 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_47 + end ;; $if_86 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_48 + if $if_87 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_48 + end ;; $if_87 local.get $4 - i32.const 70 + i32.const 130 i32.add local.tee $2 local.tee $1 - if $if_49 (result i32) + if $if_88 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_49 + end ;; $if_88 local.tee $1 local.get $2 i32.lt_u - if $if_50 + if $if_89 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_50 + end ;; $if_89 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_51 + if $if_90 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_51 + end ;; $if_90 local.get $4 - i32.const 72 + i32.const 136 i32.add local.tee $2 local.tee $1 - if $if_52 (result i32) + if $if_91 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_52 + end ;; $if_91 local.tee $1 local.get $2 i32.lt_u - if $if_53 + if $if_92 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_53 + end ;; $if_92 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_54 + if $if_93 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_54 + end ;; $if_93 local.get $4 - i32.const 78 + i32.const 138 i32.add local.tee $2 local.tee $1 - if $if_55 (result i32) + if $if_94 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_55 + end ;; $if_94 local.tee $1 local.get $2 i32.lt_u - if $if_56 + if $if_95 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_56 + end ;; $if_95 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_57 + if $if_96 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_57 + end ;; $if_96 local.get $4 - i32.const 82 + i32.const 142 i32.add local.tee $2 local.tee $1 - if $if_58 (result i32) + if $if_97 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_58 + end ;; $if_97 local.tee $1 local.get $2 i32.lt_u - if $if_59 + if $if_98 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_59 + end ;; $if_98 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_60 + if $if_99 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_60 + end ;; $if_99 local.get $4 - i32.const 88 + i32.const 148 i32.add local.tee $2 local.tee $1 - if $if_61 (result i32) + if $if_100 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_61 + end ;; $if_100 local.tee $1 local.get $2 i32.lt_u - if $if_62 + if $if_101 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_62 + end ;; $if_101 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_63 + if $if_102 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_63 + end ;; $if_102 local.get $4 - i32.const 96 + i32.const 150 i32.add local.tee $2 local.tee $1 - if $if_64 (result i32) + if $if_103 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_64 + end ;; $if_103 local.tee $1 local.get $2 i32.lt_u - if $if_65 + if $if_104 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_65 + end ;; $if_104 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_66 + if $if_105 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_66 + end ;; $if_105 local.get $4 - i32.const 100 + i32.const 156 i32.add local.tee $2 local.tee $1 - if $if_67 (result i32) + if $if_106 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_67 + end ;; $if_106 local.tee $1 local.get $2 i32.lt_u - if $if_68 + if $if_107 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_68 + end ;; $if_107 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_69 + if $if_108 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_69 + end ;; $if_108 local.get $4 - i32.const 102 + i32.const 162 i32.add local.tee $2 local.tee $1 - if $if_70 (result i32) + if $if_109 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_70 + end ;; $if_109 local.tee $1 local.get $2 i32.lt_u - if $if_71 + if $if_110 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_71 + end ;; $if_110 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_72 + if $if_111 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_72 + end ;; $if_111 local.get $4 - i32.const 106 + i32.const 166 i32.add local.tee $2 local.tee $1 - if $if_73 (result i32) + if $if_112 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_73 + end ;; $if_112 local.tee $1 local.get $2 i32.lt_u - if $if_74 + if $if_113 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_74 + end ;; $if_113 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_75 + if $if_114 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_75 + end ;; $if_114 local.get $4 - i32.const 108 + i32.const 168 i32.add local.tee $2 local.tee $1 - if $if_76 (result i32) + if $if_115 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_76 + end ;; $if_115 local.tee $1 local.get $2 i32.lt_u - if $if_77 + if $if_116 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_77 + end ;; $if_116 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_78 + if $if_117 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_78 + end ;; $if_117 local.get $4 - i32.const 112 + i32.const 172 i32.add local.tee $2 local.tee $1 - if $if_79 (result i32) + if $if_118 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_79 + end ;; $if_118 local.tee $1 local.get $2 i32.lt_u - if $if_80 + if $if_119 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_80 + end ;; $if_119 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_81 + if $if_120 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_81 + end ;; $if_120 local.get $4 - i32.const 120 + i32.const 178 i32.add local.tee $2 local.tee $1 - if $if_82 (result i32) + if $if_121 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_82 + end ;; $if_121 local.tee $1 local.get $2 i32.lt_u - if $if_83 + if $if_122 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_83 + end ;; $if_122 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_84 + if $if_123 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_84 + end ;; $if_123 local.get $4 - i32.const 126 + i32.const 180 i32.add local.tee $2 local.tee $1 - if $if_85 (result i32) + if $if_124 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_85 + end ;; $if_124 local.tee $1 local.get $2 i32.lt_u - if $if_86 + if $if_125 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_86 + end ;; $if_125 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_87 + if $if_126 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_87 + end ;; $if_126 local.get $4 - i32.const 130 + i32.const 186 i32.add local.tee $2 local.tee $1 - if $if_88 (result i32) + if $if_127 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_88 + end ;; $if_127 local.tee $1 local.get $2 i32.lt_u - if $if_89 + if $if_128 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_89 + end ;; $if_128 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_90 + if $if_129 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_90 + end ;; $if_129 local.get $4 - i32.const 136 + i32.const 190 i32.add local.tee $2 local.tee $1 - if $if_91 (result i32) + if $if_130 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_91 + end ;; $if_130 local.tee $1 local.get $2 i32.lt_u - if $if_92 + if $if_131 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_92 + end ;; $if_131 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_93 + if $if_132 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_93 + end ;; $if_132 local.get $4 - i32.const 138 + i32.const 192 i32.add local.tee $2 local.tee $1 - if $if_94 (result i32) + if $if_133 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_94 + end ;; $if_133 local.tee $1 local.get $2 i32.lt_u - if $if_95 + if $if_134 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_95 + end ;; $if_134 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_96 + if $if_135 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_96 + end ;; $if_135 local.get $4 - i32.const 142 + i32.const 196 i32.add local.tee $2 local.tee $1 - if $if_97 (result i32) + if $if_136 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_97 + end ;; $if_136 local.tee $1 local.get $2 i32.lt_u - if $if_98 + if $if_137 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_98 + end ;; $if_137 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_99 + if $if_138 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_99 + end ;; $if_138 local.get $4 - i32.const 148 + i32.const 198 i32.add local.tee $2 local.tee $1 - if $if_100 (result i32) + if $if_139 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_100 + end ;; $if_139 local.tee $1 local.get $2 i32.lt_u - if $if_101 + if $if_140 i32.const 1 local.set $1 local.get $3 local.set $0 local.get $2 br $block_5 - end ;; $if_101 + end ;; $if_140 local.get $3 local.get $1 local.get $2 i32.mul i32.eq - if $if_102 + if $if_141 i32.const 9 local.set $1 local.get $2 br $block_5 - end ;; $if_102 + end ;; $if_141 local.get $4 - i32.const 150 + i32.const 208 i32.add local.tee $2 local.tee $1 - if $if_103 (result i32) + if $if_142 (result i32) local.get $3 local.get $1 i32.div_u else i32.const 0 - end ;; $if_103 + end ;; $if_142 local.tee $1 local.get $2 i32.lt_u - if $if_104 + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 25352 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 26048 + i32.const 26020 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 25352 + i32.load + i32.eqz + if $if_0 + i32.const 25352 + i32.const 1 + i32.store + local.get $0 + i32.const 280 + call_indirect $28 (type $0) + i32.const 25352 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $5) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 15193 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 15193 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10924 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $5 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $5 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_2 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + i32.const 0 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_3 + local.get $5 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $5 + local.set $4 + local.get $3 + if $if_5 + local.get $1 + local.get $2 + i32.add + local.get $1 + local.get $4 + local.get $1 + i32.le_u + local.get $3 + local.get $5 + i32.add + local.get $1 + i32.gt_u + i32.and + select + local.set $1 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $3 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $4 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $6 + i32.const 0 + i32.store8 + local.get $1 + local.get $5 + i32.add + local.get $6 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14362 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14362 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZNSt3__29to_stringEj (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $1 + i32.const 3 + i32.ne + if $if + local.get $1 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 + i32.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + i32.const 17755 + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $32 + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 26096 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17894 + i32.store + i32.const 17844 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5264 + local.get $0 + local.get $5 + i32.const 5264 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $6) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $5) + local.set $0 + local.get $4 + i32.const 17894 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 17758 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17894 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 17803 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17882 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7576 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5288 + i32.const 5272 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 18073 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 18076 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 18081 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 18095 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 26096 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 18033 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 23428 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18129 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18134 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18139 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18144 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18156 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18170 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18176 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18191 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18195 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18208 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18213 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18227 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_104 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_105 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_105 - local.get $4 - i32.const 156 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_106 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_106 - local.tee $1 - local.get $2 - i32.lt_u - if $if_107 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_107 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_108 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_108 - local.get $4 - i32.const 162 + i32.store + local.get $0 + i32.const 18237 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18246 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18264 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18270 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18282 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 18293 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18297 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18307 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18318 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18328 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18338 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_109 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_109 - local.tee $1 - local.get $2 - i32.lt_u - if $if_110 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_110 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 18347 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18356 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18361 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18376 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 23129 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 23132 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 23141 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 23144 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 23147 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 23150 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 23153 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22944 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22908 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 22783 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 21839 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 21842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 21849 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 21852 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 21858 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 21861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 18356 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $4 + i32.const 18391 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 18541 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 18556 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 18574 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 18586 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 18599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 18612 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 18486 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 18496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 18509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 18516 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 18524 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 18532 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18682 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18750 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 18767 + i32.const 18765 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8152 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 18834 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 18820 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8240 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18947 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8284 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 19476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_111 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_111 - local.get $4 - i32.const 166 - i32.add - local.tee $2 - local.tee $1 - if $if_112 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 18767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_112 - local.tee $1 - local.get $2 - i32.lt_u - if $if_113 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_113 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_114 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_114 - local.get $4 - i32.const 168 - i32.add - local.tee $2 - local.tee $1 - if $if_115 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_115 - local.tee $1 - local.get $2 - i32.lt_u - if $if_116 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_116 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_117 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_117 - local.get $4 - i32.const 172 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_118 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_118 - local.tee $1 + i32.store + local.get $8 + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_119 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 19479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 19482 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 19484 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 19484 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 178 - i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 + i32.store local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 - i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 i32.add - local.tee $2 local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 + br $block_37 + end ;; $block_38 local.get $4 - i32.const 190 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 19494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 19496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + i32.store + local.get $13 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 - local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_139 - local.tee $1 - local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 - local.get $1 + i32.const 0 + i32.store8 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $5 local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 19498 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 19501 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 19503 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 19506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 19508 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 19511 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 19514 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 19517 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 19520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 19523 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 19366 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 19527 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 19530 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 19533 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 19533 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 19536 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 19366 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 19539 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 19541 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 19544 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 19546 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 19549 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 19553 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 19555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 19558 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 19558 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 19553 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 19561 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 19564 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 19566 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 19569 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 19572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 19576 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 19576 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 19585 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 19585 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19594 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 19049 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 19057 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 19061 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 18139 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 18144 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 18156 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 18170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 18176 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 26118 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 19065 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 19067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 19069 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 19072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 19075 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 18237 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 18246 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 18073 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8328 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8372 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 19131 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8416 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 19192 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8460 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 19251 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8504 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 19311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 19316 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8548 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 19366 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8592 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 21722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 21725 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 21575 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 18767 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 21578 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 21581 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 19479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 21584 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 19482 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 21587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 19494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 21590 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 19498 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 21593 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 19501 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 21596 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 19503 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 21599 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 19506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 21602 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 19508 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 21605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 19511 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 21608 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 19514 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 21611 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 21614 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 19517 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 21617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 19520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 21620 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 19523 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 21623 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 21626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 19366 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 21629 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 19527 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 21632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 21635 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 19530 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 21638 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 19536 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 21641 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 19541 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 21644 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 19544 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 21647 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 19546 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 21650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 19553 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 21653 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 19555 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 21656 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 19564 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 21659 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 19566 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 21662 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 19569 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 21665 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 19572 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 21363 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 20502 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 19476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 20506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 19476 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 20090 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 20093 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 20096 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8636 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19600 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8680 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8724 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19751 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8768 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8812 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 19813 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 18293 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18947 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19939 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8900 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $5 + i32.const 19951 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $6 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19998 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20015 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 20021 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 20079 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8988 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 20099 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 20111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 20115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 20318 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9076 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20209 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 20215 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9120 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 20215 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20329 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9164 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20395 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 18397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 20453 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9252 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 20568 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 20571 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9296 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20574 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20585 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20595 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20606 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20616 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20627 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20637 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20647 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20665 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20675 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20685 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20696 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20706 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20717 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20728 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20739 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20749 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20760 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20771 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20782 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20794 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20804 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20814 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20665 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20825 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20836 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20847 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20862 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20804 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20873 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20896 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20907 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20917 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20928 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20940 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20950 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20961 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20940 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20972 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20983 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20993 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21003 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21014 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21025 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 21037 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9340 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21049 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 21113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9384 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21129 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9472 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 20509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 21292 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9516 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 20509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 21305 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 21312 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9560 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21366 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9604 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 21464 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9648 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9692 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 21522 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 21525 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9736 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 21668 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21673 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9780 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 21722 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9824 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $4) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9868 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21929 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 22247 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 22187 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21925 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21929 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21991 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9912 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21932 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 22052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 22055 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 22058 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9956 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10000 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 22061 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22069 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10044 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 22124 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 22133 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10088 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10132 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10176 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 18541 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 18556 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 22343 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 22414 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 22464 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22514 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 18486 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 18496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 18496 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 22300 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 22314 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 22328 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10220 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10264 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22676 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10308 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 22736 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 18397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10352 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22786 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $30 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 18397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10396 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 18397 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22918 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22925 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19049 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) (local $4 i32) (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10440 + i32.store + local.get $0 local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 i32.load - local.set $4 + i32.load offset=16 + local.set $3 + local.get $2 local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if + local.get $4 + i32.const 22954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 22971 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $6) (param $0 i32) - loop $loop - i32.const 16152 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 16848 - i32.const 16820 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 16152 + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load - i32.eqz - if $if_0 - i32.const 16152 - i32.const 1 - i32.store - local.get $0 - i32.const 171 - call_indirect $26 (type $0) - i32.const 16152 - i32.const -1 - i32.store - end ;; $if_0 + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__Znwm (type $5) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $2) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 local.get $0 i32.const 1 + i32.store8 offset=5 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 16904 - i32.const 16904 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10484 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 11658 - call $_strlen - local.tee $2 - i32.const 13 + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__Znwm - local.tee $1 + global.set $32 local.get $2 - i32.store - local.get $1 + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.store offset=4 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 0 - i32.store offset=8 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 12 - i32.add - local.tee $1 - i32.const 11658 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.const 1 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 i32.add - call $_memcpy - drop + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.store + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $2) (param $0 i32) + (param $1 i32) + (param $2 i32) local.get $0 - i32.const 6936 + i32.const 7976 i32.store local.get $0 - i32.const 4 + i32.const 10 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10528 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 local.get $0 - i64.const 0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 i64.store align=4 local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 15 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 i32.const 0 - i32.store offset=8 + i32.store8 offset=7 + local.get $0 + i32.const 10572 + i32.store + local.get $0 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $32 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 local.get $0 local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $30 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 + i32.load offset=20 + local.set $4 end ;; $if - local.tee $5 - local.get $2 - i32.lt_u + local.get $4 + i32.const 2 + i32.and if $if_0 - local.get $0 - local.get $5 + local.get $7 + i32.const 22961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22971 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 23156 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 23159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 - local.get $4 - global.set $30 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10616 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub + global.set $32 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 23212 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 16 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $2 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10660 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or + local.get $1 i32.store offset=8 - local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u + global.get $32 local.set $2 - i32.const 10 - local.get $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 + local.set $3 + local.get $2 + i32.const 8 i32.add + local.tee $4 + i32.const 23276 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - select - local.tee $7 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - global.set $30 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10704 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + i32.load + local.set $1 local.get $3 + local.get $2 + i64.load align=4 + i64.store local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 - local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - local.get $2 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10748 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 21525 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 23557 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) local.get $0 - local.get $1 - i32.store offset=4 - else + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $3) (param $0 i32) (param $1 i32) - (result i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if + i32.const 332 + i32.add local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 - local.get $3 - i32.sub + local.tee $2 + i32.load offset=4 local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) - local.get $0 - i32.load - else + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 local.get $4 - local.get $1 - i32.le_u + i32.ge_u + br_if $block_0 local.get $3 - local.get $5 + i32.load + local.get $0 + i32.const 2 + i32.shl i32.add - local.get $1 - i32.gt_u - i32.and - select - local.set $1 + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $5) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 - i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 10827 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $30 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7976 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10827 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEj (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 10792 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 18761 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 14222 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18763 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18759 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 14361 - i32.store - i32.const 14311 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5312 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5312 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $6) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $5) - local.set $0 - local.get $1 - i32.const 14361 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 14225 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 14361 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 14270 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) end ;; $if - i32.const 14349 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 16896 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 16896 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 14500 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 16900 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22971 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 23156 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 23159 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10836 i32.store - i32.const 6572 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 23495 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5336 - i32.const 5320 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $5) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23591 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23616 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 + i32.const 23636 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23658 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23676 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10880 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 23717 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 23742 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 16900 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 14549 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23851 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23865 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $4) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 16900 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 14599 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23874 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6936 + i32.const 10924 i32.store local.get $0 i32.const 4 @@ -68010,9 +96666,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -68027,7 +96681,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -68041,10 +96696,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -68054,20 +96712,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -68084,72 +96742,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -68163,10 +96891,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -68188,7 +96917,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -68328,145 +97059,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -68478,10 +97214,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -68546,20 +97283,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -68579,11 +97320,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -68635,9 +97376,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -68687,9 +97428,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $6) @@ -68699,12 +97440,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -68719,9 +97460,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.tee $0 if $if local.get $2 @@ -68730,7 +97471,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -68742,8 +97483,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5336 - i32.const 5424 + i32.const 5288 + i32.const 6456 call $___dynamic_cast i32.const 0 i32.ne @@ -69205,7 +97946,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -69243,7 +97984,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -69257,10 +97998,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -69280,7 +98021,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $6) @@ -69291,11 +98032,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $dynCall_iiii (type $16) @@ -69310,9 +98051,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $dynCall_vi (type $3) @@ -69320,11 +98061,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $2) @@ -69334,11 +98075,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_viii (type $1) @@ -69352,9 +98093,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_viiii (type $7) @@ -69368,11 +98109,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $dynCall_viiiii (type $13) @@ -69390,12 +98131,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -69412,9 +98153,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $5) @@ -69548,9 +98289,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -69580,9 +98321,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -69607,9 +98348,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\f0\8d\c1\02\d0\8d\01\e0\8d\01" + ;; "\00\02\00\04\00\80\02\bf\03\80\08\e0\d5\c1\02\c0\d5\01\d0\d5\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/queue_cpp.cc b/test/extensions/filters/http/wasm/test_data/queue_cpp.cc index 5d03f29de87f5..ecfa4e0553409 100644 --- a/test/extensions/filters/http/wasm/test_data/queue_cpp.cc +++ b/test/extensions/filters/http/wasm/test_data/queue_cpp.cc @@ -17,24 +17,31 @@ class ExampleRootContext : public RootContext { void onStart(WasmDataPtr) override; void onQueueReady(uint32_t token) override; + + uint32_t token_; }; static RegisterContextFactory register_ExampleContext(CONTEXT_FACTORY(ExampleContext), ROOT_FACTORY(ExampleRootContext)); FilterHeadersStatus ExampleContext::onRequestHeaders() { - auto token = resolveSharedQueue("vm_id", "my_shared_queue"); - auto result = enqueueSharedQueue(token, "data1"); - logWarn("onRequestHeaders " + std::to_string(result)); + uint32_t token; + CHECK_RESULT(resolveSharedQueue("vm_id", "my_shared_queue", &token)); + if (WasmResult::Ok == enqueueSharedQueue(token, "data1")) { + logWarn("onRequestHeaders enqueue Ok"); + } return FilterHeadersStatus::Continue; } void ExampleRootContext::onStart(WasmDataPtr) { - registerSharedQueue("my_shared_queue"); + CHECK_RESULT(registerSharedQueue("my_shared_queue", &token_)); } void ExampleRootContext::onQueueReady(uint32_t token) { - logInfo("onQueueReady"); + if (token == token_) { + logInfo("onQueueReady"); + } std::unique_ptr data; - auto result = dequeueSharedQueue(token, &data); - logDebug("data " + data->toString() + " " + std::to_string(result)); + if (WasmResult::Ok == dequeueSharedQueue(token, &data)) { + logDebug("data " + data->toString() + " Ok"); + } } diff --git a/test/extensions/filters/http/wasm/test_data/queue_cpp.wasm b/test/extensions/filters/http/wasm/test_data/queue_cpp.wasm index 7281295004016..74e0346a4d5ae 100644 Binary files a/test/extensions/filters/http/wasm/test_data/queue_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/queue_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/queue_cpp.wat b/test/extensions/filters/http/wasm/test_data/queue_cpp.wat index ac83999f683fb..fa12d1f8a84e0 100644 --- a/test/extensions/filters/http/wasm/test_data/queue_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/queue_cpp.wat @@ -14,22 +14,25 @@ (type $12 (func (param i32 i64 i32) (result i64))) (type $13 (func (param i32 i32 i32 i32 i32 i32))) (type $14 (func (result i32))) - (type $15 (func (param i32 i32 i32 i32) (result i32))) - (type $16 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $15 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $16 (func (param i32 i32 i32 i32) (result i32))) (type $17 (func (param i32 i32 i32 i32 i32 i32 i32 i32))) (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,19 +44,20 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) (import "env" "_proxy_dequeueSharedQueue" (func $_proxy_dequeueSharedQueue (param i32 i32 i32) (result i32))) (import "env" "_proxy_enqueueSharedQueue" (func $_proxy_enqueueSharedQueue (param i32 i32 i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_registerSharedQueue" (func $_proxy_registerSharedQueue (param i32 i32) (result i32))) - (import "env" "_proxy_resolveSharedQueue" (func $_proxy_resolveSharedQueue (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_registerSharedQueue" (func $_proxy_registerSharedQueue (param i32 i32 i32) (result i32))) + (import "env" "_proxy_resolveSharedQueue" (func $_proxy_resolveSharedQueue (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 447 447 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -106,46 +110,73 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 17392)) - (global $31 (mut i32) (i32.const 5260272)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 26656)) + (global $33 (mut i32) (i32.const 5269536)) + (elem $34 $28 (global.get $30) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv - $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv - $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv - $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv - $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv + $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv + $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE - $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN11RootContextD2Ev - $__ZN18ExampleRootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN18ExampleRootContextD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev + $__ZN18ExampleRootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN18ExampleRootContextD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev - $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev - $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv - $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv $b7 $b7 $b7 $b7 + $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN14ExampleContextD0Ev $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv + $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b8 $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN18ExampleRootContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN18ExampleRootContext12onQueueReadyEj $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv - $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE - $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi + $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b10 $b10 $b10 $b10 $b10 + $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "\91,\00\00\96,\00\00\9e,\00\00\a4,") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "\9a:\00\00\9f:\00\00\a7:\00\00\ad:") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -175,236 +206,385 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\c8\1a\00\00\d9\1b\00\00\f0\1a\00\00\d0\1b\00\00p\11\00\00\00\00\00\00\f0" - "\1a\00\00\bf\1b\00\00x\11\00\00\00\00\00\00\f0\1a\00\00\fc\1b\00\00p\11\00\00\00\00\00\00\f0\1a\00\00\e7\1b\00\00\98\11\00\00\00\00\00\00\c8\1a\00\00\83\1c\00\00\f0\1a\00\00\n\1c\00\00\b8" - "\11\00\00\00\00\00\00\c8\1a\00\00\e5\1c\00\00\c8\1a\00\00\88\1d\00\00\f0\1a\00\00\ea\1c\00\00\d8\11\00\00\00\00\00\00\c8\1a\00\00\0f\1e\00\00\c8\1a\00\00\14\1e\00\00\\\1b\00\00\16\1f\00\00\00" - "\00\00\00\01\00\00\00\18\12\00\00\00\00\00\00\c8\1a\00\00U\1f\00\00\f0\1a\00\008)\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\1a(\00\00@\12\00\00\00\00\00\00\f0\1a\00\00\d7!\00\00P" - "\12\00\00\00\00\00\00\f0\1a\00\00\07\"\00\00`\12\00\00\00\00\00\00\f0\1a\00\00\cd\"\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\e7'\00\00\d0\12\00\00\00\00\00\00\\\1b\00\00\a5&\00\00\00" - "\00\00\00\01\00\00\00\98\12\00\00\00\00\00\00\c8\1a\00\00\12'\00\00\f0\1a\00\00\01(\00\00\d0\12\00\00\00\00\00\00\f0\1a\00\00\8c)\00\00\c0\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4816) - "\c8\1a\00\00\8d.\00\00\f0\1a\00\00^2\00\00\f8\12\00\00\00\00\00\00\f0\1a\00\00\1a3\00\00\f8\12\00\00\00\00\00\00\c8\1a\00\00\e63\00\00\05") - (data $52 $27 (i32.const 4876) - "1") - (data $53 $27 (i32.const 4900) - "\08\00\00\00\01\00\00\00\1b?") - (data $54 $27 (i32.const 4924) - "\02") - (data $55 $27 (i32.const 4939) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 5008) - "\05") - (data $57 $27 (i32.const 5020) - "1") - (data $58 $27 (i32.const 5044) - "\09\00\00\00\01\00\00\00(7\00\00\00\04") - (data $59 $27 (i32.const 5068) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00\ac\1e\00\00\e0+\00\00\d4\1e\00\00\d7+\00\00p\11\00\00\00\00\00\00\d4" + "\1e\00\00\c6+\00\00x\11\00\00\00\00\00\00\d4\1e\00\00\03,\00\00p\11\00\00\00\00\00\00\d4\1e\00\00\ee+\00\00\98\11\00\00\00\00\00\00\ac\1e\00\00\11,\00\00\ac\1e\00\00\16,\00\00\ac" + "\1e\00\00\1b,\00\00\f0*\00\00\1d-\00\00\00\00\00\00\01\00\00\00\e8\11\00\00\00\00\00\00\ac\1e\00\00\\-\00\00\d4\1e\00\00A7\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00#6\00\00\10" + "\12\00\00\00\00\00\00\d4\1e\00\00\e0/\00\00 \12\00\00\00\00\00\00\d4\1e\00\00\100\00\000\12\00\00\00\00\00\00\d4\1e\00\00\d60\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\f05\00\00\a0" + "\12\00\00\00\00\00\00\f0*\00\00\ae4\00\00\00\00\00\00\01\00\00\00h\12\00\00\00\00\00\00\ac\1e\00\00\1b5\00\00\d4\1e\00\00\n6\00\00\a0\12\00\00\00\00\00\00\d4\1e\00\00\957\00\00\90" + "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4768) + "\ac\1e\00\00\99<\00\00\d4\1e\00\00j@\00\00\c8\12\00\00\00\00\00\00\d4\1e\00\00&A\00\00\c8\12\00\00\00\00\00\00\ac\1e\00\00\f2A\00\00\05") + (data $54 $29 (i32.const 4828) + "-") + (data $55 $29 (i32.const 4852) + "\08\00\00\00\01\00\00\00X[\00\00\00\04") + (data $56 $29 (i32.const 4876) "\01") - (data $60 $27 (i32.const 5083) + (data $57 $29 (i32.const 4891) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5188) + (data $58 $29 (i32.const 4960) + "\05") + (data $59 $29 (i32.const 4972) + "-") + (data $60 $29 (i32.const 4996) + "\09\00\00\00\01\00\00\00Fc") + (data $61 $29 (i32.const 5020) + "\02") + (data $62 $29 (i32.const 5035) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5140) "\n") - (data $62 $27 (i32.const 5227) + (data $64 $29 (i32.const 5179) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5296) - "\f0\1a\00\00_4\00\00\c0\14\00\00\00\00\00\00\c8\1a\00\00!5\00\00\f0\1a\00\00\815\00\00\d8\14\00\00\00\00\00\00\f0\1a\00\00.5\00\00\e8\14\00\00\00\00\00\00\c8\1a\00\00O5\00\00" - "\f0\1a\00\00\\5\00\00\c8\14\00\00\00\00\00\00\f0\1a\00\00c6\00\00\c0\14\00\00\00\00\00\00\f0\1a\00\00s6\00\00\00\15\00\00\00\00\00\00\f0\1a\00\00\a86\00\00\d8\14\00\00\00\00\00\00" - "\f0\1a\00\00\846\00\00 \15\00\00\00\00\00\00\f0\1a\00\00\ca6\00\00\d8\14\00\00\00\00\00\00@\1b\00\00\f26\00\00@\1b\00\00\f46\00\00\f0\1a\00\00\f66\00\00\c8\14") - (data $64 $27 (i32.const 5492) + (data $65 $29 (i32.const 5248) + "\d4\1e\00\00iB\00\00\90\14\00\00\00\00\00\00\ac\1e\00\00(C\00\00\d4\1e\00\00\88C\00\00\a8\14\00\00\00\00\00\00\d4\1e\00\005C\00\00\b8\14\00\00\00\00\00\00\ac\1e\00\00VC\00\00" + "\d4\1e\00\00cC\00\00\98\14\00\00\00\00\00\00\d4\1e\00\00\18E\00\00\e0\14\00\00\00\00\00\00\ac\1e\00\00GE\00\00\d4\1e\00\00\fbE\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00>F\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\8bF\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\d1F\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\01G\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00?G\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00pG\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\c0G\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f9G\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\004H\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00pH\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\b3H\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e1H\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\14I\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\d0I\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\fdI\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00.J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00lJ\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\e4J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\a9J\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00+K\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00tK\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\cfK\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\faK\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\004L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00hL\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\b8L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e7L\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00 M\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00YM\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00~O\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\ccO\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\07P\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\003P\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00}P\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\b2P\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e5P\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\1cQ\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00QQ\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\e7Q\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\19R\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00KR\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\a3R\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\ebR\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00#S\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00qS\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\b0S\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\f3S\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00$T\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00^U\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\9eU\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\d1U\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\0bV\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00DV\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\81V\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\feV\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00*W\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00`W\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\b4W\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\ecW\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00/X\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00`X\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\90X\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\cbX\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\0dY\00\00\e0\14\00\00\00\00\00\00\d4\1e\00\00\fcY\00\00" + "\e0\14\00\00\00\00\00\00\d4\1e\00\00\87Z\00\00\90\14\00\00\00\00\00\00\d4\1e\00\00\97Z\00\00\08\19\00\00\00\00\00\00\d4\1e\00\00\a8Z\00\00\a8\14\00\00\00\00\00\00\d4\1e\00\00\caZ\00\00" + "(\19\00\00\00\00\00\00\d4\1e\00\00\eeZ\00\00\a8\14\00\00\00\00\00\00\d4*\00\00\16[\00\00\d4*\00\00\18[\00\00\d4*\00\00\1a[\00\00\d4\1e\00\00\1c[\00\00\98\14") + (data $66 $29 (i32.const 6532) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00\a8\11\00\00\07\00\00\00\08\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\09\00\00\00\03\00\00\00\01\00\00\00" "\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\n\00\00\00\0b\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\98\11\00\00\07\00\00\00" - "\0b\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\07\00\00\00\09\00\00\00\08\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" - "\c0\11\00\00\0c\00\00\00\0d\00\00\00\0d\00\00\00\09\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\03\00\00\00\0e\00\00\00\00\00\00\00\e0\11\00\00\10\00\00\00\11\00\00\00\0f\00\00\00\n\00\00\00" - "\12\00\00\00\13\00\00\00\03\00\00\00\04\00\00\00\10\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $65 $27 (i32.const 5852) - "@\12\00\00\14\00\00\00\15\00\00\00\0b\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00\16\00\00\00\14\00\00\00\0c\00\00\00\0d\00\00\00\06\00\00\00\15\00\00\00\0e\00\00\00\07\00\00\00" - "\16\00\00\00\03\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00\00\00\00\00\a0\12\00\00\17\00\00\00\18\00\00\00\0f\00\00\00\1a\00\00\00\08\00\00\00\1b\00\00\00\1c\00\00\00\19\00\00\00\1d\00\00\00" - "\0c\00\00\00\10\00\00\00\09\00\00\00\1e\00\00\00\11\00\00\00\07\00\00\00\1f\00\00\00\04\00\00\00\17\00\00\00\00\00\00\00 \12\00\00\1a\00\00\00\1b\00\00\00\12\00\00\00 \00\00\00\n\00\00\00" - "!\00\00\00\"\00\00\00\1c\00\00\00#\00\00\00\0c\00\00\00\13\00\00\00\0b\00\00\00$\00\00\00\14\00\00\00\07\00\00\00%\00\00\00\04\00\00\00\17\00\00\00\00\00\00\000\12\00\00\14\00\00\00" - "\1d\00\00\00\0b\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00\16\00\00\00\14\00\00\00\0c\00\00\00\0d\00\00\00\06\00\00\00\15\00\00\00\0e\00\00\00\07\00\00\00\16\00\00\00\03\00\00\00" - "\17\00\00\00&\00\00\00'\00\00\00\00\00\00\00p\12\00\00\1e\00\00\00\1f\00\00\00\15\00\00\00(\00\00\00\0c\00\00\00)\00\00\00*\00\00\00 \00\00\00+\00\00\00\0c\00\00\00\16\00\00\00" - "\0d\00\00\00,\00\00\00\17\00\00\00\07\00\00\00-\00\00\00\04\00\00\00\17\00\00\00\00\00\00\00`\12\00\00\14\00\00\00!\00\00\00\0b\00\00\00\11\00\00\00\05\00\00\00\12\00\00\00\13\00\00\00" - "\16\00\00\00\14\00\00\00\0c\00\00\00\0d\00\00\00\06\00\00\00\15\00\00\00\0e\00\00\00\07\00\00\00\16\00\00\00\03\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00\00\00\00\00x\11\00\00\01\00\00\00" - "\"\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00.\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00" - "\06\00\00\00\00\00\00\00\b0\12\00\00#\00\00\00$\00\00\00/\00\00\00\00\00\00\00\d8\12\00\00%\00\00\00&\00\00\00\05\00\00\00\18\00\00\00\01\00\00\00\06\00\00\000\00\00\00\00\00\00\00" - "\e8\12\00\00%\00\00\00'\00\00\00\07\00\00\00\19\00\00\00\02\00\00\00\06\00\00\000") - (data $66 $27 (i32.const 6529) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\0c?\00\00\11?\00\00\10\0d\00\00\00\13\00\00\90\13") - (data $67 $27 (i32.const 6768) - "\9c<") - (data $68 $27 (i32.const 6828) - "\b0\14\00\00(\00\00\00)\00\00\002\00\00\00\02\00\00\00\00\00\00\00\c8\14\00\00*\00\00\00+\00\00\00,\00\00\00-\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\00\00\00\00" - "\f0\14\00\00*\00\00\00.\00\00\00,\00\00\00-\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\05") - (data $69 $27 (i32.const 6933) - "\15\00\00/\00\00\000\00\00\003\00\00\00\00\00\00\00\10\15\00\00/\00\00\001\00\00\003\00\00\00\00\00\00\00@\15\00\00*\00\00\002\00\00\00,\00\00\00-\00\00\00\0c\00\00\00\00" - "\00\00\00`\15\00\00*\00\00\003\00\00\00,\00\00\00-\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\06\00\00\00vm_id\00my_shared_queue\00dat" - "a1\00onRequestHeaders \00onQueueReady\00data \00 \0014ExampleContext\007Cont" - "ext\0011ContextBase\0018ExampleRootContext\0011RootContext\00NSt3__210__" - "function6__funcI3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7Context" - "NS_14default_deleteIS6_EEEEjP11RootContextEEE\00NSt3__210__functio" - "n6__baseIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP1" - "1RootContextEEE\003$_0\00NSt3__210__function6__funcI3$_1NS_9allocato" - "rIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEE" - "jNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEE\00NSt3__210__fu" - "nction6__baseIFNS_10unique_ptrI11RootContextNS_14default_deleteI" - "S3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEE\003$_1\00N" - "6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__2" - "12basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29I" - "nternalMetadataWithArenaLiteEE9ContainerE\00/usr/local/include/goo" - "gle/protobuf/arenastring.h\00CHECK failed: initial_value != NULL: " - "\00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00" - "NSt3__221__basic_string_commonILb1EEE\00/home/jplev_google_com/env" - "oy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/google/prot" - "obuf/repeated_field.h\00CHECK failed: (index) >= (0): \00CHECK faile" - "d: (index) < (current_size_): \00/usr/local/include/google/protobu" - "f/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHECK failed:" - " m_->index_of_first_non_null_ == m_->num_buckets_ || m_->table_[" - "m_->index_of_first_non_null_] != NULL: \00CHECK failed: !tree->emp" - "ty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00google.protob" - "uf.Value.string_value\00google.protobuf.Struct.FieldsEntry.key\00CHE" - "CK failed: (&from) != (this): \00CHECK failed: (&other) != (this):" - " \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8proto" - "buf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt" - "3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0" - "_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google" - "8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotU" - "seENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcE" - "ENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE" - "9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed: " - "TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b):" - " \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK failed: inde" - "x_of_first_non_null_ == num_buckets_ || table_[index_of_first_no" - "n_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) " - "== end(): \00CHECK failed: (count) <= (kMaxLength): \00CHECK failed:" - " (result.bucket_index_) == (b & ~static_cast(1)): \00CH" - "ECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !Tabl" - "eEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (cou" - "nt) == (tree->size()): \00CHECK failed: (new_num_buckets) >= (kMin" - "TableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK failed: (n" - " & (n - 1)) == (0): \00CHECK failed: table_[b] == table_[b + 1] &&" - " (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_stringIcNS2" - "_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6g" - "oogle8protobuf4hashINSt3__212basic_stringIcNS2_11char_traitsIcEE" - "NS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00" - "/usr/local/include/google/protobuf/stubs/casts.h\00down_cast\00googl" - "e.protobuf.Struct\00N6google8protobuf6StructE\00N6google8protobuf5Va" - "lueE\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_Field" - "sEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11c" - "har_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLi" - "te9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) " - ">= (0): \00google.protobuf.ListValue\00N6google8protobuf9ListValueE\00" - "google.protobuf.Value\00no context factory for root_id: \00N6google8" - "protobuf14FatalExceptionE\00google/protobuf/stubs/common.cc\00This p" - "rogram requires version \00%d.%d.%d\00 of the Protocol Buffer runtim" - "e library, but the installed version is \00. Please update your l" - "ibrary. If you compiled the program yourself, make sure that yo" - "ur headers are from the same version of Protocol Buffers as your" - " link-time library. (Version verification failed in \"\00\".)\00This " - "program was compiled against version \00 of the Protocol Buffer ru" - "ntime library, which is not compatible with the installed versio" - "n (\00). Contact the program author for an update. If you compil" - "ed the program yourself, make sure that your headers are from th" - "e same version of Protocol Buffers as your link-time library. (" - "Version verification failed in \"\00[libprotobuf %s %s:%d] %s\n\00INFO" - "\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) 'n' exceed" - "s maximum supported size\00%u\00google/protobuf/arena.cc\00CHECK faile" - "d: (min_bytes) <= (std::numeric_limits::max() - kBlockHe" - "aderSize): \00google/protobuf/generated_message_util.cc\00Not implem" - "ented field number \00 with type \00CHECK failed: (scc->visit_status" - ".load(std::memory_order_relaxed)) == (SCCInfoBase::kRunning): \00g" - "oogle/protobuf/message_lite.cc\00CHECK failed: !coded_out.HadError" - "(): \00(cannot determine missing fields for lite message)\00N6google" - "8protobuf11MessageLiteE\00google/protobuf/repeated_field.cc\00CHECK " - "failed: (new_size) <= ((std::numeric_limits::max() - kRe" - "pHeaderSize) / sizeof(old_rep->elements[0])): \00Requested size is" - " too large to fit into size_t.\00google/protobuf/wire_format_lite." - "cc\00CHECK failed: (value.size()) <= (kint32max): \00serializing\00par" - "sing\00 '%s'\00String field\00 contains invalid \00UTF-8 data when \00 a p" - "rotocol \00buffer. Use the 'bytes' type if you intend to send raw " - "\00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK failed: (buffe" - "r_size) >= (0): \00A protocol message was rejected because it was " - "too big (more than \00 bytes). To increase the limit (or to disab" - "le these warnings), see CodedInputStream::SetTotalBytesLimit() i" - "n google/protobuf/io/coded_stream.h.\00google/protobuf/io/zero_cop" - "y_stream_impl_lite.cc\00CHECK failed: (count) >= (0): \00CHECK faile" - "d: (last_returned_size_) > (0): \00BackUp() can only be called aft" - "er a successful Next().\00CHECK failed: (count) <= (last_returned_" - "size_): \00N6google8protobuf2io17ArrayOutputStreamE\00CHECK failed: " - "target_ != NULL: \00CHECK failed: (count) <= (target_->size()): \00C" - "annot allocate buffer larger than kint32max for \00StringOutputStr" - "eam.\00N6google8protobuf2io18StringOutputStreamE\00google/protobuf/i" - "o/zero_copy_stream.cc\00This ZeroCopyOutputStream doesn't support " - "aliasing. Reaching here usually means a ZeroCopyOutputStream imp" - "lementation bug.\00N6google8protobuf2io20ZeroCopyOutputStreamE\00-+ " - " 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00std::bad_func" - "tion_call\00NSt3__217bad_function_callE\00mutex lock failed\00%d\00termi" - "nating with %s exception of type %s: %s\00terminating with %s exce" - "ption of type %s\00terminating with %s foreign exception\00terminati" - "ng\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_infoE\00St9typ" - "e_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv117__cla" - "ss_type_infoE\00pthread_once failure in __cxa_get_globals_fast()\00c" - "annot create pthread key for __cxa_get_globals()\00cannot zero out" - " thread value for __cxa_get_globals()\00terminate_handler unexpect" - "edly returned\00St11logic_error\00St12length_error\00N10__cxxabiv119__" - "pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxabi" - "v123__fundamental_type_infoE\00c\00h\00N10__cxxabiv121__vmi_class_type" - "_infoE") + "\0b\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\07\00\00\00\09\00\00\00\08\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\01\00\00\00\01") + (data $67 $29 (i32.const 6796) + "\b8\11") + (data $68 $29 (i32.const 6812) + "\c0\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6836) + "\10\12\00\00\0c\00\00\00\0d\00\00\00\09\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\n\00\00\00\0b\00\00\00\04\00\00\00\11\00\00\00\0c\00\00\00\05\00\00\00" + "\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\0f\00\00\00\10\00\00\00\0d\00\00\00\16\00\00\00\06\00\00\00\17\00\00\00\18\00\00\00\11\00\00\00\19\00\00\00" + "\n\00\00\00\0e\00\00\00\07\00\00\00\1a\00\00\00\0f\00\00\00\05\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\12\00\00\00\13\00\00\00\10\00\00\00\1c\00\00\00\08\00\00\00" + "\1d\00\00\00\1e\00\00\00\14\00\00\00\1f\00\00\00\n\00\00\00\11\00\00\00\09\00\00\00 \00\00\00\12\00\00\00\05\00\00\00!\00\00\00\04\00\00\00\13") + (data $70 $29 (i32.const 7085) + "\12\00\00\0c\00\00\00\15\00\00\00\09\00\00\00\0d\00\00\00\03\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\n\00\00\00\0b\00\00\00\04\00\00\00\11\00\00\00\0c\00\00\00\05\00\00\00\12" + "\00\00\00\03\00\00\00\13\00\00\00\"\00\00\00#\00\00\00\00\00\00\00@\12\00\00\16\00\00\00\17\00\00\00\13\00\00\00$\00\00\00\n\00\00\00%\00\00\00&\00\00\00\18\00\00\00'\00\00\00\n" + "\00\00\00\14\00\00\00\0b\00\00\00(\00\00\00\15\00\00\00\05\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\000\12\00\00\0c\00\00\00\19\00\00\00\09\00\00\00\0d\00\00\00\03\00\00\00\0e" + "\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\n\00\00\00\0b\00\00\00\04\00\00\00\11\00\00\00\0c\00\00\00\05\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00x" + "\11\00\00\01\00\00\00\1a\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04" + "\00\00\00\05\00\00\00\06") + (data $71 $29 (i32.const 7424) + "\01\00\00\00X\19\00\00\00\00\00\00\80\12\00\00\1b\00\00\00\1c\00\00\00+\00\00\00\00\00\00\00\a8\12\00\00\1d\00\00\00\1e\00\00\00\05\00\00\00\16\00\00\00\01\00\00\00\06\00\00\00,\00\00\00" + "\00\00\00\00\b8\12\00\00\1d\00\00\00\1f\00\00\00\07\00\00\00\17\00\00\00\02\00\00\00\06\00\00\00,") + (data $72 $29 (i32.const 7529) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\008c\00\00Fc\00\00\10\0d\00\00\d0\12\00\00`\13") + (data $73 $29 (i32.const 7768) + "\cc`") + (data $74 $29 (i32.const 7828) + "\80\14\00\00 \00\00\00!\00\00\00.\00\00\00\00\00\00\00\98\14\00\00\"\00\00\00#\00\00\00$\00\00\00%\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\c0\14\00\00" + "\"\00\00\00&\00\00\00$\00\00\00%\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\d0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\19\00\00\00" + "\1a\00\00\00'\00\00\00(\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00)\00\00\00\00\00\00\00\e8\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00\19\00\00\00\1c\00\00\00'\00\00\00*\00\00\00\00\00\00\00\f8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1d\00\00\00" + "\19\00\00\00\1a\00\00\00'\00\00\00+\00\00\00\00\00\00\00\08\15\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\1a\00\00\00'\00\00\00,\00\00\00\00\00\00\00" + "\18\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00 \00\00\00!\00\00\00\1a\00\00\00'\00\00\00-\00\00\00\00\00\00\00(\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "\"\00\00\00\19\00\00\00#\00\00\00'\00\00\00.\00\00\00\00\00\00\008\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00$\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00/\00\00\00" + "\00\00\00\00H\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00%\00\00\00&\00\00\00\1a\00\00\00'\00\00\000\00\00\00\00\00\00\00X\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00'\00\00\00\19\00\00\00\1a\00\00\00'\00\00\001\00\00\00\00\00\00\00h\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00(\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00" + "2\00\00\00\00\00\00\00x\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\19\00\00\00\1a\00\00\00'\00\00\003\00\00\00\00\00\00\00\88\15\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00*\00\00\00\19\00\00\00\1a\00\00\00'\00\00\004\00\00\00\00\00\00\00\98\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\19\00\00\00\1a\00\00\00" + "'\00\00\005\00\00\00\00\00\00\00\a8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\19\00\00\00\1a\00\00\00'\00\00\006\00\00\00\00\00\00\00\b8\15\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\19\00\00\00\1a\00\00\00'\00\00\007\00\00\00\00\00\00\00\c8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\19\00\00\00" + "\1a\00\00\00'\00\00\008\00\00\00\00\00\00\00\d8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00\19\00\00\00\1a\00\00\00'\00\00\009\00\00\00\00\00\00\00\e8\15\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00:\00\00\00\00\00\00\00\f8\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00" + "\19\00\00\00\1a\00\00\00'\00\00\00;\00\00\00\00\00\00\00\08\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\002\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00<\00\00\00\00\00\00\00" + "\18\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00=\00\00\00\00\00\00\00(\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "4\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00>\00\00\00\00\00\00\008\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\005\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00?\00\00\00" + "\00\00\00\00H\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00@\00\00\00\00\00\00\00X\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\007\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00A\00\00\00\00\00\00\00h\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\008\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00" + "B\00\00\00\00\00\00\00x\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\009\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00C\00\00\00\00\00\00\00\88\16\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00:\00\00\00\19\00\00\00;\00\00\00'\00\00\00D\00\00\00\00\00\00\00\98\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\19\00\00\00\1a\00\00\00" + "'\00\00\00E\00\00\00\00\00\00\00\a8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00=\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00F\00\00\00\00\00\00\00\b8\16\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\19\00\00\00?\00\00\00'\00\00\00G\00\00\00\00\00\00\00\c8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\19\00\00\00" + "\1a\00\00\00'\00\00\00H\00\00\00\00\00\00\00\d8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00I\00\00\00\00\00\00\00\e8\16\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00B\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00J\00\00\00\00\00\00\00\f8\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00" + "\19\00\00\00D\00\00\00'\00\00\00K\00\00\00\00\00\00\00\08\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00E\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00L\00\00\00\00\00\00\00" + "\18\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00M\00\00\00\00\00\00\00(\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00" + "G\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00N\00\00\00\00\00\00\008\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00H\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00O\00\00\00" + "\00\00\00\00H\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00P\00\00\00\00\00\00\00X\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00" + "\0f\00\00\00J\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00Q\00\00\00\00\00\00\00h\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00K\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00" + "R\00\00\00\00\00\00\00x\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00L\00\00\00M\00\00\00\1a\00\00\00'\00\00\00S\00\00\00\00\00\00\00\88\17\00\00\0c\00\00\00\0d\00\00\00" + "\0e\00\00\00\0f\00\00\00N\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00T\00\00\00\00\00\00\00\98\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\19\00\00\00P\00\00\00" + "'\00\00\00U\00\00\00\00\00\00\00\a8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00V\00\00\00\00\00\00\00\b8\17\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00W\00\00\00\00\00\00\00\c8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\19\00\00\00" + "\1a\00\00\00'\00\00\00X\00\00\00\00\00\00\00\d8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00Y\00\00\00\00\00\00\00\e8\17\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00U\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00Z\00\00\00\00\00\00\00\f8\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00" + "\19\00\00\00W\00\00\00'\00\00\00[\00\00\00\00\00\00\00\08\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00\19\00\00\00Y\00\00\00'\00\00\00\\\00\00\00\00\00\00\00" + "\18\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Z\00\00\00[\00\00\00\1a\00\00\00'\00\00\00]\00\00\00\00\00\00\00(\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00" + "\\\00\00\00]\00\00\00\1a\00\00\00'\00\00\00^\00\00\00\00\00\00\008\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00^\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00_\00\00\00" + "\00\00\00\00H\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00_\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00`\00\00\00\00\00\00\00X\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00" + "\0f\00\00\00`\00\00\00a\00\00\00\1a\00\00\00'\00\00\00a\00\00\00\00\00\00\00h\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00b\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00" + "b\00\00\00\00\00\00\00x\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00c\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00c\00\00\00\00\00\00\00\88\18\00\00 \00\00\00\0d\00\00\00" + "!\00\00\00\0f\00\00\00d\00\00\00e\00\00\00\1a\00\00\00'\00\00\00d\00\00\00\00\00\00\00\98\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\19\00\00\00\1a\00\00\00" + "'\00\00\00e\00\00\00\00\00\00\00\a8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00f\00\00\00\00\00\00\00\b8\18\00\00\0c\00\00\00" + "\0d\00\00\00\0e\00\00\00\0f\00\00\00h\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00g\00\00\00\00\00\00\00\c8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00i\00\00\00\19\00\00\00" + "\1a\00\00\00'\00\00\00h\00\00\00\00\00\00\00\d8\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00j\00\00\00k\00\00\00\1a\00\00\00'\00\00\00i\00\00\00\00\00\00\00\e8\18\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00l\00\00\00\19\00\00\00\1a\00\00\00'\00\00\00j\00\00\00\00\00\00\00\f8\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00m\00\00\00" + "\19\00\00\00\1a\00\00\00'\00\00\00k\00\00\00\00\00\00\00\08\19\00\00l\00\00\00m\00\00\00/\00\00\00\00\00\00\00\18\19\00\00l\00\00\00n\00\00\00/\00\00\00\00\00\00\00H\19\00\00" + "\"\00\00\00o\00\00\00$\00\00\00%\00\00\00\0c\00\00\00\00\00\00\00p\19\00\00\"\00\00\00p\00\00\00$\00\00\00%\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00vm_i" + "d\00my_shared_queue\00resolveSharedQueue(\"vm_id\", \"my_shared_queue\"," + " &token)\00data1\00onRequestHeaders enqueue Ok\00registerSharedQueue(\"" + "my_shared_queue\", &token_)\00onQueueReady\00data \00 Ok\0014ExampleConte" + "xt\007Context\0011ContextBase\0018ExampleRootContext\0011RootContext\003$_" + "0\003$_1\00N6google8protobuf8internal29InternalMetadataWithArenaBase" + "INSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEE" + "ENS1_29InternalMetadataWithArenaLiteEE9ContainerE\00/usr/local/inc" + "lude/google/protobuf/arenastring.h\00CHECK failed: initial_value !" + "= NULL: \00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocato" + "rIcEEEE\00NSt3__221__basic_string_commonILb1EEE\00/home/piotrsikora/" + "Google/envoy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/g" + "oogle/protobuf/repeated_field.h\00CHECK failed: (index) >= (0): \00C" + "HECK failed: (index) < (current_size_): \00/usr/local/include/goog" + "le/protobuf/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHE" + "CK failed: m_->index_of_first_non_null_ == m_->num_buckets_ || m" + "_->table_[m_->index_of_first_non_null_] != NULL: \00CHECK failed: " + "!tree->empty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00goo" + "gle.protobuf.Value.string_value\00google.protobuf.Struct.FieldsEnt" + "ry.key\00CHECK failed: (&from) != (this): \00CHECK failed: (&other) " + "!= (this): \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6go" + "ogle8protobuf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_Do" + "NotUseENSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocato" + "rIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EE" + "E\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEn" + "try_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char" + "_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9" + "FieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHEC" + "K failed: TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntry" + "IsTree(b): \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK fa" + "iled: index_of_first_non_null_ == num_buckets_ || table_[index_o" + "f_first_non_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodeP" + "tr(node)) == end(): \00CHECK failed: (count) <= (kMaxLength): \00CHE" + "CK failed: (result.bucket_index_) == (b & ~static_cast(1)): \00CHECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK fai" + "led: !TableEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK fa" + "iled: (count) == (tree->size()): \00CHECK failed: (new_num_buckets" + ") >= (kMinTableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK " + "failed: (n & (n - 1)) == (0): \00CHECK failed: table_[b] == table_" + "[b + 1] && (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_s" + "tringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8Inn" + "erMapE\00N6google8protobuf4hashINSt3__212basic_stringIcNS2_11char_" + "traitsIcEENS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f" + ") != NULL\00/usr/local/include/google/protobuf/stubs/casts.h\00down_" + "cast\00google.protobuf.Struct\00N6google8protobuf6StructE\00N6google8p" + "rotobuf5ValueE\00N6google8protobuf8internal12MapEntryImplINS0_27St" + "ruct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_strin" + "gIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14Wi" + "reFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK fa" + "iled: (n) >= (0): \00google.protobuf.ListValue\00N6google8protobuf9L" + "istValueE\00google.protobuf.Value\00no context factory for root_id: " + "\00N6google8protobuf14FatalExceptionE\00google/protobuf/stubs/common" + ".cc\00This program requires version \00%d.%d.%d\00 of the Protocol Buf" + "fer runtime library, but the installed version is \00. Please upd" + "ate your library. If you compiled the program yourself, make su" + "re that your headers are from the same version of Protocol Buffe" + "rs as your link-time library. (Version verification failed in \"" + "\00\".)\00This program was compiled against version \00 of the Protocol" + " Buffer runtime library, which is not compatible with the instal" + "led version (\00). Contact the program author for an update. If " + "you compiled the program yourself, make sure that your headers a" + "re from the same version of Protocol Buffers as your link-time l" + "ibrary. (Version verification failed in \"\00[libprotobuf %s %s:%d" + "] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t n) " + "'n' exceeds maximum supported size\00%d\00%u\00google/protobuf/arena.c" + "c\00CHECK failed: (min_bytes) <= (std::numeric_limits::max" + "() - kBlockHeaderSize): \00google/protobuf/generated_message_util." + "cc\00Not implemented field number \00 with type \00CHECK failed: (scc-" + ">visit_status.load(std::memory_order_relaxed)) == (SCCInfoBase::" + "kRunning): \00google/protobuf/message_lite.cc\00CHECK failed: !coded" + "_out.HadError(): \00(cannot determine missing fields for lite mess" + "age)\00N6google8protobuf11MessageLiteE\00google/protobuf/repeated_fi" + "eld.cc\00CHECK failed: (new_size) <= ((std::numeric_limits" + "::max() - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00Requ" + "ested size is too large to fit into size_t.\00google/protobuf/wire" + "_format_lite.cc\00CHECK failed: (value.size()) <= (kint32max): \00se" + "rializing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-8 da" + "ta when \00 a protocol \00buffer. Use the 'bytes' type if you intend" + " to send raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHECK f" + "ailed: (buffer_size) >= (0): \00A protocol message was rejected be" + "cause it was too big (more than \00 bytes). To increase the limit" + " (or to disable these warnings), see CodedInputStream::SetTotalB" + "ytesLimit() in google/protobuf/io/coded_stream.h.\00google/protobu" + "f/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= (0):" + " \00CHECK failed: (last_returned_size_) > (0): \00BackUp() can only " + "be called after a successful Next().\00CHECK failed: (count) <= (l" + "ast_returned_size_): \00N6google8protobuf2io17ArrayOutputStreamE\00C" + "HECK failed: target_ != NULL: \00CHECK failed: (count) <= (target_" + "->size()): \00Cannot allocate buffer larger than kint32max for \00St" + "ringOutputStream.\00N6google8protobuf2io18StringOutputStreamE\00goog" + "le/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream doe" + "sn't support aliasing. Reaching here usually means a ZeroCopyOut" + "putStream implementation bug.\00N6google8protobuf2io20ZeroCopyOutp" + "utStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00st" + "d::bad_function_call\00NSt3__217bad_function_callE\00mutex lock fail" + "ed\00terminating with %s exception of type %s: %s\00terminating with" + " %s exception of type %s\00terminating with %s foreign exception\00t" + "erminating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_info" + "E\00St9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxxabiv" + "117__class_type_infoE\00terminate_handler unexpectedly returned\00_Z" + "\00___Z\00_block_invoke\00invocation function for block in \00void\00bool\00" + "char\00signed char\00unsigned char\00short\00unsigned short\00int\00unsigned" + " int\00long\00unsigned long\00long long\00__int128\00unsigned __int128\00flo" + "at\00long double\00__float128\00...\00decimal64\00decimal128\00decimal32\00dec" + "imal16\00char32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr_t\00[abi" + ":\00]\00N12_GLOBAL__N_116itanium_demangle10AbiTagAttrE\00N12_GLOBAL__N" + "_116itanium_demangle4NodeE\00allocator\00basic_string\00string\00istream" + "\00ostream\00iostream\00std::allocator\00std::basic_string\00std::string\00s" + "td::istream\00std::ostream\00std::iostream\00N12_GLOBAL__N_116itanium_" + "demangle19SpecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_116itani" + "um_demangle20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_GLOBA" + "L__N_116itanium_demangle13ReferenceTypeE\00objc_object\00*\00id<\00>\00N12" + "_GLOBAL__N_116itanium_demangle11PointerTypeE\00N12_GLOBAL__N_116it" + "anium_demangle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116itan" + "ium_demangle12TemplateArgsE\00N12_GLOBAL__N_116itanium_demangle13P" + "arameterPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_116ita" + "nium_demangle15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116itanium_de" + "mangle16FloatLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_demangl" + "e16FloatLiteralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_demangle16F" + "loatLiteralImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_demangle" + "8BoolExprE\00-\00N12_GLOBAL__N_116itanium_demangle14IntegerLiteralE\00" + "N12_GLOBAL__N_116itanium_demangle20TemplateArgumentPackE\00gs\00&=\00=" + "\00alignof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||\00|\00|" + "=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00N12_" + "GLOBAL__N_116itanium_demangle9ThrowExprE\00N12_GLOBAL__N_116itaniu" + "m_demangle12InitListExprE\00N12_GLOBAL__N_116itanium_demangle13Nod" + "eArrayNodeE\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle13Enclo" + "singExprE\00sizeof...(\00N12_GLOBAL__N_116itanium_demangle22Paramete" + "rPackExpansionE\00N12_GLOBAL__N_116itanium_demangle19SizeofParamPa" + "ckExprE\00static_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8CastExp" + "rE\00reinterpret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_demangl" + "e15ConditionalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N12_G" + "LOBAL__N_116itanium_demangle7NewExprE\00N12_GLOBAL__N_116itanium_d" + "emangle11PostfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_demangl" + "e15BracedRangeExprE\00N12_GLOBAL__N_116itanium_demangle10BracedExp" + "rE\00_GLOBAL__N\00(anonymous namespace)\00N12_GLOBAL__N_116itanium_dem" + "angle8NameTypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18ArraySubsc" + "riptExprE\00.\00N12_GLOBAL__N_116itanium_demangle10MemberExprE\00srN\00s" + "r\00::\00N12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameE\00dn\00" + "on\00operator&&\00operator&\00operator&=\00operator=\00operator()\00operator" + ",\00operator~\00operator delete[]\00operator*\00operator/\00operator/=\00ope" + "rator^\00operator^=\00operator==\00operator>=\00operator>\00operator[]\00ope" + "rator<=\00operator<<\00operator<<=\00operator<\00operator-\00operator-=\00op" + "erator*=\00operator--\00operator new[]\00operator!=\00operator!\00operator" + " new\00operator||\00operator|\00operator|=\00operator->*\00operator+\00opera" + "tor+=\00operator++\00operator->\00operator?\00operator%\00operator%=\00opera" + "tor>>\00operator>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_116itani" + "um_demangle15LiteralOperatorE\00operator delete\00operator \00N12_GLOB" + "AL__N_116itanium_demangle22ConversionOperatorTypeE\00N12_GLOBAL__N" + "_116itanium_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_demangle" + "13QualifiedNameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_116itaniu" + "m_demangle10DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_demangle1" + "4ConversionExprE\00N12_GLOBAL__N_116itanium_demangle8CallExprE\00con" + "st_cast\00N12_GLOBAL__N_116itanium_demangle10PrefixExprE\00) \00 (\00N12" + "_GLOBAL__N_116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00ds\00dv" + "\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL\00rm\00" + "rM\00rs\00rS\00... \00 ...\00N12_GLOBAL__N_116itanium_demangle8FoldExprE\00f" + "p\00fL\00N12_GLOBAL__N_116itanium_demangle13FunctionParamE\00N12_GLOBA" + "L__N_116itanium_demangle24ForwardTemplateReferenceE\00Ts\00struct\00Tu" + "\00union\00Te\00enum\00N12_GLOBAL__N_116itanium_demangle22ElaboratedType" + "SpefTypeE\00StL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle16StdQua" + "lifiedNameE\00DC\00N12_GLOBAL__N_116itanium_demangle21StructuredBind" + "ingNameE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_demangle15" + "ClosureTypeNameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_demangle15U" + "nnamedTypeNameE\00string literal\00N12_GLOBAL__N_116itanium_demangle" + "9LocalNameE\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDtorNameE" + "\00basic_istream\00basic_ostream\00basic_iostream\00std::basic_string, std::allocator >\00std::basic_is" + "tream >\00std::basic_ostream >\00std::basic_iostream >\00N12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubs" + "titutionE\00N12_GLOBAL__N_116itanium_demangle10NestedNameE\00::*\00N12" + "_GLOBAL__N_116itanium_demangle19PointerToMemberTypeE\00[\00N12_GLOBA" + "L__N_116itanium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__N_11" + "6itanium_demangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__N_116it" + "anium_demangle15PixelVectorTypeE\00decltype(\00double\00unsigned long " + "long\00objcproto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_116itani" + "um_demangle8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17VendorE" + "xtQualTypeE\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoNameE\00Do" + "\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_demangl" + "e12FunctionTypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle20Dynam" + "icExceptionSpecE\00noexcept(\00N12_GLOBAL__N_116itanium_demangle12No" + "exceptSpecE\00N12_GLOBAL__N_116itanium_demangle11SpecialNameE\00N12_" + "GLOBAL__N_116itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N12_GLOBA" + "L__N_116itanium_demangle16FunctionEncodingE\00 [enable_if:\00N12_GLO" + "BAL__N_116itanium_demangle12EnableIfAttrE\00thread-local wrapper r" + "outine for \00reference temporary for \00guard variable for \00non-vir" + "tual thunk to \00virtual thunk to \00thread-local initialization rou" + "tine for \00construction vtable for \00-in-\00N12_GLOBAL__N_116itanium" + "_demangle21CtorVtableSpecialNameE\00covariant return thunk to \00typ" + "einfo name for \00typeinfo for \00VTT for \00vtable for \00St11logic_err" + "or\00St12length_error\00N10__cxxabiv117__pbase_type_infoE\00N10__cxxab" + "iv119__pointer_type_infoE\00N10__cxxabiv123__fundamental_type_info" + "E\00v\00c\00h\00N10__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_queue_cpp_cc - i32.const 15336 + i32.const 24600 i64.const 0 i64.store align=4 - i32.const 15344 + i32.const 24608 i64.const 0 i64.store align=4 - i32.const 15352 + i32.const 24616 i32.const 1065353216 i32.store - i32.const 15356 + i32.const 24620 i64.const 0 i64.store align=4 - i32.const 15364 + i32.const 24628 i64.const 0 i64.store align=4 - i32.const 15372 + i32.const 24636 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -414,139 +594,102 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $3) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $4) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $0 - i32.const 12 + global.get $32 + i32.const 16 i32.add - local.set $1 - local.get $0 - i32.const 7036 + global.set $32 + i32.const 11024 i32.const 5 - i32.const 7042 + i32.const 11030 i32.const 15 - call $_proxy_resolveSharedQueue - i32.const 7058 - i32.const 5 - call $_proxy_enqueueSharedQueue - i32.const 1 - i32.and - call $__ZNSt3__29to_stringEi - local.get $1 local.get $0 - i32.const 7064 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $2 - i64.load align=4 - i64.store align=4 - local.get $1 - local.get $2 - i32.load offset=8 - i32.store offset=8 - local.get $2 - i64.const 0 - i64.store align=4 - local.get $2 - i32.const 0 - i32.store offset=8 - i32.const 3 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $_proxy_log - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + call $_proxy_resolveSharedQueue if $if - local.get $1 - i32.load - call $_free + i32.const 5 + i32.const 11046 + i32.const 54 + call $_proxy_log + drop + call $_abort end ;; $if local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s + i32.load + i32.const 11101 + i32.const 5 + call $_proxy_enqueueSharedQueue if $if_0 local.get $0 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_0 + i32.const 3 + i32.const 11107 + i32.const 27 + call $_proxy_log + drop local.get $0 - i32.load - call $_free - local.get $0 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN18ExampleRootContext7onStartENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $3) (param $0 i32) (param $1 i32) - i32.const 7042 + i32.const 11030 i32.const 15 + local.get $0 + i32.const 160 + i32.add call $_proxy_registerSharedQueue - drop + if $if + i32.const 5 + i32.const 11135 + i32.const 47 + call $_proxy_log + drop + call $_abort + end ;; $if ) (func $__ZN18ExampleRootContext12onQueueReadyEj (type $3) @@ -558,130 +701,119 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $2 - i32.const 48 - i32.add + global.get $32 local.set $3 - local.get $2 - i32.const 36 - i32.add - local.set $5 - local.get $2 - i32.const 24 - i32.add - local.set $7 - local.get $2 - i32.const 12 + global.get $32 + i32.const 48 i32.add - local.set $4 - i32.const 16 - call $__Znwm - local.tee $0 - i32.const 7082 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 7090 - i32.load align=1 - i32.store offset=8 align=1 - local.get $0 - i32.const 0 - i32.store8 offset=12 - i32.const 2 - local.get $0 - i32.const 12 - call $_proxy_log + global.set $32 + local.get $1 local.get $0 - call $_free + i32.load offset=160 + i32.eq + if $if + i32.const 2 + i32.const 11183 + i32.const 12 + call $_proxy_log + drop + end ;; $if local.get $3 + i32.const 24 + i32.add + local.tee $4 i32.const 0 i32.store - local.get $5 + local.get $3 + i32.const 12 + i32.add + local.tee $2 i32.const 0 i32.store local.get $1 - local.get $3 - local.get $5 + local.get $4 + local.get $2 call $_proxy_dequeueSharedQueue - local.set $8 + local.set $0 i32.const 8 call $__Znwm - local.set $6 - local.get $5 + local.set $5 + local.get $2 i32.load local.set $1 - local.get $6 - local.get $3 + local.get $5 + local.get $4 i32.load - local.tee $9 + local.tee $6 i32.store - local.get $6 + local.get $5 local.get $1 i32.store offset=4 - local.get $4 + local.get $0 + if $if_0 + local.get $6 + call $_free + local.get $5 + call $_free + local.get $3 + global.set $32 + return + end ;; $if_0 + local.get $2 i64.const 0 i64.store align=4 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 local.get $1 i32.const -17 i32.gt_u - if $if + if $if_1 call $_abort - end ;; $if + end ;; $if_1 block $block block $block_0 local.get $1 i32.const 11 i32.lt_u - if $if_0 (result i32) - local.get $4 + if $if_2 (result i32) + local.get $2 local.get $1 i32.store8 offset=11 local.get $1 - if $if_1 (result i32) - local.get $4 + if $if_3 (result i32) + local.get $2 local.set $0 br $block_0 else - local.get $4 - end ;; $if_1 + local.get $2 + end ;; $if_3 else - local.get $4 + local.get $2 local.get $1 i32.const 16 i32.add i32.const -16 i32.and - local.tee $10 + local.tee $7 call $__Znwm local.tee $0 i32.store - local.get $4 - local.get $10 + local.get $2 + local.get $7 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $2 local.get $1 i32.store offset=4 br $block_0 - end ;; $if_0 + end ;; $if_2 local.set $0 br $block end ;; $block_0 local.get $0 - local.get $9 + local.get $6 local.get $1 call $_memcpy drop @@ -691,31 +823,15 @@ i32.add i32.const 0 i32.store8 - local.get $7 local.get $4 - i32.const 7095 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $0 - i64.load align=4 - i64.store align=4 - local.get $7 - local.get $0 - i32.load offset=8 - i32.store offset=8 - local.get $0 - i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $5 - local.get $7 - i32.const 7101 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + i32.const 11196 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $5 + local.get $4 local.get $0 i32.load offset=8 i32.store offset=8 @@ -725,31 +841,10 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $2 - local.get $8 - i32.const 1 - i32.and - call $__ZNSt3__29to_stringEi local.get $3 - local.get $5 - local.get $2 - i32.load - local.get $2 - local.get $2 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $1 - select - local.get $2 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $1 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.get $4 + i32.const 11202 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $0 i64.load align=4 i64.store align=4 @@ -782,66 +877,41 @@ local.get $1 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_2 - local.get $3 - i32.load - call $_free - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $2 - i32.load - call $_free - end ;; $if_3 - local.get $5 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s if $if_4 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_4 - local.get $7 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $7 + local.get $4 i32.load call $_free end ;; $if_5 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 - i32.ge_s + i32.lt_s if $if_6 - local.get $6 + local.get $2 i32.load call $_free - local.get $6 - call $_free - local.get $2 - global.set $30 - return end ;; $if_6 - local.get $4 - i32.load - call $_free - local.get $6 + local.get $5 i32.load call $_free - local.get $6 + local.get $5 call $_free - local.get $2 - global.set $30 + local.get $3 + global.set $32 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -849,7 +919,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5648 + i32.const 6688 i32.store local.get $0 i32.load offset=52 @@ -1038,7 +1108,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 5680 + i32.const 6720 i32.store local.get $0 i32.load offset=148 @@ -1047,30 +1117,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -1094,30 +1164,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -1141,46 +1211,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 + call_indirect $28 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -1190,59 +1243,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $28 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -1250,19 +1286,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -1298,19 +1334,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $32 block $block local.get $0 i32.load offset=84 @@ -1318,10 +1347,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -1329,7 +1355,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -1351,55 +1377,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -1407,13 +1433,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -1433,287 +1459,600 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $32 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 40 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=20 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $6 + call_indirect $28 (type $1) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 - i32.load - local.set $0 - local.get $8 - i32.const 0 - i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free - local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 - return - end ;; $block - local.get $6 - global.set $30 - ) - - (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=124 - local.tee $2 - if $if + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block local.get $0 - i32.load offset=120 - local.get $2 - local.get $2 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 i32.const -1 i32.add - local.tee $4 + local.tee $7 i32.and i32.eqz local.tee $6 - if $if_0 (result i32) + if $if_11 (result i32) local.get $1 - local.get $4 + local.get $7 i32.and else - local.get $2 + local.get $5 local.get $1 i32.gt_u - if $if_1 (result i32) + if $if_12 (result i32) local.get $1 else - local.get $2 - if $if_2 (result i32) + local.get $5 + if $if_13 (result i32) local.get $1 - local.get $2 + local.get $5 i32.rem_u else i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $5 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 i32.const 2 i32.shl i32.add i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block - block $block_0 - local.get $6 - if $if_5 - loop $loop - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $6 - local.get $2 - local.get $4 - i32.and - local.get $5 - i32.eq - i32.or - i32.eqz - br_if $block - local.get $6 - if $if_6 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - end ;; $if_6 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block - unreachable - end ;; $loop - unreachable + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 else - loop $loop_0 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.eq - if $if_7 - local.get $1 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_0 - else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) local.get $4 - local.get $2 - i32.ge_u - if $if_8 (result i32) - local.get $2 - if $if_9 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_9 - else - local.get $4 - end ;; $if_8 local.get $5 - i32.ne - br_if $block - end ;; $if_7 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block - unreachable - end ;; $loop_0 - unreachable - end ;; $if_5 - unreachable - end ;; $block_0 - local.get $3 - i32.load offset=12 - local.tee $0 - i32.load - i32.load offset=8 - local.set $1 - local.get $0 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) local.get $1 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - return - end ;; $block - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $0 - i32.load offset=144 - local.tee $2 - i32.eqz - if $if_10 - return - end ;; $if_10 - local.get $0 - i32.load offset=140 - local.get $2 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 + return + end ;; $block + local.get $8 + global.set $32 + ) + + (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=124 + local.tee $2 + if $if + local.get $0 + i32.load offset=120 + local.get $2 + local.get $2 + i32.const -1 + i32.add + local.tee $4 + i32.and + i32.eqz + local.tee $6 + if $if_0 (result i32) + local.get $1 + local.get $4 + i32.and + else + local.get $2 + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + else + local.get $2 + if $if_2 (result i32) + local.get $1 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + end ;; $if_0 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $3 + if $if_3 + local.get $3 + i32.load + local.tee $3 + if $if_4 + block $block + block $block_0 + local.get $6 + if $if_5 + loop $loop + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.eq + local.tee $6 + local.get $2 + local.get $4 + i32.and + local.get $5 + i32.eq + i32.or + i32.eqz + br_if $block + local.get $6 + if $if_6 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + end ;; $if_6 + local.get $3 + i32.load + local.tee $3 + br_if $loop + br $block + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_7 + local.get $1 + local.get $3 + i32.load offset=8 + i32.eq + br_if $block_0 + else + local.get $4 + local.get $2 + i32.ge_u + if $if_8 (result i32) + local.get $2 + if $if_9 (result i32) + local.get $4 + local.get $2 + i32.rem_u + else + i32.const 0 + end ;; $if_9 + else + local.get $4 + end ;; $if_8 + local.get $5 + i32.ne + br_if $block + end ;; $if_7 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block + unreachable + end ;; $loop_0 + unreachable + end ;; $if_5 + unreachable + end ;; $block_0 + local.get $3 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=8 + local.set $1 + local.get $0 + local.get $1 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + return + end ;; $block + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $0 + i32.load offset=144 + local.tee $2 + i32.eqz + if $if_10 + return + end ;; $if_10 + local.get $0 + i32.load offset=140 + local.get $2 local.get $2 i32.const -1 i32.add @@ -1841,11 +2180,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $3) @@ -1992,11 +2331,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $3) @@ -2143,11 +2482,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $2) @@ -2163,68 +2502,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $32 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -2237,24 +2567,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -2275,7 +2605,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -2284,22 +2614,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -2316,197 +2646,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 40 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $8 - local.get $7 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) - local.get $7 + call_indirect $28 (type $2) + local.get $6 i32.load - local.set $0 - local.get $7 + local.set $1 + local.get $6 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $6 - i32.const 4 - i32.add - local.set $7 - local.get $0 - i32.const 120 - i32.add - local.set $8 - local.get $0 - i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - i32.eqz - local.tee $9 - if $if_13 (result i32) - local.get $1 - local.get $4 - i32.and - else - local.get $3 - local.get $1 - i32.gt_u - if $if_14 (result i32) - local.get $1 - else - local.get $3 - if $if_15 (result i32) - local.get $1 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $7 local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $5 - if $if_16 - local.get $5 - i32.load - local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 - local.get $1 - local.get $5 + local.get $3 + i32.const -1 + i32.add + local.tee $6 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free + br $block + end ;; $block_0 + end ;; $if_4 + end ;; $if_3 + end ;; $if + local.get $8 + i32.const 4 + i32.add + local.set $6 + local.get $0 + i32.const 120 + i32.add + local.set $7 + local.get $0 + i32.load offset=124 + local.tee $4 + if $if_37 + local.get $7 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $3 + i32.and + i32.eqz + local.tee $11 + if $if_38 (result i32) + local.get $1 + local.get $3 + i32.and + else + local.get $4 + local.get $1 + i32.gt_u + if $if_39 (result i32) + local.get $1 + else + local.get $4 + if $if_40 (result i32) + local.get $1 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $5 + if $if_41 + local.get $5 + i32.load + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 + local.get $1 + local.get $5 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -2515,82 +3156,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $7 + call_indirect $28 (type $3) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -2604,82 +3245,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -2688,44 +3329,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $6 + call_indirect $28 (type $3) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $30 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $1) @@ -2742,17 +3383,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $8 + global.get $32 i32.const 16 i32.add - local.set $10 + global.set $32 local.get $8 i32.const 8 i32.add @@ -2760,31 +3396,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -2808,42 +3440,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -2852,39 +3484,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -2895,59 +3527,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 40 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -2960,133 +3903,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -3094,12 +4037,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -3107,9 +4050,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $7 i32.load local.set $0 @@ -3117,58 +4060,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -3181,82 +4124,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -3288,14 +4231,14 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 return end ;; $block local.get $8 - global.set $30 + global.set $32 ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFvNS_10unique_ptrI8WasmDataNS_14default_deleteIS4_EEEES7_S7_EEEEENS_22__unordered_map_hasherIjSA_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSA_NS_8equal_toIjEELb1EEENS_9allocatorISA_EEE14__erase_uniqueIjEEmRKT_ (type $3) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -3628,375 +4571,8 @@ return end ;; $if_27 local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=12 - local.set $0 + i32.load offset=12 + local.set $0 local.get $1 i32.const 0 i32.store offset=12 @@ -4006,11 +4582,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $1 call $_free @@ -4026,12 +4602,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $3 @@ -4060,9 +4636,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $5 i32.load local.set $1 @@ -4200,7 +4776,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $30 + global.set $32 return end ;; $block_0 local.get $0 @@ -4217,49 +4793,18 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $30 + global.set $32 return end ;; $block local.get $5 - global.set $30 - ) - - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5752 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $3) - (param $0 i32) - (param $1 i32) - local.get $1 - i32.const 5752 - i32.store + global.set $32 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $1) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -4298,107 +4843,64 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5496 - i32.store - local.get $0 - local.get $1 - i32.store - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7397 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4560 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEv (type $4) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5796 + i32.const 6536 i32.store local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE7__cloneEPNS0_6__baseISE_EE (type $3) - (param $0 i32) - (param $1 i32) local.get $1 - i32.const 5796 i32.store ) - (func $__ZNSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEEclEOjOSD_ (type $1) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11__call_implINS0_12__alloc_funcI3__1NS_9allocatorISF_EESB_EEEES6_PKNS0_16__policy_storageEjOSA_ (type $1) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (local $4 i32) (local $5 i32) - local.get $2 - i32.load - local.set $1 local.get $3 i32.load - local.set $4 + local.set $5 local.get $3 i32.load offset=4 - local.set $3 - i32.const 160 + local.set $4 + i32.const 164 call $__Znwm - local.tee $2 + local.tee $3 i64.const 0 i64.store offset=4 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=12 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=20 - local.get $2 + local.get $3 i64.const 0 i64.store offset=24 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=32 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=40 - local.get $2 + local.get $3 i64.const 0 i64.store offset=44 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=52 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=60 - local.get $2 + local.get $3 i32.const -64 i32.sub - local.get $1 - i32.store local.get $2 - i32.const 5680 i32.store - local.get $2 + local.get $3 + i32.const 6720 + i32.store + local.get $3 i32.const 68 i32.add local.tee $1 @@ -4407,7 +4909,7 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const -17 i32.gt_u if $if @@ -4415,231 +4917,173 @@ end ;; $if block $block block $block_0 - local.get $3 + local.get $4 i32.const 11 i32.lt_u if $if_0 - local.get $2 local.get $3 + local.get $4 i32.store8 offset=79 - local.get $3 + local.get $4 br_if $block_0 else local.get $1 - local.get $3 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and - local.tee $5 + local.tee $2 call $__Znwm local.tee $1 i32.store + local.get $3 local.get $2 - local.get $5 i32.const -2147483648 i32.or i32.store offset=76 - local.get $2 local.get $3 + local.get $4 i32.store offset=72 br $block_0 end ;; $if_0 br $block end ;; $block_0 local.get $1 + local.get $5 local.get $4 - local.get $3 call $_memcpy drop end ;; $block local.get $1 - local.get $3 + local.get $4 i32.add i32.const 0 i32.store8 - local.get $2 + local.get $3 i64.const 0 i64.store offset=80 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=88 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=96 - local.get $2 + local.get $3 i64.const 0 i64.store offset=100 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=108 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=116 - local.get $2 + local.get $3 i64.const 0 i64.store offset=120 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=128 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=136 - local.get $2 + local.get $3 i64.const 0 i64.store offset=140 align=4 - local.get $2 + local.get $3 i64.const 0 i64.store offset=148 align=4 - local.get $2 + local.get $3 i32.const 1065353216 i32.store offset=156 - local.get $2 - i32.const 5576 + local.get $3 + i32.const 6616 i32.store local.get $0 - local.get $2 + local.get $3 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE6targetERKSt9type_info (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7695 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__1NS_9allocatorIS2_EEFNS_10unique_ptrI11RootContextNS_14default_deleteIS6_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE11target_typeEv (type $4) - (param $0 i32) - (result i32) - i32.const 4592 - ) - (func $__GLOBAL__sub_I_queue_cpp_cc (type $8) (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 - i32.const -64 - i32.sub - global.set $30 + global.get $32 + i32.const 48 + i32.add + global.set $32 local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5752 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $0 - i32.const 5796 - i32.store - local.get $0 + i32.const 6784 + i32.store offset=12 local.get $0 - i32.store offset=16 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 + local.get $1 + i32.const 6800 + i32.store offset=12 local.get $0 - i32.const 16145 - i32.store offset=48 + i32.const 25414 + i32.store local.get $0 i32.const 0 - i32.store offset=52 + i32.store offset=4 local.get $0 - i32.const 56 + i32.const 40 i32.add - local.tee $1 + local.tee $3 local.get $0 - i64.load offset=48 align=4 + i64.load align=4 i64.store align=4 local.get $2 - local.get $0 local.get $1 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ - local.get $0 - i32.load offset=16 - local.tee $1 - local.get $0 - i32.eq + local.get $1 + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $1 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $1 - if $if_0 - local.get $1 - i32.load - i32.load offset=20 - local.set $3 - local.get $1 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.load offset=16 + i32.load offset=12 + i32.load offset=4 local.tee $1 - local.get $2 - i32.eq - if $if_1 - local.get $1 - i32.load - i32.load offset=16 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - global.set $30 - return - end ;; $if_1 - local.get $1 i32.eqz - if $if_2 + if $if_0 local.get $0 - global.set $30 + global.set $32 return - end ;; $if_2 - local.get $1 + end ;; $if_0 + local.get $2 i32.load - i32.load offset=20 - local.set $2 local.get $1 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $4) @@ -4654,7 +5098,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $4) @@ -4706,17 +5150,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4600 + i32.const 4552 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 52 + i32.const 113 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -4754,12 +5198,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $2 i32.eqz if $if @@ -4767,7 +5211,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7871 + i32.const 11462 i32.store offset=4 local.get $3 i32.const 370 @@ -4779,7 +5223,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7920 + i32.const 11511 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -4797,7 +5241,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -4806,17 +5250,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4608 + i32.const 4560 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 53 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -4825,73 +5269,73 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $0 - global.set $30 - i32.const 15164 + global.set $32 + i32.const 24428 i32.const 0 i32.store - i32.const 15156 - i32.const 15304 + i32.const 24420 + i32.const 24568 i32.store - i32.const 15160 + i32.const 24424 i32.const 0 i32.store - i32.const 15168 + i32.const 24432 i32.const 0 i32.store - i32.const 15152 - i32.const 5856 + i32.const 24416 + i32.const 6840 i32.store - i32.const 15176 + i32.const 24440 call $__ZN6google8protobuf6StructC2Ev - i32.const 54 - i32.const 15176 + i32.const 115 + i32.const 24440 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15208 - i32.const 5944 + i32.const 24472 + i32.const 6928 i32.store - i32.const 15212 + i32.const 24476 i32.const 0 i32.store - i32.const 15224 + i32.const 24488 i32.const 0 i32.store - i32.const 5832 + i32.const 6816 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 15228 + i32.const 24492 i32.const 0 i32.store - i32.const 54 - i32.const 15208 + i32.const 115 + i32.const 24472 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15264 + i32.const 24528 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 54 - i32.const 15264 + i32.const 115 + i32.const 24528 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 15160 - i32.const 15208 + i32.const 24424 + i32.const 24472 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 i64.const 0 @@ -4909,7 +5353,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -4921,7 +5365,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 i32.const 4 @@ -4935,7 +5379,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -4951,14 +5395,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 i32.load offset=4 @@ -4980,7 +5424,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $2 i32.const 915 @@ -4992,7 +5436,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9239 + i32.const 12832 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -5029,11 +5473,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -5087,14 +5531,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -5126,19 +5570,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10526 + i32.const 14119 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10534 + i32.const 14127 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10542 + i32.const 14135 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10550 + i32.const 14143 i32.load8_s i32.store8 offset=24 local.get $1 @@ -5242,18 +5686,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4640 + i32.const 4768 + i32.const 4592 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 10092 - i32.const 10133 + i32.const 13685 + i32.const 13726 i32.const 92 - i32.const 10182 + i32.const 13775 call $___assert_fail end ;; $if ) @@ -5270,12 +5714,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 40 i32.add @@ -5332,7 +5776,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6496 + i32.const 7496 i32.store local.get $3 local.get $5 @@ -5642,7 +6086,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_8 @@ -5650,7 +6094,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -5667,7 +6111,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $1 i32.const 1 i32.and @@ -5776,7 +6220,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $2 i32.const 1 i32.and @@ -5795,7 +6239,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $0 i32.const 1 i32.and @@ -5834,12 +6278,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -5852,7 +6296,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8119 + i32.const 11712 i32.store offset=4 local.get $3 i32.const 1505 @@ -5864,7 +6308,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8171 + i32.const 11764 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -5886,7 +6330,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -5894,7 +6338,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8119 + i32.const 11712 i32.store offset=4 local.get $2 i32.const 1506 @@ -5906,7 +6350,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8202 + i32.const 11795 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -5922,7 +6366,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -5941,7 +6385,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $1 i32.const 1 i32.and @@ -6092,7 +6536,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $1 i32.const 1 i32.and @@ -6202,18 +6646,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $1 i32.const 1 i32.and @@ -6285,7 +6729,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) select local.set $3 local.get $4 @@ -6308,12 +6752,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -6330,13 +6774,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 6104 + i32.const 7088 i32.store local.get $1 local.get $7 @@ -6359,11 +6803,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $2 i32.const 16 i32.add @@ -6392,7 +6836,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -6434,7 +6878,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -6495,22 +6939,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return end ;; $block @@ -6518,7 +6962,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -6530,12 +6974,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -6564,7 +7008,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $3 i32.const 418 @@ -6576,7 +7020,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8328 + i32.const 11921 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -6599,7 +7043,7 @@ i32.le_u if $if_1 local.get $2 - global.set $30 + global.set $32 return end ;; $if_1 local.get $5 @@ -6633,7 +7077,7 @@ br $block end ;; $block_0 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $1 @@ -6651,7 +7095,7 @@ local.get $3 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $3 @@ -6662,7 +7106,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 427 @@ -6674,7 +7118,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8445 + i32.const 12038 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -6686,7 +7130,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -6698,12 +7142,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load i32.load offset=16 @@ -6713,7 +7157,7 @@ local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -6745,7 +7189,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 451 @@ -6757,7 +7201,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8285 + i32.const 11878 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -6845,7 +7289,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $6) @@ -6860,12 +7304,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -6893,7 +7337,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $3 i32.const 476 @@ -6905,7 +7349,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8476 + i32.const 12069 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -7014,12 +7458,12 @@ i32.ne local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $block_1 local.get $3 - global.set $30 + global.set $32 i32.const 1 ) @@ -7037,12 +7481,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $10 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.load local.get $2 @@ -7228,7 +7672,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block_0 end ;; $if_2 @@ -7348,7 +7792,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block else @@ -7368,7 +7812,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $5) @@ -7552,7 +7996,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6272 + i32.const 7256 i32.store local.get $0 i32.load offset=12 @@ -7562,7 +8006,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15304 + i32.const 24568 i32.eq local.get $1 i32.eqz @@ -7592,18 +8036,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6272 + i32.const 7256 i32.store local.get $0 i32.load offset=12 @@ -7615,7 +8059,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15304 + i32.const 24568 i32.eq local.get $1 i32.eqz @@ -7647,11 +8091,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 call $_free ) @@ -7676,7 +8120,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $0 i32.const 0 @@ -7685,7 +8129,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5856 + i32.const 6840 i32.store local.get $0 ) @@ -7712,7 +8156,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 15304 + i32.const 24568 i32.ne if $if local.get $1 @@ -7787,18 +8231,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4672 + i32.const 4768 + i32.const 4624 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 10092 - i32.const 10133 + i32.const 13685 + i32.const 13726 i32.const 92 - i32.const 10182 + i32.const 13775 call $___assert_fail end ;; $if ) @@ -7812,12 +8256,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $4 local.get $0 @@ -7888,13 +8332,13 @@ local.get $5 i32.load local.tee $2 - i32.const 15304 + i32.const 24568 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 15304 + i32.const 24568 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -8044,7 +8488,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -8055,12 +8499,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -8084,7 +8528,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -8137,7 +8581,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -8170,7 +8614,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -8181,7 +8625,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -8206,7 +8650,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -8259,7 +8703,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.load offset=16 local.tee $0 i32.const 1 @@ -8295,7 +8739,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $2 i32.const 10 @@ -8314,7 +8758,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $4 local.get $2 i32.const 18 @@ -8373,9 +8817,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $4) @@ -8397,19 +8841,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4768 + i32.const 4720 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5944 + i32.const 6928 i32.store local.get $1 local.get $0 @@ -8417,7 +8861,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5832 + i32.const 6816 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -8428,7 +8872,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 i32.const 0 @@ -8436,7 +8880,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5832 + i32.const 6816 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -8461,12 +8905,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -8523,7 +8967,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6496 + i32.const 7496 i32.store local.get $5 local.get $6 @@ -8728,7 +9172,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 15304 + i32.const 24568 i32.store end ;; $if_5 local.get $0 @@ -8750,12 +9194,12 @@ local.get $5 i32.load local.tee $3 - i32.const 15304 + i32.const 24568 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 15304 + i32.const 24568 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -8776,9 +9220,9 @@ i32.load local.tee $2 else - i32.const 15304 + i32.const 24568 local.set $2 - i32.const 15304 + i32.const 24568 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -8795,9 +9239,9 @@ i32.load local.tee $3 else - i32.const 15304 + i32.const 24568 local.set $3 - i32.const 15304 + i32.const 24568 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -8812,7 +9256,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8520 + i32.const 12113 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -9162,7 +9606,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_18 @@ -9170,7 +9614,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -9209,7 +9653,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 15304 + i32.const 24568 i32.eq local.get $1 i32.eqz @@ -9258,11 +9702,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $block local.get $0 i32.const 0 @@ -9289,12 +9733,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4720 + i32.const 4672 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -9320,12 +9764,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 72 i32.add @@ -9386,7 +9830,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6496 + i32.const 7496 i32.store local.get $7 local.get $4 @@ -9552,7 +9996,7 @@ local.get $6 select i32.const 0 - i32.const 8555 + i32.const 12148 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -9573,11 +10017,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -9680,7 +10124,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $30 + global.set $32 local.get $1 return end ;; $if_11 @@ -9688,7 +10132,7 @@ i32.load call $_free local.get $2 - global.set $30 + global.set $32 local.get $1 ) @@ -9712,12 +10156,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4640 + i32.const 4592 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -9733,7 +10177,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 6024 + i32.const 7008 i32.store local.get $0 local.get $1 @@ -9747,7 +10191,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -9766,12 +10210,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -9795,12 +10239,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if @@ -9823,14 +10267,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -9839,7 +10283,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -9858,7 +10302,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -9873,12 +10317,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -9887,7 +10331,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -9946,7 +10390,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_3 @@ -9956,7 +10400,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if_7 @@ -9964,10 +10408,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_2 @@ -9985,46 +10429,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 i32.const 0 - i32.store offset=12 + i32.store + local.get $0 + i32.load8_s offset=19 + i32.const 0 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -10033,7 +10490,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -10044,7 +10501,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $2 i32.const 0 @@ -10053,9 +10510,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5856 + i32.const 6840 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -10063,22 +10520,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -10088,22 +10543,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 15304 + i32.load + local.tee $5 + i32.const 24568 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 15304 + i32.const 24568 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -10118,13 +10573,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -10136,7 +10591,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -10156,8 +10611,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -10166,12 +10622,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -10182,19 +10636,19 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -10205,12 +10659,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $4 @@ -10244,7 +10698,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $30 + global.set $32 local.get $2 i32.const 16 i32.add @@ -10257,7 +10711,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 16 i32.add @@ -10270,12 +10724,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 32 i32.add @@ -10297,7 +10751,7 @@ i32.eqz if $if local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -10348,7 +10802,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $6) @@ -10362,9 +10816,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -10374,7 +10828,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $2 i32.const 0 @@ -10383,7 +10837,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5856 + i32.const 6840 i32.store end ;; $if local.get $0 @@ -10394,17 +10848,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -10440,7 +10892,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -10450,28 +10902,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 15304 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 15304 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24568 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24568 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -10480,6 +10934,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -10489,20 +10955,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -10510,34 +10973,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -10552,8 +11015,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -10562,28 +11026,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -10602,12 +11064,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4672 + i32.const 4624 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -10626,7 +11088,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $0 i32.const 0 @@ -10635,7 +11097,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5856 + i32.const 6840 i32.store local.get $0 ) @@ -10651,12 +11113,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 local.get $1 @@ -10950,17 +11412,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $3) @@ -10972,12 +11434,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -10986,7 +11448,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $4 i32.const 796 @@ -10998,7 +11460,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8594 + i32.const 12187 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11127,7 +11589,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 15304 + i32.const 24568 i32.store end ;; $if_4 local.get $2 @@ -11147,7 +11609,7 @@ local.get $0 i32.load local.tee $2 - i32.const 15304 + i32.const 24568 i32.eq if $if_6 local.get $0 @@ -11160,7 +11622,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $30 + global.set $32 return end ;; $block_3 local.get $1 @@ -11223,7 +11685,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 15176 + i32.const 24440 end ;; $if_8 br $block_7 end ;; $block_8 @@ -11277,7 +11739,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 15264 + i32.const 24528 end ;; $if_10 br $block_9 end ;; $block_10 @@ -11291,11 +11753,11 @@ br $block end ;; $block_0 local.get $4 - global.set $30 + global.set $32 return end ;; $block local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $3) @@ -11306,12 +11768,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -11320,7 +11782,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $3 i32.const 341 @@ -11332,7 +11794,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8594 + i32.const 12187 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -11422,7 +11884,7 @@ i32.eqz if $if_2 local.get $3 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 @@ -11491,7 +11953,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $3) @@ -11501,12 +11963,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -11515,7 +11977,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $2 i32.const 1040 @@ -11527,7 +11989,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8594 + i32.const 12187 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11548,7 +12010,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -11598,7 +12060,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $3) @@ -11610,12 +12072,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -11624,7 +12086,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8119 + i32.const 11712 i32.store offset=4 local.get $2 i32.const 1586 @@ -11636,7 +12098,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8628 + i32.const 12221 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11648,7 +12110,7 @@ i32.eqz if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -11756,14 +12218,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $3) @@ -11782,7 +12244,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5944 + i32.const 6928 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -11845,12 +12307,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -11864,7 +12326,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 601 @@ -11876,7 +12338,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9125 + i32.const 12718 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11938,7 +12400,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 607 @@ -11950,7 +12412,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9159 + i32.const 12752 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11993,7 +12455,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $3 i32.const 612 @@ -12005,7 +12467,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9203 + i32.const 12796 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12097,7 +12559,7 @@ i32.ne if $if_5 local.get $3 - global.set $30 + global.set $32 return end ;; $if_5 local.get $1 @@ -12107,7 +12569,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $30 + global.set $32 return end ;; $if_6 local.get $0 @@ -12135,7 +12597,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $5) @@ -13048,12 +13510,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -13074,7 +13536,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $1 i32.const 495 @@ -13086,7 +13548,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9239 + i32.const 12832 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -13097,13 +13559,13 @@ i32.eqz if $if_1 local.get $1 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $2) @@ -13116,12 +13578,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 16 i32.add @@ -13152,7 +13614,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 return end ;; $if block $block @@ -13274,12 +13736,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -13319,7 +13781,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $6) @@ -13339,7 +13801,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5944 + i32.const 6928 i32.store offset=16 local.get $0 i32.const 0 @@ -13347,7 +13809,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5832 + i32.const 6816 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -13364,12 +13826,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -13395,7 +13857,7 @@ i32.load local.set $0 local.get $2 - i32.const 5944 + i32.const 6928 i32.store offset=16 local.get $2 local.get $0 @@ -13403,7 +13865,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5832 + i32.const 6816 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -13429,12 +13891,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 7 i32.le_u @@ -13443,7 +13905,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 765 @@ -13455,7 +13917,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9709 + i32.const 13302 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -13595,13 +14057,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $30 + global.set $32 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $1) @@ -13614,12 +14076,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 48 i32.add @@ -13644,7 +14106,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $4 i32.const 672 @@ -13656,7 +14118,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9283 + i32.const 12876 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -13682,7 +14144,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $4 i32.const 678 @@ -13694,7 +14156,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9384 + i32.const 12977 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -13728,7 +14190,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $30 + global.set $32 return end ;; $if_3 i32.const 0 @@ -13768,7 +14230,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 return end ;; $if_5 else @@ -13776,7 +14238,7 @@ i32.const 3 i32.store local.get $6 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $6 i32.const 878 @@ -13788,7 +14250,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 9440 + i32.const 13033 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -13820,7 +14282,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $5 i32.const 685 @@ -13832,7 +14294,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9480 + i32.const 13073 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -13868,7 +14330,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $3) @@ -13884,12 +14346,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 72 i32.add @@ -13949,7 +14411,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 837 @@ -13961,7 +14423,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9602 + i32.const 13195 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -13977,12 +14439,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -14225,7 +14687,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 return end ;; $if_11 local.get $11 @@ -14233,7 +14695,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 848 @@ -14245,7 +14707,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9667 + i32.const 13260 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -14267,7 +14729,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $1) @@ -14278,12 +14740,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=16 local.tee $6 @@ -14307,7 +14769,7 @@ i32.const 3 i32.store local.get $4 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $4 i32.const 713 @@ -14319,7 +14781,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9555 + i32.const 13148 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -14365,7 +14827,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $1) @@ -14375,12 +14837,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $4 local.get $2 @@ -14396,7 +14858,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $1 @@ -14409,12 +14871,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -14474,7 +14936,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $5) @@ -15064,12 +15526,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 local.get $1 i32.load @@ -15095,7 +15557,7 @@ i32.load if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -15108,12 +15570,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5464 + i32.const 6504 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -15165,10 +15627,10 @@ i32.add i32.store offset=12 local.get $4 - global.set $30 + global.set $32 ) - (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $16) + (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -15586,12 +16048,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -15604,7 +16066,7 @@ i32.const 3 i32.store local.get $2 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $2 i32.const 926 @@ -15616,7 +16078,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9762 + i32.const 13355 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -15632,7 +16094,7 @@ i32.const 3 i32.store local.get $3 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $3 i32.const 927 @@ -15644,7 +16106,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9797 + i32.const 13390 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -15667,7 +16129,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -15683,13 +16145,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5464 + i32.const 6504 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -15701,7 +16163,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -15715,12 +16177,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 2 i32.shl @@ -15848,13 +16310,13 @@ local.get $0 if $if_4 local.get $4 - global.set $30 + global.set $32 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $3) @@ -15862,7 +16324,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 local.get $1 @@ -15887,7 +16349,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5832 + i32.const 6816 i32.load i32.eqz if $if @@ -15943,17 +16405,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4736 + i32.const 4688 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 55 + i32.const 116 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -16023,12 +16485,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 28 i32.add @@ -16050,7 +16512,7 @@ i32.eqz if $if local.get $1 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -16107,7 +16569,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -16122,12 +16584,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 i32.eqz @@ -16139,7 +16601,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -16225,7 +16687,7 @@ i32.const 3 i32.store local.get $5 - i32.const 8244 + i32.const 11837 i32.store offset=4 local.get $5 i32.const 527 @@ -16237,7 +16699,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9834 + i32.const 13427 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -16444,7 +16906,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -16472,14 +16934,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 6192 + i32.const 7176 i32.store local.get $0 i32.load offset=4 @@ -16501,7 +16963,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8059 + i32.const 11650 i32.store offset=4 local.get $1 i32.const 150 @@ -16513,7 +16975,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 9239 + i32.const 12832 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -16556,14 +17018,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -16595,19 +17057,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 10192 + i32.const 13785 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10200 + i32.const 13793 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10208 + i32.const 13801 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10212 + i32.const 13805 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -16677,18 +17139,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 - i32.const 4720 + i32.const 4768 + i32.const 4672 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 10092 - i32.const 10133 + i32.const 13685 + i32.const 13726 i32.const 92 - i32.const 10182 + i32.const 13775 call $___assert_fail end ;; $if ) @@ -16705,12 +17167,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 12 i32.add @@ -16775,12 +17237,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -16797,13 +17259,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 6104 + i32.const 7088 i32.store local.get $2 local.get $7 @@ -16822,11 +17284,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -16840,7 +17302,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) select local.set $3 local.get $5 @@ -16867,7 +17329,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8555 + i32.const 12148 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -16884,11 +17346,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) br $block end ;; $if_0 i32.const -1 @@ -16984,12 +17446,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4656 + i32.const 4608 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -17006,13 +17468,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 15304 + i32.const 24568 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 6104 + i32.const 7088 i32.store local.get $2 local.get $4 @@ -17031,11 +17493,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -17049,7 +17511,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) select local.set $3 local.get $10 @@ -17075,7 +17537,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8555 + i32.const 12148 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -17092,11 +17554,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -17108,7 +17570,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $2 i32.const 1 i32.and @@ -17127,7 +17589,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $0 i32.const 1 i32.and @@ -17152,7 +17614,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $2) @@ -18916,7 +19378,7 @@ i32.const 2 ) - (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $15) + (func $__ZNSt3__27__sort4IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_T_ (type $16) (param $0 i32) (param $1 i32) (param $2 i32) @@ -19185,7 +19647,7 @@ i32.add ) - (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $16) + (func $__ZNSt3__27__sort5IRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEjT0_SJ_SJ_SJ_SJ_T_ (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -20168,13 +20630,13 @@ i32.add local.tee $2 i32.load - i32.const 15304 + i32.const 24568 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 15304 + i32.const 24568 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -20185,12 +20647,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 15304 + i32.const 24568 i32.eq if $if_2 local.get $2 @@ -20238,7 +20700,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $1 local.get $0 i32.load offset=8 @@ -20258,7 +20720,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 15160 + i32.const 24424 i32.load local.get $0 select @@ -20272,12 +20734,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -20288,7 +20750,7 @@ i32.const 3 i32.store local.get $1 - i32.const 8119 + i32.const 11712 i32.store offset=4 local.get $1 i32.const 1567 @@ -20300,20 +20762,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10499 + i32.const 14092 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -20379,7 +20841,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -20387,7 +20849,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -20439,7 +20901,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5944 + i32.const 6928 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -20504,19 +20966,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10581 + i32.const 14174 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10589 + i32.const 14182 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10597 + i32.const 14190 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10601 + i32.const 14194 i32.load8_s i32.store8 offset=20 local.get $1 @@ -20584,18 +21046,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4816 i32.const 4768 + i32.const 4720 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 10092 - i32.const 10133 + i32.const 13685 + i32.const 13726 i32.const 92 - i32.const 10182 + i32.const 13775 call $___assert_fail end ;; $if ) @@ -20658,7 +21120,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8520 + i32.const 12113 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -20669,7 +21131,7 @@ local.get $0 i32.load offset=8 else - i32.const 15304 + i32.const 24568 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -20719,7 +21181,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $2 i32.const 1 i32.and @@ -20738,7 +21200,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 15304 + i32.const 24568 local.get $0 i32.const 1 i32.and @@ -20778,12 +21240,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -20804,11 +21266,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $3 i32.load local.set $0 @@ -20819,7 +21281,7 @@ i32.eqz if $if local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -20828,7 +21290,7 @@ local.get $0 call $_free local.get $3 - global.set $30 + global.set $32 ) (func $_proxy_onCreate (type $3) @@ -20843,221 +21305,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24604 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24600 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $2 - call $_free - local.get $3 - i32.load - local.set $8 local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24616 + f32.load + local.tee $14 local.get $3 + f32.convert_i32_u + f32.mul + i32.const 24612 + i32.load + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 + local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24604 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24600 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24608 + i32.load + i32.store + i32.const 24608 + local.get $4 + i32.store + local.get $11 + i32.const 24608 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24600 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24612 + i32.const 24612 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 local.get $1 i32.store - local.get $3 + local.get $5 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi i32.load local.tee $1 i32.load i32.load offset=8 - local.set $2 + local.set $3 local.get $1 - local.get $2 + local.get $3 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $1 i32.const 68 i32.add - local.tee $2 + local.tee $3 i32.load8_s offset=11 - local.tee $6 + local.tee $4 i32.const 0 i32.lt_s - if $if_1 - local.get $2 + if $if_17 + local.get $3 i32.load - local.set $6 + local.set $4 local.get $1 i32.load offset=72 - local.set $2 - local.get $4 + local.set $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 15380 + i32.const 24644 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -21065,103 +21789,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6832 - i32.store - local.get $1 - i32.const 5296 - i32.const 40 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 - i32.const 7 + local.get $1 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $5 + call_indirect $28 (type $1) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 + call_indirect $28 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_10 + call_indirect $28 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -21199,71 +21908,71 @@ local.get $0 i32.store local.get $1 - i32.const 6360 + i32.const 7344 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 - local.get $0 + block $block_7 (result i32) local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -21273,20 +21982,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 ) (func $_proxy_onDelete (type $0) @@ -21294,12 +22003,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__Z10getContextj local.tee $2 @@ -21308,18 +22017,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $30 + global.set $32 ) (func $_proxy_onDone (type $0) @@ -21333,11 +22042,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -21349,12 +22058,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -21377,11 +22086,11 @@ local.get $2 local.get $5 local.get $7 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $5 i32.load local.set $0 @@ -21392,7 +22101,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -21401,7 +22110,7 @@ local.get $0 call $_free local.get $5 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcCreateInitialMetadata (type $3) @@ -21417,11 +22126,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onGrpcReceive (type $1) @@ -21432,12 +22141,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -21461,9 +22170,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $4 i32.load local.set $0 @@ -21474,7 +22183,7 @@ i32.eqz if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -21483,7 +22192,7 @@ local.get $0 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $3) @@ -21499,11 +22208,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $3) @@ -21519,11 +22228,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onHttpCallResponse (type $17) @@ -21540,12 +22249,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $8 i32.const 8 i32.add @@ -21601,9 +22310,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $8 i32.load local.set $0 @@ -21642,7 +22351,7 @@ i32.eqz if $if_1 local.get $8 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 @@ -21651,7 +22360,7 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 ) (func $_proxy_onLog (type $0) @@ -21667,11 +22376,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onQueueReady (type $3) @@ -21687,11 +22396,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $_proxy_onRequestBody (type $5) @@ -21714,9 +22423,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onRequestHeaders (type $4) @@ -21733,7 +22442,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onRequestMetadata (type $4) @@ -21750,7 +22459,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onRequestTrailers (type $4) @@ -21767,7 +22476,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onResponseBody (type $5) @@ -21790,9 +22499,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $_proxy_onResponseHeaders (type $4) @@ -21809,7 +22518,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onResponseMetadata (type $4) @@ -21826,7 +22535,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onResponseTrailers (type $4) @@ -21843,7 +22552,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onStart (type $7) @@ -21862,29 +22571,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -21894,27 +22598,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 15340 + i32.const 24604 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 15336 + i32.const 24600 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -21933,7 +22637,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -21947,7 +22651,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -21955,16 +22659,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -21985,7 +22689,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -21994,22 +22698,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -22034,11 +22738,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $0 br $block end ;; $block_0 - i32.const 15376 + i32.const 24640 i32.load i32.eqz if $if_7 @@ -22077,7 +22781,7 @@ local.get $0 i32.store local.get $5 - i32.const 5680 + i32.const 6720 i32.store local.get $5 i32.const 68 @@ -22112,12 +22816,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -22129,7 +22833,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -22175,10 +22879,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -22192,20 +22896,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -22220,19 +22924,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -22242,12 +22946,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -22256,7 +22960,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -22266,53 +22970,36 @@ i32.add i32.const 0 i32.store8 - i32.const 15376 + i32.const 24640 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6832 - i32.store - local.get $2 - i32.const 5296 - i32.const 40 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 - i32.const 7 + i32.load offset=28 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) - local.get $11 + call_indirect $28 (type $1) + local.get $10 i32.load local.tee $1 i32.load @@ -22322,22 +23009,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -22347,40 +23034,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_17 + call_indirect $28 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -22419,7 +23106,7 @@ local.get $0 i32.store local.get $2 - i32.const 5680 + i32.const 6720 i32.store local.get $2 i32.const 68 @@ -22433,15 +23120,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -22454,12 +23141,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -22467,11 +23154,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -22517,10 +23204,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -22529,29 +23216,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_20 + call_indirect $28 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -22565,35 +23252,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) - local.get $12 + call_indirect $28 (type $3) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -22604,8 +23291,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 ) (func $_proxy_onTick (type $0) @@ -22619,11 +23306,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZL14getRootContextj (type $4) @@ -22634,7 +23321,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15340 + i32.const 24604 i32.load local.tee $1 i32.eqz @@ -22642,7 +23329,7 @@ i32.const 0 return end ;; $if - i32.const 15336 + i32.const 24600 i32.load local.get $1 local.get $1 @@ -22777,7 +23464,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz if $if_11 i32.const 0 @@ -22793,7 +23480,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $4) @@ -22810,7 +23497,7 @@ local.get $0 i32.load local.set $4 - i32.const 15340 + i32.const 24604 i32.load local.tee $2 i32.eqz @@ -22819,7 +23506,7 @@ i32.const 0 local.set $0 else - i32.const 15336 + i32.const 24600 i32.load local.get $2 local.get $2 @@ -22958,13 +23645,13 @@ i32.const 0 i32.store local.get $6 - i32.const 15352 + i32.const 24616 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 15348 + i32.const 24612 i32.load i32.const 1 i32.add @@ -23024,7 +23711,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 15340 + i32.const 24604 i32.load local.tee $1 i32.const -1 @@ -23061,7 +23748,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 15336 + i32.const 24600 i32.load local.get $0 i32.const 2 @@ -23078,14 +23765,14 @@ br $block_4 else local.get $3 - i32.const 15344 + i32.const 24608 i32.load i32.store - i32.const 15344 + i32.const 24608 local.get $3 i32.store local.get $2 - i32.const 15344 + i32.const 24608 i32.store local.get $3 i32.load @@ -23094,7 +23781,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 15336 + i32.const 24600 i32.load local.get $1 local.get $1 @@ -23136,8 +23823,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 15348 - i32.const 15348 + i32.const 24612 + i32.const 24612 i32.load i32.const 1 i32.add @@ -23713,7 +24400,7 @@ i32.xor local.set $6 block $block_3 - i32.const 15360 + i32.const 24624 i32.load local.tee $2 i32.eqz @@ -23722,7 +24409,7 @@ i32.const 0 local.set $5 else - i32.const 15356 + i32.const 24620 i32.load local.get $2 local.get $2 @@ -24070,13 +24757,13 @@ i32.const 0 i32.store local.get $12 - i32.const 15372 + i32.const 24636 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 15368 + i32.const 24632 i32.load i32.const 1 i32.add @@ -24136,7 +24823,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 15360 + i32.const 24624 i32.load local.tee $0 i32.const -1 @@ -24173,7 +24860,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 15356 + i32.const 24620 i32.load local.get $5 i32.const 2 @@ -24192,14 +24879,14 @@ br $block_13 else local.get $4 - i32.const 15364 + i32.const 24628 i32.load i32.store - i32.const 15364 + i32.const 24628 local.get $4 i32.store local.get $2 - i32.const 15364 + i32.const 24628 i32.store local.get $4 i32.load @@ -24208,7 +24895,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 15356 + i32.const 24620 i32.load local.get $0 local.get $0 @@ -24250,8 +24937,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 15368 - i32.const 15368 + i32.const 24632 + i32.const 24632 i32.load i32.const 1 i32.add @@ -24291,7 +24978,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15360 + i32.const 24624 i32.load local.tee $0 i32.gt_u @@ -24317,10 +25004,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15368 + i32.const 24632 i32.load f32.convert_i32_u - i32.const 15372 + i32.const 24636 f32.load f32.div f32.ceil @@ -24402,10 +25089,10 @@ local.get $0 i32.eqz if $if - i32.const 15356 + i32.const 24620 i32.load local.set $0 - i32.const 15356 + i32.const 24620 i32.const 0 i32.store local.get $0 @@ -24413,7 +25100,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15360 + i32.const 24624 i32.const 0 i32.store return @@ -24427,11 +25114,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6956 + i32.const 10944 i32.store local.get $1 - i32.const 5392 - i32.const 47 + i32.const 6424 + i32.const 108 call $___cxa_throw end ;; $if_1 local.get $0 @@ -24439,10 +25126,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15356 + i32.const 24620 i32.load local.set $1 - i32.const 15356 + i32.const 24620 local.get $2 i32.store local.get $1 @@ -24450,13 +25137,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15360 + i32.const 24624 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15356 + i32.const 24620 i32.load local.get $1 i32.const 2 @@ -24472,7 +25159,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15364 + i32.const 24628 i32.load local.tee $6 i32.eqz @@ -24482,7 +25169,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 15356 + i32.const 24620 i32.load local.get $0 local.get $0 @@ -24517,7 +25204,7 @@ i32.const 2 i32.shl i32.add - i32.const 15364 + i32.const 24628 i32.store local.get $6 i32.load @@ -24559,7 +25246,7 @@ local.get $4 else block $block (result i32) - i32.const 15356 + i32.const 24620 i32.load local.get $8 i32.const 2 @@ -24787,7 +25474,7 @@ i32.load i32.store local.get $1 - i32.const 15356 + i32.const 24620 i32.load local.get $8 i32.const 2 @@ -24796,7 +25483,7 @@ i32.load i32.load i32.store - i32.const 15356 + i32.const 24620 i32.load local.get $8 i32.const 2 @@ -24844,7 +25531,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 15340 + i32.const 24604 i32.load local.tee $0 i32.gt_u @@ -24870,10 +25557,10 @@ i32.gt_u i32.and local.set $3 - i32.const 15348 + i32.const 24612 i32.load f32.convert_i32_u - i32.const 15352 + i32.const 24616 f32.load f32.div f32.ceil @@ -24949,10 +25636,10 @@ local.get $0 i32.eqz if $if - i32.const 15336 + i32.const 24600 i32.load local.set $0 - i32.const 15336 + i32.const 24600 i32.const 0 i32.store local.get $0 @@ -24960,7 +25647,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 15340 + i32.const 24604 i32.const 0 i32.store return @@ -24974,11 +25661,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6956 + i32.const 10944 i32.store local.get $1 - i32.const 5392 - i32.const 47 + i32.const 6424 + i32.const 108 call $___cxa_throw end ;; $if_1 local.get $0 @@ -24986,10 +25673,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 15336 + i32.const 24600 i32.load local.set $1 - i32.const 15336 + i32.const 24600 local.get $2 i32.store local.get $1 @@ -24997,13 +25684,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 15340 + i32.const 24604 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 15336 + i32.const 24600 i32.load local.get $1 i32.const 2 @@ -25019,7 +25706,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 15344 + i32.const 24608 i32.load local.tee $4 i32.eqz @@ -25029,7 +25716,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 15336 + i32.const 24600 i32.load local.get $0 local.get $0 @@ -25064,7 +25751,7 @@ i32.const 2 i32.shl i32.add - i32.const 15344 + i32.const 24608 i32.store local.get $4 i32.load @@ -25091,7 +25778,7 @@ local.get $0 else block $block (result i32) - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25150,7 +25837,7 @@ i32.load i32.store local.get $1 - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25159,7 +25846,7 @@ i32.load i32.load i32.store - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25206,7 +25893,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25265,7 +25952,7 @@ i32.load i32.store local.get $2 - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25274,7 +25961,7 @@ i32.load i32.load i32.store - i32.const 15336 + i32.const 24600 i32.load local.get $3 i32.const 2 @@ -25301,7 +25988,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 15340 + i32.const 24604 i32.load local.tee $1 i32.eqz @@ -25309,7 +25996,7 @@ i32.const 0 return end ;; $if - i32.const 15336 + i32.const 24600 i32.load local.get $1 local.get $1 @@ -25444,7 +26131,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) i32.eqz if $if_11 i32.const 0 @@ -25460,7 +26147,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -25476,14 +26163,14 @@ local.get $0 i32.load local.set $3 - i32.const 15340 + i32.const 24604 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 15336 + i32.const 24600 i32.load local.tee $4 local.get $2 @@ -25651,7 +26338,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 15344 + i32.const 24608 i32.eq br_if $block_2 local.get $3 @@ -25761,7 +26448,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 15336 + i32.const 24600 i32.load local.get $2 i32.const 2 @@ -25781,8 +26468,8 @@ local.get $8 i32.const 0 i32.store - i32.const 15348 - i32.const 15348 + i32.const 24612 + i32.const 24612 i32.load i32.const -1 i32.add @@ -25804,349 +26491,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 15340 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 15336 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 15352 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 15348 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 15340 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 15336 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 15344 - i32.load - i32.store - i32.const 15344 - local.get $1 - i32.store - i32.const 15336 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 15344 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 15336 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 15348 - i32.const 15348 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $2) (param $0 i32) (param $1 i32) @@ -26158,15 +26512,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 + global.get $32 + local.set $8 + global.get $32 + i32.const 16 i32.add - global.set $30 - i32.const 15376 + global.set $32 + i32.const 24640 i32.load i32.eqz if $if @@ -26181,7 +26533,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15376 + i32.const 24640 local.get $3 i32.store i32.const 20 @@ -26195,27 +26547,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 15380 + i32.const 24644 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 15380 + i32.const 24644 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -26223,25 +26567,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -26251,7 +26597,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -26266,7 +26612,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -26274,127 +26620,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $4) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $28 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 return - end ;; $if_9 - i32.const 15376 + end ;; $if_7 + i32.const 24640 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -26402,31 +26714,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -26434,12 +26748,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -26447,12 +26761,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -26464,97 +26778,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 + local.get $1 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 local.set $5 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $4) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $28 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $30 + end ;; $if_13 + local.get $8 + global.set $32 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) @@ -27040,7 +27328,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -27057,8 +27345,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -27256,345 +27547,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $3) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $3) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -27607,794 +27572,838 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6956 - i32.store - local.get $2 - i32.const 5392 - i32.const 47 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 - local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop + local.get $5 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $11 - select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 local.get $2 - i32.load8_s offset=19 - local.tee $4 i32.const 255 i32.and - local.get $4 - i32.const 0 - i32.lt_s + local.tee $11 + local.get $9 select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 + local.get $3 i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else - local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 8 + i32.store offset=28 + local.get $5 + i32.const 7416 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6440 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6440 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free + end ;; $block_3 + local.get $3 + i32.const 20 + i32.add ) - (func $__ZNK6google8protobuf14FatalException4whatEv (type $4) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $1) (param $0 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add + (param $1 i32) + (param $2 i32) + (param $3 i32) + i32.const 4 + call $___cxa_allocate_exception local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if + i32.const 7832 + i32.store + local.get $0 + i32.const 5248 + i32.const 32 + call $___cxa_throw ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 15384 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 15388 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6440 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4784 - i32.const 35 - call $___cxa_throw - else local.get $1 - global.set $30 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm + return end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 15388 + local.get $1 + local.get $3 + i32.ge_u + if $if_2 + return + end ;; $if_2 + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.eqz + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 local.get $0 - i32.store - i32.const 57 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) + i32.load offset=12 + f32.convert_i32_u local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $30 - return - end ;; $if - i32.const 6572 - i32.load - local.set $5 - local.get $3 - i32.load - local.get $3 - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 - i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 local.get $5 - call $_fflush - drop - local.get $4 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 15388 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 15388 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 15296 - i32.load8_s - i32.eqz - if $if - i32.const 15296 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 15296 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 15392 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 15392 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $30 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $3) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $3) (param $0 i32) (param $1 i32) (local $2 i32) @@ -28405,341 +28414,1146 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10944 + i32.store + local.get $2 + i32.const 6424 + i32.const 108 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6956 - i32.store - local.get $3 - i32.const 5392 - i32.const 47 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const -1 i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 13453 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $6) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 11502 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 15396 - i64.const 0 - i64.store align=4 - i32.const 15404 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) + (param $0 i32) local.get $0 - i32.const 16145 + i32.const 7440 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) + local.get $0 + i32.const 7440 + i32.store + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + local.get $0 + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $4) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if + ) + + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 i32.const 8 i32.add - local.tee $1 + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $2 local.get $0 - i64.load align=4 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24648 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24652 + i32.load + drop + local.get $0 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load offset=8 + local.get $0 + i32.const 12 + i32.add + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7440 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $4 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4736 + i32.const 27 + call $___cxa_throw + else + local.get $1 + global.set $32 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 i64.store align=4 - i32.const 15412 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 16145 - i32.store + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 local.get $0 i32.const 0 - i32.store offset=4 - local.get $1 + i32.store offset=24 + i32.const 24652 local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 15428 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.store + i32.const 118 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) + local.get $0 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - global.set $30 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $2) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $1) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $4 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 - local.get $1 - i32.store + global.set $32 local.get $0 - i32.const 4 - i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 i32.const 0 - i32.store offset=8 - local.get $1 - i32.eqz + i32.lt_s if $if - local.get $5 - global.set $30 + local.get $4 + global.set $32 return end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 - local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 + i32.const 7576 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 + local.get $4 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24652 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24652 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + ) + + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24560 + i32.load8_s + i32.eqz + if $if + i32.const 24560 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24656 + local.get $2 + i32.store + i32.const 24560 + i32.const 0 + i32.store + i32.const 24560 + i32.const 24560 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24656 + i32.load + local.set $2 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 + local.get $0 + local.get $3 + i64.load + i64.store align=4 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 8 + i32.add + i32.store offset=4 + else + local.get $2 + local.get $3 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + local.get $0 + i32.load offset=8 + local.get $4 + i32.sub + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 + i32.lt_u + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 + local.get $2 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10944 + i32.store + local.get $3 + i32.const 6424 + i32.const 108 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 15095 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $2 + i32.const 128 + i32.const 15098 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + drop + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24660 + i64.const 0 + i64.store align=4 + i32.const 24668 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 25414 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24676 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25414 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24692 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $32 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $32 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 + if $if_0 + local.get $2 + i32.load offset=4 local.set $4 local.get $1 i64.const 0 @@ -28859,7 +29673,7 @@ i32.load offset=8 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $5) @@ -28870,12 +29684,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 if $if (result i32) local.get $0 @@ -28903,7 +29717,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11505 + i32.const 15101 i32.store offset=4 local.get $3 i32.const 116 @@ -28915,7 +29729,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11530 + i32.const 15126 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -28935,7 +29749,7 @@ i32.load offset=40 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $2 local.get $1 i32.store @@ -28952,7 +29766,7 @@ i32.add i32.store offset=8 local.get $3 - global.set $30 + global.set $32 local.get $2 ) @@ -29143,13 +29957,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -29160,7 +29974,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -29197,13 +30011,13 @@ (param $1 i32) (result i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -29214,7 +30028,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -29262,7 +30076,7 @@ loop $loop local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.ne if $if local.get $3 @@ -29287,7 +30101,7 @@ i32.load offset=40 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $1 i32.const 0 i32.store @@ -29313,7 +30127,7 @@ local.get $0 i32.store local.get $1 - i32.const 4800 + i32.const 4752 i32.store offset=20 local.get $1 local.get $1 @@ -29382,10 +30196,10 @@ end ;; $loop_0 end ;; $if_1 end ;; $block - i32.const 4808 + i32.const 4760 local.get $3 i32.store - i32.const 4800 + i32.const 4752 local.get $0 i64.load offset=16 i64.store @@ -29401,13 +30215,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $0 else @@ -29418,7 +30232,7 @@ if $if_0 local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq if $if_1 local.get $3 @@ -29486,13 +30300,13 @@ (param $2 i32) (result i32) (local $3 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if (result i32) - i32.const 4808 + i32.const 4760 i32.load else block $block (result i32) @@ -29503,7 +30317,7 @@ local.get $3 local.get $3 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block drop @@ -29563,13 +30377,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -29580,7 +30394,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -29599,14 +30413,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 53 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 53 + i32.const 114 i32.store offset=4 local.get $2 local.get $0 @@ -29620,13 +30434,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4800 + i32.const 4752 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4808 + i32.const 4760 i32.load local.set $2 else @@ -29637,7 +30451,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4800 + i32.const 4752 i32.eq br_if $block end ;; $if_0 @@ -29655,14 +30469,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 53 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 53 + i32.const 114 i32.store offset=4 local.get $2 local.get $0 @@ -29681,14 +30495,14 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) - (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $16) + (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -29710,12 +30524,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $6 local.get $4 i32.store @@ -29733,7 +30547,7 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -34295,9 +35109,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_190 local.tee $4 i32.store @@ -34441,9 +35255,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_196 local.tee $4 i32.store @@ -34606,9 +35420,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_202 local.tee $4 i32.store @@ -34776,9 +35590,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_208 local.tee $4 i32.store @@ -34979,7 +35793,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -35038,9 +35852,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_214 br $block @@ -35180,7 +35994,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -35239,9 +36053,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_222 br $block @@ -35400,7 +36214,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -35458,9 +36272,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) end ;; $if_230 i32.store local.get $9 @@ -35623,7 +36437,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $3 local.get $6 i32.load @@ -35682,9 +36496,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.store end ;; $if_238 br $block @@ -39711,7 +40525,7 @@ i32.load local.set $4 local.get $11 - i32.const 6460 + i32.const 7460 i32.store local.get $11 local.get $4 @@ -39758,9 +40572,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -39779,7 +40593,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11617 + i32.const 15213 i32.store offset=4 local.get $11 i32.const 571 @@ -39791,7 +40605,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11659 + i32.const 15255 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -39811,24 +40625,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11617 + i32.const 15213 i32.store offset=4 local.get $1 i32.const 534 @@ -39840,12 +40654,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11659 + i32.const 15255 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11689 + i32.const 15285 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -39854,50 +40668,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 15328 + global.set $32 + i32.const 24592 i32.load8_s i32.eqz if $if - i32.const 15328 + i32.const 24592 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 15328 + i32.const 24592 + i32.const 0 + i32.store + i32.const 24592 + i32.const 24592 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15472 + i32.const 24736 i32.load - i32.const 6580 + i32.const 7580 call $_pthread_equal if $if_1 - i32.const 5832 + i32.const 6816 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11617 + i32.const 15213 i32.store offset=4 local.get $0 i32.const 801 @@ -39909,53 +40731,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11701 + i32.const 15297 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 15320 + i32.const 24584 i32.load8_s i32.eqz if $if_3 - i32.const 15320 + i32.const 24584 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 15320 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 15304 + i32.xor + if $if_4 + i32.const 24568 i64.const 0 i64.store - i32.const 15312 + i32.const 24576 i32.const 0 i32.store - i32.const 58 - i32.const 15304 + i32.const 119 + i32.const 24568 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24584 + i32.const 0 + i32.store + i32.const 24584 + i32.const 24584 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15472 - i32.const 6580 + i32.const 24736 + i32.const 7580 i32.store - i32.const 5832 + i32.const 6816 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15472 + i32.const 24736 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -40014,9 +40839,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -40043,31 +40868,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11866 + i32.const 15462 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11874 + i32.const 15470 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11882 + i32.const 15478 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11890 + i32.const 15486 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11898 + i32.const 15494 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11906 + i32.const 15502 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11914 + i32.const 15510 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -40087,7 +40912,7 @@ i32.load local.set $2 local.get $0 - i32.const 16146 + i32.const 25405 i32.load8_s i32.const 1 i32.and @@ -40097,9 +40922,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $5) @@ -40112,19 +40937,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $3 if $if local.get $0 @@ -40141,7 +40966,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -40151,7 +40976,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.tee $6 local.set $5 local.get $4 @@ -40159,7 +40984,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6460 + i32.const 7460 i32.store local.get $3 local.get $2 @@ -40192,11 +41017,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $3 i32.load8_s offset=16 if $if_0 @@ -40204,7 +41029,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11796 + i32.const 15392 i32.store offset=4 local.get $4 i32.const 373 @@ -40216,7 +41041,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11828 + i32.const 15424 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -40229,7 +41054,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -40242,12 +41067,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -40263,7 +41088,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -40299,7 +41124,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11949 + i32.const 15545 i32.store offset=4 local.get $3 i32.const 59 @@ -40311,9 +41136,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11983 + i32.const 15579 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12100 + i32.const 15696 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -40345,13 +41170,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5456 + i32.const 6496 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -40415,7 +41240,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -40428,12 +41253,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -40482,7 +41307,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -40520,7 +41345,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -40599,7 +41424,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -40685,7 +41510,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -40729,17 +41554,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -40903,12 +41728,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -41047,7 +41872,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -41117,7 +41942,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -41673,17 +42498,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -41941,12 +42766,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -41996,7 +42821,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12148 + i32.const 15744 i32.store offset=4 local.get $4 i32.const 507 @@ -42008,7 +42833,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12184 + i32.const 15780 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42060,7 +42885,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -42142,7 +42967,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $3) @@ -42153,12 +42978,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42208,7 +43033,7 @@ i32.const 3 i32.store local.get $4 - i32.const 12148 + i32.const 15744 i32.store offset=4 local.get $4 i32.const 516 @@ -42220,7 +43045,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 12184 + i32.const 15780 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42346,7 +43171,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $2) @@ -42439,7 +43264,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $0 local.get $2 i32.load offset=8 @@ -42456,11 +43281,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) return end ;; $if_2 local.get $2 @@ -42529,11 +43354,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $3) @@ -42585,7 +43410,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.set $4 local.get $1 i32.load offset=8 @@ -42699,9 +43524,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop return end ;; $if_4 @@ -42711,11 +43536,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $6) @@ -42824,25 +43649,25 @@ i32.const 1 ) - (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $15) + (func $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ (type $16) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -42899,13 +43724,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 12230 + i32.const 15826 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 12242 + i32.const 15838 local.get $2 select local.set $3 @@ -42917,7 +43742,7 @@ i32.const 2 i32.store local.get $1 - i32.const 12148 + i32.const 15744 i32.store offset=4 local.get $1 i32.const 626 @@ -42929,21 +43754,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12256 + i32.const 15852 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 12269 + i32.const 15865 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12288 + i32.const 15884 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12305 + i32.const 15901 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12318 + i32.const 15914 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12374 + i32.const 15970 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -42958,7 +43783,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -43069,12 +43894,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -43117,7 +43942,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -43240,7 +44065,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -43268,7 +44093,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -43639,12 +44464,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -43684,9 +44509,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $4 @@ -43713,7 +44538,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12382 + i32.const 15978 i32.store offset=4 local.get $2 i32.const 591 @@ -43725,7 +44550,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12417 + i32.const 16013 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -43818,7 +44643,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -43834,7 +44659,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -43844,31 +44669,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 12382 + i32.const 15978 i32.store offset=4 local.get $1 i32.const 190 @@ -43880,18 +44705,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12454 + i32.const 16050 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12521 + i32.const 16117 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $6) @@ -44027,11 +44852,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) drop i32.const 0 return @@ -44045,11 +44870,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) if $if_2 (result i32) local.get $0 local.get $0 @@ -44070,9 +44895,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -44319,12 +45144,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44397,7 +45222,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44410,7 +45235,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44424,12 +45249,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44502,7 +45327,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44515,7 +45340,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44530,12 +45355,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -44583,7 +45408,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -44753,7 +45578,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -44816,7 +45641,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -44824,7 +45649,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -44838,12 +45663,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -44941,7 +45766,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -44982,7 +45807,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -45141,12 +45966,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -45155,12 +45980,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45189,9 +46014,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) if $if local.get $0 local.get $2 @@ -45219,19 +46044,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45248,7 +46073,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -45273,11 +46098,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 local.get $0 i32.load offset=12 @@ -45302,12 +46127,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -45345,9 +46170,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -45387,7 +46212,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -45409,7 +46234,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $2) @@ -45458,11 +46283,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.get $0 i32.const 12 i32.add @@ -45512,9 +46337,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.const 1 i32.xor i32.const 1 @@ -45535,12 +46360,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -45567,7 +46392,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -45609,9 +46434,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -45651,7 +46476,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -45672,7 +46497,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -45686,12 +46511,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -45718,7 +46543,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -45758,9 +46583,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -45800,7 +46625,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -45821,7 +46646,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $3) @@ -45833,12 +46658,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -45926,9 +46751,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -45968,7 +46793,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -45993,7 +46818,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -46007,12 +46832,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -46104,9 +46929,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.eqz br_if $block_0 local.get $0 @@ -46146,7 +46971,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -46168,7 +46993,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $6) @@ -46262,6 +47087,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $5) (param $0 i32) (param $1 i32) @@ -46323,12 +47154,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46343,7 +47174,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $2 i32.const 132 @@ -46355,9 +47186,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12746 + i32.const 16342 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12790 + i32.const 16386 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46378,7 +47209,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $2 i32.const 134 @@ -46390,7 +47221,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12845 + i32.const 16441 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46410,14 +47241,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $3 i32.const 135 @@ -46429,7 +47260,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12715 + i32.const 16311 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46444,7 +47275,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -46465,12 +47296,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -46485,7 +47316,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $3 i32.const 151 @@ -46497,7 +47328,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12935 + i32.const 16531 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46571,7 +47402,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $5 i32.const 164 @@ -46583,15 +47414,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 13012 + i32.const 16608 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 13062 + i32.const 16658 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -46632,7 +47463,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -46642,12 +47473,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46660,7 +47491,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $2 i32.const 182 @@ -46672,7 +47503,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12715 + i32.const 16311 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46693,7 +47524,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $2 i32.const 183 @@ -46705,7 +47536,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12935 + i32.const 16531 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46735,7 +47566,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $3 i32.const 184 @@ -46747,7 +47578,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12967 + i32.const 16563 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46783,7 +47614,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -46792,12 +47623,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -46808,7 +47639,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12666 + i32.const 16262 i32.store offset=4 local.get $1 i32.const 189 @@ -46820,7 +47651,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12935 + i32.const 16531 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -46841,11 +47672,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -46860,12 +47691,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -46875,7 +47706,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 12250 + i32.const 15846 local.get $2 call $_vsnprintf local.tee $4 @@ -46887,7 +47718,7 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -46908,7 +47739,7 @@ i32.store local.get $3 local.get $5 - i32.const 12250 + i32.const 15846 local.get $2 call $_vsnprintf local.tee $1 @@ -46930,19 +47761,19 @@ call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -46956,7 +47787,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $5) @@ -46985,7 +47816,7 @@ i32.const 241 return end ;; $if - i32.const 6540 + i32.const 7540 i32.load local.set $13 local.get $0 @@ -46995,18 +47826,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6568 + i32.const 7568 i32.load local.set $4 - i32.const 6548 + i32.const 7548 i32.load local.set $11 - i32.const 6552 + i32.const 7552 i32.load local.set $12 - i32.const 6556 + i32.const 7556 i32.load - i32.const 6524 + i32.const 7524 i32.load i32.add local.tee $8 @@ -47219,7 +48050,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.ge_u if $if_7 @@ -47251,7 +48082,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6528 + i32.const 7528 i32.load i32.lt_u if $if_9 (result i32) @@ -47299,17 +48130,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -47432,7 +48263,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -47445,17 +48276,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 13124 + i32.const 16720 i32.store offset=4 local.get $0 i32.const 47 @@ -47467,13 +48298,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 13163 + i32.const 16759 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -47481,12 +48312,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -47498,7 +48329,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15540 + i32.const 24804 i32.const 0 local.get $0 i32.sub @@ -47507,217 +48338,63 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 local.get $0 ) - (func $___stdio_write (type $5) + (func $___stdout_write (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $3 + global.get $32 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $32 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15540 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15540 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $30 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 + local.get $0 ) (func $___stdio_seek (type $12) @@ -47727,12 +48404,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 8 i32.add @@ -47761,7 +48438,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15540 + i32.const 24804 i32.const 0 local.get $0 i32.sub @@ -47783,68 +48460,303 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $30 + global.set $32 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15540 + i32.const 24804 ) - (func $___stdout_write (type $5) + (func $___stdio_write (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $6 i32.const 32 i32.add - global.set $30 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24804 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24804 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $32 + local.get $2 + ) + + (func $_strlen (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $5) @@ -47898,6 +48810,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $6) (param $0 i32) (param $1 i32) @@ -48020,7 +49059,34 @@ local.get $0 ) - (func $_vsnprintf (type $15) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) (param $2 i32) @@ -48028,18 +49094,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5152 + i32.const 5104 i32.const 144 call $_memcpy drop @@ -48053,7 +49119,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15540 + i32.const 24804 i32.const 75 i32.store i32.const -1 @@ -48118,7 +49184,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -48164,12 +49230,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -48201,13 +49267,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 13347 + i32.const 16943 local.set $18 i32.const 1 else - i32.const 13350 - i32.const 13353 - i32.const 13348 + i32.const 16946 + i32.const 16949 + i32.const 16944 local.get $4 i32.const 1 i32.and @@ -48230,8 +49296,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 13374 - i32.const 13378 + i32.const 16970 + i32.const 16974 local.get $5 i32.const 32 i32.and @@ -48239,8 +49305,8 @@ i32.ne local.tee $3 select - i32.const 13366 - i32.const 13370 + i32.const 16962 + i32.const 16966 local.get $3 select local.get $1 @@ -48258,15 +49324,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48274,7 +49340,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -48532,11 +49598,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -48544,14 +49610,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -48564,11 +49630,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48576,7 +49642,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -49483,11 +50549,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -49495,7 +50561,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -49564,7 +50630,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -49588,9 +50654,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 13382 + i32.const 19742 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -49637,7 +50703,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -49667,7 +50733,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -49735,7 +50801,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -49747,9 +50813,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 13382 + i32.const 19742 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -49786,7 +50852,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -49810,13 +50876,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -49825,13 +50891,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -49874,12 +50940,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -49990,9 +51056,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop local.get $1 i32.const -1 @@ -50035,11 +51101,11 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) - (func $_printf_core (type $16) + (func $_printf_core (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -50067,12 +51133,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -50121,7 +51187,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15540 + i32.const 24804 i32.const 75 i32.store i32.const -1 @@ -50211,7 +51277,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -50424,7 +51490,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -50460,7 +51526,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -50650,7 +51716,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -50837,7 +51903,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 13330 + i32.const 16926 local.set $8 br $block_14 end ;; $block_25 @@ -50853,13 +51919,13 @@ i64.sub local.tee $25 i64.store - i32.const 13330 + i32.const 16926 local.set $8 i32.const 1 else - i32.const 13331 - i32.const 13332 - i32.const 13330 + i32.const 16927 + i32.const 16928 + i32.const 16926 local.get $7 i32.const 1 i32.and @@ -50883,7 +51949,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 13330 + i32.const 16926 local.set $8 br $block_16 end ;; $block_23 @@ -50899,7 +51965,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13330 + i32.const 16926 local.set $8 local.get $18 local.set $1 @@ -50908,7 +51974,7 @@ local.get $10 i32.load local.tee $5 - i32.const 13340 + i32.const 16936 local.get $5 select local.tee $6 @@ -50928,7 +51994,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13330 + i32.const 16926 local.set $8 local.get $1 local.get $6 @@ -50964,7 +52030,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -50979,7 +52045,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -50989,7 +52055,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 13330 + i32.const 16926 local.set $8 local.get $18 local.set $1 @@ -51017,11 +52083,11 @@ local.tee $8 select local.set $12 - i32.const 13330 + i32.const 16926 local.get $6 i32.const 4 i32.shr_u - i32.const 13330 + i32.const 16926 i32.add local.get $8 select @@ -51087,7 +52153,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -51118,7 +52184,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -51181,7 +52247,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -51214,11 +52280,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -51226,17 +52292,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -51244,7 +52310,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -51276,7 +52342,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -51317,11 +52383,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $2) + (func $_out (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51338,7 +52404,7 @@ end ;; $if ) - (func $_getint_280 (type $4) + (func $_getint (type $4) (param $0 i32) (result i32) (local $1 i32) @@ -51380,7 +52446,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $2) + (func $_pop_arg (type $2) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51604,13 +52670,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 202 - call_indirect $26 (type $3) + i32.const 398 + call_indirect $28 (type $3) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -51646,7 +52712,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -51678,7 +52744,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -51751,19 +52817,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -51802,7 +52868,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -51819,10 +52885,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $6) @@ -51856,7 +52922,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6768 + i32.const 7768 i32.load i32.load i32.eqz @@ -51873,7 +52939,7 @@ i32.const 1 br $block else - i32.const 15540 + i32.const 24804 i32.const 84 i32.store i32.const -1 @@ -51978,7 +53044,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15540 + i32.const 24804 i32.const 84 i32.store i32.const -1 @@ -52028,9 +53094,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop br $block end ;; $if_0 @@ -52075,9 +53141,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $3 i32.lt_u br_if $block @@ -52158,76 +53224,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $5) (param $0 i32) (param $1 i32) @@ -52262,176 +53258,26 @@ local.get $2 ) - (func $_strlen (type $4) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $15) + (func $_fprintf (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 14975 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -52439,12 +53285,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -52494,9 +53340,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) i32.const 1 i32.eq if $if_2 (result i32) @@ -52508,29 +53354,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 11382 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $4) @@ -52554,10 +53378,10 @@ end ;; $block local.set $0 else - i32.const 6576 + i32.const 7572 i32.load if $if_1 (result i32) - i32.const 6576 + i32.const 7572 i32.load call $_fflush else @@ -52565,9 +53389,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15544 + i32.const 24808 call $___lock - i32.const 15552 + i32.const 24816 i32.load local.tee $1 end ;; $block_0 @@ -52601,7 +53425,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15544 + i32.const 24808 call $___unlock end ;; $if local.get $0 @@ -52630,9 +53454,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) drop local.get $0 i32.load offset=20 @@ -52660,9 +53484,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -52684,6 +53508,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $4) (param $0 i32) (result i32) @@ -52709,17 +53597,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15556 + i32.const 24820 i32.load local.tee $6 i32.const 16 @@ -52751,7 +53639,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.tee $3 i32.load offset=8 @@ -52764,7 +53652,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15556 + i32.const 24820 local.get $6 i32.const 1 local.get $0 @@ -52774,7 +53662,7 @@ i32.and i32.store else - i32.const 15572 + i32.const 24836 i32.load local.get $4 i32.gt_u @@ -52814,12 +53702,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15564 + i32.const 24828 i32.load local.tee $13 i32.gt_u @@ -52898,7 +53786,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.tee $1 i32.load offset=8 @@ -52911,7 +53799,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15556 + i32.const 24820 local.get $6 i32.const 1 local.get $0 @@ -52922,7 +53810,7 @@ local.tee $8 i32.store else - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.gt_u @@ -52972,7 +53860,7 @@ i32.store local.get $13 if $if_9 - i32.const 15576 + i32.const 24840 i32.load local.set $10 local.get $13 @@ -52981,7 +53869,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $2 local.get $8 @@ -52991,7 +53879,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.const 8 @@ -53009,7 +53897,7 @@ local.set $4 end ;; $if_11 else - i32.const 15556 + i32.const 24820 local.get $0 local.get $8 i32.or @@ -53034,18 +53922,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15564 + i32.const 24828 local.get $6 i32.store - i32.const 15576 + i32.const 24840 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 15560 + i32.const 24824 i32.load local.tee $11 if $if_12 (result i32) @@ -53108,7 +53996,7 @@ i32.add i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add i32.load local.tee $0 @@ -53158,7 +54046,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15572 + i32.const 24836 i32.load local.tee $7 local.get $9 @@ -53282,7 +54170,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.tee $0 i32.load @@ -53295,7 +54183,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15560 + i32.const 24824 local.get $11 i32.const 1 local.get $1 @@ -53307,7 +54195,7 @@ br $block_2 end ;; $if_25 else - i32.const 15572 + i32.const 24836 i32.load local.get $18 i32.gt_u @@ -53332,7 +54220,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $3 @@ -53365,7 +54253,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15572 + i32.const 24836 i32.load local.get $0 i32.gt_u @@ -53421,7 +54309,7 @@ i32.store local.get $13 if $if_33 - i32.const 15576 + i32.const 24840 i32.load local.set $4 local.get $13 @@ -53430,7 +54318,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $3 local.get $6 @@ -53440,7 +54328,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15572 + i32.const 24836 i32.load local.get $3 i32.const 8 @@ -53458,7 +54346,7 @@ local.set $12 end ;; $if_35 else - i32.const 15556 + i32.const 24820 local.get $0 local.get $6 i32.or @@ -53483,15 +54371,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15564 + i32.const 24828 local.get $10 i32.store - i32.const 15576 + i32.const 24840 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -53517,7 +54405,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15560 + i32.const 24824 i32.load local.tee $4 if $if_37 (result i32) @@ -53597,7 +54485,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add i32.load local.tee $0 @@ -53762,7 +54650,7 @@ i32.add i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add i32.load local.set $0 @@ -53825,13 +54713,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15564 + i32.const 24828 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15572 + i32.const 24836 i32.load local.tee $12 local.get $2 @@ -53955,7 +54843,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.tee $0 i32.load @@ -53968,7 +54856,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15560 + i32.const 24824 local.get $4 i32.const 1 local.get $3 @@ -53981,7 +54869,7 @@ br $block_9 end ;; $if_60 else - i32.const 15572 + i32.const 24836 i32.load local.get $8 i32.gt_u @@ -54010,7 +54898,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $13 @@ -54043,7 +54931,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15572 + i32.const 24836 i32.load local.get $0 i32.gt_u @@ -54117,10 +55005,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $3 - i32.const 15556 + i32.const 24820 i32.load local.tee $1 i32.const 1 @@ -54129,7 +55017,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15572 + i32.const 24836 i32.load local.get $3 i32.const 8 @@ -54147,7 +55035,7 @@ local.set $11 end ;; $if_71 else - i32.const 15556 + i32.const 24820 local.get $0 local.get $1 i32.or @@ -54243,7 +55131,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.set $3 local.get $5 @@ -54263,7 +55151,7 @@ i32.and i32.eqz if $if_74 - i32.const 15560 + i32.const 24824 local.get $0 local.get $1 i32.or @@ -54344,7 +55232,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15572 + i32.const 24836 i32.load local.get $4 i32.gt_u @@ -54367,7 +55255,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $6 @@ -54400,7 +55288,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -54420,13 +55308,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15564 + i32.const 24828 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15576 + i32.const 24840 i32.load local.set $0 local.get $3 @@ -54436,13 +55324,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15576 + i32.const 24840 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15564 + i32.const 24828 local.get $2 i32.store local.get $1 @@ -54461,10 +55349,10 @@ i32.or i32.store offset=4 else - i32.const 15564 + i32.const 24828 i32.const 0 i32.store - i32.const 15576 + i32.const 24840 i32.const 0 i32.store local.get $0 @@ -54485,13 +55373,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15568 + i32.const 24832 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15568 + i32.const 24832 local.get $12 local.get $11 i32.sub @@ -54499,31 +55387,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 16028 + i32.const 25292 i32.load if $if_83 (result i32) - i32.const 16036 + i32.const 25300 i32.load else - i32.const 16036 + i32.const 25300 i32.const 4096 i32.store - i32.const 16032 + i32.const 25296 i32.const 4096 i32.store - i32.const 16040 + i32.const 25304 i32.const -1 i32.store - i32.const 16044 + i32.const 25308 i32.const -1 i32.store - i32.const 16048 + i32.const 25312 i32.const 0 i32.store - i32.const 16000 + i32.const 25264 i32.const 0 i32.store - i32.const 16028 + i32.const 25292 local.get $17 i32.const -16 i32.and @@ -54550,11 +55438,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15996 + i32.const 25260 i32.load local.tee $2 if $if_85 - i32.const 15988 + i32.const 25252 i32.load local.tee $1 local.get $8 @@ -54576,7 +55464,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 16000 + i32.const 25264 i32.load i32.const 4 i32.and @@ -54587,12 +55475,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15580 + i32.const 24844 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 16004 + i32.const 25268 local.set $2 loop $loop_5 block $block_20 @@ -54655,11 +55543,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15988 + i32.const 25252 i32.load local.tee $4 local.get $0 - i32.const 16032 + i32.const 25296 i32.load local.tee $2 i32.const -1 @@ -54690,7 +55578,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15996 + i32.const 25260 i32.load local.tee $1 if $if_92 @@ -54748,7 +55636,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 16036 + i32.const 25300 i32.load local.tee $1 local.get $6 @@ -54785,8 +55673,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 16000 - i32.const 16000 + i32.const 25264 + i32.const 25264 i32.load i32.const 4 i32.or @@ -54841,28 +55729,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15988 - i32.const 15988 + i32.const 25252 + i32.const 25252 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15992 + i32.const 25256 i32.load i32.gt_u if $if_98 - i32.const 15992 + i32.const 25256 local.get $1 i32.store end ;; $if_98 - i32.const 15580 + i32.const 24844 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 16004 + i32.const 25268 local.set $2 block $block_22 block $block_23 @@ -54920,7 +55808,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15568 + i32.const 24832 i32.load local.get $3 i32.add @@ -54928,10 +55816,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15580 + i32.const 24844 local.get $2 i32.store - i32.const 15568 + i32.const 24832 local.get $1 i32.store local.get $2 @@ -54944,8 +55832,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15584 - i32.const 16044 + i32.const 24848 + i32.const 25308 i32.load i32.store br $block_21 @@ -54953,12 +55841,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15572 + i32.const 24836 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15572 + i32.const 24836 local.get $0 i32.store local.get $0 @@ -54968,7 +55856,7 @@ local.get $3 i32.add local.set $1 - i32.const 16004 + i32.const 25268 local.set $8 block $block_24 block $block_25 @@ -55049,14 +55937,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15568 - i32.const 15568 + i32.const 24832 + i32.const 24832 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15580 + i32.const 24844 local.get $5 i32.store local.get $5 @@ -55066,19 +55954,19 @@ i32.store offset=4 else block $block_26 - i32.const 15576 + i32.const 24840 i32.load local.get $3 i32.eq if $if_105 - i32.const 15564 - i32.const 15564 + i32.const 24828 + i32.const 24828 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15576 + i32.const 24840 local.get $5 i32.store local.get $5 @@ -55123,7 +56011,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.tee $0 i32.ne @@ -55147,8 +56035,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15556 - i32.const 15556 + i32.const 24820 + i32.const 24820 i32.load i32.const 1 local.get $1 @@ -55306,7 +56194,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.tee $0 i32.load @@ -55319,8 +56207,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15560 - i32.const 15560 + i32.const 24824 + i32.const 24824 i32.load i32.const 1 local.get $1 @@ -55332,7 +56220,7 @@ br $block_27 end ;; $block_32 else - i32.const 15572 + i32.const 24836 i32.load local.get $8 i32.gt_u @@ -55357,7 +56245,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $16 @@ -55391,7 +56279,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15572 + i32.const 24836 i32.load local.get $0 i32.gt_u @@ -55443,10 +56331,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $2 - i32.const 15556 + i32.const 24820 i32.load local.tee $1 i32.const 1 @@ -55456,7 +56344,7 @@ i32.and if $if_128 block $block_33 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.const 8 @@ -55475,7 +56363,7 @@ call $_abort end ;; $block_33 else - i32.const 15556 + i32.const 24820 local.get $0 local.get $1 i32.or @@ -55571,7 +56459,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.set $2 local.get $5 @@ -55583,7 +56471,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15560 + i32.const 24824 i32.load local.tee $1 i32.const 1 @@ -55593,7 +56481,7 @@ i32.and i32.eqz if $if_132 - i32.const 15560 + i32.const 24824 local.get $0 local.get $1 i32.or @@ -55674,7 +56562,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.gt_u @@ -55697,7 +56585,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $9 @@ -55730,14 +56618,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $30 + global.set $32 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 16004 + i32.const 25268 local.set $2 loop $loop_10 block $block_35 @@ -55762,7 +56650,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15580 + i32.const 24844 i32.const 0 local.get $0 i32.const 8 @@ -55781,7 +56669,7 @@ i32.add local.tee $4 i32.store - i32.const 15568 + i32.const 24832 local.get $3 i32.const -40 i32.add @@ -55800,8 +56688,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15584 - i32.const 16044 + i32.const 24848 + i32.const 25308 i32.load i32.store local.get $6 @@ -55834,23 +56722,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 16004 + i32.const 25268 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 16012 + i32.const 25276 i64.load align=4 i64.store offset=16 align=4 - i32.const 16004 + i32.const 25268 local.get $0 i32.store - i32.const 16008 + i32.const 25272 local.get $3 i32.store - i32.const 16016 + i32.const 25280 i32.const 0 i32.store - i32.const 16012 + i32.const 25276 local.get $2 i32.const 8 i32.add @@ -55909,10 +56797,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $2 - i32.const 15556 + i32.const 24820 i32.load local.tee $1 i32.const 1 @@ -55921,7 +56809,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.const 8 @@ -55939,7 +56827,7 @@ local.set $5 end ;; $if_143 else - i32.const 15556 + i32.const 24820 local.get $0 local.get $1 i32.or @@ -56035,7 +56923,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.set $2 local.get $6 @@ -56047,7 +56935,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15560 + i32.const 24824 i32.load local.tee $1 i32.const 1 @@ -56057,7 +56945,7 @@ i32.and i32.eqz if $if_146 - i32.const 15560 + i32.const 24824 local.get $0 local.get $1 i32.or @@ -56138,7 +57026,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15572 + i32.const 24836 i32.load local.get $3 i32.gt_u @@ -56161,7 +57049,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $10 @@ -56194,7 +57082,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15572 + i32.const 24836 i32.load local.tee $1 i32.eqz @@ -56203,219 +57091,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15572 + i32.const 24836 local.get $0 i32.store end ;; $if_152 - i32.const 16004 + i32.const 25268 local.get $0 i32.store - i32.const 16008 + i32.const 25272 local.get $3 i32.store - i32.const 16016 + i32.const 25280 i32.const 0 i32.store - i32.const 15592 - i32.const 16028 + i32.const 24856 + i32.const 25292 i32.load i32.store - i32.const 15588 + i32.const 24852 i32.const -1 i32.store - i32.const 15608 - i32.const 15596 + i32.const 24872 + i32.const 24860 i32.store - i32.const 15604 - i32.const 15596 + i32.const 24868 + i32.const 24860 i32.store - i32.const 15616 - i32.const 15604 + i32.const 24880 + i32.const 24868 i32.store - i32.const 15612 - i32.const 15604 + i32.const 24876 + i32.const 24868 i32.store - i32.const 15624 - i32.const 15612 + i32.const 24888 + i32.const 24876 i32.store - i32.const 15620 - i32.const 15612 + i32.const 24884 + i32.const 24876 i32.store - i32.const 15632 - i32.const 15620 + i32.const 24896 + i32.const 24884 i32.store - i32.const 15628 - i32.const 15620 + i32.const 24892 + i32.const 24884 i32.store - i32.const 15640 - i32.const 15628 + i32.const 24904 + i32.const 24892 i32.store - i32.const 15636 - i32.const 15628 + i32.const 24900 + i32.const 24892 i32.store - i32.const 15648 - i32.const 15636 + i32.const 24912 + i32.const 24900 i32.store - i32.const 15644 - i32.const 15636 + i32.const 24908 + i32.const 24900 i32.store - i32.const 15656 - i32.const 15644 + i32.const 24920 + i32.const 24908 i32.store - i32.const 15652 - i32.const 15644 + i32.const 24916 + i32.const 24908 i32.store - i32.const 15664 - i32.const 15652 + i32.const 24928 + i32.const 24916 i32.store - i32.const 15660 - i32.const 15652 + i32.const 24924 + i32.const 24916 i32.store - i32.const 15672 - i32.const 15660 + i32.const 24936 + i32.const 24924 i32.store - i32.const 15668 - i32.const 15660 + i32.const 24932 + i32.const 24924 i32.store - i32.const 15680 - i32.const 15668 + i32.const 24944 + i32.const 24932 i32.store - i32.const 15676 - i32.const 15668 + i32.const 24940 + i32.const 24932 i32.store - i32.const 15688 - i32.const 15676 + i32.const 24952 + i32.const 24940 i32.store - i32.const 15684 - i32.const 15676 + i32.const 24948 + i32.const 24940 i32.store - i32.const 15696 - i32.const 15684 + i32.const 24960 + i32.const 24948 i32.store - i32.const 15692 - i32.const 15684 + i32.const 24956 + i32.const 24948 i32.store - i32.const 15704 - i32.const 15692 + i32.const 24968 + i32.const 24956 i32.store - i32.const 15700 - i32.const 15692 + i32.const 24964 + i32.const 24956 i32.store - i32.const 15712 - i32.const 15700 + i32.const 24976 + i32.const 24964 i32.store - i32.const 15708 - i32.const 15700 + i32.const 24972 + i32.const 24964 i32.store - i32.const 15720 - i32.const 15708 + i32.const 24984 + i32.const 24972 i32.store - i32.const 15716 - i32.const 15708 + i32.const 24980 + i32.const 24972 i32.store - i32.const 15728 - i32.const 15716 + i32.const 24992 + i32.const 24980 i32.store - i32.const 15724 - i32.const 15716 + i32.const 24988 + i32.const 24980 i32.store - i32.const 15736 - i32.const 15724 + i32.const 25000 + i32.const 24988 i32.store - i32.const 15732 - i32.const 15724 + i32.const 24996 + i32.const 24988 i32.store - i32.const 15744 - i32.const 15732 + i32.const 25008 + i32.const 24996 i32.store - i32.const 15740 - i32.const 15732 + i32.const 25004 + i32.const 24996 i32.store - i32.const 15752 - i32.const 15740 + i32.const 25016 + i32.const 25004 i32.store - i32.const 15748 - i32.const 15740 + i32.const 25012 + i32.const 25004 i32.store - i32.const 15760 - i32.const 15748 + i32.const 25024 + i32.const 25012 i32.store - i32.const 15756 - i32.const 15748 + i32.const 25020 + i32.const 25012 i32.store - i32.const 15768 - i32.const 15756 + i32.const 25032 + i32.const 25020 i32.store - i32.const 15764 - i32.const 15756 + i32.const 25028 + i32.const 25020 i32.store - i32.const 15776 - i32.const 15764 + i32.const 25040 + i32.const 25028 i32.store - i32.const 15772 - i32.const 15764 + i32.const 25036 + i32.const 25028 i32.store - i32.const 15784 - i32.const 15772 + i32.const 25048 + i32.const 25036 i32.store - i32.const 15780 - i32.const 15772 + i32.const 25044 + i32.const 25036 i32.store - i32.const 15792 - i32.const 15780 + i32.const 25056 + i32.const 25044 i32.store - i32.const 15788 - i32.const 15780 + i32.const 25052 + i32.const 25044 i32.store - i32.const 15800 - i32.const 15788 + i32.const 25064 + i32.const 25052 i32.store - i32.const 15796 - i32.const 15788 + i32.const 25060 + i32.const 25052 i32.store - i32.const 15808 - i32.const 15796 + i32.const 25072 + i32.const 25060 i32.store - i32.const 15804 - i32.const 15796 + i32.const 25068 + i32.const 25060 i32.store - i32.const 15816 - i32.const 15804 + i32.const 25080 + i32.const 25068 i32.store - i32.const 15812 - i32.const 15804 + i32.const 25076 + i32.const 25068 i32.store - i32.const 15824 - i32.const 15812 + i32.const 25088 + i32.const 25076 i32.store - i32.const 15820 - i32.const 15812 + i32.const 25084 + i32.const 25076 i32.store - i32.const 15832 - i32.const 15820 + i32.const 25096 + i32.const 25084 i32.store - i32.const 15828 - i32.const 15820 + i32.const 25092 + i32.const 25084 i32.store - i32.const 15840 - i32.const 15828 + i32.const 25104 + i32.const 25092 i32.store - i32.const 15836 - i32.const 15828 + i32.const 25100 + i32.const 25092 i32.store - i32.const 15848 - i32.const 15836 + i32.const 25112 + i32.const 25100 i32.store - i32.const 15844 - i32.const 15836 + i32.const 25108 + i32.const 25100 i32.store - i32.const 15856 - i32.const 15844 + i32.const 25120 + i32.const 25108 i32.store - i32.const 15852 - i32.const 15844 + i32.const 25116 + i32.const 25108 i32.store - i32.const 15580 + i32.const 24844 i32.const 0 local.get $0 i32.const 8 @@ -56434,7 +57322,7 @@ i32.add local.tee $4 i32.store - i32.const 15568 + i32.const 24832 local.get $3 i32.const -40 i32.add @@ -56453,18 +57341,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15584 - i32.const 16044 + i32.const 24848 + i32.const 25308 i32.load i32.store end ;; $if_99 - i32.const 15568 + i32.const 24832 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15568 + i32.const 24832 local.get $0 local.get $11 i32.sub @@ -56473,13 +57361,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15540 + i32.const 24804 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15580 - i32.const 15580 + i32.const 24844 + i32.const 24844 i32.load local.tee $0 local.get $11 @@ -56498,14 +57386,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $30 + global.set $32 i32.const 0 ) @@ -56537,7 +57425,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15572 + i32.const 24836 i32.load local.tee $11 i32.lt_u @@ -56596,7 +57484,7 @@ local.get $10 i32.add local.set $5 - i32.const 15576 + i32.const 24840 i32.load local.get $0 i32.eq @@ -56616,7 +57504,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15564 + i32.const 24828 local.get $5 i32.store local.get $7 @@ -56653,7 +57541,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.tee $4 i32.ne @@ -56676,8 +57564,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15556 - i32.const 15556 + i32.const 24820 + i32.const 24820 i32.load i32.const 1 local.get $2 @@ -56843,7 +57731,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.tee $6 i32.load @@ -56856,8 +57744,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15560 - i32.const 15560 + i32.const 24824 + i32.const 24824 i32.load i32.const 1 local.get $2 @@ -56874,7 +57762,7 @@ br $block end ;; $if_24 else - i32.const 15572 + i32.const 24836 i32.load local.get $13 i32.gt_u @@ -56907,7 +57795,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15572 + i32.const 24836 i32.load local.tee $6 local.get $8 @@ -56940,7 +57828,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.gt_u @@ -57010,19 +57898,19 @@ local.get $1 i32.store else - i32.const 15580 + i32.const 24844 i32.load local.get $7 i32.eq if $if_35 - i32.const 15568 - i32.const 15568 + i32.const 24832 + i32.const 24832 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15580 + i32.const 24844 local.get $3 i32.store local.get $3 @@ -57031,33 +57919,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15576 + i32.const 24840 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15576 + i32.const 24840 i32.const 0 i32.store - i32.const 15564 + i32.const 24828 i32.const 0 i32.store return end ;; $if_35 - i32.const 15576 + i32.const 24840 i32.load local.get $7 i32.eq if $if_37 - i32.const 15564 - i32.const 15564 + i32.const 24828 + i32.const 24828 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15576 + i32.const 24840 local.get $4 i32.store local.get $3 @@ -57096,12 +57984,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.gt_u @@ -57120,8 +58008,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15556 - i32.const 15556 + i32.const 24820 + i32.const 24820 i32.load i32.const 1 local.get $6 @@ -57141,7 +58029,7 @@ i32.add local.set $16 else - i32.const 15572 + i32.const 24836 i32.load local.get $1 i32.gt_u @@ -57224,7 +58112,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15572 + i32.const 24836 i32.load local.get $1 i32.gt_u @@ -57239,7 +58127,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15572 + i32.const 24836 i32.load local.get $7 i32.load offset=8 @@ -57279,7 +58167,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.tee $1 i32.load @@ -57292,8 +58180,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15560 - i32.const 15560 + i32.const 24824 + i32.const 24824 i32.load i32.const 1 local.get $0 @@ -57305,7 +58193,7 @@ br $block_2 end ;; $if_55 else - i32.const 15572 + i32.const 24836 i32.load local.get $8 i32.gt_u @@ -57331,7 +58219,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15572 + i32.const 24836 i32.load local.tee $1 local.get $9 @@ -57364,7 +58252,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15572 + i32.const 24836 i32.load local.get $0 i32.gt_u @@ -57392,12 +58280,12 @@ i32.add local.get $5 i32.store - i32.const 15576 + i32.const 24840 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15564 + i32.const 24828 local.get $5 i32.store return @@ -57417,10 +58305,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15596 + i32.const 24860 i32.add local.set $0 - i32.const 15556 + i32.const 24820 i32.load local.tee $1 i32.const 1 @@ -57429,7 +58317,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15572 + i32.const 24836 i32.load local.get $0 i32.const 8 @@ -57447,7 +58335,7 @@ local.set $15 end ;; $if_65 else - i32.const 15556 + i32.const 24820 local.get $1 local.get $4 i32.or @@ -57544,7 +58432,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15860 + i32.const 25124 i32.add local.set $0 local.get $3 @@ -57556,7 +58444,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15560 + i32.const 24824 i32.load local.tee $5 i32.const 1 @@ -57628,7 +58516,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15572 + i32.const 24836 i32.load local.get $2 i32.gt_u @@ -57651,7 +58539,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15572 + i32.const 24836 i32.load local.tee $0 local.get $14 @@ -57683,7 +58571,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15560 + i32.const 24824 local.get $2 local.get $5 i32.or @@ -57701,8 +58589,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15588 - i32.const 15588 + i32.const 24852 + i32.const 24852 i32.load i32.const -1 i32.add @@ -57712,7 +58600,7 @@ if $if_74 return end ;; $if_74 - i32.const 16012 + i32.const 25276 local.set $0 loop $loop_2 local.get $0 @@ -57724,30 +58612,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15588 + i32.const 24852 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $4) + (func $_realloc (type $6) (param $0 i32) + (param $1 i32) (result i32) - i32.const 13384 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24804 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $4) + (func $_try_realloc_chunk (type $6) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -57757,166 +58711,1935 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24836 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25300 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24844 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24832 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24844 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24832 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24840 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24828 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24828 + local.get $3 + i32.store + i32.const 24840 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24860 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24820 + i32.const 24820 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25124 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24824 + i32.const 24824 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24836 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24836 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24836 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24836 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24840 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24828 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24860 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24820 + i32.const 24820 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 - local.get $1 - local.get $2 - i32.mul + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25124 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24824 + i32.const 24824 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24836 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24836 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24836 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24836 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24844 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24832 + i32.const 24832 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24844 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24840 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24840 + i32.const 0 + i32.store + i32.const 24828 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24840 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24828 + i32.const 24828 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24840 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24860 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24820 + i32.const 24820 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 25124 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24824 + i32.const 24824 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24836 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24836 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24836 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24840 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24828 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24860 + i32.add + local.set $0 + i32.const 24820 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24836 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24820 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 25124 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24824 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24824 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24836 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24836 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $4) + (param $0 i32) + (result i32) + i32.const 16978 + ) + + (func $__ZNSt3__212__next_primeEm (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 + local.get $1 + local.get $2 + i32.mul i32.eq if $if_6 (result i32) i32.const 9 @@ -59223,2968 +61946,28261 @@ i32.lt_u if $if_122 i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_122 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_123 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_123 + local.get $4 + i32.const 180 + i32.add + local.tee $2 + local.tee $1 + if $if_124 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_124 + local.tee $1 + local.get $2 + i32.lt_u + if $if_125 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_125 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_126 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_126 + local.get $4 + i32.const 186 + i32.add + local.tee $2 + local.tee $1 + if $if_127 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_127 + local.tee $1 + local.get $2 + i32.lt_u + if $if_128 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_128 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_129 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_129 + local.get $4 + i32.const 190 + i32.add + local.tee $2 + local.tee $1 + if $if_130 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_130 + local.tee $1 + local.get $2 + i32.lt_u + if $if_131 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_131 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_132 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_132 + local.get $4 + i32.const 192 + i32.add + local.tee $2 + local.tee $1 + if $if_133 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_133 + local.tee $1 + local.get $2 + i32.lt_u + if $if_134 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_134 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_135 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_135 + local.get $4 + i32.const 196 + i32.add + local.tee $2 + local.tee $1 + if $if_136 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_136 + local.tee $1 + local.get $2 + i32.lt_u + if $if_137 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_137 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_138 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_138 + local.get $4 + i32.const 198 + i32.add + local.tee $2 + local.tee $1 + if $if_139 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_139 + local.tee $1 + local.get $2 + i32.lt_u + if $if_140 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_140 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_141 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_141 + local.get $4 + i32.const 208 + i32.add + local.tee $2 + local.tee $1 + if $if_142 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_142 + local.tee $1 + local.get $2 + i32.lt_u + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24648 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25344 + i32.const 25316 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24648 + i32.load + i32.eqz + if $if_0 + i32.const 24648 + i32.const 1 + i32.store + local.get $0 + i32.const 277 + call_indirect $28 (type $0) + i32.const 24648 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $4) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 15027 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 15027 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10924 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 11196 + local.set $6 + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $2 + i32.const 255 + i32.and + end ;; $if + local.tee $2 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $3 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $3 + local.get $1 + local.get $2 + i32.add + local.get $3 + i32.sub + local.get $2 + i32.const 0 + i32.const 0 + local.get $1 + i32.const 11196 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $1 + if $if_3 + local.get $4 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $4 + local.set $3 + local.get $2 + if $if_5 + local.get $1 + i32.const 11196 + i32.add + i32.const 11196 + local.get $3 + i32.const 11196 + i32.le_u + local.get $2 + local.get $4 + i32.add + i32.const 11196 + i32.gt_u + i32.and + select + local.set $6 + local.get $1 + local.get $3 + i32.add + local.get $3 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $3 + local.get $6 + local.get $1 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14196 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14196 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + drop + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25392 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17183 + i32.store + i32.const 17133 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5264 + local.get $0 + local.get $5 + i32.const 5264 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $5) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $4) + local.set $0 + local.get $4 + i32.const 17183 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 17047 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17183 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 17092 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17171 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7576 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5288 + i32.const 5272 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 442 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 15 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $1) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17362 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17365 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17370 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17384 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25392 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 17322 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22717 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17418 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17423 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17428 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17433 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17445 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17459 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17465 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17480 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17484 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17497 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17502 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17516 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 + i32.store + local.get $0 + i32.const 17526 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17535 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17553 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17559 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17571 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17582 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17586 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17596 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17607 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17617 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17627 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17636 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17645 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17650 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17665 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22418 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22421 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22430 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22433 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22436 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22439 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22442 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22233 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22197 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 22072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 21128 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 21131 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 21138 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 21141 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 21147 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 21150 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17645 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7932 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $4 + i32.const 17680 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17863 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17888 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17901 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17775 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17798 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17805 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17813 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17821 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 17971 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18039 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 18056 + i32.const 18054 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8152 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 18123 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 18121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8240 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18236 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8284 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 18056 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 18054 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 - i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + i32.store + local.get $8 + i32.const 18054 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 - local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18768 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18771 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18773 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18773 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + local.get $1 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_139 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 + i32.add local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop + i32.const 0 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18783 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 18121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18787 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18790 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18792 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18795 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18797 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18800 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18803 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18806 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18809 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18812 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18816 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 18121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18819 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18822 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18822 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18825 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18828 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18833 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18835 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18838 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18847 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18847 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18850 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18858 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18865 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18865 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18874 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18874 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18338 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18346 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18350 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17428 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17433 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17459 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17465 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25414 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18354 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18356 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18358 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18361 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18364 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17526 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17535 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17362 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8328 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8372 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18420 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8416 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18481 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8460 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18540 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8504 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18600 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18605 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8548 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8592 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 21011 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 21014 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20864 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 18056 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20867 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 18054 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20870 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18768 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20873 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18771 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20876 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18783 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20879 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18787 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18790 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20885 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18792 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20888 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18795 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18797 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18800 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20897 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18803 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20900 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20903 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18806 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20906 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18809 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20909 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18812 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20912 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20915 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20918 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18816 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 18121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20924 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18819 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20927 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18825 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20930 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20933 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18833 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20936 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18835 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 20939 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18842 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 20942 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 20945 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 20948 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18855 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 20951 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18858 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 20954 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20652 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19791 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19795 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18765 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19379 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19382 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19385 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8636 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18889 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8680 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8724 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19040 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8768 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8812 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 19102 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8856 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17582 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18236 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19228 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8900 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $5 + i32.const 19240 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $6 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19287 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8944 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19304 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19310 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19368 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8988 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19388 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19400 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19404 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9032 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19607 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9076 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19498 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19504 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9120 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19504 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19618 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9164 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9208 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19684 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19742 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9252 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19857 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19860 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9296 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19798 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19863 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19874 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19884 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19895 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19905 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19916 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19926 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19936 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19954 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19964 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19974 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19985 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19995 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20006 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20017 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20028 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20038 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20049 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20060 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20071 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20083 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20093 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20103 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19954 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20125 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20136 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20151 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20093 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20162 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20172 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20185 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20196 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20206 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20217 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20229 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20239 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20250 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20229 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20261 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20272 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20282 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20292 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20303 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20314 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20326 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9340 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20338 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20402 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9384 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20418 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9428 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9472 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19798 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20581 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9516 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19798 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20594 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20601 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9560 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9604 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20753 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9648 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9692 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20811 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20814 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9736 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 20957 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 20962 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9780 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 21011 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $3) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9824 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $6) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9868 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21536 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21476 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21214 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21218 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21280 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9912 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21221 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21344 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21347 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9956 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10000 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21350 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21358 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10044 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21413 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21422 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10088 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10132 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10176 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17830 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21632 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21703 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21753 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21803 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $3) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17775 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17785 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21589 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21603 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21617 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10220 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10264 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 21965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10308 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 22025 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10352 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22075 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $30 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10396 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22131 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17686 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22207 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22214 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18338 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) (local $4 i32) (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10440 + i32.store + local.get $0 local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 i32.load - local.set $4 + i32.load offset=16 + local.set $3 + local.get $2 local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if + local.get $4 + i32.const 22243 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22250 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 22260 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) - loop $loop - i32.const 15384 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 16080 - i32.const 16052 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 15384 + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load - i32.eqz - if $if_0 - i32.const 15384 - i32.const 1 - i32.store - local.get $0 - i32.const 168 - call_indirect $26 (type $0) - i32.const 15384 - i32.const -1 - i32.store - end ;; $if_0 + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__Znwm (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $2) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 local.get $0 i32.const 1 + i32.store8 offset=5 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 16136 - i32.const 16136 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10484 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 11434 - call $_strlen - local.tee $2 - i32.const 13 + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__Znwm - local.tee $1 + global.set $32 local.get $2 - i32.store - local.get $1 + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.store offset=4 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 0 - i32.store offset=8 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 12 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 i32.add - local.tee $1 - i32.const 11434 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10528 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $_memcpy - drop + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18234 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18127 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 + local.get $0 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) local.get $0 - i32.const 6936 + i32.const 7976 i32.store local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $3) - (param $0 i32) - (param $1 i32) + i32.const 15 + i32.store8 offset=4 local.get $0 - i64.const 0 - i64.store align=4 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 i32.const 0 - i32.store offset=8 + i32.store8 offset=7 + local.get $0 + i32.const 10572 + i32.store + local.get $0 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $32 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 local.get $0 local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $30 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22243 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 + i32.load offset=20 + local.set $4 end ;; $if - local.tee $5 - local.get $2 - i32.lt_u + local.get $4 + i32.const 2 + i32.and if $if_0 - local.get $0 - local.get $5 + local.get $7 + i32.const 22250 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22260 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22448 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 - local.get $4 - global.set $30 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10616 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub + global.set $32 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22501 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + i32.load + local.set $1 local.get $0 - local.get $2 + i32.const 7976 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 16 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10660 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $3) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u + global.get $32 local.set $2 - i32.const 10 - local.get $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 + local.set $3 + local.get $2 + i32.const 8 i32.add + local.tee $4 + i32.const 22565 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - select - local.tee $7 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - global.set $30 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10704 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 - local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $3 - local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 - local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10748 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $5) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20814 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22846 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $3) (param $0 i32) (param $1 i32) - (result i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $5) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if + i32.const 332 + i32.add local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 - local.get $3 - i32.sub + local.tee $2 + i32.load offset=4 local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) - local.get $0 - i32.load - else + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 local.get $4 - local.get $1 - i32.le_u + i32.ge_u + br_if $block_0 local.get $3 - local.get $5 + i32.load + local.get $0 + i32.const 2 + i32.shl i32.add - local.get $1 - i32.gt_u - i32.and - select - local.set $1 + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $4) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 - i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $6) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 10603 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $30 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7976 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10603 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEi (type $3) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 10792 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $3) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 18050 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13453 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18052 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18048 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13592 - i32.store - i32.const 13542 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5312 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5312 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $5) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $4) - local.set $0 - local.get $1 - i32.const 13592 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13456 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13592 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13501 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $3) end ;; $if - i32.const 13580 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 16128 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 16128 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13731 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22243 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 16132 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22250 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22260 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22445 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22448 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $3) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10836 i32.store - i32.const 6572 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $5) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 22784 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5336 - i32.const 5320 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $4) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22880 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22925 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22947 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22965 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7976 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10880 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 23006 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 23031 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23094 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $1) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23121 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $1) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 16132 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13780 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23140 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23154 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $6) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 16132 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13830 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23163 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6936 + i32.const 10924 i32.store local.get $0 i32.const 4 @@ -62216,9 +90232,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -62233,7 +90247,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62247,10 +90262,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62260,20 +90278,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -62290,72 +90308,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -62369,10 +90457,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -62394,7 +90483,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -62534,145 +90625,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -62684,10 +90780,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62752,20 +90849,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -62785,11 +90886,11 @@ i32.and select local.get $6 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62841,9 +90942,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -62893,9 +90994,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $5) @@ -62905,12 +91006,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -62925,9 +91026,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.tee $0 if $if local.get $2 @@ -62936,7 +91037,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -62948,8 +91049,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5336 - i32.const 5424 + i32.const 5288 + i32.const 6456 call $___dynamic_cast i32.const 0 i32.ne @@ -63411,7 +91512,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -63449,7 +91550,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -63463,10 +91564,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -63486,7 +91587,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $5) @@ -63497,14 +91598,14 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) - (func $dynCall_iiii (type $15) + (func $dynCall_iiii (type $16) (param $0 i32) (param $1 i32) (param $2 i32) @@ -63516,9 +91617,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $dynCall_vi (type $3) @@ -63526,11 +91627,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $2) @@ -63540,11 +91641,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_viii (type $1) @@ -63558,9 +91659,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_viiii (type $7) @@ -63574,11 +91675,11 @@ local.get $3 local.get $4 local.get $0 - i32.const 7 + i32.const 15 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $dynCall_viiiii (type $13) @@ -63596,12 +91697,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 434 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -63618,9 +91719,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 442 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $4) @@ -63754,9 +91855,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -63766,7 +91867,7 @@ i32.wrap_i64 ) - (func $legalstub$dynCall_jiji (type $16) + (func $legalstub$dynCall_jiji (type $15) (param $0 i32) (param $1 i32) (param $2 i32) @@ -63786,9 +91887,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -63813,9 +91914,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 446 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\f0\87\c1\02\d0\87\01\e0\87\01" + ;; "\00\02\00\04\00\80\02\bf\03\80\08\a0\d0\c1\02\80\d0\01\90\d0\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/test_data/shared_cpp.cc b/test/extensions/filters/http/wasm/test_data/shared_cpp.cc index d0efaf87e0dc9..3f1be2bde0b21 100644 --- a/test/extensions/filters/http/wasm/test_data/shared_cpp.cc +++ b/test/extensions/filters/http/wasm/test_data/shared_cpp.cc @@ -14,18 +14,19 @@ class ExampleContext : public Context { static RegisterContextFactory register_ExampleContext(CONTEXT_FACTORY(ExampleContext)); FilterHeadersStatus ExampleContext::onRequestHeaders() { - auto result1 = setSharedData("shared_data_key1", "shared_data_value1"); - auto result2 = setSharedData("shared_data_key2", "shared_data_value2"); + CHECK_RESULT(setSharedData("shared_data_key1", "shared_data_value1")); + CHECK_RESULT(setSharedData("shared_data_key2", "shared_data_value2")); uint32_t cas = 0; - auto value2 = getSharedData("shared_data_key2", &cas); - auto result3 = setSharedData("shared_data_key2", "shared_data_value3", cas+1); // Bad cas. - logInfo("set " + std::to_string(result1) + " " + std::to_string(result2) + " " + std::to_string(result3)); + auto value2 = getSharedDataValue("shared_data_key2", &cas); + if (WasmResult::CasMismatch == setSharedData("shared_data_key2", "shared_data_value3", cas+1)) { // Bad cas. + logInfo("set CasMismatch"); + } return FilterHeadersStatus::Continue; } void ExampleContext::onLog() { - auto value1 = getSharedData("shared_data_key1"); + auto value1 = getSharedDataValue("shared_data_key1"); logDebug("get 1 " + value1->toString()); - auto value2 = getSharedData("shared_data_key2"); + auto value2 = getSharedDataValue("shared_data_key2"); logWarn("get 2 " + value2->toString()); } diff --git a/test/extensions/filters/http/wasm/test_data/shared_cpp.wasm b/test/extensions/filters/http/wasm/test_data/shared_cpp.wasm index 43319d30b1825..9b3493c880868 100644 Binary files a/test/extensions/filters/http/wasm/test_data/shared_cpp.wasm and b/test/extensions/filters/http/wasm/test_data/shared_cpp.wasm differ diff --git a/test/extensions/filters/http/wasm/test_data/shared_cpp.wat b/test/extensions/filters/http/wasm/test_data/shared_cpp.wat index 0af80ddb4e2e0..e45f12c846d6d 100644 --- a/test/extensions/filters/http/wasm/test_data/shared_cpp.wat +++ b/test/extensions/filters/http/wasm/test_data/shared_cpp.wat @@ -20,16 +20,19 @@ (type $18 (func (param f64 i32))) (type $19 (func (param i32 i32) (result i64))) (type $20 (func (param i32 i64))) - (type $21 (func (param i64 i32 i32) (result i32))) - (type $22 (func (param i64 i32) (result i32))) - (type $23 (func (param f64 i32) (result f64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) - (type $25 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $21 (func (param f64 i32) (result f64))) + (type $22 (func (param i64 i32 i32) (result i32))) + (type $23 (func (param i64 i32) (result i32))) + (type $24 (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type $25 (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $26 (func (param i32 i32 i32 i32 i32 i32 i32))) + (type $27 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___assert_fail" (func $___assert_fail (param i32 i32 i32 i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) + (import "env" "___cxa_pure_virtual" (func $___cxa_pure_virtual)) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___lock" (func $___lock (param i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "___syscall140" (func $___syscall140 (param i32 i32) (result i32))) @@ -41,17 +44,18 @@ (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_getSharedData" (func $_proxy_getSharedData (param i32 i32 i32 i32 i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_llvm_trap" (func $_llvm_trap)) + (import "env" "_proxy_getSharedData" (func $_proxy_getSharedData (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "_proxy_setSharedData" (func $_proxy_setSharedData (param i32 i32 i32 i32 i32) (result i32))) (import "env" "_pthread_cond_wait" (func $_pthread_cond_wait (param i32 i32) (result i32))) (import "env" "_pthread_equal" (func $_pthread_equal (param i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) - (import "env" "__table_base" (global $28 i32)) - (import "env" "DYNAMICTOP_PTR" (global $29 i32)) - (import "env" "memory" (memory $27 256 256)) - (import "env" "table" (table $26 231 231 funcref)) + (import "env" "__table_base" (global $30 i32)) + (import "env" "DYNAMICTOP_PTR" (global $31 i32)) + (import "env" "memory" (memory $29 256 256)) + (import "env" "table" (table $28 439 439 funcref)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) (export "___cxa_is_pointer_type" (func $___cxa_is_pointer_type)) @@ -104,46 +108,72 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $30 (mut i32) (i32.const 16960)) - (global $31 (mut i32) (i32.const 5259840)) - (elem $32 $26 (global.get $28) + (global $32 (mut i32) (i32.const 26704)) + (global $33 (mut i32) (i32.const 5269584)) + (elem $34 $28 (global.get $30) $b0 $__ZN7Context6asRootEv $__ZN7Context9asContextEv $__ZN14ExampleContext16onRequestHeadersEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv - $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv - $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv - $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv - $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close - $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 + $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE8GetArenaEv $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE12ByteSizeLongEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE13GetCachedSizeEv $__ZN7Context6asRootEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5valueEv $__ZNK6google8protobuf5Value3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv + $__ZNK6google8protobuf5Value12ByteSizeLongEv $__ZNK6google8protobuf5Value13GetCachedSizeEv $__ZNK6google8protobuf9ListValue3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf9ListValue12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv $__ZNK6google8protobuf6Struct3NewEv $__ZNK6google8protobuf9ListValue8GetArenaEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $__ZNK6google8protobuf9ListValue13IsInitializedEv $__ZNK6google8protobuf6Struct12ByteSizeLongEv $__ZNK6google8protobuf9ListValue13GetCachedSizeEv + $__ZN7Context9asContextEv $__ZN7Context6asRootEv $__ZN7Context6asRootEv $__ZNK6google8protobuf14FatalException4whatEv $__ZN7Context6asRootEv $___stdio_close $__ZNKSt3__217bad_function_call4whatEv $__ZNK6google8protobuf9ListValue20GetMaybeArenaPointerEv $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 - $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE - $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $b2 + $b0 $b0 $b0 $b0 $b0 $b0 $b0 $b0 + $b1 $_fmt_fp $b2 $__ZN11ContextBase14isRootCachableE12MetadataType $__ZN11ContextBase14isRootCachableE12MetadataType $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE3NewEPNS0_5ArenaE $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf11MessageLite31SerializeWithCachedSizesToArrayEPh + $__ZNK6google8protobuf5Value3NewEPNS0_5ArenaE $__ZN6google8protobuf5Value27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf9ListValue3NewEPNS0_5ArenaE $__ZN6google8protobuf9ListValue27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK6google8protobuf6Struct3NewEPNS0_5ArenaE $__ZN6google8protobuf6Struct27MergePartialFromCodedStreamEPNS0_2io16CodedInputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 + $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b2 $b3 $__ZN7Context13onRequestBodyEmb $__ZN7Context13onRequestBodyEmb $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE39InternalSerializeWithCachedSizesToArrayEbPh $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi - $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdio_write $___stdout_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 + $__ZN6google8protobuf2io20ZeroCopyOutputStream15WriteAliasedRawEPKvi $__ZN6google8protobuf2io18StringOutputStream4NextEPPvPi $___stdout_write $___stdio_write $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv $b3 $b3 $b3 $b4 $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv $b4 $b5 $___stdio_seek - $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $__ZL25default_terminate_handlerv $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev $b6 $b6 + $b6 $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv $___cxa_pure_virtual $__ZN6google8protobuf8internal20InitLogSilencerCountEv $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv $__ZL28demangling_terminate_handlerv $b6 $b6 $b7 $__ZN11ContextBaseD2Ev $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN14ExampleContext5onLogEv $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev - $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev - $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev - $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf14FatalExceptionD2Ev - $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev - $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv + $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EED2Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE5ClearEv $__ZN6google8protobuf5ValueD2Ev $__ZN6google8protobuf5ValueD0Ev $__ZN6google8protobuf5Value5ClearEv $__ZN6google8protobuf9ListValueD2Ev $__ZN6google8protobuf9ListValueD0Ev + $__ZN6google8protobuf9ListValue5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN6google8protobuf6StructD2Ev $__ZN6google8protobuf6StructD0Ev $__ZN6google8protobuf6Struct5ClearEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev $__ZN11RootContextD2Ev $__ZN11RootContextD0Ev + $__ZN7Context8onCreateEv $__ZN14ExampleContextD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf14FatalExceptionD2Ev $__ZN6google8protobuf14FatalExceptionD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv $__ZN7Context8onCreateEv $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN7Context8onCreateEv + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev + $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $__ZN6google8protobuf8internal14DestroyMessageEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv $__ZN6google8protobuf8internal21arena_destruct_objectINS1_29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE9ContainerEEEvPv $b7 $b7 $b7 $b7 $b7 $b7 $b7 $b7 - $b8 $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE - $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE - $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $_pop_arg_long_double + $b8 $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE11GetTypeNameEv $__ZNK6google8protobuf11MessageLite25InitializationErrorStringEv $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE21CheckTypeAndMergeFromERKS4_ $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf5Value11GetTypeNameEv $__ZN6google8protobuf5Value21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf5Value24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE + $__ZNK6google8protobuf9ListValue11GetTypeNameEv $__ZN6google8protobuf9ListValue21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf9ListValue24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZNK6google8protobuf6Struct11GetTypeNameEv $__ZN6google8protobuf6Struct21CheckTypeAndMergeFromERKNS0_11MessageLiteE $__ZNK6google8protobuf6Struct24SerializeWithCachedSizesEPNS0_2io17CodedOutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $__ZN11RootContext27onGrpcCreateInitialMetadataEj $__ZN11RootContext28onGrpcReceiveInitialMetadataEj $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj $__ZN6google8protobuf2io17ArrayOutputStream6BackUpEi $__ZN6google8protobuf2io18StringOutputStream6BackUpEi $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE $__ZN11RootContext11onConfigureENSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE + $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv + $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE + $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE $_pop_arg_long_double $b8 $b8 $b8 + $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 $b8 - $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi - $b10 $b10 $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 + $b9 $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE $b10 $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ + $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ $b11 $__ZN11RootContext18onHttpCallResponseEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEES5_S5_ $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b11 $b11 $b11 $b12 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b13) - (data $33 $27 (i32.const 1024) - "\db*\00\00\e0*\00\00\e8*\00\00\ee*") - (data $34 $27 (i32.const 1168) + (data $35 $29 (i32.const 1024) + "\d7:\00\00\dc:\00\00\e4:\00\00\ea:") + (data $36 $29 (i32.const 1168) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\03\03\03\03\03\03\03\03\03\03\03\03\07\03\03\04\05\05\05\06\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $35 $27 (i32.const 1488) + (data $37 $29 (i32.const 1488) "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" @@ -173,228 +203,388 @@ "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0" "\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2\f2" "\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0") - (data $36 $27 (i32.const 3472) + (data $38 $29 (i32.const 3472) "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01" "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $37 $27 (i32.const 3632) + (data $39 $29 (i32.const 3632) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $38 $27 (i32.const 3681) + (data $40 $29 (i32.const 3681) "\0b") - (data $39 $27 (i32.const 3690) + (data $41 $29 (i32.const 3690) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $40 $27 (i32.const 3739) + (data $42 $29 (i32.const 3739) "\0c") - (data $41 $27 (i32.const 3751) + (data $43 $29 (i32.const 3751) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $42 $27 (i32.const 3797) + (data $44 $29 (i32.const 3797) "\0e") - (data $43 $27 (i32.const 3809) + (data $45 $29 (i32.const 3809) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $44 $27 (i32.const 3855) + (data $46 $29 (i32.const 3855) "\10") - (data $45 $27 (i32.const 3867) + (data $47 $29 (i32.const 3867) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $46 $27 (i32.const 3922) + (data $48 $29 (i32.const 3922) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $47 $27 (i32.const 3971) + (data $49 $29 (i32.const 3971) "\0b") - (data $48 $27 (i32.const 3983) + (data $50 $29 (i32.const 3983) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $49 $27 (i32.const 4029) + (data $51 $29 (i32.const 4029) "\0c") - (data $50 $27 (i32.const 4041) + (data $52 $29 (i32.const 4041) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" "\00\00\00\a7\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d3\00\00\00\01\00\00\00\0b\00\00\00\0d\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d" "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" - "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00$\1a\00\00b\1b\00\00L\1a\00\00Y\1b\00\00p\11\00\00\00\00\00\00L" - "\1a\00\00H\1b\00\00x\11\00\00\00\00\00\00$\1a\00\00\e9\1b\00\00L\1a\00\00p\1b\00\00\98\11\00\00\00\00\00\00$\1a\00\00K\1c\00\00$\1a\00\00P\1c\00\00\b8\1a\00\00R\1d\00\00\00" - "\00\00\00\01\00\00\00\d8\11\00\00\00\00\00\00$\1a\00\00\91\1d\00\00L\1a\00\00t'\00\00\a0\12\00\00\00\00\00\00L\1a\00\00V&\00\00\00\12\00\00\00\00\00\00L\1a\00\00\13 \00\00\10" - "\12\00\00\00\00\00\00L\1a\00\00C \00\00 \12\00\00\00\00\00\00L\1a\00\00\09!\00\00\a0\12\00\00\00\00\00\00L\1a\00\00#&\00\00\a0\12\00\00\00\00\00\00\b8\1a\00\00\e1$\00\00\00" - "\00\00\00\01\00\00\00X\12\00\00\00\00\00\00$\1a\00\00N%\00\00L\1a\00\00=&\00\00\a0\12\00\00\00\00\00\00L\1a\00\00\a7'\00\00p\11\00\00\00\00\00\00L\1a\00\00\d6'\00\00\90" - "\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data $51 $27 (i32.const 4768) - "$\1a\00\00\d7,\00\00L\1a\00\00\a80\00\00\c8\12\00\00\00\00\00\00L\1a\00\00d1\00\00\c8\12\00\00\00\00\00\00$\1a\00\0002\00\00\05") - (data $52 $27 (i32.const 4828) - "/") - (data $53 $27 (i32.const 4852) - "\08\00\00\00\01\00\00\00k=") - (data $54 $27 (i32.const 4876) - "\02") - (data $55 $27 (i32.const 4891) - "\ff\ff\ff\ff\ff") - (data $56 $27 (i32.const 4960) - "\05") - (data $57 $27 (i32.const 4972) - "/") - (data $58 $27 (i32.const 4996) - "\09\00\00\00\01\00\00\00x5\00\00\00\04") - (data $59 $27 (i32.const 5020) + "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1\00\00\00<\1e\00\00\a3+\00\00d\1e\00\00\9a+\00\00p\11\00\00\00\00\00\00d" + "\1e\00\00\89+\00\00x\11\00\00\00\00\00\00<\1e\00\00E,\00\00<\1e\00\00J,\00\00\80*\00\00L-\00\00\00\00\00\00\01\00\00\00\c0\11\00\00\00\00\00\00<\1e\00\00\8b-\00\00d" + "\1e\00\00p7\00\00\88\12\00\00\00\00\00\00d\1e\00\00R6\00\00\e8\11\00\00\00\00\00\00d\1e\00\00\0f0\00\00\f8\11\00\00\00\00\00\00d\1e\00\00?0\00\00\08\12\00\00\00\00\00\00d" + "\1e\00\00\051\00\00\88\12\00\00\00\00\00\00d\1e\00\00\1f6\00\00\88\12\00\00\00\00\00\00\80*\00\00\dd4\00\00\00\00\00\00\01\00\00\00@\12\00\00\00\00\00\00<\1e\00\00J5\00\00d" + "\1e\00\0096\00\00\88\12\00\00\00\00\00\00d\1e\00\00\a37\00\00p\11\00\00\00\00\00\00d\1e\00\00\d27\00\00x\14\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data $53 $29 (i32.const 4744) + "<\1e\00\00\d6<\00\00d\1e\00\00\a7@\00\00\b0\12\00\00\00\00\00\00d\1e\00\00cA\00\00\b0\12\00\00\00\00\00\00<\1e\00\00/B\00\00\05") + (data $54 $29 (i32.const 4804) + "-") + (data $55 $29 (i32.const 4828) + "\08\00\00\00\01\00\00\00\88[\00\00\00\04") + (data $56 $29 (i32.const 4852) "\01") - (data $60 $27 (i32.const 5035) + (data $57 $29 (i32.const 4867) "\n\ff\ff\ff\ff") - (data $61 $27 (i32.const 5140) + (data $58 $29 (i32.const 4936) + "\05") + (data $59 $29 (i32.const 4948) + "-") + (data $60 $29 (i32.const 4972) + "\09\00\00\00\01\00\00\00vc") + (data $61 $29 (i32.const 4996) + "\02") + (data $62 $29 (i32.const 5011) + "\ff\ff\ff\ff\ff") + (data $63 $29 (i32.const 5116) "\n") - (data $62 $27 (i32.const 5179) + (data $64 $29 (i32.const 5155) "\ff\ff\ff\ff\ff") - (data $63 $27 (i32.const 5248) - "L\1a\00\00\a92\00\00\90\14\00\00\00\00\00\00$\1a\00\00k3\00\00L\1a\00\00\cb3\00\00\a8\14\00\00\00\00\00\00L\1a\00\00x3\00\00\b8\14\00\00\00\00\00\00$\1a\00\00\993\00\00" - "L\1a\00\00\a63\00\00\98\14\00\00\00\00\00\00L\1a\00\00\ad4\00\00\90\14\00\00\00\00\00\00L\1a\00\00\bd4\00\00\d0\14\00\00\00\00\00\00L\1a\00\00\f24\00\00\a8\14\00\00\00\00\00\00" - "L\1a\00\00\ce4\00\00\f0\14\00\00\00\00\00\00L\1a\00\00\145\00\00\a8\14\00\00\00\00\00\00\9c\1a\00\00<5\00\00\9c\1a\00\00>5\00\00L\1a\00\00@5\00\00\98\14") - (data $64 $27 (i32.const 5444) + (data $65 $29 (i32.const 5224) + "d\1e\00\00\a6B\00\00x\14\00\00\00\00\00\00<\1e\00\00eC\00\00d\1e\00\00\c5C\00\00\90\14\00\00\00\00\00\00d\1e\00\00rC\00\00\a0\14\00\00\00\00\00\00<\1e\00\00\93C\00\00" + "d\1e\00\00\a0C\00\00\80\14\00\00\00\00\00\00d\1e\00\00UE\00\00\c8\14\00\00\00\00\00\00<\1e\00\00\84E\00\00d\1e\00\008F\00\00\c8\14\00\00\00\00\00\00d\1e\00\00{F\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\c8F\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\0eG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00>G\00\00\c8\14\00\00\00\00\00\00d\1e\00\00|G\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\adG\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\fdG\00\00\c8\14\00\00\00\00\00\00d\1e\00\006H\00\00\c8\14\00\00\00\00\00\00d\1e\00\00qH\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\adH\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\f0H\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\1eI\00\00\c8\14\00\00\00\00\00\00d\1e\00\00QI\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\0dJ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00:J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00kJ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\a9J\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00!K\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\e6J\00\00\c8\14\00\00\00\00\00\00d\1e\00\00hK\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\b1K\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\0cL\00\00\c8\14\00\00\00\00\00\00d\1e\00\007L\00\00\c8\14\00\00\00\00\00\00d\1e\00\00qL\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\a5L\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\f5L\00\00\c8\14\00\00\00\00\00\00d\1e\00\00$M\00\00\c8\14\00\00\00\00\00\00d\1e\00\00]M\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\96M\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\bbO\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\09P\00\00\c8\14\00\00\00\00\00\00d\1e\00\00DP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00pP\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\baP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\efP\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\"Q\00\00\c8\14\00\00\00\00\00\00d\1e\00\00YQ\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\8eQ\00\00\c8\14\00\00\00\00\00\00d\1e\00\00$R\00\00\c8\14\00\00\00\00\00\00d\1e\00\00VR\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\88R\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\e0R\00\00\c8\14\00\00\00\00\00\00d\1e\00\00(S\00\00\c8\14\00\00\00\00\00\00d\1e\00\00`S\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\aeS\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\edS\00\00\c8\14\00\00\00\00\00\00d\1e\00\000T\00\00\c8\14\00\00\00\00\00\00d\1e\00\00aT\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9bU\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\dbU\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\0eV\00\00\c8\14\00\00\00\00\00\00d\1e\00\00HV\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\81V\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\beV\00\00\c8\14\00\00\00\00\00\00d\1e\00\00;W\00\00\c8\14\00\00\00\00\00\00d\1e\00\00gW\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9dW\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\f1W\00\00\c8\14\00\00\00\00\00\00d\1e\00\00)X\00\00\c8\14\00\00\00\00\00\00d\1e\00\00lX\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\9dX\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\cdX\00\00\c8\14\00\00\00\00\00\00d\1e\00\00\08Y\00\00\c8\14\00\00\00\00\00\00d\1e\00\00JY\00\00\c8\14\00\00\00\00\00\00d\1e\00\009Z\00\00" + "\c8\14\00\00\00\00\00\00d\1e\00\00\c4Z\00\00x\14\00\00\00\00\00\00d\1e\00\00\d4Z\00\00\f0\18\00\00\00\00\00\00d\1e\00\00\e5Z\00\00\90\14\00\00\00\00\00\00d\1e\00\00\07[\00\00" + "\10\19\00\00\00\00\00\00d\1e\00\00+[\00\00\90\14\00\00\00\00\00\00d*\00\00S[\00\00d*\00\00U[\00\00d*\00\00W[\00\00d\1e\00\00Y[\00\00\80\14") + (data $66 $29 (i32.const 6508) "\88\11\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" - "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\a0\11\00\00\08\00\00\00\09\00\00\00\0b\00\00\00" - "\01\00\00\00\n\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\0c\00\00\00\ff\ff\ff\ff\00\00\00\00\01") - (data $65 $27 (i32.const 5617) - "\12\00\00\0c\00\00\00\0d\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12" - "\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00`\12\00\00\0f\00\00\00\10\00\00\00\06\00\00\00\16\00\00\00\07\00\00\00\17\00\00\00\18\00\00\00\11\00\00\00\19\00\00\00\03" - "\00\00\00\07\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00\06\00\00\00\1b\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\e0\11\00\00\12\00\00\00\13\00\00\00\09\00\00\00\1c\00\00\00\09\00\00\00\1d" - "\00\00\00\1e\00\00\00\14\00\00\00\1f\00\00\00\03\00\00\00\n\00\00\00\n\00\00\00 \00\00\00\0b\00\00\00\06\00\00\00!\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00\f0\11\00\00\0c\00\00\00\15" - "\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13" - "\00\00\00\"\00\00\00#\00\00\00\00\00\00\000\12\00\00\16\00\00\00\17\00\00\00\0c\00\00\00$\00\00\00\0b\00\00\00%\00\00\00&\00\00\00\18\00\00\00'\00\00\00\03\00\00\00\0d\00\00\00\0c" - "\00\00\00(\00\00\00\0e\00\00\00\06\00\00\00)\00\00\00\04\00\00\00\13\00\00\00\00\00\00\00 \12\00\00\0c\00\00\00\19\00\00\00\02\00\00\00\0d\00\00\00\04\00\00\00\0e\00\00\00\0f\00\00\00\0e" - "\00\00\00\10\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\11\00\00\00\05\00\00\00\06\00\00\00\12\00\00\00\03\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00\00\00\00\00p\12\00\00\1a\00\00\00\1b" - "\00\00\00*\00\00\00+\00\00\00\01\00\00\00\02\00\00\00\0f\00\00\00\10\00\00\00\1c\00\00\00\11\00\00\00\01\00\00\00\12\00\00\00\13\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00x" - "\11\00\00\01\00\00\00\1d\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00,\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00\04" - "\00\00\00\1e\00\00\00\06\00\00\00\00\00\00\00\80\12\00\00\1f\00\00\00 \00\00\00-\00\00\00\00\00\00\00\a8\12\00\00!\00\00\00\"\00\00\00\05\00\00\00\15\00\00\00\01\00\00\00\06\00\00\00." - "\00\00\00\00\00\00\00\b8\12\00\00!\00\00\00#\00\00\00\07\00\00\00\16\00\00\00\02\00\00\00\06\00\00\00.") - (data $66 $27 (i32.const 6365) - "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00\\=\00\00a=\00\00\10\0d\00\00\d0\12\00\00`\13") - (data $67 $27 (i32.const 6604) - "\ec:") - (data $68 $27 (i32.const 6664) - "\80\14\00\00$\00\00\00%\00\00\000\00\00\00\02\00\00\00\00\00\00\00\98\14\00\00&\00\00\00'\00\00\00(\00\00\00)\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\00\00\00\00" - "\c0\14\00\00&\00\00\00*\00\00\00(\00\00\00)\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\00\00\00\00\d0\14\00\00+\00\00\00,\00\00\001\00\00\00\00\00\00\00\e0\14\00\00" - "+\00\00\00-\00\00\001\00\00\00\00\00\00\00\10\15\00\00&\00\00\00.\00\00\00(\00\00\00)\00\00\00\0c\00\00\00\00\00\00\000\15\00\00&\00\00\00/\00\00\00(\00\00\00)\00\00\00" - "\0b\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00shared_data_key1\00shared_data_value1\00shared_data_" - "key2\00shared_data_value2\00shared_data_value3\00set \00 \00get 1 \00get 2 \00" - "14ExampleContext\007Context\0011ContextBase\00NSt3__210__function6__fu" - "ncI3$_0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_" - "deleteIS6_EEEEjP11RootContextEEE\00NSt3__210__function6__baseIFNS_" - "10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextE" - "EE\003$_0\00N6google8protobuf8internal29InternalMetadataWithArenaBas" - "eINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEE" - "EENS1_29InternalMetadataWithArenaLiteEE9ContainerE\00/usr/local/in" - "clude/google/protobuf/arenastring.h\00CHECK failed: initial_value " - "!= NULL: \00NSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocat" - "orIcEEEE\00NSt3__221__basic_string_commonILb1EEE\00/home/jplev_googl" - "e_com/envoy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/go" - "ogle/protobuf/repeated_field.h\00CHECK failed: (index) >= (0): \00CH" - "ECK failed: (index) < (current_size_): \00/usr/local/include/googl" - "e/protobuf/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHEC" - "K failed: m_->index_of_first_non_null_ == m_->num_buckets_ || m_" - "->table_[m_->index_of_first_non_null_] != NULL: \00CHECK failed: !" - "tree->empty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00goog" - "le.protobuf.Value.string_value\00google.protobuf.Struct.FieldsEntr" - "y.key\00CHECK failed: (&from) != (this): \00CHECK failed: (&other) !" - "= (this): \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6goo" - "gle8protobuf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_DoN" - "otUseENSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocator" - "IcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE" - "\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEnt" - "ry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_" - "traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9F" - "ieldTypeE9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHECK" - " failed: TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntryI" - "sTree(b): \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK fai" - "led: index_of_first_non_null_ == num_buckets_ || table_[index_of" - "_first_non_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodePt" - "r(node)) == end(): \00CHECK failed: (count) <= (kMaxLength): \00CHEC" - "K failed: (result.bucket_index_) == (b & ~static_cast" - "(1)): \00CHECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK fail" - "ed: !TableEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK fai" - "led: (count) == (tree->size()): \00CHECK failed: (new_num_buckets)" - " >= (kMinTableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK f" - "ailed: (n & (n - 1)) == (0): \00CHECK failed: table_[b] == table_[" - "b + 1] && (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_st" - "ringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8Inne" - "rMapE\00N6google8protobuf4hashINSt3__212basic_stringIcNS2_11char_t" - "raitsIcEENS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f)" - " != NULL\00/usr/local/include/google/protobuf/stubs/casts.h\00down_c" - "ast\00google.protobuf.Struct\00N6google8protobuf6StructE\00N6google8pr" - "otobuf5ValueE\00N6google8protobuf8internal12MapEntryImplINS0_27Str" - "uct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_string" - "IcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14Wir" - "eFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK fai" - "led: (n) >= (0): \00google.protobuf.ListValue\00N6google8protobuf9Li" - "stValueE\00google.protobuf.Value\0011RootContext\00no context factory " - "for root_id: \00N6google8protobuf14FatalExceptionE\00google/protobuf" - "/stubs/common.cc\00This program requires version \00%d.%d.%d\00 of the" - " Protocol Buffer runtime library, but the installed version is \00" - ". Please update your library. If you compiled the program your" - "self, make sure that your headers are from the same version of P" - "rotocol Buffers as your link-time library. (Version verificatio" - "n failed in \"\00\".)\00This program was compiled against version \00 of" - " the Protocol Buffer runtime library, which is not compatible wi" - "th the installed version (\00). Contact the program author for an" - " update. If you compiled the program yourself, make sure that y" - "our headers are from the same version of Protocol Buffers as you" - "r link-time library. (Version verification failed in \"\00[libprot" - "obuf %s %s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::alloca" - "te(size_t n) 'n' exceeds maximum supported size\00%u\00google/protob" - "uf/arena.cc\00CHECK failed: (min_bytes) <= (std::numeric_limits::max() - kBlockHeaderSize): \00google/protobuf/generated_mes" - "sage_util.cc\00Not implemented field number \00 with type \00CHECK fai" - "led: (scc->visit_status.load(std::memory_order_relaxed)) == (SCC" - "InfoBase::kRunning): \00google/protobuf/message_lite.cc\00CHECK fail" - "ed: !coded_out.HadError(): \00(cannot determine missing fields for" - " lite message)\00N6google8protobuf11MessageLiteE\00google/protobuf/r" - "epeated_field.cc\00CHECK failed: (new_size) <= ((std::numeric_limi" - "ts::max() - kRepHeaderSize) / sizeof(old_rep->elements[0" - "])): \00Requested size is too large to fit into size_t.\00google/pro" - "tobuf/wire_format_lite.cc\00CHECK failed: (value.size()) <= (kint3" - "2max): \00serializing\00parsing\00 '%s'\00String field\00 contains invalid" - " \00UTF-8 data when \00 a protocol \00buffer. Use the 'bytes' type if " - "you intend to send raw \00bytes. \00google/protobuf/io/coded_stream." - "cc\00CHECK failed: (buffer_size) >= (0): \00A protocol message was r" - "ejected because it was too big (more than \00 bytes). To increase" - " the limit (or to disable these warnings), see CodedInputStream:" - ":SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.\00goog" - "le/protobuf/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (coun" - "t) >= (0): \00CHECK failed: (last_returned_size_) > (0): \00BackUp()" - " can only be called after a successful Next().\00CHECK failed: (co" - "unt) <= (last_returned_size_): \00N6google8protobuf2io17ArrayOutpu" - "tStreamE\00CHECK failed: target_ != NULL: \00CHECK failed: (count) <" - "= (target_->size()): \00Cannot allocate buffer larger than kint32m" - "ax for \00StringOutputStream.\00N6google8protobuf2io18StringOutputSt" - "reamE\00google/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutput" - "Stream doesn't support aliasing. Reaching here usually means a Z" - "eroCopyOutputStream implementation bug.\00N6google8protobuf2io20Ze" - "roCopyOutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00" - "nan\00NAN\00.\00std::bad_function_call\00NSt3__217bad_function_callE\00mut" - "ex lock failed\00%d\00terminating with %s exception of type %s: %s\00t" - "erminating with %s exception of type %s\00terminating with %s fore" - "ign exception\00terminating\00uncaught\00St9exception\00N10__cxxabiv116_" - "_shim_type_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_inf" - "oE\00N10__cxxabiv117__class_type_infoE\00pthread_once failure in __c" - "xa_get_globals_fast()\00cannot create pthread key for __cxa_get_gl" - "obals()\00cannot zero out thread value for __cxa_get_globals()\00ter" - "minate_handler unexpectedly returned\00St11logic_error\00St12length_" - "error\00N10__cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase" - "_type_infoE\00N10__cxxabiv123__fundamental_type_infoE\00c\00h\00N10__cxx" - "abiv121__vmi_class_type_infoE") + "\04\00\00\00\05\00\00\00\06\00\00\00\00\00\00\00p\11\00\00\01\00\00\00\07\00\00\00\09\00\00\00\n\00\00\00\01\00\00\00\02") + (data $67 $29 (i32.const 6624) + "\01\00\00\00@\19") + (data $68 $29 (i32.const 6644) + "\98\11\00\00\ff\ff\ff\ff\00\00\00\00\01") + (data $69 $29 (i32.const 6668) + "\e8\11\00\00\08\00\00\00\09\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00" + "\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00H\12\00\00\0b\00\00\00\0c\00\00\00\05\00\00\00\14\00\00\00\06\00\00\00\15\00\00\00\16\00\00\00\0d\00\00\00\17\00\00\00" + "\02\00\00\00\06\00\00\00\07\00\00\00\18\00\00\00\07\00\00\00\05\00\00\00\19\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\c8\11\00\00\0e\00\00\00\0f\00\00\00\08\00\00\00\1a\00\00\00\08\00\00\00" + "\1b\00\00\00\1c\00\00\00\10\00\00\00\1d\00\00\00\02\00\00\00\09\00\00\00\09\00\00\00\1e\00\00\00\n\00\00\00\05\00\00\00\1f\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\d8\11\00\00\08\00\00\00" + "\11\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00" + "\11\00\00\00 \00\00\00!\00\00\00\00\00\00\00\18\12\00\00\12\00\00\00\13\00\00\00\0b\00\00\00\"\00\00\00\n\00\00\00#\00\00\00$\00\00\00\14\00\00\00%\00\00\00\02\00\00\00\0c\00\00\00" + "\0b\00\00\00&\00\00\00\0d\00\00\00\05\00\00\00'\00\00\00\04\00\00\00\11\00\00\00\00\00\00\00\08\12\00\00\08\00\00\00\15\00\00\00\01\00\00\00\0b\00\00\00\03\00\00\00\0c\00\00\00\0d\00\00\00" + "\n\00\00\00\0e\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\0f\00\00\00\04\00\00\00\05\00\00\00\10\00\00\00\03\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\00\00\00\00X\12\00\00\16\00\00\00" + "\17\00\00\00(\00\00\00)\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\0f\00\00\00\18\00\00\00\10\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\13\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00" + "x\11\00\00\01\00\00\00\19\00\00\00\01\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00*\00\00\00\04\00\00\00\01\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\02\00\00\00\08\00\00\00" + "\04\00\00\00\1a\00\00\00\06\00\00\00\00\00\00\00h\12\00\00\1b\00\00\00\1c\00\00\00+\00\00\00\00\00\00\00\90\12\00\00\1d\00\00\00\1e\00\00\00\05\00\00\00\14\00\00\00\01\00\00\00\06\00\00\00" + ",\00\00\00\00\00\00\00\a0\12\00\00\1d\00\00\00\1f\00\00\00\07\00\00\00\15\00\00\00\02\00\00\00\06\00\00\00,") + (data $70 $29 (i32.const 7417) + "\01\00\00\00\09\00\00\00\00\00\00\08\00\00\00\01\00\00\00 \00\00\00\00\10\04\00\00hc\00\00vc\00\00\10\0d\00\00\b8\12\00\00H\13") + (data $71 $29 (i32.const 7656) + "\fc`") + (data $72 $29 (i32.const 7716) + "h\14\00\00 \00\00\00!\00\00\00.\00\00\00\00\00\00\00\80\14\00\00\"\00\00\00#\00\00\00$\00\00\00%\00\00\00\0b\00\00\00\01\00\00\00\02\00\00\00\02\00\00\00\00\00\00\00\a8\14\00\00" + "\"\00\00\00&\00\00\00$\00\00\00%\00\00\00\0b\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\00\00\00\00\b8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\16\00\00\00\17\00\00\00" + "\18\00\00\00'\00\00\00(\00\00\00\00\00\00\00\c8\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\02\00\00\00\17\00\00\00\18\00\00\00'\00\00\00)\00\00\00\00\00\00\00\d0\14\00\00" + "\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\19\00\00\00\17\00\00\00\1a\00\00\00'\00\00\00*\00\00\00\00\00\00\00\e0\14\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1b\00\00\00" + "\17\00\00\00\18\00\00\00'\00\00\00+\00\00\00\00\00\00\00\f0\14\00\00\10\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1c\00\00\00\1d\00\00\00\18\00\00\00'\00\00\00,") + (data $73 $29 (i32.const 8037) + "\15\00\00\11\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\1e\00\00\00\1f\00\00\00\18\00\00\00'\00\00\00-\00\00\00\00\00\00\00\10\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00 " + "\00\00\00\17\00\00\00!\00\00\00'\00\00\00.\00\00\00\00\00\00\00 \15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\"\00\00\00\17\00\00\00\18\00\00\00'\00\00\00/\00\00\00\00" + "\00\00\000\15\00\00\12\00\00\00\13\00\00\00\14\00\00\00\15\00\00\00#\00\00\00$\00\00\00\18\00\00\00'\00\00\000\00\00\00\00\00\00\00@\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00%\00\00\00\17\00\00\00\18\00\00\00'\00\00\001\00\00\00\00\00\00\00P\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00&\00\00\00\17\00\00\00\18\00\00\00'\00\00\002" + "\00\00\00\00\00\00\00`\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00'\00\00\00\17\00\00\00\18\00\00\00'\00\00\003\00\00\00\00\00\00\00p\15\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00(\00\00\00\17\00\00\00\18\00\00\00'\00\00\004\00\00\00\00\00\00\00\80\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00)\00\00\00\17\00\00\00\18\00\00\00'" + "\00\00\005\00\00\00\00\00\00\00\90\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00*\00\00\00\17\00\00\00\18\00\00\00'\00\00\006\00\00\00\00\00\00\00\a0\15\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00+\00\00\00\17\00\00\00\18\00\00\00'\00\00\007\00\00\00\00\00\00\00\b0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00,\00\00\00\17\00\00\00\18" + "\00\00\00'\00\00\008\00\00\00\00\00\00\00\c0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00-\00\00\00\17\00\00\00\18\00\00\00'\00\00\009\00\00\00\00\00\00\00\d0\15\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00.\00\00\00\17\00\00\00\18\00\00\00'\00\00\00:\00\00\00\00\00\00\00\e0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00/\00\00\00\17" + "\00\00\00\18\00\00\00'\00\00\00;\00\00\00\00\00\00\00\f0\15\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\000\00\00\00\17\00\00\00\18\00\00\00'\00\00\00<") + (data $74 $29 (i32.const 8741) + "\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\001\00\00\00\17\00\00\00\18\00\00\00'\00\00\00=\00\00\00\00\00\00\00\10\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\002" + "\00\00\00\17\00\00\00\18\00\00\00'\00\00\00>\00\00\00\00\00\00\00 \16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\003\00\00\00\17\00\00\00\18\00\00\00'\00\00\00?\00\00\00\00" + "\00\00\000\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\004\00\00\00\17\00\00\00\18\00\00\00'\00\00\00@\00\00\00\00\00\00\00@\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\005\00\00\00\17\00\00\00\18\00\00\00'\00\00\00A\00\00\00\00\00\00\00P\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\006\00\00\00\17\00\00\00\18\00\00\00'\00\00\00B" + "\00\00\00\00\00\00\00`\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\007\00\00\00\17\00\00\00\18\00\00\00'\00\00\00C\00\00\00\00\00\00\00p\16\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\008\00\00\00\17\00\00\009\00\00\00'\00\00\00D\00\00\00\00\00\00\00\80\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00:\00\00\00\17\00\00\00\18\00\00\00'" + "\00\00\00E\00\00\00\00\00\00\00\90\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00;\00\00\00\17\00\00\00\18\00\00\00'\00\00\00F\00\00\00\00\00\00\00\a0\16\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00<\00\00\00\17\00\00\00=\00\00\00'\00\00\00G\00\00\00\00\00\00\00\b0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00>\00\00\00\17\00\00\00\18" + "\00\00\00'\00\00\00H\00\00\00\00\00\00\00\c0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00?\00\00\00\17\00\00\00\18\00\00\00'\00\00\00I\00\00\00\00\00\00\00\d0\16\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00@\00\00\00\17\00\00\00\18\00\00\00'\00\00\00J\00\00\00\00\00\00\00\e0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00A\00\00\00\17" + "\00\00\00B\00\00\00'\00\00\00K\00\00\00\00\00\00\00\f0\16\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00C\00\00\00\17\00\00\00\18\00\00\00'\00\00\00L") + (data $75 $29 (i32.const 9445) + "\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00D\00\00\00\17\00\00\00\18\00\00\00'\00\00\00M\00\00\00\00\00\00\00\10\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00E" + "\00\00\00\17\00\00\00\18\00\00\00'\00\00\00N\00\00\00\00\00\00\00 \17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00F\00\00\00\17\00\00\00\18\00\00\00'\00\00\00O\00\00\00\00" + "\00\00\000\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00G\00\00\00\17\00\00\00\18\00\00\00'\00\00\00P\00\00\00\00\00\00\00@\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f" + "\00\00\00H\00\00\00\17\00\00\00\18\00\00\00'\00\00\00Q\00\00\00\00\00\00\00P\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00I\00\00\00\17\00\00\00\18\00\00\00'\00\00\00R" + "\00\00\00\00\00\00\00`\17\00\00\16\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00J\00\00\00K\00\00\00\18\00\00\00'\00\00\00S\00\00\00\00\00\00\00p\17\00\00\0c\00\00\00\0d\00\00\00\0e" + "\00\00\00\0f\00\00\00L\00\00\00\17\00\00\00\18\00\00\00'\00\00\00T\00\00\00\00\00\00\00\80\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00M\00\00\00\17\00\00\00N\00\00\00'" + "\00\00\00U\00\00\00\00\00\00\00\90\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00O\00\00\00\17\00\00\00\18\00\00\00'\00\00\00V\00\00\00\00\00\00\00\a0\17\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00P\00\00\00\17\00\00\00\18\00\00\00'\00\00\00W\00\00\00\00\00\00\00\b0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00Q\00\00\00\17\00\00\00\18" + "\00\00\00'\00\00\00X\00\00\00\00\00\00\00\c0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00R\00\00\00\17\00\00\00\18\00\00\00'\00\00\00Y\00\00\00\00\00\00\00\d0\17\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00S\00\00\00\17\00\00\00\18\00\00\00'\00\00\00Z\00\00\00\00\00\00\00\e0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00T\00\00\00\17" + "\00\00\00U\00\00\00'\00\00\00[\00\00\00\00\00\00\00\f0\17\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00V\00\00\00\17\00\00\00W\00\00\00'\00\00\00\\") + (data $76 $29 (i32.const 10149) + "\18\00\00\1a\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00X\00\00\00Y\00\00\00\18\00\00\00'\00\00\00]\00\00\00\00\00\00\00\10\18\00\00\1b\00\00\00\1c\00\00\00\0e\00\00\00\0f\00\00\00Z" + "\00\00\00[\00\00\00\18\00\00\00'\00\00\00^\00\00\00\00\00\00\00 \18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00\\\00\00\00\17\00\00\00\18\00\00\00'\00\00\00_\00\00\00\00" + "\00\00\000\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00]\00\00\00\17\00\00\00\18\00\00\00'\00\00\00`\00\00\00\00\00\00\00@\18\00\00\1d\00\00\00\1e\00\00\00\1f\00\00\00\0f" + "\00\00\00^\00\00\00_\00\00\00\18\00\00\00'\00\00\00a\00\00\00\00\00\00\00P\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00`\00\00\00\17\00\00\00\18\00\00\00'\00\00\00b" + "\00\00\00\00\00\00\00`\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00a\00\00\00\17\00\00\00\18\00\00\00'\00\00\00c\00\00\00\00\00\00\00p\18\00\00 \00\00\00\0d\00\00\00!" + "\00\00\00\0f\00\00\00b\00\00\00c\00\00\00\18\00\00\00'\00\00\00d\00\00\00\00\00\00\00\80\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00d\00\00\00\17\00\00\00\18\00\00\00'" + "\00\00\00e\00\00\00\00\00\00\00\90\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00e\00\00\00\17\00\00\00\18\00\00\00'\00\00\00f\00\00\00\00\00\00\00\a0\18\00\00\0c\00\00\00\0d" + "\00\00\00\0e\00\00\00\0f\00\00\00f\00\00\00\17\00\00\00\18\00\00\00'\00\00\00g\00\00\00\00\00\00\00\b0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00g\00\00\00\17\00\00\00\18" + "\00\00\00'\00\00\00h\00\00\00\00\00\00\00\c0\18\00\00\"\00\00\00\0d\00\00\00#\00\00\00\0f\00\00\00h\00\00\00i\00\00\00\18\00\00\00'\00\00\00i\00\00\00\00\00\00\00\d0\18\00\00\0c" + "\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00j\00\00\00\17\00\00\00\18\00\00\00'\00\00\00j\00\00\00\00\00\00\00\e0\18\00\00\0c\00\00\00\0d\00\00\00\0e\00\00\00\0f\00\00\00k\00\00\00\17" + "\00\00\00\18\00\00\00'\00\00\00k\00\00\00\00\00\00\00\f0\18\00\00l\00\00\00m\00\00\00/") + (data $77 $29 (i32.const 10829) + "\19\00\00l\00\00\00n\00\00\00/\00\00\00\00\00\00\000\19\00\00\"\00\00\00o\00\00\00$\00\00\00%\00\00\00\0c\00\00\00\00\00\00\00X\19\00\00\"\00\00\00p\00\00\00$\00\00\00%" + "\00\00\00\0b\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00shared_data_key1\00shared_data_value1\00setShared" + "Data(\"shared_data_key1\", \"shared_data_value1\")\00shared_data_key2\00" + "shared_data_value2\00setSharedData(\"shared_data_key2\", \"shared_dat" + "a_value2\")\00shared_data_value3\00set CasMismatch\00get 1 \00get 2 \0014Ex" + "ampleContext\007Context\0011ContextBase\00getSharedData returned WasmE" + "rror: \00BadArgument\00SerializationFailure\00ParseFailure\00BadExpressi" + "on\00InvalidMemoryAccess\00Empty\00CasMismatch\00ResultMismatch\003$_0\00N6g" + "oogle8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212" + "basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29Int" + "ernalMetadataWithArenaLiteEE9ContainerE\00/usr/local/include/googl" + "e/protobuf/arenastring.h\00CHECK failed: initial_value != NULL: \00N" + "St3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE\00NS" + "t3__221__basic_string_commonILb1EEE\00/home/piotrsikora/Google/env" + "oy/api/wasm/cpp/struct_lite.pb.cc\00/usr/local/include/google/prot" + "obuf/repeated_field.h\00CHECK failed: (index) >= (0): \00CHECK faile" + "d: (index) < (current_size_): \00/usr/local/include/google/protobu" + "f/map.h\00CHECK failed: (bucket_index_ & 1) == (0): \00CHECK failed:" + " m_->index_of_first_non_null_ == m_->num_buckets_ || m_->table_[" + "m_->index_of_first_non_null_] != NULL: \00CHECK failed: !tree->emp" + "ty(): \00CHECK failed: node_ != NULL && m_ != NULL: \00google.protob" + "uf.Value.string_value\00google.protobuf.Struct.FieldsEntry.key\00CHE" + "CK failed: (&from) != (this): \00CHECK failed: (&other) != (this):" + " \00N6google8protobuf27Struct_FieldsEntry_DoNotUseE\00N6google8proto" + "buf8internal12MapEntryLiteINS0_27Struct_FieldsEntry_DoNotUseENSt" + "3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0" + "_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSD_11ELi0EEE\00N6google" + "8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotU" + "seENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcE" + "ENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE" + "9ELSE_11ELi0EEE\00CHECK failed: (it.m_) == (this): \00CHECK failed: " + "TableEntryIsNonEmptyList(b): \00CHECK failed: TableEntryIsTree(b):" + " \00CHECK failed: GetArenaNoVirtual() == NULL: \00CHECK failed: inde" + "x_of_first_non_null_ == num_buckets_ || table_[index_of_first_no" + "n_null_] != NULL: \00CHECK failed: find(*KeyPtrFromNodePtr(node)) " + "== end(): \00CHECK failed: (count) <= (kMaxLength): \00CHECK failed:" + " (result.bucket_index_) == (b & ~static_cast(1)): \00CH" + "ECK failed: (table_[b]) == (table_[b ^ 1]): \00CHECK failed: !Tabl" + "eEntryIsTree(b) && !TableEntryIsTree(b ^ 1): \00CHECK failed: (cou" + "nt) == (tree->size()): \00CHECK failed: (new_num_buckets) >= (kMin" + "TableSize): \00CHECK failed: n >= kMinTableSize: \00CHECK failed: (n" + " & (n - 1)) == (0): \00CHECK failed: table_[b] == table_[b + 1] &&" + " (b & 1) == 0: \00N6google8protobuf3MapINSt3__212basic_stringIcNS2" + "_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMapE\00N6g" + "oogle8protobuf4hashINSt3__212basic_stringIcNS2_11char_traitsIcEE" + "NS2_9allocatorIcEEEEEE\00f == NULL || dynamic_cast(f) != NULL\00" + "/usr/local/include/google/protobuf/stubs/casts.h\00down_cast\00googl" + "e.protobuf.Struct\00N6google8protobuf6StructE\00N6google8protobuf5Va" + "lueE\00N6google8protobuf8internal12MapEntryImplINS0_27Struct_Field" + "sEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11c" + "har_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLi" + "te9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperE\00CHECK failed: (n) " + ">= (0): \00google.protobuf.ListValue\00N6google8protobuf9ListValueE\00" + "google.protobuf.Value\0011RootContext\00no context factory for root_" + "id: \00N6google8protobuf14FatalExceptionE\00google/protobuf/stubs/co" + "mmon.cc\00This program requires version \00%d.%d.%d\00 of the Protocol" + " Buffer runtime library, but the installed version is \00. Please" + " update your library. If you compiled the program yourself, mak" + "e sure that your headers are from the same version of Protocol B" + "uffers as your link-time library. (Version verification failed " + "in \"\00\".)\00This program was compiled against version \00 of the Prot" + "ocol Buffer runtime library, which is not compatible with the in" + "stalled version (\00). Contact the program author for an update. " + " If you compiled the program yourself, make sure that your heade" + "rs are from the same version of Protocol Buffers as your link-ti" + "me library. (Version verification failed in \"\00[libprotobuf %s %" + "s:%d] %s\n\00INFO\00WARNING\00ERROR\00FATAL\00allocator::allocate(size_t" + " n) 'n' exceeds maximum supported size\00%d\00%u\00google/protobuf/are" + "na.cc\00CHECK failed: (min_bytes) <= (std::numeric_limits:" + ":max() - kBlockHeaderSize): \00google/protobuf/generated_message_u" + "til.cc\00Not implemented field number \00 with type \00CHECK failed: (" + "scc->visit_status.load(std::memory_order_relaxed)) == (SCCInfoBa" + "se::kRunning): \00google/protobuf/message_lite.cc\00CHECK failed: !c" + "oded_out.HadError(): \00(cannot determine missing fields for lite " + "message)\00N6google8protobuf11MessageLiteE\00google/protobuf/repeate" + "d_field.cc\00CHECK failed: (new_size) <= ((std::numeric_limits::max() - kRepHeaderSize) / sizeof(old_rep->elements[0])): \00" + "Requested size is too large to fit into size_t.\00google/protobuf/" + "wire_format_lite.cc\00CHECK failed: (value.size()) <= (kint32max):" + " \00serializing\00parsing\00 '%s'\00String field\00 contains invalid \00UTF-" + "8 data when \00 a protocol \00buffer. Use the 'bytes' type if you in" + "tend to send raw \00bytes. \00google/protobuf/io/coded_stream.cc\00CHE" + "CK failed: (buffer_size) >= (0): \00A protocol message was rejecte" + "d because it was too big (more than \00 bytes). To increase the l" + "imit (or to disable these warnings), see CodedInputStream::SetTo" + "talBytesLimit() in google/protobuf/io/coded_stream.h.\00google/pro" + "tobuf/io/zero_copy_stream_impl_lite.cc\00CHECK failed: (count) >= " + "(0): \00CHECK failed: (last_returned_size_) > (0): \00BackUp() can o" + "nly be called after a successful Next().\00CHECK failed: (count) <" + "= (last_returned_size_): \00N6google8protobuf2io17ArrayOutputStrea" + "mE\00CHECK failed: target_ != NULL: \00CHECK failed: (count) <= (tar" + "get_->size()): \00Cannot allocate buffer larger than kint32max for" + " \00StringOutputStream.\00N6google8protobuf2io18StringOutputStreamE\00" + "google/protobuf/io/zero_copy_stream.cc\00This ZeroCopyOutputStream" + " doesn't support aliasing. Reaching here usually means a ZeroCop" + "yOutputStream implementation bug.\00N6google8protobuf2io20ZeroCopy" + "OutputStreamE\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NA" + "N\00std::bad_function_call\00NSt3__217bad_function_callE\00mutex lock " + "failed\00terminating with %s exception of type %s: %s\00terminating " + "with %s exception of type %s\00terminating with %s foreign excepti" + "on\00terminating\00uncaught\00St9exception\00N10__cxxabiv116__shim_type_" + "infoE\00St9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__cxx" + "abiv117__class_type_infoE\00terminate_handler unexpectedly returne" + "d\00_Z\00___Z\00_block_invoke\00invocation function for block in \00void\00b" + "ool\00char\00signed char\00unsigned char\00short\00unsigned short\00int\00unsi" + "gned int\00long\00unsigned long\00long long\00__int128\00unsigned __int128" + "\00float\00long double\00__float128\00...\00decimal64\00decimal128\00decimal32" + "\00decimal16\00char32_t\00char16_t\00auto\00decltype(auto)\00std::nullptr_t\00" + "[abi:\00]\00N12_GLOBAL__N_116itanium_demangle10AbiTagAttrE\00N12_GLOBA" + "L__N_116itanium_demangle4NodeE\00allocator\00basic_string\00string\00ist" + "ream\00ostream\00iostream\00std::allocator\00std::basic_string\00std::stri" + "ng\00std::istream\00std::ostream\00std::iostream\00N12_GLOBAL__N_116itan" + "ium_demangle19SpecialSubstitutionE\00 imaginary\00N12_GLOBAL__N_116i" + "tanium_demangle20PostfixQualifiedTypeE\00 complex\00)\00 \00(\00&\00&&\00N12_G" + "LOBAL__N_116itanium_demangle13ReferenceTypeE\00objc_object\00*\00id<\00>" + "\00N12_GLOBAL__N_116itanium_demangle11PointerTypeE\00N12_GLOBAL__N_1" + "16itanium_demangle20NameWithTemplateArgsE\00<\00, \00N12_GLOBAL__N_116" + "itanium_demangle12TemplateArgsE\00N12_GLOBAL__N_116itanium_demangl" + "e13ParameterPackE\00wchar_t\00b0E\00b1E\00u\00l\00ul\00ll\00ull\00N12_GLOBAL__N_11" + "6itanium_demangle15IntegerCastExprE\00%LaL\00N12_GLOBAL__N_116itaniu" + "m_demangle16FloatLiteralImplIeEE\00%a\00N12_GLOBAL__N_116itanium_dem" + "angle16FloatLiteralImplIdEE\00%af\00N12_GLOBAL__N_116itanium_demangl" + "e16FloatLiteralImplIfEE\00true\00false\00N12_GLOBAL__N_116itanium_dema" + "ngle8BoolExprE\00-\00N12_GLOBAL__N_116itanium_demangle14IntegerLiter" + "alE\00N12_GLOBAL__N_116itanium_demangle20TemplateArgumentPackE\00gs\00" + "&=\00=\00alignof (\00,\00~\00.*\00/\00/=\00^\00^=\00==\00>=\00<=\00<<\00<<=\00-=\00*=\00--\00!=\00!\00||" + "\00|\00|=\00->*\00+\00+=\00++\00->\00%\00%=\00>>\00>>=\00sizeof (\00typeid (\00throw\00throw \00" + "N12_GLOBAL__N_116itanium_demangle9ThrowExprE\00N12_GLOBAL__N_116it" + "anium_demangle12InitListExprE\00N12_GLOBAL__N_116itanium_demangle1" + "3NodeArrayNodeE\00sizeof... (\00N12_GLOBAL__N_116itanium_demangle13E" + "nclosingExprE\00sizeof...(\00N12_GLOBAL__N_116itanium_demangle22Para" + "meterPackExpansionE\00N12_GLOBAL__N_116itanium_demangle19SizeofPar" + "amPackExprE\00static_cast\00>(\00N12_GLOBAL__N_116itanium_demangle8Cas" + "tExprE\00reinterpret_cast\00) ? (\00) : (\00N12_GLOBAL__N_116itanium_dem" + "angle15ConditionalExprE\00noexcept (\00nw\00na\00pi\00::operator \00new\00[]\00N" + "12_GLOBAL__N_116itanium_demangle7NewExprE\00N12_GLOBAL__N_116itani" + "um_demangle11PostfixExprE\00 ... \00 = \00N12_GLOBAL__N_116itanium_dem" + "angle15BracedRangeExprE\00N12_GLOBAL__N_116itanium_demangle10Brace" + "dExprE\00_GLOBAL__N\00(anonymous namespace)\00N12_GLOBAL__N_116itanium" + "_demangle8NameTypeE\00)[\00N12_GLOBAL__N_116itanium_demangle18ArrayS" + "ubscriptExprE\00.\00N12_GLOBAL__N_116itanium_demangle10MemberExprE\00s" + "rN\00sr\00::\00N12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameE" + "\00dn\00on\00operator&&\00operator&\00operator&=\00operator=\00operator()\00oper" + "ator,\00operator~\00operator delete[]\00operator*\00operator/\00operator/=" + "\00operator^\00operator^=\00operator==\00operator>=\00operator>\00operator[]" + "\00operator<=\00operator<<\00operator<<=\00operator<\00operator-\00operator-" + "=\00operator*=\00operator--\00operator new[]\00operator!=\00operator!\00oper" + "ator new\00operator||\00operator|\00operator|=\00operator->*\00operator+\00o" + "perator+=\00operator++\00operator->\00operator?\00operator%\00operator%=\00o" + "perator>>\00operator>>=\00operator<=>\00operator\"\" \00N12_GLOBAL__N_116i" + "tanium_demangle15LiteralOperatorE\00operator delete\00operator \00N12_" + "GLOBAL__N_116itanium_demangle22ConversionOperatorTypeE\00N12_GLOBA" + "L__N_116itanium_demangle8DtorNameE\00N12_GLOBAL__N_116itanium_dema" + "ngle13QualifiedNameE\00dynamic_cast\00delete\00[] \00N12_GLOBAL__N_116it" + "anium_demangle10DeleteExprE\00cv\00)(\00N12_GLOBAL__N_116itanium_deman" + "gle14ConversionExprE\00N12_GLOBAL__N_116itanium_demangle8CallExprE" + "\00const_cast\00N12_GLOBAL__N_116itanium_demangle10PrefixExprE\00) \00 (" + "\00N12_GLOBAL__N_116itanium_demangle10BinaryExprE\00aa\00an\00aN\00aS\00cm\00d" + "s\00dv\00dV\00eo\00eO\00eq\00ge\00gt\00le\00ls\00lS\00lt\00mi\00mI\00ml\00mL\00ne\00oo\00or\00oR\00pl\00pL" + "\00rm\00rM\00rs\00rS\00... \00 ...\00N12_GLOBAL__N_116itanium_demangle8FoldExp" + "rE\00fp\00fL\00N12_GLOBAL__N_116itanium_demangle13FunctionParamE\00N12_G" + "LOBAL__N_116itanium_demangle24ForwardTemplateReferenceE\00Ts\00struc" + "t\00Tu\00union\00Te\00enum\00N12_GLOBAL__N_116itanium_demangle22Elaborated" + "TypeSpefTypeE\00StL\00St\00std::\00N12_GLOBAL__N_116itanium_demangle16St" + "dQualifiedNameE\00DC\00N12_GLOBAL__N_116itanium_demangle21Structured" + "BindingNameE\00Ut\00Ul\00vE\00'lambda\00'(\00N12_GLOBAL__N_116itanium_demang" + "le15ClosureTypeNameE\00'unnamed\00'\00N12_GLOBAL__N_116itanium_demangl" + "e15UnnamedTypeNameE\00string literal\00N12_GLOBAL__N_116itanium_dema" + "ngle9LocalNameE\00std\00N12_GLOBAL__N_116itanium_demangle12CtorDtorN" + "ameE\00basic_istream\00basic_ostream\00basic_iostream\00std::basic_strin" + "g, std::allocator >\00std::basi" + "c_istream >\00std::basic_ostream >\00std::basic_iostream >\00N12_GLOBAL__N_116itanium_demangle27ExpandedSpecial" + "SubstitutionE\00N12_GLOBAL__N_116itanium_demangle10NestedNameE\00::*" + "\00N12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeE\00[\00N12_G" + "LOBAL__N_116itanium_demangle9ArrayTypeE\00Dv\00 vector[\00N12_GLOBAL__" + "N_116itanium_demangle10VectorTypeE\00pixel vector[\00N12_GLOBAL__N_1" + "16itanium_demangle15PixelVectorTypeE\00decltype(\00double\00unsigned l" + "ong long\00objcproto\00 const\00 volatile\00 restrict\00N12_GLOBAL__N_116i" + "tanium_demangle8QualTypeE\00N12_GLOBAL__N_116itanium_demangle17Ven" + "dorExtQualTypeE\00N12_GLOBAL__N_116itanium_demangle13ObjCProtoName" + "E\00Do\00noexcept\00DO\00Dw\00Dx\00RE\00OE\00 &\00 &&\00N12_GLOBAL__N_116itanium_dem" + "angle12FunctionTypeE\00throw(\00N12_GLOBAL__N_116itanium_demangle20D" + "ynamicExceptionSpecE\00noexcept(\00N12_GLOBAL__N_116itanium_demangle" + "12NoexceptSpecE\00N12_GLOBAL__N_116itanium_demangle11SpecialNameE\00" + "N12_GLOBAL__N_116itanium_demangle9DotSuffixE\00Ua9enable_ifI\00N12_G" + "LOBAL__N_116itanium_demangle16FunctionEncodingE\00 [enable_if:\00N12" + "_GLOBAL__N_116itanium_demangle12EnableIfAttrE\00thread-local wrapp" + "er routine for \00reference temporary for \00guard variable for \00non" + "-virtual thunk to \00virtual thunk to \00thread-local initialization" + " routine for \00construction vtable for \00-in-\00N12_GLOBAL__N_116ita" + "nium_demangle21CtorVtableSpecialNameE\00covariant return thunk to " + "\00typeinfo name for \00typeinfo for \00VTT for \00vtable for \00St11logic" + "_error\00St12length_error\00N10__cxxabiv117__pbase_type_infoE\00N10__c" + "xxabiv119__pointer_type_infoE\00N10__cxxabiv123__fundamental_type_" + "infoE\00v\00c\00h\00N10__cxxabiv121__vmi_class_type_infoE") (func $globalCtors (type $8) call $__GLOBAL__sub_I_shared_cpp_cc - i32.const 14904 + i32.const 24648 i64.const 0 i64.store align=4 - i32.const 14912 + i32.const 24656 i64.const 0 i64.store align=4 - i32.const 14920 + i32.const 24664 i32.const 1065353216 i32.store - i32.const 14924 + i32.const 24668 i64.const 0 i64.store align=4 - i32.const 14932 + i32.const 24676 i64.const 0 i64.store align=4 - i32.const 14940 + i32.const 24684 i32.const 1065353216 i32.store call $__GLOBAL__sub_I_status_cc @@ -404,39 +594,39 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 local.get $0 - global.get $30 + global.get $32 i32.add - global.set $30 - global.get $30 + global.set $32 + global.get $32 i32.const 15 i32.add i32.const -16 i32.and - global.set $30 + global.set $32 local.get $1 ) (func $stackSave (type $14) (result i32) - global.get $30 + global.get $32 ) (func $stackRestore (type $0) (param $0 i32) local.get $0 - global.set $30 + global.set $32 ) (func $establishStackSpace (type $4) (param $0 i32) (param $1 i32) local.get $0 - global.set $30 + global.set $32 local.get $1 - global.set $31 + global.set $33 ) (func $__ZN14ExampleContext16onRequestHeadersEv (type $1) @@ -445,345 +635,226 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 - i32.const 112 - i32.add - global.set $30 - local.get $0 - i32.const 88 - i32.add - local.set $2 - local.get $0 - i32.const 76 - i32.add - local.set $3 - local.get $0 - i32.const 72 - i32.add - local.set $1 - local.get $0 - i32.const 60 - i32.add - local.set $7 - local.get $0 - i32.const 48 - i32.add - local.set $8 - local.get $0 - i32.const 36 - i32.add - local.set $9 - local.get $0 - i32.const 24 - i32.add - local.set $10 - local.get $0 - i32.const 12 + global.get $32 + i32.const 32 i32.add - local.set $4 - i32.const 6872 + global.set $32 + i32.const 10912 i32.const 16 - i32.const 6889 + i32.const 10929 i32.const 18 i32.const 0 call $_proxy_setSharedData - local.set $5 - i32.const 6908 + if $if + i32.const 5 + i32.const 10948 + i32.const 55 + call $_proxy_log + drop + call $_abort + end ;; $if + i32.const 11004 i32.const 16 - i32.const 6925 + i32.const 11021 i32.const 18 i32.const 0 call $_proxy_setSharedData - local.set $12 - local.get $1 - i32.const 0 - i32.store - local.get $2 + if $if_0 + i32.const 5 + i32.const 11040 + i32.const 55 + call $_proxy_log + drop + call $_abort + end ;; $if_0 + local.get $0 + i32.const 12 + i32.add + local.tee $1 i32.const 0 i32.store - local.get $3 - i32.const 0 + local.get $0 + i32.const 11004 i32.store - i32.const 6908 + local.get $0 i32.const 16 - local.get $2 - local.get $3 - local.get $1 - call $_proxy_getSharedData + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i64.load align=4 + i64.store align=4 + local.get $0 i32.const 8 - call $__Znwm - local.set $6 + i32.add + local.tee $2 local.get $3 - i32.load - local.set $11 - local.get $6 - local.get $2 - i32.load - i32.store - local.get $6 - local.get $11 - i32.store offset=4 - i32.const 6908 + local.get $1 + call $__Z18getSharedDataValueNSt3__217basic_string_viewIcNS_11char_traitsIcEEEEPj + i32.const 11004 i32.const 16 - i32.const 6944 + i32.const 11096 i32.const 18 local.get $1 i32.load i32.const 1 i32.add call $_proxy_setSharedData - local.set $11 - local.get $10 - local.get $5 - i32.const 1 - i32.and - call $__ZNSt3__29to_stringEi - local.get $9 - local.get $10 - i32.const 6963 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $9 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 + i32.const 8 + i32.eq + if $if_1 + i32.const 2 + i32.const 11115 + i32.const 15 + call $_proxy_log + drop + end ;; $if_1 + local.get $2 + i32.load + local.set $1 + local.get $2 i32.const 0 - i32.store offset=8 - local.get $8 - local.get $9 - i32.const 6968 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $8 + i32.store local.get $1 - i32.load offset=8 - i32.store offset=8 + i32.eqz + if $if_2 + local.get $0 + global.set $32 + i32.const 0 + return + end ;; $if_2 local.get $1 - i64.const 0 - i64.store align=4 + i32.load + call $_free local.get $1 + call $_free + local.get $0 + global.set $32 i32.const 0 - i32.store offset=8 - local.get $4 - local.get $12 - i32.const 1 - i32.and - call $__ZNSt3__29to_stringEi - local.get $7 - local.get $8 - local.get $4 - i32.load - local.get $4 - local.get $4 - i32.load8_s offset=11 - local.tee $1 + ) + + (func $__Z18getSharedDataValueNSt3__217basic_string_viewIcNS_11char_traitsIcEEEEPj (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 i32.const 0 - i32.lt_s - local.tee $5 - select - local.get $4 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $5 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $7 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store align=4 + i32.store local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - local.get $7 - i32.const 6968 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.tee $1 i64.load align=4 - i64.store align=4 + local.set $7 local.get $3 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 + i32.const 16 + i32.add + local.tee $4 i32.const 0 - i32.store offset=8 - local.get $0 - local.get $11 - i32.const 1 - i32.and - call $__ZNSt3__29to_stringEi - local.get $2 + i32.store local.get $3 - local.get $0 - i32.load - local.get $0 - local.get $0 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s + i32.const 12 + i32.add local.tee $5 - select - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $5 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $1 - i64.load align=4 - i64.store align=4 - local.get $2 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 i32.const 0 - i32.store offset=8 - i32.const 2 - local.get $2 - i32.load - local.get $2 + i32.store + local.get $7 + i32.wrap_i64 + local.get $7 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.get $4 + local.get $5 local.get $2 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.tee $5 - select + local.get $3 + i32.const 20 + i32.add + local.tee $6 local.get $2 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $5 select - call $_proxy_log - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + call $_proxy_getSharedData + local.tee $1 + i32.eqz if $if + i32.const 8 + call $__Znwm + local.set $2 + local.get $5 + i32.load + local.set $1 local.get $2 + local.get $4 i32.load - call $_free + i32.store + local.get $2 + local.get $1 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store + i32.const 0 + local.set $1 end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.get $1 if $if_0 - local.get $0 - i32.load - call $_free - end ;; $if_0 - local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_1 - local.get $3 - i32.load - call $_free - end ;; $if_1 - local.get $7 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_2 - local.get $7 - i32.load - call $_free - end ;; $if_2 - local.get $4 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $4 - i32.load - call $_free - end ;; $if_3 - local.get $8 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $8 - i32.load - call $_free - end ;; $if_4 - local.get $9 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_5 - local.get $9 - i32.load - call $_free - end ;; $if_5 - local.get $10 - i32.load8_s offset=11 - i32.const 0 - i32.ge_s - if $if_6 local.get $6 - i32.load - call $_free + local.get $1 + call $__Z8toString10WasmResult + local.get $3 local.get $6 - call $_free + i32.const 11185 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $0 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $0 + i32.load offset=8 + i32.store offset=8 + local.get $0 + i64.const 0 + i64.store align=4 local.get $0 - global.set $30 i32.const 0 - return - end ;; $if_6 - local.get $10 - i32.load - call $_free - local.get $6 - i32.load - call $_free - local.get $6 - call $_free - local.get $0 - global.set $30 - i32.const 0 + i32.store offset=8 + i32.const 5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $1 + i32.const 0 + i32.lt_s + local.tee $0 + select + local.get $3 + i32.load offset=4 + local.get $1 + i32.const 255 + i32.and + local.get $0 + select + call $_proxy_log + drop + call $_abort + else + local.get $3 + global.set $32 + end ;; $if_0 ) (func $__ZN14ExampleContext5onLogEv (type $0) @@ -795,52 +866,54 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 32 + global.get $32 + local.set $2 + global.get $32 + i32.const 80 i32.add - global.set $30 - local.get $4 - i32.const 4 + global.set $32 + local.get $2 + i32.const 28 i32.add - local.tee $0 - i32.const 0 - i32.store - local.get $4 - i32.const 0 - i32.store - i32.const 6872 - i32.const 16 - local.get $0 - local.get $4 - local.get $4 + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 10912 + i32.store offset=48 + local.get $2 i32.const 16 + i32.store offset=52 + local.get $2 + i32.const 56 + i32.add + local.tee $0 + local.get $2 + i64.load offset=48 align=4 + i64.store align=4 + local.get $2 + i32.const 40 i32.add - local.tee $3 - call $_proxy_getSharedData - i32.const 8 - call $__Znwm - local.set $6 - local.get $4 - i32.load - local.set $1 - local.get $6 local.get $0 + i32.const 0 + call $__Z18getSharedDataValueNSt3__217basic_string_viewIcNS_11char_traitsIcEEEEPj + local.get $2 + i32.load offset=40 + local.tee $1 i32.load - local.tee $5 - i32.store - local.get $6 + local.set $6 local.get $1 - i32.store offset=4 + i32.load offset=4 + local.set $4 local.get $0 i64.const 0 i64.store align=4 local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $4 i32.const -17 i32.gt_u if $if @@ -848,31 +921,31 @@ end ;; $if block $block block $block_0 - local.get $1 + local.get $4 i32.const 11 i32.lt_u if $if_0 (result i32) local.get $0 - local.get $1 + local.get $4 i32.store8 offset=11 - local.get $1 + local.get $4 if $if_1 (result i32) local.get $0 - local.set $2 + local.set $1 br $block_0 else local.get $0 end ;; $if_1 else local.get $0 - local.get $1 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and local.tee $7 call $__Znwm - local.tee $2 + local.tee $1 i32.store local.get $0 local.get $7 @@ -880,39 +953,39 @@ i32.or i32.store offset=8 local.get $0 - local.get $1 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_0 - local.set $2 + local.set $1 br $block end ;; $block_0 - local.get $2 - local.get $5 local.get $1 + local.get $6 + local.get $4 call $_memcpy drop end ;; $block local.get $1 - local.get $2 + local.get $4 i32.add i32.const 0 i32.store8 local.get $3 local.get $0 - i32.const 6970 + i32.const 11131 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $2 + local.tee $1 i64.load align=4 i64.store align=4 local.get $3 - local.get $2 + local.get $1 i32.load offset=8 i32.store offset=8 - local.get $2 + local.get $1 i64.const 0 i64.store align=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 i32.const 1 @@ -921,19 +994,20 @@ local.get $3 local.get $3 i32.load8_s offset=11 - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.tee $1 + local.tee $4 select local.get $3 i32.load offset=4 - local.get $2 + local.get $1 i32.const 255 i32.and - local.get $1 + local.get $4 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 @@ -952,39 +1026,35 @@ i32.load call $_free end ;; $if_3 - local.get $0 - i32.const 0 - i32.store - local.get $4 - i32.const 0 - i32.store - i32.const 6908 + local.get $2 + i32.const 11004 + i32.store offset=16 + local.get $2 i32.const 16 + i32.store offset=20 local.get $0 - local.get $4 - local.get $3 - call $_proxy_getSharedData - i32.const 8 - call $__Znwm - local.set $5 - local.get $4 - i32.load - local.set $1 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 local.get $5 local.get $0 - i32.load - local.tee $7 - i32.store + i32.const 0 + call $__Z18getSharedDataValueNSt3__217basic_string_viewIcNS_11char_traitsIcEEEEPj local.get $5 + i32.load + local.tee $1 + i32.load + local.set $4 local.get $1 - i32.store offset=4 + i32.load offset=4 + local.set $3 local.get $0 i64.const 0 i64.store align=4 local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 i32.const -17 i32.gt_u if $if_4 @@ -992,135 +1062,145 @@ end ;; $if_4 block $block_1 block $block_2 - local.get $1 + local.get $3 i32.const 11 i32.lt_u if $if_5 (result i32) local.get $0 - local.get $1 + local.get $3 i32.store8 offset=11 - local.get $1 + local.get $3 if $if_6 (result i32) local.get $0 - local.set $2 + local.set $1 br $block_2 else local.get $0 end ;; $if_6 else local.get $0 - local.get $1 + local.get $3 i32.const 16 i32.add i32.const -16 i32.and - local.tee $8 + local.tee $6 call $__Znwm - local.tee $2 + local.tee $1 i32.store local.get $0 - local.get $8 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store offset=4 br $block_2 end ;; $if_5 - local.set $2 + local.set $1 br $block_1 end ;; $block_2 - local.get $2 - local.get $7 local.get $1 + local.get $4 + local.get $3 call $_memcpy drop end ;; $block_1 local.get $1 - local.get $2 + local.get $3 i32.add i32.const 0 i32.store8 - local.get $3 + local.get $2 local.get $0 - i32.const 6977 + i32.const 11138 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc - local.tee $2 + local.tee $1 i64.load align=4 i64.store align=4 - local.get $3 local.get $2 + local.get $1 i32.load offset=8 i32.store offset=8 - local.get $2 + local.get $1 i64.const 0 i64.store align=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 i32.const 3 - local.get $3 + local.get $2 i32.load - local.get $3 - local.get $3 + local.get $2 + local.get $2 i32.load8_s offset=11 - local.tee $2 + local.tee $1 i32.const 0 i32.lt_s - local.tee $1 + local.tee $3 select - local.get $3 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $1 i32.const 255 i32.and - local.get $1 + local.get $3 select call $_proxy_log - local.get $3 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_7 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_7 local.get $0 i32.load8_s offset=11 i32.const 0 - i32.ge_s + i32.lt_s if $if_8 - local.get $5 + local.get $0 i32.load call $_free - local.get $5 - call $_free - local.get $6 + end ;; $if_8 + local.get $5 + i32.load + local.set $0 + local.get $5 + i32.const 0 + i32.store + local.get $0 + if $if_9 + local.get $0 i32.load call $_free - local.get $6 + local.get $0 call $_free - local.get $4 - global.set $30 + end ;; $if_9 + local.get $2 + i32.load offset=40 + local.set $0 + local.get $2 + i32.const 0 + i32.store offset=40 + local.get $0 + i32.eqz + if $if_10 + local.get $2 + global.set $32 return - end ;; $if_8 + end ;; $if_10 local.get $0 i32.load call $_free - local.get $5 - i32.load - call $_free - local.get $5 - call $_free - local.get $6 - i32.load - call $_free - local.get $6 + local.get $0 call $_free - local.get $4 - global.set $30 + local.get $2 + global.set $32 ) (func $__ZN11ContextBaseD2Ev (type $0) @@ -1128,7 +1208,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5528 + i32.const 6592 i32.store local.get $0 i32.load offset=52 @@ -1311,42 +1391,325 @@ i32.const 0 ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEED0Ev (type $0) - (param $0 i32) - local.get $0 - call $_free - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEv (type $1) - (param $0 i32) - (result i32) - i32.const 8 - call $__Znwm - local.tee $0 - i32.const 5560 - i32.store - local.get $0 - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE7__cloneEPNS0_6__baseISC_EE (type $4) + (func $__Z8toString10WasmResult (type $4) (param $0 i32) (param $1 i32) - local.get $1 - i32.const 5560 - i32.store + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + local.get $1 + br_table + $block_9 $block_8 $block_7 $block_6 $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_9 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 2 + i32.store8 offset=11 + local.get $0 + i32.const 27471 + i32.store16 + local.get $0 + i32.const 0 + i32.store8 offset=2 + return + end ;; $block_8 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 8 + i32.store8 offset=11 + local.get $0 + i64.const 7236850772014821198 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 + return + end ;; $block_7 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 11 + i32.store offset=4 + local.get $1 + i32.const 11220 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11228 + i32.load16_s align=1 + i32.store16 offset=8 align=1 + local.get $1 + i32.const 11230 + i32.load8_s + i32.store8 offset=10 + local.get $1 + i32.const 0 + i32.store8 offset=11 + return + end ;; $block_6 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 20 + i32.store offset=4 + local.get $1 + i32.const 11232 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11240 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11248 + i32.load align=1 + i32.store offset=16 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=20 + return + end ;; $block_5 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 12 + i32.store offset=4 + local.get $1 + i32.const 11253 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11261 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=12 + return + end ;; $block_4 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 13 + i32.store offset=4 + local.get $1 + i32.const 11266 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11274 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 11278 + i32.load8_s + i32.store8 offset=12 + local.get $1 + i32.const 0 + i32.store8 offset=13 + return + end ;; $block_3 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 32 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483616 + i32.store offset=8 + local.get $0 + i32.const 19 + i32.store offset=4 + local.get $1 + i32.const 11280 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11288 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 11296 + i32.load16_s align=1 + i32.store16 offset=16 align=1 + local.get $1 + i32.const 11298 + i32.load8_s + i32.store8 offset=18 + local.get $1 + i32.const 0 + i32.store8 offset=19 + return + end ;; $block_2 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 5 + i32.store8 offset=11 + local.get $0 + i32.const 11300 + i32.load align=1 + i32.store align=1 + local.get $0 + i32.const 11304 + i32.load8_s + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + return + end ;; $block_1 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 11 + i32.store offset=4 + local.get $1 + i32.const 11306 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11314 + i32.load16_s align=1 + i32.store16 offset=8 align=1 + local.get $1 + i32.const 11316 + i32.load8_s + i32.store8 offset=10 + local.get $1 + i32.const 0 + i32.store8 offset=11 + return + end ;; $block_0 + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 16 + call $__Znwm + local.tee $1 + i32.store + local.get $0 + i32.const -2147483632 + i32.store offset=8 + local.get $0 + i32.const 14 + i32.store offset=4 + local.get $1 + i32.const 11318 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 11326 + i32.load align=1 + i32.store offset=8 align=1 + local.get $1 + i32.const 11330 + i32.load16_s align=1 + i32.store16 offset=12 align=1 + local.get $1 + i32.const 0 + i32.store8 offset=14 + end ;; $block ) - (func $__ZNSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEEclEOjOSB_ (type $5) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI7ContextNS_14default_deleteIS3_EEEEjP11RootContextEE11__call_implINS0_12__alloc_funcI3__0NS_9allocatorISD_EES9_EEEES6_PKNS0_16__policy_storageEjS8_ (type $5) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - local.get $2 - i32.load - local.set $2 - local.get $3 - i32.load - local.set $3 i32.const 72 call $__Znwm local.tee $1 @@ -1385,32 +1748,27 @@ local.get $3 i32.store offset=68 local.get $1 - i32.const 5448 + i32.const 6512 i32.store local.get $0 local.get $1 i32.store ) - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE6targetERKSt9type_info (type $3) + (func $__ZNSt3__210__function16__policy_invokerIFNS_10unique_ptrI11RootContextNS_14default_deleteIS3_EEEEjNS_17basic_string_viewIcNS_11char_traitsIcEEEEEE12__call_emptyEPKNS0_16__policy_storageEjOSA_ (type $5) (param $0 i32) (param $1 i32) - (result i32) - local.get $0 + (param $2 i32) + (param $3 i32) i32.const 4 - i32.add - i32.const 0 - local.get $1 - i32.load offset=4 - i32.const 7243 - i32.eq - select - ) - - (func $__ZNKSt3__210__function6__funcI3__0NS_9allocatorIS2_EEFNS_10unique_ptrI7ContextNS_14default_deleteIS6_EEEEjP11RootContextEE11target_typeEv (type $1) - (param $0 i32) - (result i32) - i32.const 4528 + call $___cxa_allocate_exception + local.tee $0 + i32.const 7720 + i32.store + local.get $0 + i32.const 5224 + i32.const 32 + call $___cxa_throw ) (func $__GLOBAL__sub_I_shared_cpp_cc (type $8) @@ -1418,115 +1776,81 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $1 + global.get $32 + local.set $0 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $0 i32.const 24 i32.add local.tee $2 - i32.const 5560 - i32.store - local.get $2 + i32.const 5 + i32.store offset=8 local.get $2 - i32.store offset=16 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.const 15713 - i32.store offset=48 + i32.const 6632 + i32.store offset=12 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.const 6 + i32.store offset=8 local.get $1 + i32.const 6616 + i32.store offset=12 + local.get $0 + i32.const 25462 + i32.store + local.get $0 i32.const 0 - i32.store offset=52 - local.get $1 - i32.const 56 + i32.store offset=4 + local.get $0 + i32.const 40 i32.add - local.tee $0 - local.get $1 - i64.load offset=48 align=4 + local.tee $3 + local.get $0 + i64.load align=4 i64.store align=4 local.get $2 local.get $1 - local.get $0 + local.get $3 call $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ local.get $1 - i32.load offset=16 - local.tee $0 - local.get $1 - i32.eq + i32.load offset=12 + i32.load offset=4 + local.tee $3 if $if - local.get $0 + local.get $1 i32.load - i32.load offset=16 - local.set $3 - local.get $0 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_0 - local.get $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 + call_indirect $28 (type $0) end ;; $if local.get $2 - i32.load offset=16 - local.tee $0 - local.get $2 - i32.eq - if $if_1 - local.get $0 - i32.load - i32.load offset=16 - local.set $2 - local.get $0 - local.get $2 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 - return - end ;; $if_1 - local.get $0 + i32.load offset=12 + i32.load offset=4 + local.tee $1 i32.eqz - if $if_2 - local.get $1 - global.set $30 + if $if_0 + local.get $0 + global.set $32 return - end ;; $if_2 - local.get $0 - i32.load - i32.load offset=20 - local.set $2 - local.get $0 + end ;; $if_0 local.get $2 - i32.const 63 + i32.load + local.get $1 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $1 - global.set $30 + call_indirect $28 (type $0) + local.get $0 + global.set $32 ) (func $__ZNK6google8protobuf11MessageLite20GetMaybeArenaPointerEv (type $1) @@ -1541,7 +1865,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZN6google8protobuf8internal29InternalMetadataWithArenaBaseINSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS1_29InternalMetadataWithArenaLiteEE27mutable_unknown_fields_slowEv (type $1) @@ -1593,17 +1917,17 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 4536 + i32.const 4512 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 i32.const 16 - i32.const 48 + i32.const 113 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i64.const 0 @@ -1641,12 +1965,12 @@ (param $1 i32) (param $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $2 i32.eqz if $if @@ -1654,7 +1978,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7419 + i32.const 11509 i32.store offset=4 local.get $3 i32.const 370 @@ -1666,7 +1990,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7468 + i32.const 11558 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -1684,7 +2008,7 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -1693,17 +2017,17 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 4544 + i32.const 4520 i64.const 16 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 i32.const 16 - i32.const 49 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 local.get $2 @@ -1712,73 +2036,73 @@ local.get $1 i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN30protobuf_struct_5flite_2eprotoL21InitDefaultsListValueEv (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $0 - global.set $30 - i32.const 14732 + global.set $32 + i32.const 24476 i32.const 0 i32.store - i32.const 14724 - i32.const 14872 + i32.const 24468 + i32.const 24616 i32.store - i32.const 14728 + i32.const 24472 i32.const 0 i32.store - i32.const 14736 + i32.const 24480 i32.const 0 i32.store - i32.const 14720 - i32.const 5620 + i32.const 24464 + i32.const 6672 i32.store - i32.const 14744 + i32.const 24488 call $__ZN6google8protobuf6StructC2Ev - i32.const 50 - i32.const 14744 + i32.const 115 + i32.const 24488 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14776 - i32.const 5708 + i32.const 24520 + i32.const 6760 i32.store - i32.const 14780 + i32.const 24524 i32.const 0 i32.store - i32.const 14792 + i32.const 24536 i32.const 0 i32.store - i32.const 5596 + i32.const 6648 i32.load if $if call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE end ;; $if - i32.const 14796 + i32.const 24540 i32.const 0 i32.store - i32.const 50 - i32.const 14776 + i32.const 115 + i32.const 24520 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14832 + i32.const 24576 call $__ZN6google8protobuf9ListValueC2Ev - i32.const 50 - i32.const 14832 + i32.const 115 + i32.const 24576 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - i32.const 14728 - i32.const 14776 + i32.const 24472 + i32.const 24520 i32.store ) (func $__ZN6google8protobuf6StructC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i64.const 0 @@ -1796,7 +2120,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -1808,7 +2132,7 @@ (func $__ZN6google8protobuf9ListValueC2Ev (type $0) (param $0 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.const 4 @@ -1822,7 +2146,7 @@ local.get $0 i64.const 0 i64.store offset=16 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -1838,14 +2162,14 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 i32.load offset=4 @@ -1867,7 +2191,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $2 i32.const 915 @@ -1879,7 +2203,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8787 + i32.const 12879 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -1916,11 +2240,11 @@ local.get $4 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 i32.const 1 @@ -1974,14 +2298,14 @@ i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValueD0Ev (type $0) @@ -2013,19 +2337,19 @@ i32.const 25 i32.store offset=4 local.get $1 - i32.const 10074 + i32.const 14166 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10082 + i32.const 14174 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10090 + i32.const 14182 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 10098 + i32.const 14190 i32.load8_s i32.store8 offset=24 local.get $1 @@ -2129,18 +2453,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4576 + i32.const 4744 + i32.const 4552 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf9ListValue9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13732 + i32.const 13773 i32.const 92 - i32.const 9730 + i32.const 13822 call $___assert_fail end ;; $if ) @@ -2157,12 +2481,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 40 i32.add @@ -2219,7 +2543,7 @@ i32.add local.tee $2 local.tee $3 - i32.const 6332 + i32.const 7384 i32.store local.get $3 local.get $5 @@ -2529,7 +2853,7 @@ i32.ge_s if $if_8 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_8 @@ -2537,7 +2861,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -2554,7 +2878,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $1 i32.const 1 i32.and @@ -2663,7 +2987,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $2 i32.const 1 i32.and @@ -2682,7 +3006,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $0 i32.const 1 i32.and @@ -2721,12 +3045,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -2739,7 +3063,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7667 + i32.const 11759 i32.store offset=4 local.get $3 i32.const 1505 @@ -2751,7 +3075,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7719 + i32.const 11811 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -2773,7 +3097,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_0 @@ -2781,7 +3105,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7667 + i32.const 11759 i32.store offset=4 local.get $2 i32.const 1506 @@ -2793,7 +3117,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7750 + i32.const 11842 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -2809,7 +3133,7 @@ i32.load local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 ) @@ -2828,7 +3152,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $1 i32.const 1 i32.and @@ -2979,7 +3303,7 @@ local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $1 i32.const 1 i32.and @@ -3089,18 +3413,18 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $1 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $1 i32.const 1 i32.and @@ -3172,7 +3496,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $4 @@ -3195,12 +3519,12 @@ local.get $2 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $2 @@ -3217,13 +3541,13 @@ i32.store offset=12 end ;; $if_1 local.get $1 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $1 i32.const 0 i32.store offset=8 local.get $1 - i32.const 5868 + i32.const 6920 i32.store local.get $1 local.get $7 @@ -3246,11 +3570,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $2 i32.const 16 i32.add @@ -3279,7 +3603,7 @@ i32.load offset=72 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $8 i32.load8_s offset=11 local.set $6 @@ -3321,7 +3645,7 @@ i32.load offset=76 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $3 i32.const 1 @@ -3382,22 +3706,22 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) br_if $block local.get $1 local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 return end ;; $block @@ -3405,7 +3729,7 @@ local.get $5 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -3417,12 +3741,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $2 i32.const 24 i32.add @@ -3451,7 +3775,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $3 i32.const 418 @@ -3463,7 +3787,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 7876 + i32.const 11968 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3486,7 +3810,7 @@ i32.le_u if $if_1 local.get $2 - global.set $30 + global.set $32 return end ;; $if_1 local.get $5 @@ -3520,7 +3844,7 @@ br $block end ;; $block_0 local.get $2 - global.set $30 + global.set $32 return end ;; $block local.get $1 @@ -3538,7 +3862,7 @@ local.get $3 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $3 @@ -3549,7 +3873,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 427 @@ -3561,7 +3885,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7993 + i32.const 12085 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3573,7 +3897,7 @@ i32.load offset=16 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEEppEv (type $0) @@ -3585,12 +3909,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load i32.load offset=16 @@ -3600,7 +3924,7 @@ local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -3632,7 +3956,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 451 @@ -3644,7 +3968,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 7833 + i32.const 11925 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -3732,7 +4056,7 @@ end ;; $if_5 end ;; $if_0 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap13iterator_baseIKNSA_12KeyValuePairEE23revalidate_if_necessaryEPNS2_21__tree_const_iteratorIPS8_PNS2_11__tree_nodeISH_PvEElEE (type $3) @@ -3747,12 +4071,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -3780,7 +4104,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $3 i32.const 476 @@ -3792,7 +4116,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8024 + i32.const 12116 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -3901,12 +4225,12 @@ i32.ne local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $block_1 local.get $3 - global.set $30 + global.set $32 i32.const 1 ) @@ -3924,12 +4248,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $10 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.load local.get $2 @@ -4115,7 +4439,7 @@ local.get $5 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block_0 end ;; $if_2 @@ -4235,7 +4559,7 @@ local.get $6 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 return end ;; $block else @@ -4255,7 +4579,7 @@ local.get $1 i32.store offset=12 local.get $10 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE13__lower_boundIS7_EENS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEERKT_SN_PNS_15__tree_end_nodeIPNS_16__tree_node_baseISL_EEEE (type $2) @@ -4439,7 +4763,7 @@ (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4449,7 +4773,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24616 i32.eq local.get $1 i32.eqz @@ -4479,18 +4803,18 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapperD0Ev (type $0) (param $0 i32) (local $1 i32) local.get $0 - i32.const 6036 + i32.const 7088 i32.store local.get $0 i32.load offset=12 @@ -4502,7 +4826,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24616 i32.eq local.get $1 i32.eqz @@ -4534,11 +4858,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 call $_free ) @@ -4563,7 +4887,7 @@ i32.const 0 i32.store offset=12 local.get $0 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $0 i32.const 0 @@ -4572,7 +4896,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -4599,7 +4923,7 @@ local.get $0 i32.load offset=4 local.tee $1 - i32.const 14872 + i32.const 24616 i32.ne if $if local.get $1 @@ -4674,18 +4998,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4608 + i32.const 4744 + i32.const 4584 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE17MergeFromInternalERKSF_ else - i32.const 9640 - i32.const 9681 + i32.const 13732 + i32.const 13773 i32.const 92 - i32.const 9730 + i32.const 13822 call $___assert_fail end ;; $if ) @@ -4699,12 +5023,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $4 local.get $0 @@ -4775,13 +5099,13 @@ local.get $5 i32.load local.tee $2 - i32.const 14872 + i32.const 24616 i32.eq if $if_0 local.get $5 local.get $0 i32.load offset=12 - i32.const 14872 + i32.const 24616 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -4931,7 +5255,7 @@ end ;; $block_1 end ;; $loop local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -4942,12 +5266,12 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -4971,7 +5295,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5024,7 +5348,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNK6google8protobuf5Value12ByteSizeLongEv local.tee $0 i32.const 1 @@ -5057,7 +5381,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE local.get $0 @@ -5068,7 +5392,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE ) @@ -5093,7 +5417,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 i32.load8_s offset=11 local.set $1 @@ -5146,7 +5470,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.load offset=16 local.tee $0 i32.const 1 @@ -5182,7 +5506,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.const 10 @@ -5201,7 +5525,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $2 i32.const 18 @@ -5260,9 +5584,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE15MapEntryWrapper3keyEv (type $1) @@ -5284,19 +5608,19 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4704 + i32.const 4680 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 i32.const 24 call $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 local.get $0 @@ -5304,7 +5628,7 @@ local.get $1 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_2 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5315,7 +5639,7 @@ i32.const 24 call $__Znwm local.tee $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 i32.const 0 @@ -5323,7 +5647,7 @@ local.get $0 i32.const 0 i32.store offset=16 - i32.const 5596 + i32.const 6648 i32.load if $if_3 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -5348,12 +5672,12 @@ (local $8 i32) (local $9 i32) (local $10 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $4 i32.const 48 i32.add @@ -5410,7 +5734,7 @@ i32.add local.tee $2 local.tee $5 - i32.const 6332 + i32.const 7384 i32.store local.get $5 local.get $6 @@ -5615,7 +5939,7 @@ i32.const 3 i32.store offset=20 local.get $5 - i32.const 14872 + i32.const 24616 i32.store end ;; $if_5 local.get $0 @@ -5637,12 +5961,12 @@ local.get $5 i32.load local.tee $3 - i32.const 14872 + i32.const 24616 i32.eq if $if_7 (result i32) local.get $5 local.get $2 - i32.const 14872 + i32.const 24616 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE local.get $5 i32.load @@ -5663,9 +5987,9 @@ i32.load local.tee $2 else - i32.const 14872 + i32.const 24616 local.set $2 - i32.const 14872 + i32.const 24616 end ;; $if_8 i32.load8_s offset=11 i32.const 0 @@ -5682,9 +6006,9 @@ i32.load local.tee $3 else - i32.const 14872 + i32.const 24616 local.set $3 - i32.const 14872 + i32.const 24616 end ;; $if_10 i32.load8_s offset=11 local.tee $2 @@ -5699,7 +6023,7 @@ i32.and end ;; $if_11 i32.const 0 - i32.const 8068 + i32.const 12160 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ br_if $loop i32.const 0 @@ -6049,7 +6373,7 @@ i32.ge_s if $if_18 local.get $4 - global.set $30 + global.set $32 local.get $1 return end ;; $if_18 @@ -6057,7 +6381,7 @@ i32.load call $_free local.get $4 - global.set $30 + global.set $32 local.get $1 ) @@ -6096,7 +6420,7 @@ local.get $0 i32.load offset=8 local.tee $1 - i32.const 14872 + i32.const 24616 i32.eq local.get $1 i32.eqz @@ -6145,11 +6469,11 @@ local.get $1 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $block local.get $0 i32.const 0 @@ -6176,12 +6500,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4656 + i32.const 4632 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -6207,12 +6531,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 72 i32.add @@ -6273,7 +6597,7 @@ i32.sub local.tee $5 local.tee $7 - i32.const 6332 + i32.const 7384 i32.store local.get $7 local.get $4 @@ -6439,7 +6763,7 @@ local.get $6 select i32.const 0 - i32.const 8103 + i32.const 12195 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ select br $block_4 @@ -6460,11 +6784,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_7 local.get $5 i32.load8_s offset=11 @@ -6567,7 +6891,7 @@ i32.ge_s if $if_11 local.get $2 - global.set $30 + global.set $32 local.get $1 return end ;; $if_11 @@ -6575,7 +6899,7 @@ i32.load call $_free local.get $2 - global.set $30 + global.set $32 local.get $1 ) @@ -6599,12 +6923,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4576 + i32.const 4552 i64.const 32 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -6620,7 +6944,7 @@ (param $0 i32) (param $1 i32) local.get $0 - i32.const 5788 + i32.const 6840 i32.store local.get $0 local.get $1 @@ -6634,7 +6958,7 @@ local.get $0 i64.const 0 i64.store offset=20 align=4 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -6653,12 +6977,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -6682,12 +7006,12 @@ local.get $0 i32.const 8 i32.add - local.tee $6 + local.tee $3 call $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE i32.eqz if $if local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if @@ -6710,14 +7034,14 @@ local.tee $2 i32.load offset=8 i32.load - local.set $3 + local.set $6 local.get $0 local.get $2 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $5 i32.store offset=20 - local.get $3 + local.get $6 local.get $0 i32.load offset=4 i32.load offset=8 @@ -6726,7 +7050,7 @@ if $if_2 local.get $1 i32.load offset=4 - local.tee $3 + local.tee $6 local.get $1 i32.load local.tee $2 @@ -6745,7 +7069,7 @@ local.set $2 local.get $1 i32.load offset=4 - local.set $3 + local.set $6 local.get $0 i32.load offset=20 local.set $5 @@ -6760,12 +7084,12 @@ block $block_1 block $block_2 local.get $2 - local.get $3 + local.get $6 i32.lt_u if $if_4 local.get $2 i32.load8_s - local.tee $3 + local.tee $6 i32.const -1 i32.gt_s if $if_5 @@ -6774,7 +7098,7 @@ i32.const 1 i32.add i32.store - local.get $3 + local.get $6 i32.const 255 i32.and local.set $2 @@ -6833,7 +7157,7 @@ i32.const 1 i32.store8 offset=24 local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_3 @@ -6843,7 +7167,7 @@ call $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if_7 @@ -6851,10 +7175,10 @@ end ;; $block_1 local.get $0 i32.load offset=4 - local.get $6 + local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $4 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_2 @@ -6872,46 +7196,59 @@ i32.const 0 i32.store8 offset=6 local.get $0 - i32.const 8 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=19 i32.const 0 i32.lt_s if $if_10 - local.get $2 - i32.load + local.get $0 + i32.load offset=8 i32.const 0 i32.store8 local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + i32.load8_s offset=19 i32.const 0 - i32.store offset=12 + i32.lt_s + if $if_11 + local.get $0 + i32.load offset=8 + call $_free + local.get $0 + i32.const 0 + i32.store offset=16 + end ;; $if_11 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=8 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=19 + local.get $0 + i32.const 12 + i32.add + local.set $2 end ;; $if_10 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm local.get $0 i32.const 0 i32.store offset=8 - local.get $0 + local.get $2 local.get $4 i32.load - i32.store offset=12 - local.get $0 + i32.store + local.get $2 local.get $4 i32.load16_s offset=4 - i32.store16 offset=16 - local.get $0 + i32.store16 offset=4 + local.get $2 local.get $4 i32.load8_s offset=6 - i32.store8 offset=18 + i32.store8 offset=6 local.get $0 i32.const 0 i32.store8 offset=19 @@ -6920,7 +7257,7 @@ i32.load i32.load local.tee $2 - if $if_11 + if $if_12 local.get $2 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 @@ -6931,7 +7268,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $2 i32.const 0 @@ -6940,9 +7277,9 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store - end ;; $if_11 + end ;; $if_12 local.get $0 i32.load offset=24 local.set $3 @@ -6950,22 +7287,20 @@ local.get $2 i32.store offset=24 local.get $3 - if $if_12 + if $if_13 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 - end ;; $if_12 + end ;; $if_13 local.get $2 local.get $2 i32.load offset=16 @@ -6975,22 +7310,22 @@ local.get $2 i32.const 4 i32.add - local.tee $5 - i32.load local.tee $3 - i32.const 14872 + i32.load + local.tee $5 + i32.const 24616 i32.eq - if $if_13 (result i32) - local.get $5 + if $if_14 (result i32) + local.get $3 local.get $2 i32.load offset=12 - i32.const 14872 + i32.const 24616 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + local.get $3 i32.load else - local.get $3 - end ;; $if_13 + local.get $5 + end ;; $if_14 local.get $0 i32.const 8 i32.add @@ -7005,13 +7340,13 @@ local.get $3 local.get $1 local.get $5 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $5 - if $if_14 + if $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7023,7 +7358,7 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 @@ -7043,8 +7378,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_15 + if $if_16 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7053,12 +7389,10 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_15 - local.get $2 + end ;; $if_16 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_14 + end ;; $if_15 local.get $0 i32.load offset=24 local.tee $1 @@ -7069,19 +7403,19 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_16 + if $if_17 local.get $4 - global.set $30 + global.set $32 local.get $5 return - end ;; $if_16 + end ;; $if_17 local.get $0 i32.const 0 i32.store offset=24 local.get $4 - global.set $30 + global.set $32 local.get $5 ) @@ -7092,12 +7426,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $4 @@ -7131,7 +7465,7 @@ local.tee $2 if $if_0 local.get $3 - global.set $30 + global.set $32 local.get $2 i32.const 16 i32.add @@ -7144,7 +7478,7 @@ local.tee $0 i32.store offset=12 local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 16 i32.add @@ -7157,12 +7491,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 32 i32.add @@ -7184,7 +7518,7 @@ i32.eqz if $if local.get $2 - global.set $30 + global.set $32 return end ;; $if local.get $2 @@ -7235,7 +7569,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5eraseENSB_13iterator_baseINSA_12KeyValuePairEEE local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12MapEntryImplINS0_27Struct_FieldsEntry_DoNotUseENS0_11MessageLiteENSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEENS0_5ValueELNS1_14WireFormatLite9FieldTypeE9ELSE_11ELi0EE6ParserINS1_12MapFieldLiteIS3_SB_SC_LSE_9ELSE_11ELi0EEENS0_3MapISB_SC_EEE22ReadBeyondKeyValuePairEPNS0_2io16CodedInputStreamE (type $3) @@ -7249,9 +7583,9 @@ local.get $0 i32.load i32.load - local.tee $2 + local.tee $3 if $if - local.get $2 + local.get $3 call $__ZN6google8protobuf5Arena18CreateMaybeMessageINS0_27Struct_FieldsEntry_DoNotUseEJEEEPT_PS1_DpOT0_ local.set $2 else @@ -7261,7 +7595,7 @@ i32.const 0 i32.store offset=12 local.get $2 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $2 i32.const 0 @@ -7270,7 +7604,7 @@ i32.const 0 i32.store offset=16 local.get $2 - i32.const 5620 + i32.const 6672 i32.store end ;; $if local.get $0 @@ -7281,17 +7615,15 @@ i32.store offset=24 local.get $3 if $if_0 + local.get $3 local.get $3 i32.load i32.load offset=4 - local.set $2 - local.get $3 - local.get $2 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $0 i32.load offset=24 local.set $2 @@ -7327,7 +7659,7 @@ local.get $0 i32.const 8 i32.add - local.tee $3 + local.tee $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE5eraseERKS8_ local.get $0 i32.load offset=24 @@ -7337,28 +7669,30 @@ i32.const 1 i32.or i32.store offset=16 - local.get $4 - i32.const 4 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.const 14872 - i32.eq - if $if_2 - local.get $5 + block $block (result i32) local.get $4 - i32.load offset=12 - i32.const 14872 - call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $5 + i32.const 4 + i32.add + local.tee $3 i32.load - local.set $2 - end ;; $if_2 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s + local.tee $2 + i32.const 24616 + i32.eq + if $if_2 + local.get $3 + local.get $4 + i32.load offset=12 + i32.const 24616 + call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $3 + i32.load + local.set $2 + end ;; $if_2 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + end ;; $block if $if_3 local.get $2 i32.load @@ -7367,6 +7701,18 @@ local.get $2 i32.const 0 i32.store offset=4 + local.get $2 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $2 + i32.load + call $_free + local.get $2 + i32.const 0 + i32.store offset=8 + end ;; $if_4 else local.get $2 i32.const 0 @@ -7376,20 +7722,17 @@ i32.store8 offset=11 end ;; $if_3 local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 - local.get $3 + local.get $5 i64.load align=4 i64.store align=4 local.get $2 - local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $0 @@ -7397,34 +7740,34 @@ local.tee $2 i32.load i32.load offset=44 - local.set $4 + local.set $3 local.get $2 local.get $1 - local.get $4 - i32.const 15 + local.get $3 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) local.tee $4 - if $if_4 + if $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=72 - local.set $2 + local.set $1 + local.get $5 local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ local.get $0 local.get $0 i32.load offset=4 - local.get $3 + local.get $5 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEEixERKS8_ local.tee $2 i32.store offset=20 @@ -7439,8 +7782,9 @@ local.get $3 i32.load offset=8 local.tee $1 - i32.eqz - if $if_5 + if $if_6 (result i32) + local.get $2 + else local.get $3 local.get $3 i32.load offset=12 @@ -7449,28 +7793,26 @@ i32.store offset=8 local.get $0 i32.load offset=20 - local.set $2 - end ;; $if_5 - local.get $2 + end ;; $if_6 local.get $1 call $__ZN6google8protobuf5Value4SwapEPS1_ - end ;; $if_4 + end ;; $if_5 local.get $0 i32.load offset=24 - local.tee $1 + local.tee $3 i32.load i32.load offset=20 - local.set $2 + local.set $1 + local.get $3 local.get $1 - local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz - if $if_6 + if $if_7 local.get $4 return - end ;; $if_6 + end ;; $if_7 local.get $0 i32.const 0 i32.store offset=24 @@ -7489,12 +7831,12 @@ local.get $0 i32.load offset=48 if $if_1 - i32.const 4608 + i32.const 4584 i64.const 24 local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $0 @@ -7513,7 +7855,7 @@ i32.store offset=12 end ;; $if local.get $0 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $0 i32.const 0 @@ -7522,7 +7864,7 @@ i32.const 0 i32.store offset=16 local.get $0 - i32.const 5620 + i32.const 6672 i32.store local.get $0 ) @@ -7538,12 +7880,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 local.get $1 @@ -7837,17 +8179,17 @@ local.set $0 local.get $4 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5Value9MergeFromERKS1_ (type $4) @@ -7859,12 +8201,12 @@ (local $5 i32) (local $6 i32) (local $7 f64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -7873,7 +8215,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $4 i32.const 796 @@ -7885,7 +8227,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8142 + i32.const 12234 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -7936,7 +8278,6 @@ local.get $6 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop end ;; $if_0 block $block block $block_0 @@ -8014,7 +8355,7 @@ i32.const 8 i32.add local.tee $0 - i32.const 14872 + i32.const 24616 i32.store end ;; $if_4 local.get $2 @@ -8034,7 +8375,7 @@ local.get $0 i32.load local.tee $2 - i32.const 14872 + i32.const 24616 i32.eq if $if_6 local.get $0 @@ -8047,7 +8388,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ end ;; $if_6 local.get $4 - global.set $30 + global.set $32 return end ;; $block_3 local.get $1 @@ -8110,7 +8451,7 @@ i32.const 5 i32.eq br_if $block_8 - i32.const 14744 + i32.const 24488 end ;; $if_8 br $block_7 end ;; $block_8 @@ -8164,7 +8505,7 @@ i32.const 6 i32.eq br_if $block_10 - i32.const 14832 + i32.const 24576 end ;; $if_10 br $block_9 end ;; $block_10 @@ -8178,11 +8519,11 @@ br $block end ;; $block_0 local.get $4 - global.set $30 + global.set $32 return end ;; $block local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6Struct9MergeFromERKS1_ (type $4) @@ -8193,12 +8534,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8207,7 +8548,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $3 i32.const 341 @@ -8219,7 +8560,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8142 + i32.const 12234 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -8270,7 +8611,6 @@ local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop end ;; $if_0 local.get $3 i32.const 24 @@ -8309,7 +8649,7 @@ i32.eqz if $if_2 local.get $3 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 @@ -8378,7 +8718,7 @@ br_if $loop end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf9ListValue9MergeFromERKS1_ (type $4) @@ -8388,12 +8728,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8402,7 +8742,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $2 i32.const 1040 @@ -8414,7 +8754,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8142 + i32.const 12234 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8435,7 +8775,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -8476,7 +8816,6 @@ local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop local.get $0 i32.const 8 i32.add @@ -8485,7 +8824,7 @@ i32.add call $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal20RepeatedPtrFieldBase9MergeFromINS0_16RepeatedPtrFieldINS0_5ValueEE11TypeHandlerEEEvRKS2_ (type $4) @@ -8497,12 +8836,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.eq @@ -8511,7 +8850,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7667 + i32.const 11759 i32.store offset=4 local.get $2 i32.const 1586 @@ -8523,7 +8862,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8176 + i32.const 12268 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8535,7 +8874,7 @@ i32.eqz if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $1 @@ -8643,14 +8982,14 @@ i32.ge_s if $if_3 local.get $2 - global.set $30 + global.set $32 return end ;; $if_3 local.get $0 local.get $1 i32.store local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal18GenericTypeHandlerINS0_5ValueEE5MergeERKS3_PS3_ (type $4) @@ -8669,7 +9008,7 @@ i32.const 16 i32.add local.tee $1 - i32.const 5708 + i32.const 6760 i32.store local.get $1 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -8732,12 +9071,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -8751,7 +9090,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 601 @@ -8763,7 +9102,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8673 + i32.const 12765 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8825,7 +9164,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 607 @@ -8837,7 +9176,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 8707 + i32.const 12799 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -8880,7 +9219,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $3 i32.const 612 @@ -8892,7 +9231,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 8751 + i32.const 12843 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -8984,7 +9323,7 @@ i32.ne if $if_5 local.get $3 - global.set $30 + global.set $32 return end ;; $if_5 local.get $1 @@ -8994,7 +9333,7 @@ i32.ge_u if $if_6 local.get $3 - global.set $30 + global.set $32 return end ;; $if_6 local.get $0 @@ -9022,7 +9361,7 @@ end ;; $if_7 end ;; $loop local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap19EraseFromLinkedListEPNSB_4NodeESD_ (type $2) @@ -9935,12 +10274,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -9961,7 +10300,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $1 i32.const 495 @@ -9973,7 +10312,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8787 + i32.const 12879 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -9984,13 +10323,13 @@ i32.eqz if $if_1 local.get $1 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 call $__ZN6google8protobuf5Value10clear_kindEv local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap6insertERKNSA_12KeyValuePairE (type $6) @@ -10003,12 +10342,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 16 i32.add @@ -10039,7 +10378,7 @@ i32.const 0 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 return end ;; $if block $block @@ -10161,12 +10500,12 @@ local.get $3 i32.load offset=48 if $if_7 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $3 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_7 end ;; $if_6 local.get $3 @@ -10206,7 +10545,7 @@ i32.const 1 i32.store8 offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE23CreateValueTypeInternalERKS8_ (type $3) @@ -10226,7 +10565,7 @@ local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $0 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $0 i32.const 0 @@ -10234,7 +10573,7 @@ local.get $0 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_0 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10251,12 +10590,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 40 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -10282,7 +10621,7 @@ i32.load local.set $0 local.get $2 - i32.const 5708 + i32.const 6760 i32.store offset=16 local.get $2 local.get $0 @@ -10290,7 +10629,7 @@ local.get $2 i32.const 0 i32.store offset=32 - i32.const 5596 + i32.const 6648 i32.load if $if_4 call $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE @@ -10316,12 +10655,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 7 i32.le_u @@ -10330,7 +10669,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 765 @@ -10342,7 +10681,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9257 + i32.const 13349 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10482,13 +10821,13 @@ i32.load offset=20 if $if_5 local.get $2 - global.set $30 + global.set $32 return end ;; $if_5 local.get $4 call $_free local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap12InsertUniqueEmPNSB_4NodeE (type $5) @@ -10501,12 +10840,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 112 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 48 i32.add @@ -10531,7 +10870,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $4 i32.const 672 @@ -10543,7 +10882,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8831 + i32.const 12923 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -10569,7 +10908,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $4 i32.const 678 @@ -10581,7 +10920,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 8932 + i32.const 13024 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -10615,7 +10954,7 @@ local.get $3 call $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE local.get $5 - global.set $30 + global.set $32 return end ;; $if_3 i32.const 0 @@ -10655,7 +10994,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 return end ;; $if_5 else @@ -10663,7 +11002,7 @@ i32.const 3 i32.store local.get $6 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $6 i32.const 878 @@ -10675,7 +11014,7 @@ i32.const 0 i32.store offset=20 local.get $6 - i32.const 8988 + i32.const 13080 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $6 @@ -10707,7 +11046,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $5 i32.const 685 @@ -10719,7 +11058,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9028 + i32.const 13120 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -10755,7 +11094,7 @@ local.get $2 i32.store offset=8 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap11TreeConvertEm (type $4) @@ -10771,12 +11110,12 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 96 i32.add - global.set $30 + global.set $32 local.get $5 i32.const 72 i32.add @@ -10836,7 +11175,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 837 @@ -10848,7 +11187,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9150 + i32.const 13242 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -10864,12 +11203,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 16 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11112,7 +11451,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 return end ;; $if_11 local.get $11 @@ -11120,7 +11459,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 848 @@ -11132,7 +11471,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9215 + i32.const 13307 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -11154,7 +11493,7 @@ local.get $6 i32.store local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap18InsertUniqueInTreeEmPNSB_4NodeE (type $5) @@ -11165,12 +11504,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=16 local.tee $6 @@ -11194,7 +11533,7 @@ i32.const 3 i32.store local.get $4 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $4 i32.const 713 @@ -11206,7 +11545,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 9103 + i32.const 13195 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -11252,7 +11591,7 @@ i32.and i32.store offset=8 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE25__emplace_unique_key_argsIS7_JS7_EEENS_4pairINS_15__tree_iteratorIS7_PNS_11__tree_nodeIS7_PvEElEEbEERKT_DpOT0_ (type $5) @@ -11262,12 +11601,12 @@ (param $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $4 local.get $2 @@ -11283,7 +11622,7 @@ i32.const 0 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $1 @@ -11296,12 +11635,12 @@ local.get $2 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $2 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $2 @@ -11361,7 +11700,7 @@ i32.const 1 i32.store8 offset=4 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISM_EERKT_ (type $2) @@ -11951,12 +12290,12 @@ (param $2 i32) (param $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 local.get $1 i32.load @@ -11982,7 +12321,7 @@ i32.load if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -11995,12 +12334,12 @@ local.get $1 i32.load offset=48 if $if_2 - i32.const 5416 + i32.const 6480 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_2 end ;; $if_1 local.get $1 @@ -12052,7 +12391,7 @@ i32.add i32.store offset=12 local.get $4 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__treeIPNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN6google8protobuf3MapIS6_NS9_5ValueEE8InnerMap10KeyCompareENSC_12MapAllocatorIS7_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEENS_21__tree_const_iteratorIS7_PNS_11__tree_nodeIS7_SK_EElEERPNS_15__tree_end_nodeISM_EESN_RKT_ (type $15) @@ -12473,12 +12812,12 @@ (result i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $3 i32.const 24 i32.add @@ -12491,7 +12830,7 @@ i32.const 3 i32.store local.get $2 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $2 i32.const 926 @@ -12503,7 +12842,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 9310 + i32.const 13402 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -12519,7 +12858,7 @@ i32.const 3 i32.store local.get $3 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $3 i32.const 927 @@ -12531,7 +12870,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 9345 + i32.const 13437 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -12554,7 +12893,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -12570,13 +12909,13 @@ local.get $0 i32.load offset=48 if $if_3 - i32.const 5416 + i32.const 6480 local.get $1 i64.extend_i32_u local.get $0 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $0 @@ -12588,7 +12927,7 @@ call $_memset drop local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -12602,12 +12941,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 2 i32.shl @@ -12735,13 +13074,13 @@ local.get $0 if $if_4 local.get $4 - global.set $30 + global.set $32 return end ;; $if_4 local.get $5 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructC2EPNS0_5ArenaE (type $4) @@ -12749,7 +13088,7 @@ (param $1 i32) (local $2 i32) local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 local.get $1 @@ -12774,7 +13113,7 @@ local.get $0 i32.const 0 i32.store offset=24 - i32.const 5596 + i32.const 6648 i32.load i32.eqz if $if @@ -12830,17 +13169,17 @@ local.get $1 i32.load offset=48 if $if_1 - i32.const 4672 + i32.const 4648 i64.const 24 local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_1 end ;; $if_0 local.get $1 i32.const 24 - i32.const 51 + i32.const 116 call $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE local.tee $1 i32.const 0 @@ -12910,12 +13249,12 @@ (local $2 i32) (local $3 i32) (local $4 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 28 i32.add @@ -12937,7 +13276,7 @@ i32.eqz if $if local.get $1 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -12994,7 +13333,7 @@ br_if $loop end ;; $loop local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf3MapINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS0_5ValueEE8InnerMap5clearEv (type $0) @@ -13009,12 +13348,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 i32.eqz @@ -13026,7 +13365,7 @@ i32.const 0 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 return end ;; $if loop $loop @@ -13112,7 +13451,7 @@ i32.const 3 i32.store local.get $5 - i32.const 7792 + i32.const 11884 i32.store offset=4 local.get $5 i32.const 527 @@ -13124,7 +13463,7 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 9382 + i32.const 13474 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 @@ -13331,7 +13670,7 @@ local.get $1 i32.store offset=12 local.get $5 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal21arena_destruct_objectINS0_3MapINSt3__212basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEENS0_5ValueEE8InnerMapEEEvPv (type $0) @@ -13359,14 +13698,14 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 - i32.const 5956 + i32.const 7008 i32.store local.get $0 i32.load offset=4 @@ -13388,7 +13727,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7607 + i32.const 11697 i32.store offset=4 local.get $1 i32.const 150 @@ -13400,7 +13739,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 8787 + i32.const 12879 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -13443,14 +13782,14 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 return end ;; $block local.get $0 i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf6StructD0Ev (type $0) @@ -13482,19 +13821,19 @@ i32.const 22 i32.store offset=4 local.get $1 - i32.const 9740 + i32.const 13832 i64.load align=1 i64.store align=1 local.get $1 - i32.const 9748 + i32.const 13840 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 9756 + i32.const 13848 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 9760 + i32.const 13852 i32.load16_s align=1 i32.store16 offset=20 align=1 local.get $1 @@ -13564,18 +13903,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4656 + i32.const 4744 + i32.const 4632 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf6Struct9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13732 + i32.const 13773 i32.const 92 - i32.const 9730 + i32.const 13822 call $___assert_fail end ;; $if ) @@ -13592,12 +13931,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 12 i32.add @@ -13662,12 +14001,12 @@ local.get $4 i32.load offset=48 if $if_3 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $4 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $4 @@ -13684,13 +14023,13 @@ i32.store offset=12 end ;; $if_1 local.get $2 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $7 @@ -13709,11 +14048,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 i32.const 1 local.get $2 @@ -13727,7 +14066,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $5 @@ -13754,7 +14093,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8103 + i32.const 12195 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $5 @@ -13771,11 +14110,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) br $block end ;; $if_0 i32.const -1 @@ -13871,12 +14210,12 @@ local.get $5 i32.load offset=48 if $if_10 - i32.const 4592 + i32.const 4568 i64.const 32 local.get $5 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_10 end ;; $if_9 local.get $5 @@ -13893,13 +14232,13 @@ i32.store offset=12 end ;; $if_8 local.get $2 - i32.const 14872 + i32.const 24616 i32.store offset=4 local.get $2 i32.const 0 i32.store offset=8 local.get $2 - i32.const 5868 + i32.const 6920 i32.store local.get $2 local.get $4 @@ -13918,11 +14257,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_11 i32.const 1 local.get $2 @@ -13936,7 +14275,7 @@ i32.load offset=20 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) select local.set $3 local.get $10 @@ -13962,7 +14301,7 @@ local.get $2 local.get $4 i32.const 1 - i32.const 8103 + i32.const 12195 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $8 @@ -13979,11 +14318,11 @@ local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_13 end ;; $if_7 local.get $7 @@ -13995,7 +14334,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $2 i32.const 1 i32.and @@ -14014,7 +14353,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $0 i32.const 1 i32.and @@ -14039,7 +14378,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_15 local.get $6 - global.set $30 + global.set $32 ) (func $__ZNSt3__26__sortIRN6google8protobuf8internal19CompareByDerefFirstIPKNS2_7MapPairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS2_5ValueEEEEEPSF_EEvT0_SJ_T_ (type $6) @@ -17055,13 +17394,13 @@ i32.add local.tee $2 i32.load - i32.const 14872 + i32.const 24616 i32.eq if $if_1 local.get $2 local.get $0 i32.load offset=12 - i32.const 14872 + i32.const 24616 call $__ZN6google8protobuf8internal14ArenaStringPtr14CreateInstanceEPNS0_5ArenaEPKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE end ;; $if_1 local.get $1 @@ -17072,12 +17411,12 @@ local.get $3 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $2 i32.load local.tee $4 - i32.const 14872 + i32.const 24616 i32.eq if $if_2 local.get $2 @@ -17125,7 +17464,7 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 local.get $0 i32.load offset=8 @@ -17145,7 +17484,7 @@ local.get $0 i32.load offset=8 local.tee $0 - i32.const 14728 + i32.const 24472 i32.load local.get $0 select @@ -17159,12 +17498,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $3 @@ -17175,7 +17514,7 @@ i32.const 3 i32.store local.get $1 - i32.const 7667 + i32.const 11759 i32.store offset=4 local.get $1 i32.const 1567 @@ -17187,20 +17526,20 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 10047 + i32.const 14139 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 return end ;; $if local.get $3 i32.eqz if $if_0 local.get $1 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 @@ -17266,7 +17605,7 @@ i32.const 0 i32.store offset=4 local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf5ValueD2Ev (type $0) @@ -17274,7 +17613,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17326,7 +17665,7 @@ (local $1 i32) (local $2 i32) local.get $0 - i32.const 5708 + i32.const 6760 i32.store local.get $0 call $__ZN6google8protobuf5Value10SharedDtorEv @@ -17391,19 +17730,19 @@ i32.const 21 i32.store offset=4 local.get $1 - i32.const 10129 + i32.const 14221 i64.load align=1 i64.store align=1 local.get $1 - i32.const 10137 + i32.const 14229 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 10145 + i32.const 14237 i32.load align=1 i32.store offset=16 align=1 local.get $1 - i32.const 10149 + i32.const 14241 i32.load8_s i32.store8 offset=20 local.get $1 @@ -17471,18 +17810,18 @@ (param $0 i32) (param $1 i32) local.get $1 - i32.const 4768 - i32.const 4704 + i32.const 4744 + i32.const 4680 call $___dynamic_cast if $if local.get $0 local.get $1 call $__ZN6google8protobuf5Value9MergeFromERKS1_ else - i32.const 9640 - i32.const 9681 + i32.const 13732 + i32.const 13773 i32.const 92 - i32.const 9730 + i32.const 13822 call $___assert_fail end ;; $if ) @@ -17545,7 +17884,7 @@ local.get $2 local.get $3 i32.const 1 - i32.const 8068 + i32.const 12160 call $__ZN6google8protobuf8internal14WireFormatLite16VerifyUtf8StringEPKciNS2_9OperationES4_ drop local.get $0 @@ -17556,7 +17895,7 @@ local.get $0 i32.load offset=8 else - i32.const 14872 + i32.const 24616 end ;; $if_3 local.get $1 call $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE @@ -17606,7 +17945,7 @@ local.tee $2 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $2 i32.const 1 i32.and @@ -17625,7 +17964,7 @@ local.tee $0 i32.const -2 i32.and - i32.const 14872 + i32.const 24616 local.get $0 i32.const 1 i32.and @@ -17665,12 +18004,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $4 @@ -17691,11 +18030,11 @@ local.get $4 local.get $3 local.get $5 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load local.set $0 @@ -17706,7 +18045,7 @@ i32.eqz if $if local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -17715,7 +18054,7 @@ local.get $0 call $_free local.get $3 - global.set $30 + global.set $32 ) (func $_proxy_onCreate (type $4) @@ -17730,221 +18069,483 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $5 - global.get $30 + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 f32) + (local $15 f32) + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $5 - i32.const 20 - i32.add - local.set $3 - local.get $5 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $9 - local.get $5 + local.set $5 + local.get $6 i32.const 4 i32.add - local.set $4 + local.set $9 i32.const 16 call $__Znwm - local.tee $2 + local.tee $4 local.get $0 i32.store offset=8 - local.get $2 + local.get $4 i32.const 0 i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=4 - local.get $2 + local.get $4 i32.const 0 i32.store - local.get $3 - local.get $2 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE + local.get $4 + local.get $0 + i32.store offset=4 block $block block $block_0 + i32.const 24652 + i32.load + local.tee $3 + i32.eqz + local.tee $11 + br_if $block_0 + i32.const 24648 + i32.load local.get $3 - i32.load8_s offset=4 - if $if - local.get $3 - i32.load - local.set $8 - br $block_0 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $13 + if $if (result i32) + local.get $0 + local.get $8 + i32.and else - local.get $2 - i32.load offset=12 - local.set $6 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $6 - if $if_0 - local.get $6 - local.get $6 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_0 - local.get $2 - call $_free local.get $3 - i32.load - local.set $8 - local.get $3 - i32.load8_s offset=4 - br_if $block_0 + local.get $0 + i32.gt_u + if $if_0 (result i32) + local.get $0 + else + local.get $3 + if $if_1 (result i32) + local.get $0 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_1 + end ;; $if_0 end ;; $if + local.tee $10 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block_0 + block $block_1 + local.get $13 + if $if_2 + loop $loop + local.get $10 + local.get $2 + i32.load offset=4 + local.get $8 + i32.and + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop + br $block_0 + unreachable + end ;; $loop + unreachable + else + loop $loop_0 + local.get $2 + i32.load offset=4 + local.tee $8 + local.get $3 + i32.ge_u + if $if_3 (result i32) + local.get $3 + if $if_4 (result i32) + local.get $8 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_4 + else + local.get $8 + end ;; $if_3 + local.get $10 + i32.ne + br_if $block_0 + local.get $0 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_1 + local.get $2 + i32.load + local.tee $2 + br_if $loop_0 + br $block_0 + unreachable + end ;; $loop_0 + unreachable + end ;; $if_2 + unreachable + end ;; $block_1 + local.get $4 + call $_free br $block end ;; $block_0 + local.get $11 + i32.const 24664 + f32.load + local.tee $14 local.get $3 - local.get $1 - i32.store - local.get $3 - call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi - i32.load - local.tee $1 + f32.convert_i32_u + f32.mul + i32.const 24660 i32.load - i32.load offset=8 - local.set $2 - local.get $1 - local.get $2 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $1 - i32.const 68 + i32.const 1 i32.add - local.tee $2 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - if $if_1 + f32.convert_i32_u + local.tee $15 + f32.lt + i32.or + if $if_5 (result i32) + local.get $3 + local.get $3 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $3 + i32.const 3 + i32.lt_u + i32.or + local.get $3 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $15 + local.get $14 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_6 (result i32) + i32.const 0 + else + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_7 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_8 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_8 + end ;; $if_7 + end ;; $if_6 + local.tee $3 local.get $2 + local.get $2 + local.get $3 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm + i32.const 24652 i32.load - local.set $6 - local.get $1 - i32.load offset=72 - local.set $2 - local.get $4 - i64.const 0 - i64.store align=4 + local.set $3 local.get $4 - i32.const 0 - i32.store offset=8 - local.get $2 + i32.load offset=4 + else + local.get $0 + end ;; $if_5 + local.set $2 + block $block_2 + block $block_3 + i32.const 24648 + i32.load + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $8 + i32.and + i32.eqz + local.tee $10 + if $if_9 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_10 (result i32) + local.get $3 + if $if_11 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_11 + else + local.get $2 + end ;; $if_10 + end ;; $if_9 + i32.const 2 + i32.shl + i32.add + local.tee $11 + i32.load + local.tee $2 + if $if_12 + local.get $4 + local.get $2 + i32.load + i32.store + br $block_3 + else + local.get $4 + i32.const 24656 + i32.load + i32.store + i32.const 24656 + local.get $4 + i32.store + local.get $11 + i32.const 24656 + i32.store + local.get $4 + i32.load + local.tee $2 + if $if_13 + local.get $2 + i32.load offset=4 + local.set $2 + i32.const 24648 + i32.load + local.get $10 + if $if_14 (result i32) + local.get $2 + local.get $8 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_15 (result i32) + local.get $3 + if $if_16 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_16 + else + local.get $2 + end ;; $if_15 + end ;; $if_14 + i32.const 2 + i32.shl + i32.add + local.set $2 + br $block_3 + end ;; $if_13 + end ;; $if_12 + br $block_2 + end ;; $block_3 + local.get $2 + local.get $4 + i32.store + end ;; $block_2 + i32.const 24660 + i32.const 24660 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.set $2 + local.get $5 + local.get $1 + i32.store + local.get $5 + call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi + i32.load + local.tee $1 + i32.load + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $1 + i32.const 68 + i32.add + local.tee $3 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + if $if_17 + local.get $3 + i32.load + local.set $4 + local.get $1 + i32.load offset=72 + local.set $3 + local.get $5 + i64.const 0 + i64.store align=4 + local.get $5 + i32.const 0 + i32.store offset=8 + local.get $3 i32.const -17 i32.gt_u - if $if_2 + if $if_18 call $_abort else - local.get $2 + local.get $3 local.set $7 - local.get $6 - local.set $10 - end ;; $if_2 + local.get $4 + local.set $12 + end ;; $if_18 else - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $4 i32.const 255 i32.and local.set $7 - local.get $2 - local.set $10 - end ;; $if_1 + local.get $3 + local.set $12 + end ;; $if_17 local.get $1 - local.set $2 - block $block_1 - block $block_2 + local.set $3 + block $block_4 + block $block_5 local.get $7 i32.const 11 i32.lt_u - if $if_3 (result i32) - local.get $4 + if $if_19 (result i32) + local.get $5 local.get $7 i32.store8 offset=11 local.get $7 - if $if_4 (result i32) - local.get $4 + if $if_20 (result i32) + local.get $5 local.set $1 - br $block_2 + br $block_5 else - local.get $4 - end ;; $if_4 + i32.const 0 + local.set $7 + local.get $5 + end ;; $if_20 else - local.get $4 + local.get $5 local.get $7 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $4 call $__Znwm local.tee $1 i32.store + local.get $5 local.get $4 - local.get $6 i32.const -2147483648 i32.or i32.store offset=8 - local.get $4 + local.get $5 local.get $7 i32.store offset=4 - br $block_2 - end ;; $if_3 + br $block_5 + end ;; $if_19 local.set $1 - br $block_1 - end ;; $block_2 + br $block_4 + end ;; $block_5 local.get $1 - local.get $10 + local.get $12 local.get $7 call $_memcpy drop - end ;; $block_1 + end ;; $block_4 local.get $1 local.get $7 i32.add i32.const 0 i32.store8 - i32.const 14948 + i32.const 24692 i32.load local.tee $1 - if $if_5 - block $block_3 (result i32) + if $if_21 + block $block_6 (result i32) local.get $1 - local.get $4 + local.get $5 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 i32.eqz - if $if_6 - local.get $3 - local.get $4 + if $if_22 + local.get $9 + local.get $5 call $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ i32.const 4 - local.get $3 + local.get $9 i32.load - local.get $3 - local.get $3 + local.get $9 + local.get $9 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s local.tee $1 select - local.get $3 + local.get $9 i32.load offset=4 local.get $0 i32.const 255 @@ -17952,103 +18553,88 @@ local.get $1 select call $_proxy_log - local.get $3 + drop + local.get $9 i32.load8_s offset=11 i32.const 0 - i32.lt_s - if $if_7 - local.get $3 - i32.load - call $_free - end ;; $if_7 + i32.ge_s + if $if_23 + i32.const 1 + local.set $1 + i32.const 0 + br $block_6 + end ;; $if_23 + local.get $9 + i32.load + call $_free i32.const 1 local.set $1 i32.const 0 - br $block_3 - end ;; $if_6 - local.get $3 - local.get $0 - i32.store - local.get $9 - local.get $2 - i32.store + br $block_6 + end ;; $if_22 + local.get $6 local.get $1 - i32.load offset=40 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 36 - call $___cxa_throw - end ;; $if_8 - local.get $5 + i32.const 20 + i32.add local.get $0 local.get $3 - local.get $9 - local.get $0 - i32.load - i32.load offset=24 + local.get $1 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $5 + call_indirect $28 (type $5) + local.get $6 i32.load local.set $1 - local.get $5 + local.get $6 i32.const 0 i32.store - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 local.get $0 - if $if_9 + if $if_24 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 + call_indirect $28 (type $0) + local.get $6 i32.load local.set $0 - local.get $5 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_10 + if $if_25 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_10 + call_indirect $28 (type $0) + end ;; $if_25 else - local.get $5 + local.get $6 i32.const 0 i32.store - end ;; $if_9 + end ;; $if_24 i32.const 0 local.set $1 i32.const 0 - end ;; $block_3 + end ;; $block_6 local.set $0 else i32.const 72 @@ -18086,71 +18672,71 @@ local.get $0 i32.store local.get $1 - i32.const 6196 + i32.const 7248 i32.store local.get $1 - local.get $2 + local.get $3 i32.store offset=68 - local.get $8 + local.get $2 i32.load offset=12 local.set $0 - local.get $8 + local.get $2 local.get $1 i32.store offset=12 - local.get $0 - if $if_11 + block $block_7 (result i32) local.get $0 - local.get $0 - i32.load - i32.load offset=4 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $8 - i32.load offset=12 - local.set $1 - end ;; $if_11 + if $if_26 + local.get $0 + local.get $0 + i32.load + i32.load offset=4 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + local.get $2 + i32.load offset=12 + local.set $1 + end ;; $if_26 + local.get $1 + end ;; $block_7 local.get $1 i32.load i32.load offset=12 - local.set $0 - local.get $1 - local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 i32.const 1 local.set $1 - end ;; $if_5 - local.get $4 + end ;; $if_21 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $4 + if $if_27 + local.get $5 i32.load call $_free - end ;; $if_12 + end ;; $if_27 local.get $1 - if $if_13 + if $if_28 local.get $0 local.get $0 i32.load i32.load offset=24 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 return - end ;; $if_13 + end ;; $if_28 end ;; $block - local.get $8 + local.get $2 i32.load offset=12 local.tee $0 i32.load @@ -18160,20 +18746,20 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $0 i32.load i32.load offset=24 local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - local.get $5 - global.set $30 + call_indirect $28 (type $0) + local.get $6 + global.set $32 ) (func $_proxy_onDelete (type $0) @@ -18181,12 +18767,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__Z10getContextj local.tee $2 @@ -18195,18 +18781,18 @@ local.set $3 local.get $2 local.get $3 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) local.get $1 local.get $0 i32.store local.get $1 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ local.get $1 - global.set $30 + global.set $32 ) (func $_proxy_onDone (type $0) @@ -18220,11 +18806,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onGrpcClose (type $7) @@ -18236,12 +18822,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $6 @@ -18266,9 +18852,9 @@ local.get $7 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) local.get $5 i32.load local.set $0 @@ -18279,7 +18865,7 @@ i32.eqz if $if local.get $5 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18288,7 +18874,7 @@ local.get $0 call $_free local.get $5 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcCreateInitialMetadata (type $4) @@ -18304,11 +18890,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceive (type $5) @@ -18319,12 +18905,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 call $__ZL14getRootContextj local.tee $5 @@ -18348,9 +18934,9 @@ local.get $6 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $4 i32.load local.set $0 @@ -18361,7 +18947,7 @@ i32.eqz if $if local.get $4 - global.set $30 + global.set $32 return end ;; $if local.get $0 @@ -18370,7 +18956,7 @@ local.get $0 call $_free local.get $4 - global.set $30 + global.set $32 ) (func $_proxy_onGrpcReceiveInitialMetadata (type $4) @@ -18386,11 +18972,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onGrpcReceiveTrailingMetadata (type $4) @@ -18406,11 +18992,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onHttpCallResponse (type $17) @@ -18427,12 +19013,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $8 i32.const 8 i32.add @@ -18488,9 +19074,9 @@ local.get $12 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $8 i32.load local.set $0 @@ -18529,7 +19115,7 @@ i32.eqz if $if_1 local.get $8 - global.set $30 + global.set $32 return end ;; $if_1 local.get $0 @@ -18538,7 +19124,7 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 ) (func $_proxy_onLog (type $0) @@ -18554,11 +19140,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $_proxy_onQueueReady (type $4) @@ -18574,11 +19160,11 @@ local.get $0 local.get $1 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $_proxy_onRequestBody (type $2) @@ -18601,9 +19187,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onRequestHeaders (type $1) @@ -18620,7 +19206,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestMetadata (type $1) @@ -18637,7 +19223,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onRequestTrailers (type $1) @@ -18654,7 +19240,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseBody (type $2) @@ -18677,9 +19263,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $_proxy_onResponseHeaders (type $1) @@ -18696,7 +19282,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseMetadata (type $1) @@ -18713,7 +19299,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onResponseTrailers (type $1) @@ -18730,7 +19316,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $_proxy_onStart (type $7) @@ -18749,29 +19335,24 @@ (local $12 i32) (local $13 i32) (local $14 i32) - (local $15 i32) - global.get $30 - local.set $7 - global.get $30 + global.get $32 + local.set $6 + global.get $32 i32.const 32 i32.add - global.set $30 - local.get $7 - i32.const 28 - i32.add - local.set $9 - local.get $7 + global.set $32 + local.get $6 i32.const 16 i32.add - local.set $6 - local.get $7 + local.set $7 + local.get $6 i32.const 8 i32.add - local.set $11 - local.get $7 + local.set $10 + local.get $6 i32.const 12 i32.add - local.set $12 + local.set $11 i32.const 8 call $__Znwm local.tee $8 @@ -18781,27 +19362,27 @@ local.get $2 i32.store offset=4 local.get $1 - local.set $13 + local.set $12 block $block block $block_0 - i32.const 14908 + i32.const 24652 i32.load local.tee $5 i32.eqz br_if $block_0 - i32.const 14904 + i32.const 24648 i32.load local.get $5 local.get $5 i32.const -1 i32.add - local.tee $10 + local.tee $9 i32.and i32.eqz - local.tee $14 + local.tee $13 if $if (result i32) local.get $0 - local.get $10 + local.get $9 i32.and else local.get $5 @@ -18820,7 +19401,7 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $15 + local.tee $14 i32.const 2 i32.shl i32.add @@ -18834,7 +19415,7 @@ i32.eqz br_if $block_0 block $block_1 - local.get $14 + local.get $13 if $if_2 loop $loop local.get $0 @@ -18842,16 +19423,16 @@ i32.load offset=4 local.tee $5 i32.eq - local.tee $14 + local.tee $13 local.get $5 - local.get $10 + local.get $9 i32.and - local.get $15 + local.get $14 i32.eq i32.or i32.eqz br_if $block_0 - local.get $14 + local.get $13 if $if_3 local.get $0 local.get $1 @@ -18872,7 +19453,7 @@ local.get $0 local.get $1 i32.load offset=4 - local.tee $10 + local.tee $9 i32.eq if $if_4 local.get $0 @@ -18881,22 +19462,22 @@ i32.eq br_if $block_1 else - local.get $10 + local.get $9 local.get $5 i32.ge_u if $if_5 (result i32) local.get $5 if $if_6 (result i32) - local.get $10 + local.get $9 local.get $5 i32.rem_u else i32.const 0 end ;; $if_6 else - local.get $10 + local.get $9 end ;; $if_5 - local.get $15 + local.get $14 i32.ne br_if $block_0 end ;; $if_4 @@ -18921,11 +19502,11 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 br $block end ;; $block_0 - i32.const 14944 + i32.const 24688 i32.load i32.eqz if $if_7 @@ -18964,7 +19545,7 @@ local.get $0 i32.store local.get $5 - i32.const 6124 + i32.const 7176 i32.store local.get $5 i32.const 68 @@ -18999,12 +19580,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $7 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $6 + local.get $7 i32.const -2147483648 i32.or i32.store offset=76 @@ -19016,7 +19597,7 @@ br $block_2 end ;; $block_3 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19062,10 +19643,10 @@ local.get $5 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19079,20 +19660,20 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_10 local.get $5 local.set $0 br $block end ;; $if_7 - local.get $6 + local.get $7 i64.const 0 i64.store align=4 - local.get $6 + local.get $7 i32.const 0 i32.store offset=8 local.get $2 @@ -19107,19 +19688,19 @@ i32.const 11 i32.lt_u if $if_12 (result i32) - local.get $6 + local.get $7 local.get $2 i32.store8 offset=11 local.get $2 if $if_13 (result i32) - local.get $6 + local.get $7 local.set $1 br $block_5 else - local.get $6 + local.get $7 end ;; $if_13 else - local.get $6 + local.get $7 local.get $2 i32.const 16 i32.add @@ -19129,12 +19710,12 @@ call $__Znwm local.tee $1 i32.store - local.get $6 + local.get $7 local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $6 + local.get $7 local.get $2 i32.store offset=4 br $block_5 @@ -19143,7 +19724,7 @@ br $block_4 end ;; $block_5 local.get $1 - local.get $13 + local.get $12 local.get $2 call $_memcpy drop @@ -19153,53 +19734,36 @@ i32.add i32.const 0 i32.store8 - i32.const 14944 + i32.const 24688 i32.load - local.get $6 + local.get $7 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeISI_PvEEEERKT_ local.tee $1 if $if_14 (result i32) local.get $8 i32.load offset=4 local.set $2 - local.get $7 + local.get $6 local.get $8 i32.load i32.store - local.get $7 + local.get $6 local.get $2 i32.store offset=4 - local.get $9 - local.get $0 - i32.store - local.get $1 - i32.load offset=40 - local.tee $1 - i32.eqz - if $if_15 - i32.const 4 - call $___cxa_allocate_exception - local.tee $2 - i32.const 6668 - i32.store - local.get $2 - i32.const 5248 - i32.const 36 - call $___cxa_throw - end ;; $if_15 - local.get $11 + local.get $10 local.get $1 - local.get $9 - local.get $7 + i32.const 20 + i32.add + local.get $0 + local.get $6 local.get $1 - i32.load - i32.load offset=24 + i32.load offset=28 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $11 + call_indirect $28 (type $5) + local.get $10 i32.load local.tee $1 i32.load @@ -19209,22 +19773,22 @@ local.get $2 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $1 - local.get $6 + local.get $7 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEixERSE_ local.get $1 i32.store - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.set $2 - local.get $11 + local.get $10 i32.load local.set $5 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $2 @@ -19234,40 +19798,40 @@ local.get $5 i32.store local.get $0 - if $if_16 + if $if_15 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_16 - local.get $11 + call_indirect $28 (type $0) + end ;; $if_15 + local.get $10 i32.load local.set $0 - local.get $11 + local.get $10 i32.const 0 i32.store local.get $0 - if $if_17 + if $if_16 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_17 + call_indirect $28 (type $0) + end ;; $if_16 local.get $1 else local.get $8 i32.load - local.set $10 + local.set $9 local.get $8 i32.load offset=4 local.set $5 @@ -19306,7 +19870,7 @@ local.get $0 i32.store local.get $2 - i32.const 6124 + i32.const 7176 i32.store local.get $2 i32.const 68 @@ -19320,15 +19884,15 @@ local.get $5 i32.const -17 i32.gt_u - if $if_18 + if $if_17 call $_abort - end ;; $if_18 + end ;; $if_17 block $block_6 block $block_7 local.get $5 i32.const 11 i32.lt_u - if $if_19 + if $if_18 local.get $2 local.get $5 i32.store8 offset=79 @@ -19341,12 +19905,12 @@ i32.add i32.const -16 i32.and - local.tee $13 + local.tee $12 call $__Znwm local.tee $1 i32.store local.get $2 - local.get $13 + local.get $12 i32.const -2147483648 i32.or i32.store offset=76 @@ -19354,11 +19918,11 @@ local.get $5 i32.store offset=72 br $block_7 - end ;; $if_19 + end ;; $if_18 br $block_6 end ;; $block_7 local.get $1 - local.get $10 + local.get $9 local.get $5 call $_memcpy drop @@ -19404,10 +19968,10 @@ local.get $2 i32.const 1065353216 i32.store offset=156 - local.get $9 + local.get $6 local.get $0 i32.store - local.get $9 + local.get $6 call $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi local.tee $1 i32.load @@ -19416,29 +19980,29 @@ local.get $2 i32.store local.get $0 - if $if_20 + if $if_19 local.get $0 local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - end ;; $if_20 + call_indirect $28 (type $0) + end ;; $if_19 local.get $2 end ;; $if_14 local.set $0 - local.get $6 + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_21 - local.get $6 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_21 + end ;; $if_20 end ;; $block local.get $0 i32.load @@ -19452,35 +20016,35 @@ local.get $1 local.get $4 i32.store offset=4 - local.get $12 + local.get $11 local.get $1 i32.store local.get $0 - local.get $12 + local.get $11 local.get $2 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $12 + call_indirect $28 (type $4) + local.get $11 i32.load local.set $0 - local.get $12 + local.get $11 i32.const 0 i32.store local.get $0 i32.eqz - if $if_22 + if $if_21 local.get $8 i32.load call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 return - end ;; $if_22 + end ;; $if_21 local.get $0 i32.load call $_free @@ -19491,8 +20055,8 @@ call $_free local.get $8 call $_free - local.get $7 - global.set $30 + local.get $6 + global.set $32 ) (func $_proxy_onTick (type $0) @@ -19506,11 +20070,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZL14getRootContextj (type $1) @@ -19521,7 +20085,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14908 + i32.const 24652 i32.load local.tee $1 i32.eqz @@ -19529,7 +20093,7 @@ i32.const 0 return end ;; $if - i32.const 14904 + i32.const 24648 i32.load local.get $1 local.get $1 @@ -19664,7 +20228,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -19680,7 +20244,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__213unordered_mapIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS2_EEEENS_4hashIiEENS_8equal_toIiEENS_9allocatorINS_4pairIKiS5_EEEEEixEOi (type $1) @@ -19697,7 +20261,7 @@ local.get $0 i32.load local.set $4 - i32.const 14908 + i32.const 24652 i32.load local.tee $2 i32.eqz @@ -19706,7 +20270,7 @@ i32.const 0 local.set $0 else - i32.const 14904 + i32.const 24648 i32.load local.get $2 local.get $2 @@ -19845,13 +20409,13 @@ i32.const 0 i32.store local.get $6 - i32.const 14920 + i32.const 24664 f32.load local.tee $8 local.get $2 f32.convert_i32_u f32.mul - i32.const 14916 + i32.const 24660 i32.load i32.const 1 i32.add @@ -19911,7 +20475,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - i32.const 14908 + i32.const 24652 i32.load local.tee $1 i32.const -1 @@ -19948,7 +20512,7 @@ end ;; $if_9 block $block_3 block $block_4 - i32.const 14904 + i32.const 24648 i32.load local.get $0 i32.const 2 @@ -19965,14 +20529,14 @@ br $block_4 else local.get $3 - i32.const 14912 + i32.const 24656 i32.load i32.store - i32.const 14912 + i32.const 24656 local.get $3 i32.store local.get $2 - i32.const 14912 + i32.const 24656 i32.store local.get $3 i32.load @@ -19981,7 +20545,7 @@ local.get $0 i32.load offset=4 local.set $0 - i32.const 14904 + i32.const 24648 i32.load local.get $1 local.get $1 @@ -20023,8 +20587,8 @@ local.get $3 i32.store end ;; $block_3 - i32.const 14916 - i32.const 14916 + i32.const 24660 + i32.const 24660 i32.load i32.const 1 i32.add @@ -20600,7 +21164,7 @@ i32.xor local.set $6 block $block_3 - i32.const 14928 + i32.const 24672 i32.load local.tee $2 i32.eqz @@ -20609,7 +21173,7 @@ i32.const 0 local.set $5 else - i32.const 14924 + i32.const 24668 i32.load local.get $2 local.get $2 @@ -20957,13 +21521,13 @@ i32.const 0 i32.store local.get $12 - i32.const 14940 + i32.const 24684 f32.load local.tee $13 local.get $2 f32.convert_i32_u f32.mul - i32.const 14936 + i32.const 24680 i32.load i32.const 1 i32.add @@ -21023,7 +21587,7 @@ i32.lt_u select call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEP11RootContextEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEm - i32.const 14928 + i32.const 24672 i32.load local.tee $0 i32.const -1 @@ -21060,7 +21624,7 @@ end ;; $if_21 block $block_12 block $block_13 - i32.const 14924 + i32.const 24668 i32.load local.get $5 i32.const 2 @@ -21079,14 +21643,14 @@ br $block_13 else local.get $4 - i32.const 14932 + i32.const 24676 i32.load i32.store - i32.const 14932 + i32.const 24676 local.get $4 i32.store local.get $2 - i32.const 14932 + i32.const 24676 i32.store local.get $4 i32.load @@ -21095,7 +21659,7 @@ local.get $1 i32.load offset=4 local.set $1 - i32.const 14924 + i32.const 24668 i32.load local.get $0 local.get $0 @@ -21137,8 +21701,8 @@ local.get $4 i32.store end ;; $block_12 - i32.const 14936 - i32.const 14936 + i32.const 24680 + i32.const 24680 i32.load i32.const 1 i32.add @@ -21178,7 +21742,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14928 + i32.const 24672 i32.load local.tee $0 i32.gt_u @@ -21204,10 +21768,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14936 + i32.const 24680 i32.load f32.convert_i32_u - i32.const 14940 + i32.const 24684 f32.load f32.div f32.ceil @@ -21289,10 +21853,10 @@ local.get $0 i32.eqz if $if - i32.const 14924 + i32.const 24668 i32.load local.set $0 - i32.const 14924 + i32.const 24668 i32.const 0 i32.store local.get $0 @@ -21300,7 +21864,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14928 + i32.const 24672 i32.const 0 i32.store return @@ -21314,11 +21878,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 43 + i32.const 6400 + i32.const 108 call $___cxa_throw end ;; $if_1 local.get $0 @@ -21326,10 +21890,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14924 + i32.const 24668 i32.load local.set $1 - i32.const 14924 + i32.const 24668 local.get $2 i32.store local.get $1 @@ -21337,13 +21901,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14928 + i32.const 24672 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14924 + i32.const 24668 i32.load local.get $1 i32.const 2 @@ -21359,7 +21923,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14932 + i32.const 24676 i32.load local.tee $6 i32.eqz @@ -21369,7 +21933,7 @@ local.get $6 i32.load offset=4 local.set $1 - i32.const 14924 + i32.const 24668 i32.load local.get $0 local.get $0 @@ -21404,7 +21968,7 @@ i32.const 2 i32.shl i32.add - i32.const 14932 + i32.const 24676 i32.store local.get $6 i32.load @@ -21446,7 +22010,7 @@ local.get $4 else block $block (result i32) - i32.const 14924 + i32.const 24668 i32.load local.get $8 i32.const 2 @@ -21674,7 +22238,7 @@ i32.load i32.store local.get $1 - i32.const 14924 + i32.const 24668 i32.load local.get $8 i32.const 2 @@ -21683,7 +22247,7 @@ i32.load i32.load i32.store - i32.const 14924 + i32.const 24668 i32.load local.get $8 i32.const 2 @@ -21731,7 +22295,7 @@ end ;; $if_0 end ;; $if local.tee $1 - i32.const 14908 + i32.const 24652 i32.load local.tee $0 i32.gt_u @@ -21757,10 +22321,10 @@ i32.gt_u i32.and local.set $3 - i32.const 14916 + i32.const 24660 i32.load f32.convert_i32_u - i32.const 14920 + i32.const 24664 f32.load f32.div f32.ceil @@ -21836,10 +22400,10 @@ local.get $0 i32.eqz if $if - i32.const 14904 + i32.const 24648 i32.load local.set $0 - i32.const 14904 + i32.const 24648 i32.const 0 i32.store local.get $0 @@ -21847,7 +22411,7 @@ local.get $0 call $_free end ;; $if_0 - i32.const 14908 + i32.const 24652 i32.const 0 i32.store return @@ -21861,11 +22425,11 @@ local.tee $1 call $__ZNSt11logic_errorC2EPKc local.get $1 - i32.const 6792 + i32.const 10832 i32.store local.get $1 - i32.const 5344 - i32.const 43 + i32.const 6400 + i32.const 108 call $___cxa_throw end ;; $if_1 local.get $0 @@ -21873,10 +22437,10 @@ i32.shl call $__Znwm local.set $2 - i32.const 14904 + i32.const 24648 i32.load local.set $1 - i32.const 14904 + i32.const 24648 local.get $2 i32.store local.get $1 @@ -21884,13 +22448,13 @@ local.get $1 call $_free end ;; $if_2 - i32.const 14908 + i32.const 24652 local.get $0 i32.store i32.const 0 local.set $1 loop $loop - i32.const 14904 + i32.const 24648 i32.load local.get $1 i32.const 2 @@ -21906,7 +22470,7 @@ i32.ne br_if $loop end ;; $loop - i32.const 14912 + i32.const 24656 i32.load local.tee $4 i32.eqz @@ -21916,7 +22480,7 @@ local.get $4 i32.load offset=4 local.set $1 - i32.const 14904 + i32.const 24648 i32.load local.get $0 local.get $0 @@ -21951,7 +22515,7 @@ i32.const 2 i32.shl i32.add - i32.const 14912 + i32.const 24656 i32.store local.get $4 i32.load @@ -21978,7 +22542,7 @@ local.get $0 else block $block (result i32) - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22037,7 +22601,7 @@ i32.load i32.store local.get $1 - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22046,7 +22610,7 @@ i32.load i32.load i32.store - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22093,7 +22657,7 @@ local.get $1 else block $block_2 (result i32) - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22152,7 +22716,7 @@ i32.load i32.store local.get $2 - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22161,7 +22725,7 @@ i32.load i32.load i32.store - i32.const 14904 + i32.const 24648 i32.load local.get $3 i32.const 2 @@ -22186,7 +22750,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.const 6124 + i32.const 7176 i32.store local.get $0 i32.load offset=148 @@ -22195,30 +22759,30 @@ loop $loop local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_0 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_0 local.get $1 call $_free - local.get $3 + local.get $2 if $if_1 - local.get $3 + local.get $2 local.set $1 br $loop end ;; $if_1 @@ -22242,30 +22806,30 @@ loop $loop_0 local.get $1 i32.load - local.set $3 + local.set $2 local.get $1 i32.load offset=12 - local.set $2 + local.set $3 local.get $1 i32.const 0 i32.store offset=12 - local.get $2 + local.get $3 if $if_4 - local.get $2 - local.get $2 + local.get $3 + local.get $3 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_4 local.get $1 call $_free - local.get $3 + local.get $2 if $if_5 - local.get $3 + local.get $2 local.set $1 br $loop_0 end ;; $if_5 @@ -22289,46 +22853,29 @@ loop $loop_1 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq + i32.load offset=24 + i32.load offset=4 + local.tee $3 if $if_8 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_9 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_9 + call_indirect $28 (type $0) end ;; $if_8 local.get $1 call $_free - local.get $3 - if $if_10 - local.get $3 + local.get $2 + if $if_9 + local.get $2 local.set $1 br $loop_1 - end ;; $if_10 + end ;; $if_9 end ;; $loop_1 end ;; $if_7 local.get $0 @@ -22338,59 +22885,42 @@ i32.const 0 i32.store offset=100 local.get $1 - if $if_11 + if $if_10 local.get $1 call $_free - end ;; $if_11 + end ;; $if_10 local.get $0 i32.load offset=88 local.tee $1 - if $if_12 + if $if_11 loop $loop_2 local.get $1 i32.load - local.set $3 - local.get $1 - i32.load offset=32 - local.tee $2 + local.set $2 local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_13 - local.get $2 - local.get $2 - i32.load - i32.load offset=16 - i32.const 63 + i32.load offset=24 + i32.load offset=4 + local.tee $3 + if $if_12 + local.get $1 + i32.load offset=12 + local.get $3 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $2 - if $if_14 - local.get $2 - local.get $2 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_14 - end ;; $if_13 + call_indirect $28 (type $0) + end ;; $if_12 local.get $1 call $_free - local.get $3 - if $if_15 - local.get $3 + local.get $2 + if $if_13 + local.get $2 local.set $1 br $loop_2 - end ;; $if_15 + end ;; $if_13 end ;; $loop_2 - end ;; $if_12 + end ;; $if_11 local.get $0 i32.load offset=80 local.set $1 @@ -22398,19 +22928,19 @@ i32.const 0 i32.store offset=80 local.get $1 - if $if_16 + if $if_14 local.get $1 call $_free - end ;; $if_16 + end ;; $if_14 local.get $0 i32.load8_s offset=79 i32.const 0 i32.ge_s - if $if_17 + if $if_15 local.get $0 call $__ZN11ContextBaseD2Ev return - end ;; $if_17 + end ;; $if_15 local.get $0 i32.load offset=68 call $_free @@ -22446,19 +22976,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 - local.set $6 - global.get $30 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $6 - i32.const 12 - i32.add - local.tee $12 - local.get $1 - i32.store + global.set $32 block $block local.get $0 i32.load offset=84 @@ -22466,10 +22989,7 @@ i32.eqz br_if $block local.get $0 - i32.const 80 - i32.add - local.tee $13 - i32.load + i32.load offset=80 local.get $5 local.get $5 i32.const -1 @@ -22477,7 +22997,7 @@ local.tee $7 i32.and i32.eqz - local.tee $10 + local.tee $11 if $if (result i32) local.get $1 local.get $7 @@ -22499,55 +23019,55 @@ end ;; $if_1 end ;; $if_0 end ;; $if - local.tee $11 + local.tee $12 i32.const 2 i32.shl i32.add i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 i32.eqz br_if $block - local.get $6 + local.get $8 i32.const 8 i32.add - local.set $8 - local.get $6 + local.set $9 + local.get $8 i32.const 4 i32.add - local.set $9 + local.set $10 block $block_0 - local.get $10 + local.get $11 if $if_2 loop $loop local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $5 i32.eq - local.tee $10 + local.tee $11 local.get $5 local.get $7 i32.and - local.get $11 + local.get $12 i32.eq i32.or if $if_3 - local.get $10 + local.get $11 if $if_4 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 end ;; $if_4 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop end ;; $if_3 end ;; $loop @@ -22555,13 +23075,13 @@ loop $loop_0 block $block_1 local.get $1 - local.get $0 + local.get $6 i32.load offset=4 local.tee $7 i32.eq if $if_5 local.get $1 - local.get $0 + local.get $6 i32.load offset=8 i32.eq br_if $block_0 @@ -22581,124 +23101,437 @@ else local.get $7 end ;; $if_6 - local.get $11 + local.get $12 i32.ne br_if $block_1 end ;; $if_5 - local.get $0 + local.get $6 i32.load - local.tee $0 + local.tee $6 br_if $loop_0 end ;; $block_1 end ;; $loop_0 end ;; $if_2 - br $block + local.get $8 + global.set $32 + return end ;; $block_0 local.get $2 i32.load - local.set $1 + local.set $5 local.get $2 i32.const 0 i32.store - local.get $8 - local.get $1 + local.get $9 + local.get $5 i32.store local.get $3 i32.load - local.set $1 + local.set $2 local.get $3 i32.const 0 i32.store - local.get $9 - local.get $1 + local.get $10 + local.get $2 i32.store local.get $4 i32.load - local.set $1 + local.set $2 local.get $4 i32.const 0 i32.store - local.get $6 - local.get $1 - i32.store - local.get $0 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_8 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 36 - call $___cxa_throw - end ;; $if_8 - local.get $0 local.get $8 + local.get $2 + i32.store + local.get $6 + i32.const 12 + i32.add local.get $9 + local.get $10 + local.get $8 local.get $6 - local.get $0 - i32.load - i32.load offset=24 + i32.load offset=20 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) - local.get $6 + call_indirect $28 (type $5) + local.get $8 i32.load - local.set $0 - local.get $6 + local.set $2 + local.get $8 i32.const 0 i32.store - local.get $0 + local.get $2 + if $if_8 + local.get $2 + i32.load + call $_free + local.get $2 + call $_free + end ;; $if_8 + local.get $10 + i32.load + local.set $2 + local.get $10 + i32.const 0 + i32.store + local.get $2 if $if_9 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_9 local.get $9 i32.load - local.set $0 + local.set $2 local.get $9 i32.const 0 i32.store - local.get $0 + local.get $2 if $if_10 - local.get $0 + local.get $2 i32.load call $_free - local.get $0 + local.get $2 call $_free end ;; $if_10 - local.get $8 + local.get $0 + i32.load offset=84 + local.tee $5 + i32.eqz + br_if $block + local.get $0 + i32.load offset=80 + local.tee $9 + local.get $5 + local.get $5 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $6 + if $if_11 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_12 (result i32) + local.get $1 + else + local.get $5 + if $if_13 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add i32.load - local.set $0 - local.get $8 + local.tee $2 + i32.eqz + br_if $block + local.get $2 + i32.load + local.tee $2 + i32.eqz + br_if $block + block $block_2 + local.get $6 + if $if_14 + loop $loop_1 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $10 + local.get $4 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $10 + if $if_16 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $2 + i32.load + local.tee $2 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $1 + local.get $2 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $1 + local.get $2 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $5 + i32.ge_u + if $if_18 (result i32) + local.get $5 + if $if_19 (result i32) + local.get $4 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $2 + i32.load + local.tee $2 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $9 + local.get $6 + if $if_20 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $5 + local.get $1 + i32.gt_u + if $if_21 (result i32) + local.get $1 + else + local.get $5 + if $if_22 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + i32.add + local.tee $3 + i32.load + local.set $4 + loop $loop_3 + local.get $2 + local.get $4 + i32.load + local.tee $1 + i32.ne + if $if_23 + local.get $1 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 88 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $1 + local.get $6 + if $if_24 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_25 (result i32) + local.get $5 + if $if_26 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $1 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $2 + br $block_4 + end ;; $block_5 + local.get $2 + i32.load + local.tee $1 + if $if_27 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $2 + local.get $6 + if $if_28 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_29 (result i32) + local.get $5 + if $if_30 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $1 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $2 + end ;; $block_4 + local.tee $10 + i32.load + local.tee $1 + local.set $3 + local.get $4 + local.get $1 + if $if_31 (result i32) + local.get $1 + i32.load offset=4 + local.set $1 + local.get $9 + local.get $6 + if $if_32 (result i32) + local.get $1 + local.get $7 + i32.and + else + local.get $1 + local.get $5 + i32.ge_u + if $if_33 (result i32) + local.get $5 + if $if_34 (result i32) + local.get $1 + local.get $5 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $1 + end ;; $if_33 + end ;; $if_32 + local.tee $1 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=80 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $2 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store + local.get $10 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=92 + i32.const -1 + i32.add + i32.store offset=92 + local.get $2 + i32.eqz + br_if $block + local.get $2 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $2 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $13 - local.get $12 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ - local.get $6 - global.set $30 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $2 + call $_free + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext27onGrpcCreateInitialMetadataEj (type $4) @@ -22842,11 +23675,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) return end ;; $block end ;; $if_4 @@ -22989,11 +23822,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext28onGrpcReceiveInitialMetadataEj (type $4) @@ -23140,11 +23973,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext29onGrpcReceiveTrailingMetadataEj (type $4) @@ -23291,11 +24124,11 @@ local.set $0 local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN11RootContext13onGrpcReceiveEjNSt3__210unique_ptrI8WasmDataNS0_14default_deleteIS2_EEEE (type $6) @@ -23311,68 +24144,59 @@ (local $9 i32) (local $10 i32) (local $11 i32) - (local $12 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $8 + global.get $32 i32.const 16 i32.add - local.set $8 - local.get $6 + global.set $32 + local.get $8 i32.const 8 i32.add - local.set $7 - local.get $6 + local.set $6 + local.get $8 i32.const 12 i32.add - local.tee $11 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $10 block $block local.get $0 i32.load offset=104 - local.tee $3 + local.tee $4 if $if - local.get $10 - i32.load - local.get $3 - local.get $3 + local.get $0 + i32.load offset=100 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $12 + local.tee $9 if $if_0 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u if $if_1 (result i32) local.get $1 else - local.get $3 + local.get $4 if $if_2 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_2 end ;; $if_1 end ;; $if_0 - local.tee $9 + local.tee $7 i32.const 2 i32.shl i32.add @@ -23385,24 +24209,24 @@ if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $9 if $if_5 loop $loop local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $12 + local.tee $9 local.get $3 local.get $4 i32.and - local.get $9 + local.get $7 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $9 if $if_6 local.get $1 local.get $5 @@ -23423,7 +24247,7 @@ local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq if $if_7 local.get $1 @@ -23432,22 +24256,22 @@ i32.eq br_if $block_1 else - local.get $4 local.get $3 + local.get $4 i32.ge_u if $if_8 (result i32) - local.get $3 + local.get $4 if $if_9 (result i32) - local.get $4 local.get $3 + local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $4 + local.get $3 end ;; $if_8 - local.get $9 + local.get $7 i32.ne br_if $block_0 end ;; $if_7 @@ -23464,197 +24288,508 @@ end ;; $block_1 local.get $2 i32.load - local.set $0 + local.set $1 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $0 + local.get $6 + local.get $1 i32.store - local.get $8 + local.get $5 + i32.const 12 + i32.add i32.const 0 - i32.store + local.get $6 local.get $5 - i32.load offset=32 - local.tee $0 - i32.eqz + i32.load offset=20 + i32.const 1 + i32.and + i32.const 416 + i32.add + call_indirect $28 (type $6) + local.get $6 + i32.load + local.set $1 + local.get $6 + i32.const 0 + i32.store + local.get $1 if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store local.get $1 - i32.const 5248 - i32.const 36 - call $___cxa_throw + i32.load + call $_free + local.get $1 + call $_free end ;; $if_10 + local.get $10 + i32.load + local.set $2 local.get $0 - local.get $8 - local.get $7 + i32.load offset=104 + local.tee $3 + i32.eqz + br_if $block local.get $0 - i32.load - i32.load offset=24 - i32.const 1 + i32.load offset=100 + local.tee $7 + local.get $3 + local.get $3 + i32.const -1 + i32.add + local.tee $6 i32.and - i32.const 208 + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $3 + if $if_13 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 + end ;; $if_11 + local.tee $5 + i32.const 2 + i32.shl i32.add - call_indirect $26 (type $6) - local.get $7 i32.load - local.set $0 + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + local.tee $9 + local.get $4 + local.get $6 + i32.and + local.get $5 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $4 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $4 + local.get $3 + i32.ge_u + if $if_18 (result i32) + local.get $3 + if $if_19 (result i32) + local.get $4 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $4 + end ;; $if_18 + local.get $5 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 local.get $7 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $3 + if $if_22 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $7 + i32.const 2 + i32.shl + i32.add + local.tee $5 + i32.load + local.set $4 + loop $loop_3 + local.get $1 + local.get $4 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $4 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $4 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $4 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_25 (result i32) + local.get $3 + if $if_26 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $7 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_29 (result i32) + local.get $3 + if $if_30 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $7 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $5 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $9 + i32.load + local.tee $2 + local.set $5 + local.get $4 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $2 + local.get $7 + local.get $10 + if $if_32 (result i32) + local.get $2 + local.get $6 + i32.and + else + local.get $2 + local.get $3 + i32.ge_u + if $if_33 (result i32) + local.get $3 + if $if_34 (result i32) + local.get $2 + local.get $3 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $2 + end ;; $if_33 + end ;; $if_32 + local.tee $2 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $1 + i32.load + else + local.get $5 + end ;; $if_35 + else + local.get $5 + end ;; $if_31 + i32.store + local.get $9 i32.const 0 i32.store local.get $0 - if $if_11 - local.get $0 - i32.load - call $_free + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 local.get $0 - call $_free - end ;; $if_11 - local.get $10 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 end ;; $if_3 end ;; $if - local.get $6 + local.get $8 i32.const 4 i32.add - local.set $7 + local.set $6 local.get $0 i32.const 120 i32.add - local.set $8 + local.set $7 local.get $0 i32.load offset=124 - local.tee $3 - if $if_12 - local.get $8 + local.tee $4 + if $if_37 + local.get $7 i32.load - local.get $3 - local.get $3 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $3 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $11 + if $if_38 (result i32) local.get $1 - local.get $4 + local.get $3 i32.and else - local.get $3 + local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else - local.get $3 - if $if_15 (result i32) + local.get $4 + if $if_40 (result i32) local.get $1 - local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 - local.tee $10 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 + local.tee $9 i32.const 2 i32.shl i32.add i32.load local.tee $5 - if $if_16 + if $if_41 local.get $5 i32.load local.tee $5 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + if $if_42 + block $block_6 + block $block_7 + local.get $11 + if $if_43 + loop $loop_4 local.get $1 local.get $5 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - local.tee $9 + local.tee $11 local.get $3 local.get $4 i32.and - local.get $10 + local.get $9 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $11 + if $if_44 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 + br_if $block_7 + end ;; $if_44 local.get $5 i32.load local.tee $5 - br_if $loop_1 - br $block_2 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 local.get $5 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - if $if_20 + if $if_45 local.get $1 local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $4 local.get $3 + local.get $4 i32.ge_u - if $if_21 (result i32) - local.get $3 - if $if_22 (result i32) - local.get $4 + if $if_46 (result i32) + local.get $4 + if $if_47 (result i32) local.get $3 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $4 - end ;; $if_21 - local.get $10 + local.get $3 + end ;; $if_46 + local.get $9 i32.ne - br_if $block_2 - end ;; $if_20 + br_if $block_6 + end ;; $if_45 local.get $5 i32.load local.tee $5 - br_if $loop_2 - br $block_2 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 + end ;; $block_7 local.get $5 i32.load offset=12 local.tee $0 @@ -23663,82 +24798,82 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $7 - local.get $4 + local.get $6 + local.get $3 i32.store local.get $0 - local.get $7 + local.get $6 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $7 + call_indirect $28 (type $4) + local.get $6 i32.load local.set $0 - local.get $7 + local.get $6 i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 - local.get $8 - local.get $11 + end ;; $if_48 + local.get $7 + local.get $10 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $4 + local.tee $3 i32.eqz br_if $block local.get $0 i32.const 140 i32.add - local.tee $7 + local.tee $6 i32.load - local.get $4 - local.get $4 + local.get $3 + local.get $3 i32.const -1 i32.add - local.tee $3 + local.tee $4 i32.and i32.eqz - local.tee $8 - if $if_24 (result i32) + local.tee $7 + if $if_49 (result i32) local.get $1 - local.get $3 + local.get $4 i32.and else - local.get $4 + local.get $3 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $4 - if $if_26 (result i32) + local.get $3 + if $if_51 (result i32) local.get $1 - local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 local.tee $5 i32.const 2 i32.shl @@ -23752,82 +24887,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 - local.get $8 - if $if_27 - loop $loop_3 + block $block_8 + local.get $7 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $3 i32.eq - local.tee $8 + local.tee $7 local.get $3 local.get $4 i32.and local.get $5 i32.eq i32.or - if $if_28 - local.get $8 - if $if_29 + if $if_53 + local.get $7 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $3 + local.tee $4 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else - local.get $3 local.get $4 + local.get $3 i32.ge_u - if $if_31 (result i32) - local.get $4 - if $if_32 (result i32) - local.get $3 + if $if_56 (result i32) + local.get $3 + if $if_57 (result i32) local.get $4 + local.get $3 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $3 - end ;; $if_31 + local.get $4 + end ;; $if_56 local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 - local.get $6 - global.set $30 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 + local.get $8 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.tee $0 @@ -23836,44 +24971,44 @@ local.set $1 local.get $2 i32.load - local.set $4 + local.set $3 local.get $2 i32.const 0 i32.store - local.get $6 - local.get $4 + local.get $8 + local.get $3 i32.store local.get $0 - local.get $6 + local.get $8 local.get $1 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) - local.get $6 + call_indirect $28 (type $4) + local.get $8 i32.load local.set $0 - local.get $6 + local.get $8 i32.const 0 i32.store local.get $0 - if $if_33 + if $if_58 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_33 - local.get $7 - local.get $11 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + end ;; $if_58 local.get $6 - global.set $30 + local.get $10 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ + local.get $8 + global.set $32 return end ;; $block - local.get $6 - global.set $30 + local.get $8 + global.set $32 ) (func $__ZN11RootContext11onGrpcCloseEj10GrpcStatusNSt3__210unique_ptrI8WasmDataNS1_14default_deleteIS3_EEEE (type $5) @@ -23890,17 +25025,12 @@ (local $10 i32) (local $11 i32) (local $12 i32) - (local $13 i32) - global.get $30 + global.get $32 local.set $8 - global.get $30 - i32.const 32 - i32.add - global.set $30 - local.get $8 + global.get $32 i32.const 16 i32.add - local.set $10 + global.set $32 local.get $8 i32.const 8 i32.add @@ -23908,31 +25038,27 @@ local.get $8 i32.const 12 i32.add - local.tee $13 + local.tee $10 local.get $1 i32.store - local.get $0 - i32.const 100 - i32.add - local.set $11 block $block local.get $0 i32.load offset=104 local.tee $4 if $if - local.get $11 - i32.load + local.get $0 + i32.load offset=100 local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $12 + local.tee $11 if $if_0 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 @@ -23956,42 +25082,42 @@ i32.shl i32.add i32.load - local.tee $6 + local.tee $5 if $if_3 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 if $if_4 block $block_0 block $block_1 - local.get $12 + local.get $11 if $if_5 loop $loop local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $12 + local.tee $11 local.get $4 - local.get $5 + local.get $6 i32.and local.get $9 i32.eq i32.or i32.eqz br_if $block_0 - local.get $12 + local.get $11 if $if_6 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 end ;; $if_6 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop br $block_0 unreachable @@ -24000,39 +25126,39 @@ else loop $loop_0 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq if $if_7 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq br_if $block_1 else - local.get $5 + local.get $6 local.get $4 i32.ge_u if $if_8 (result i32) local.get $4 if $if_9 (result i32) - local.get $5 + local.get $6 local.get $4 i32.rem_u else i32.const 0 end ;; $if_9 else - local.get $5 + local.get $6 end ;; $if_8 local.get $9 i32.ne br_if $block_0 end ;; $if_7 - local.get $6 + local.get $5 i32.load - local.tee $6 + local.tee $5 br_if $loop_0 br $block_0 unreachable @@ -24043,59 +25169,370 @@ end ;; $block_1 local.get $3 i32.load - local.set $0 + local.set $1 local.get $3 i32.const 0 i32.store local.get $7 - local.get $0 + local.get $1 i32.store - local.get $10 + local.get $5 + i32.const 12 + i32.add local.get $2 - i32.store - local.get $6 - i32.load offset=32 - local.tee $0 - i32.eqz - if $if_10 - i32.const 4 - call $___cxa_allocate_exception - local.tee $1 - i32.const 6668 - i32.store - local.get $1 - i32.const 5248 - i32.const 36 - call $___cxa_throw - end ;; $if_10 - local.get $0 - local.get $10 local.get $7 - local.get $0 - i32.load - i32.load offset=24 + local.get $5 + i32.load offset=20 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load - local.set $0 + local.set $1 local.get $7 i32.const 0 i32.store - local.get $0 - if $if_11 - local.get $0 + local.get $1 + if $if_10 + local.get $1 i32.load call $_free - local.get $0 + local.get $1 call $_free + end ;; $if_10 + local.get $10 + i32.load + local.set $2 + local.get $0 + i32.load offset=104 + local.tee $4 + i32.eqz + br_if $block + local.get $0 + i32.load offset=100 + local.tee $6 + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $7 + i32.and + i32.eqz + local.tee $10 + if $if_11 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_12 (result i32) + local.get $2 + else + local.get $4 + if $if_13 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_13 + end ;; $if_12 end ;; $if_11 + local.tee $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $1 + i32.eqz + br_if $block + local.get $1 + i32.load + local.tee $1 + i32.eqz + br_if $block + block $block_2 + local.get $10 + if $if_14 + loop $loop_1 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + local.tee $9 + local.get $5 + local.get $7 + i32.and + local.get $3 + i32.eq + i32.or + if $if_15 + local.get $9 + if $if_16 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + end ;; $if_16 + local.get $1 + i32.load + local.tee $1 + br_if $loop_1 + end ;; $if_15 + end ;; $loop_1 + else + loop $loop_2 + block $block_3 + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $5 + i32.eq + if $if_17 + local.get $2 + local.get $1 + i32.load offset=8 + i32.eq + br_if $block_2 + else + local.get $5 + local.get $4 + i32.ge_u + if $if_18 (result i32) + local.get $4 + if $if_19 (result i32) + local.get $5 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_19 + else + local.get $5 + end ;; $if_18 + local.get $3 + i32.ne + br_if $block_3 + end ;; $if_17 + local.get $1 + i32.load + local.tee $1 + br_if $loop_2 + end ;; $block_3 + end ;; $loop_2 + end ;; $if_14 + local.get $8 + global.set $32 + return + end ;; $block_2 + local.get $10 + if $if_20 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.lt_u + if $if_21 (result i32) + local.get $2 + else + local.get $4 + if $if_22 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_22 + end ;; $if_21 + end ;; $if_20 + local.tee $9 + i32.const 2 + i32.shl + local.get $6 + i32.add + local.tee $3 + i32.load + local.set $5 + loop $loop_3 + local.get $1 + local.get $5 + i32.load + local.tee $2 + i32.ne + if $if_23 + local.get $2 + local.set $5 + br $loop_3 + end ;; $if_23 + end ;; $loop_3 + block $block_4 (result i32) + block $block_5 + local.get $5 + local.get $0 + i32.const 108 + i32.add + i32.eq + br_if $block_5 + local.get $5 + i32.load offset=4 + local.set $2 + local.get $10 + if $if_24 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_25 (result i32) + local.get $4 + if $if_26 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + else + local.get $2 + end ;; $if_25 + end ;; $if_24 + local.get $9 + i32.ne + br_if $block_5 + local.get $1 + br $block_4 + end ;; $block_5 + local.get $1 + i32.load + local.tee $2 + if $if_27 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $10 + if $if_28 (result i32) + local.get $2 + local.get $7 + i32.and + else + local.get $2 + local.get $4 + i32.ge_u + if $if_29 (result i32) + local.get $4 + if $if_30 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_30 + else + local.get $2 + end ;; $if_29 + end ;; $if_28 + local.get $9 + i32.eq + br_if $block_4 + drop + end ;; $if_27 + local.get $3 + i32.const 0 + i32.store + local.get $1 + end ;; $block_4 + local.tee $11 + i32.load + local.tee $2 + local.set $3 + local.get $5 + local.get $2 + if $if_31 (result i32) + local.get $2 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $10 + if $if_32 (result i32) + local.get $6 + local.get $7 + i32.and + else + local.get $6 + local.get $4 + i32.ge_u + if $if_33 (result i32) + local.get $4 + if $if_34 (result i32) + local.get $6 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_34 + else + local.get $6 + end ;; $if_33 + end ;; $if_32 + local.tee $6 + i32.ne + if $if_35 (result i32) + local.get $0 + i32.load offset=100 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $5 + i32.store + local.get $1 + i32.load + else + local.get $3 + end ;; $if_35 + else + local.get $3 + end ;; $if_31 + i32.store local.get $11 - local.get $13 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ + i32.const 0 + i32.store + local.get $0 + local.get $0 + i32.load offset=112 + i32.const -1 + i32.add + i32.store offset=112 + local.get $1 + i32.eqz + br_if $block + local.get $1 + i32.load offset=24 + i32.load offset=4 + local.tee $0 + if $if_36 + local.get $1 + i32.load offset=12 + local.get $0 + i32.const 127 + i32.and + i32.const 160 + i32.add + call_indirect $28 (type $0) + end ;; $if_36 + local.get $1 + call $_free br $block end ;; $block_0 end ;; $if_4 @@ -24108,133 +25545,133 @@ local.get $0 i32.const 120 i32.add - local.set $10 + local.set $9 local.get $0 i32.load offset=124 local.tee $4 - if $if_12 - local.get $10 + if $if_37 + local.get $9 i32.load local.get $4 local.get $4 i32.const -1 i32.add - local.tee $5 + local.tee $6 i32.and i32.eqz - local.tee $9 - if $if_13 (result i32) + local.tee $12 + if $if_38 (result i32) local.get $1 - local.get $5 + local.get $6 i32.and else local.get $4 local.get $1 i32.gt_u - if $if_14 (result i32) + if $if_39 (result i32) local.get $1 else local.get $4 - if $if_15 (result i32) + if $if_40 (result i32) local.get $1 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_15 - end ;; $if_14 - end ;; $if_13 + end ;; $if_40 + end ;; $if_39 + end ;; $if_38 local.tee $11 i32.const 2 i32.shl i32.add i32.load - local.tee $6 - if $if_16 - local.get $6 + local.tee $5 + if $if_41 + local.get $5 i32.load - local.tee $6 - if $if_17 - block $block_2 - block $block_3 - local.get $9 - if $if_18 - loop $loop_1 + local.tee $5 + if $if_42 + block $block_6 + block $block_7 + local.get $12 + if $if_43 + loop $loop_4 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq - local.tee $9 + local.tee $12 local.get $4 - local.get $5 + local.get $6 i32.and local.get $11 i32.eq i32.or i32.eqz - br_if $block_2 - local.get $9 - if $if_19 + br_if $block_6 + local.get $12 + if $if_44 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 - end ;; $if_19 - local.get $6 + br_if $block_7 + end ;; $if_44 + local.get $5 i32.load - local.tee $6 - br_if $loop_1 - br $block_2 + local.tee $5 + br_if $loop_4 + br $block_6 unreachable - end ;; $loop_1 + end ;; $loop_4 unreachable else - loop $loop_2 + loop $loop_5 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 - local.tee $5 + local.tee $6 i32.eq - if $if_20 + if $if_45 local.get $1 - local.get $6 + local.get $5 i32.load offset=8 i32.eq - br_if $block_3 + br_if $block_7 else - local.get $5 + local.get $6 local.get $4 i32.ge_u - if $if_21 (result i32) + if $if_46 (result i32) local.get $4 - if $if_22 (result i32) - local.get $5 + if $if_47 (result i32) + local.get $6 local.get $4 i32.rem_u else i32.const 0 - end ;; $if_22 + end ;; $if_47 else - local.get $5 - end ;; $if_21 + local.get $6 + end ;; $if_46 local.get $11 i32.ne - br_if $block_2 - end ;; $if_20 - local.get $6 + br_if $block_6 + end ;; $if_45 + local.get $5 i32.load - local.tee $6 - br_if $loop_2 - br $block_2 + local.tee $5 + br_if $loop_5 + br $block_6 unreachable - end ;; $loop_2 + end ;; $loop_5 unreachable - end ;; $if_18 + end ;; $if_43 unreachable - end ;; $block_3 - local.get $6 + end ;; $block_7 + local.get $5 i32.load offset=12 local.tee $0 i32.load @@ -24242,12 +25679,12 @@ local.set $1 local.get $3 i32.load - local.set $5 + local.set $4 local.get $3 i32.const 0 i32.store local.get $7 - local.get $5 + local.get $4 i32.store local.get $0 local.get $2 @@ -24255,9 +25692,9 @@ local.get $1 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $7 i32.load local.set $0 @@ -24265,58 +25702,58 @@ i32.const 0 i32.store local.get $0 - if $if_23 + if $if_48 local.get $0 i32.load call $_free local.get $0 call $_free - end ;; $if_23 + end ;; $if_48 + local.get $9 local.get $10 - local.get $13 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ br $block - end ;; $block_2 - end ;; $if_17 - end ;; $if_16 - end ;; $if_12 + end ;; $block_6 + end ;; $if_42 + end ;; $if_41 + end ;; $if_37 local.get $0 i32.load offset=144 - local.tee $5 + local.tee $4 i32.eqz br_if $block local.get $0 i32.load offset=140 - local.get $5 - local.get $5 + local.get $4 + local.get $4 i32.const -1 i32.add - local.tee $4 + local.tee $6 i32.and i32.eqz local.tee $7 - if $if_24 (result i32) + if $if_49 (result i32) local.get $1 - local.get $4 + local.get $6 i32.and else - local.get $5 + local.get $4 local.get $1 i32.gt_u - if $if_25 (result i32) + if $if_50 (result i32) local.get $1 else - local.get $5 - if $if_26 (result i32) + local.get $4 + if $if_51 (result i32) local.get $1 - local.get $5 + local.get $4 i32.rem_u else i32.const 0 - end ;; $if_26 - end ;; $if_25 - end ;; $if_24 - local.tee $6 + end ;; $if_51 + end ;; $if_50 + end ;; $if_49 + local.tee $5 i32.const 2 i32.shl i32.add @@ -24329,82 +25766,82 @@ local.tee $0 i32.eqz br_if $block - block $block_4 + block $block_8 local.get $7 - if $if_27 - loop $loop_3 + if $if_52 + loop $loop_6 local.get $1 local.get $0 i32.load offset=4 - local.tee $5 + local.tee $4 i32.eq local.tee $7 local.get $4 - local.get $5 - i32.and local.get $6 + i32.and + local.get $5 i32.eq i32.or - if $if_28 + if $if_53 local.get $7 - if $if_29 + if $if_54 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 - end ;; $if_29 + br_if $block_8 + end ;; $if_54 local.get $0 i32.load local.tee $0 - br_if $loop_3 - end ;; $if_28 - end ;; $loop_3 + br_if $loop_6 + end ;; $if_53 + end ;; $loop_6 else - loop $loop_4 - block $block_5 + loop $loop_7 + block $block_9 local.get $1 local.get $0 i32.load offset=4 - local.tee $4 + local.tee $6 i32.eq - if $if_30 + if $if_55 local.get $1 local.get $0 i32.load offset=8 i32.eq - br_if $block_4 + br_if $block_8 else + local.get $6 local.get $4 - local.get $5 i32.ge_u - if $if_31 (result i32) - local.get $5 - if $if_32 (result i32) + if $if_56 (result i32) + local.get $4 + if $if_57 (result i32) + local.get $6 local.get $4 - local.get $5 i32.rem_u else i32.const 0 - end ;; $if_32 + end ;; $if_57 else - local.get $4 - end ;; $if_31 - local.get $6 + local.get $6 + end ;; $if_56 + local.get $5 i32.ne - br_if $block_5 - end ;; $if_30 + br_if $block_9 + end ;; $if_55 local.get $0 i32.load local.tee $0 - br_if $loop_4 - end ;; $block_5 - end ;; $loop_4 - end ;; $if_27 + br_if $loop_7 + end ;; $block_9 + end ;; $loop_7 + end ;; $if_52 local.get $8 - global.set $30 + global.set $32 return - end ;; $block_4 + end ;; $block_8 local.get $0 i32.load offset=12 local.set $0 @@ -24436,378 +25873,11 @@ local.get $0 call $_free local.get $8 - global.set $30 + global.set $32 return end ;; $block local.get $8 - global.set $30 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_8functionIFv10GrpcStatusNS_10unique_ptrI8WasmDataNS_14default_deleteIS5_EEEEEEEEENS_22__unordered_map_hasherIjSB_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjSB_NS_8equal_toIjEELb1EEENS_9allocatorISB_EEE14__erase_uniqueIjEEmRKT_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.load - local.set $4 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.eqz - if $if - return - end ;; $if - local.get $0 - i32.load - local.tee $5 - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $6 - i32.and - i32.eqz - local.tee $8 - if $if_0 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_1 (result i32) - local.get $4 - else - local.get $3 - if $if_2 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $1 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $1 - i32.load - local.tee $1 - i32.eqz - if $if_4 - return - end ;; $if_4 - block $block - local.get $8 - if $if_5 - loop $loop - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - local.tee $9 - local.get $2 - local.get $6 - i32.and - local.get $7 - i32.eq - i32.or - if $if_6 - local.get $9 - if $if_7 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - end ;; $if_7 - local.get $1 - i32.load - local.tee $1 - br_if $loop - end ;; $if_6 - end ;; $loop - else - loop $loop_0 - block $block_0 - local.get $4 - local.get $1 - i32.load offset=4 - local.tee $2 - i32.eq - if $if_8 - local.get $4 - local.get $1 - i32.load offset=8 - i32.eq - br_if $block - else - local.get $2 - local.get $3 - i32.ge_u - if $if_9 (result i32) - local.get $3 - if $if_10 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $2 - end ;; $if_9 - local.get $7 - i32.ne - br_if $block_0 - end ;; $if_8 - local.get $1 - i32.load - local.tee $1 - br_if $loop_0 - end ;; $block_0 - end ;; $loop_0 - end ;; $if_5 - return - end ;; $block - local.get $8 - if $if_11 (result i32) - local.get $4 - local.get $6 - i32.and - else - local.get $4 - local.get $3 - i32.lt_u - if $if_12 (result i32) - local.get $4 - else - local.get $3 - if $if_13 (result i32) - local.get $4 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - end ;; $if_12 - end ;; $if_11 - local.tee $7 - i32.const 2 - i32.shl - local.get $5 - i32.add - local.tee $5 - i32.load - local.set $4 - loop $loop_1 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.ne - if $if_14 - local.get $2 - local.set $4 - br $loop_1 - end ;; $if_14 - end ;; $loop_1 - block $block_1 (result i32) - block $block_2 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.eq - br_if $block_2 - local.get $4 - i32.load offset=4 - local.set $2 - local.get $8 - if $if_15 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_16 (result i32) - local.get $3 - if $if_17 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_17 - else - local.get $2 - end ;; $if_16 - end ;; $if_15 - local.get $7 - i32.ne - br_if $block_2 - local.get $1 - br $block_1 - end ;; $block_2 - local.get $1 - i32.load - local.tee $2 - if $if_18 - local.get $2 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $8 - if $if_19 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_20 (result i32) - local.get $3 - if $if_21 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_21 - else - local.get $2 - end ;; $if_20 - end ;; $if_19 - local.get $7 - i32.eq - br_if $block_1 - drop - end ;; $if_18 - local.get $5 - i32.const 0 - i32.store - local.get $1 - end ;; $block_1 - local.tee $9 - i32.load - local.tee $2 - local.set $5 - local.get $4 - local.get $2 - if $if_22 (result i32) - local.get $2 - i32.load offset=4 - local.set $2 - local.get $7 - local.get $8 - if $if_23 (result i32) - local.get $2 - local.get $6 - i32.and - else - local.get $2 - local.get $3 - i32.ge_u - if $if_24 (result i32) - local.get $3 - if $if_25 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_25 - else - local.get $2 - end ;; $if_24 - end ;; $if_23 - local.tee $3 - i32.ne - if $if_26 (result i32) - local.get $0 - i32.load - local.get $3 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $1 - i32.load - else - local.get $5 - end ;; $if_26 - else - local.get $5 - end ;; $if_22 - i32.store - local.get $9 - i32.const 0 - i32.store - local.get $0 - local.get $0 - i32.load offset=12 - i32.const -1 - i32.add - i32.store offset=12 - local.get $1 - i32.eqz - if $if_27 - return - end ;; $if_27 - local.get $1 - i32.load offset=32 - local.tee $0 - local.get $1 - i32.const 16 - i32.add - i32.eq - if $if_28 - local.get $0 - local.get $0 - i32.load - i32.load offset=16 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_29 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_29 - end ;; $if_28 - local.get $1 - call $_free + global.set $32 ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ (type $4) @@ -25154,11 +26224,11 @@ local.get $0 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $1 call $_free @@ -25174,12 +26244,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=8 local.set $3 @@ -25208,9 +26278,9 @@ local.get $7 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) local.get $5 i32.load local.set $1 @@ -25348,7 +26418,7 @@ end ;; $loop_0 end ;; $if_3 local.get $5 - global.set $30 + global.set $32 return end ;; $block_0 local.get $0 @@ -25365,11 +26435,11 @@ local.get $8 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIjNS_10unique_ptrI19GrpcCallHandlerBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIjS7_NS_4hashIjEELb1EEENS_21__unordered_map_equalIjS7_NS_8equal_toIjEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIjEEmRKT_ local.get $5 - global.set $30 + global.set $32 return end ;; $block local.get $5 - global.set $30 + global.set $32 ) (func $__Z10getContextj (type $1) @@ -25380,7 +26450,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 14908 + i32.const 24652 i32.load local.tee $1 i32.eqz @@ -25388,7 +26458,7 @@ i32.const 0 return end ;; $if - i32.const 14904 + i32.const 24648 i32.load local.get $1 local.get $1 @@ -25523,7 +26593,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) i32.eqz if $if_11 i32.const 0 @@ -25539,7 +26609,7 @@ local.get $1 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE14__erase_uniqueIiEEmRKT_ (type $0) @@ -25555,14 +26625,14 @@ local.get $0 i32.load local.set $3 - i32.const 14908 + i32.const 24652 i32.load local.tee $2 i32.eqz if $if return end ;; $if - i32.const 14904 + i32.const 24648 i32.load local.tee $4 local.get $2 @@ -25730,7 +26800,7 @@ block $block_1 (result i32) block $block_2 local.get $3 - i32.const 14912 + i32.const 24656 i32.eq br_if $block_2 local.get $3 @@ -25840,7 +26910,7 @@ local.tee $2 i32.ne if $if_26 (result i32) - i32.const 14904 + i32.const 24648 i32.load local.get $2 i32.const 2 @@ -25860,8 +26930,8 @@ local.get $8 i32.const 0 i32.store - i32.const 14916 - i32.const 14916 + i32.const 24660 + i32.const 24660 i32.load i32.const -1 i32.add @@ -25883,349 +26953,16 @@ local.get $2 i32.load i32.load offset=4 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) end ;; $if_28 local.get $0 call $_free ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE20__node_insert_uniqueEPNS_11__hash_nodeIS7_PvEE (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - (local $10 f32) - local.get $1 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.store offset=4 - block $block - i32.const 14908 - i32.load - local.tee $2 - i32.eqz - local.tee $8 - i32.eqz - if $if - i32.const 14904 - i32.load - local.get $2 - local.get $2 - i32.const -1 - i32.add - local.tee $7 - i32.and - i32.eqz - local.tee $4 - if $if_0 (result i32) - local.get $5 - local.get $7 - i32.and - else - local.get $5 - local.get $2 - i32.lt_u - if $if_1 (result i32) - local.get $5 - else - local.get $2 - if $if_2 (result i32) - local.get $5 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_2 - end ;; $if_1 - end ;; $if_0 - local.tee $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $3 - if $if_3 - local.get $3 - i32.load - local.tee $3 - if $if_4 - block $block_0 - local.get $4 - if $if_5 - loop $loop - block $block_1 - local.get $6 - local.get $3 - i32.load offset=4 - local.get $7 - i32.and - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_1 - local.get $3 - i32.load - local.tee $3 - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $if_5 - loop $loop_0 - block $block_2 - local.get $3 - i32.load offset=4 - local.tee $4 - local.get $2 - i32.ge_u - if $if_6 (result i32) - local.get $2 - if $if_7 (result i32) - local.get $4 - local.get $2 - i32.rem_u - else - i32.const 0 - end ;; $if_7 - else - local.get $4 - end ;; $if_6 - local.get $6 - i32.ne - br_if $block_0 - local.get $5 - local.get $3 - i32.load offset=8 - i32.eq - br_if $block_2 - local.get $3 - i32.load - local.tee $3 - br_if $loop_0 - br $block_0 - end ;; $block_2 - end ;; $loop_0 - br $block - end ;; $block_0 - end ;; $if_4 - end ;; $if_3 - end ;; $if - local.get $8 - i32.const 14920 - f32.load - local.tee $10 - local.get $2 - f32.convert_i32_u - f32.mul - i32.const 14916 - i32.load - i32.const 1 - i32.add - f32.convert_i32_u - local.tee $9 - f32.lt - i32.or - if $if_8 - block $block_3 (result i32) - local.get $2 - local.get $2 - i32.const -1 - i32.add - i32.and - i32.const 0 - i32.ne - local.get $2 - i32.const 3 - i32.lt_u - i32.or - local.get $2 - i32.const 1 - i32.shl - i32.or - local.set $3 - local.get $9 - local.get $10 - f32.div - f32.ceil - local.tee $9 - local.get $9 - f32.ne - if $if_9 (result i32) - i32.const 0 - else - local.get $9 - f32.const 0x1.000000p+32 - f32.ge - if $if_10 (result i32) - i32.const 0 - else - local.get $9 - f32.const -0x1.000000p-0 - f32.le - if $if_11 (result i32) - i32.const 0 - else - local.get $9 - i32.trunc_f32_u - end ;; $if_11 - end ;; $if_10 - end ;; $if_9 - local.tee $2 - local.get $3 - local.get $3 - local.get $2 - i32.lt_u - select - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeIiNS_10unique_ptrI11ContextBaseNS_14default_deleteIS3_EEEEEENS_22__unordered_map_hasherIiS7_NS_4hashIiEELb1EEENS_21__unordered_map_equalIiS7_NS_8equal_toIiEELb1EEENS_9allocatorIS7_EEE6rehashEm - local.get $1 - i32.load offset=4 - local.tee $2 - i32.const 14908 - i32.load - local.tee $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - local.get $3 - local.get $4 - i32.and - i32.eqz - br_if $block_3 - drop - local.get $2 - local.get $3 - i32.ge_u - if $if_12 (result i32) - local.get $3 - if $if_13 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_13 - else - local.get $2 - end ;; $if_12 - end ;; $block_3 - local.set $6 - else - local.get $2 - local.set $3 - end ;; $if_8 - i32.const 14904 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $2 - if $if_14 - local.get $1 - local.get $2 - i32.load - i32.store - local.get $2 - local.get $1 - i32.store - else - local.get $1 - i32.const 14912 - i32.load - i32.store - i32.const 14912 - local.get $1 - i32.store - i32.const 14904 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.const 14912 - i32.store - local.get $1 - i32.load - local.tee $2 - if $if_15 - local.get $2 - i32.load offset=4 - local.set $2 - i32.const 14904 - i32.load - local.get $3 - local.get $3 - i32.const -1 - i32.add - local.tee $4 - i32.and - if $if_16 (result i32) - local.get $2 - local.get $3 - i32.ge_u - if $if_17 (result i32) - local.get $3 - if $if_18 (result i32) - local.get $2 - local.get $3 - i32.rem_u - else - i32.const 0 - end ;; $if_18 - else - local.get $2 - end ;; $if_17 - else - local.get $2 - local.get $4 - i32.and - end ;; $if_16 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - end ;; $if_15 - end ;; $if_14 - i32.const 14916 - i32.const 14916 - i32.load - i32.const 1 - i32.add - i32.store - local.get $0 - local.get $1 - i32.store - local.get $0 - i32.const 1 - i32.store8 offset=4 - return - end ;; $block - local.get $0 - local.get $3 - i32.store - local.get $0 - i32.const 0 - i32.store8 offset=4 - ) - (func $__ZN22RegisterContextFactoryC2ENSt3__28functionIFNS0_10unique_ptrI7ContextNS0_14default_deleteIS3_EEEEjP11RootContextEEENS1_IFNS2_IS7_NS4_IS7_EEEEjNS0_17basic_string_viewIcNS0_11char_traitsIcEEEEEEESG_ (type $6) (param $0 i32) (param $1 i32) @@ -26237,15 +26974,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $30 - local.set $4 - global.get $30 - i32.const 48 + global.get $32 + local.set $8 + global.get $32 + i32.const 16 i32.add - global.set $30 - i32.const 14944 + global.set $32 + i32.const 24688 i32.load i32.eqz if $if @@ -26260,7 +26995,7 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14944 + i32.const 24688 local.get $3 i32.store i32.const 20 @@ -26274,27 +27009,19 @@ local.get $3 i32.const 1065353216 i32.store offset=16 - i32.const 14948 + i32.const 24692 local.get $3 i32.store end ;; $if - local.get $4 - i32.const 24 - i32.add + local.get $8 local.set $3 local.get $0 - i32.load offset=16 + i32.load offset=12 + i32.load8_s offset=8 + i32.eqz if $if_0 - i32.const 14948 + i32.const 24692 i32.load - local.set $7 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 local.set $6 local.get $3 i64.const 0 @@ -26302,25 +27029,27 @@ local.get $3 i32.const 0 i32.store offset=8 - local.get $6 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $4 i32.const -17 i32.gt_u if $if_1 call $_abort end ;; $if_1 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 - local.get $6 + local.get $4 i32.const 11 i32.lt_u if $if_2 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 - local.get $6 + local.get $4 + i32.store8 offset=11 + local.get $4 if $if_3 (result i32) local.get $3 local.set $5 @@ -26330,7 +27059,7 @@ end ;; $if_3 else local.get $3 - local.get $6 + local.get $4 i32.const 16 i32.add i32.const -16 @@ -26345,7 +27074,7 @@ i32.or i32.store offset=8 local.get $3 - local.get $6 + local.get $4 i32.store offset=4 br $block_0 end ;; $if_2 @@ -26353,127 +27082,93 @@ br $block end ;; $block_0 local.get $5 - local.get $8 - local.get $6 + local.get $7 + local.get $4 call $_memcpy drop end ;; $block + local.get $4 local.get $5 - local.get $6 i32.add i32.const 0 i32.store8 - local.get $7 + local.get $6 local.get $3 call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $4 + local.get $0 + i32.load + local.set $5 + local.get $0 + i32.load offset=4 local.set $6 local.get $0 - i32.load offset=16 - local.tee $5 + i32.load offset=8 + local.set $7 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + local.tee $9 if $if_4 - local.get $0 local.get $5 - i32.eq - if $if_5 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $5 - local.get $4 - local.get $5 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $5 - local.get $5 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_5 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store + local.get $9 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $5 end ;; $if_4 local.get $4 - local.get $6 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ + local.get $7 + i32.store offset=8 + local.get $4 + i32.load offset=12 + local.set $7 + local.get $4 local.get $0 + i32.store offset=12 + local.get $4 i32.load - local.tee $0 + local.set $0 local.get $4 - i32.eq - if $if_6 - local.get $0 + local.get $5 + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $7 + i32.load offset=4 + local.tee $5 + if $if_5 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + local.get $5 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_7 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_7 - end ;; $if_6 + call_indirect $28 (type $0) + end ;; $if_5 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_8 + if $if_6 local.get $3 i32.load call $_free - end ;; $if_8 + end ;; $if_6 end ;; $if_0 local.get $1 - i32.load offset=16 - i32.eqz - if $if_9 - local.get $4 - global.set $30 + i32.load offset=12 + i32.load8_s offset=8 + if $if_7 + local.get $8 + global.set $32 return - end ;; $if_9 - i32.const 14944 + end ;; $if_7 + i32.const 24688 i32.load local.set $5 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 local.get $3 i64.const 0 i64.store align=4 @@ -26481,31 +27176,33 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $4 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u - if $if_10 + if $if_8 call $_abort - end ;; $if_10 - local.get $10 - i32.wrap_i64 - local.set $6 + end ;; $if_8 block $block_1 block $block_2 local.get $2 i32.const 11 i32.lt_u - if $if_11 (result i32) + if $if_9 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 local.get $2 - if $if_12 (result i32) + i32.store8 offset=11 + local.get $2 + if $if_10 (result i32) local.get $3 local.set $0 br $block_2 else local.get $3 - end ;; $if_12 + end ;; $if_10 else local.get $3 local.get $2 @@ -26513,12 +27210,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $6 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $7 + local.get $6 i32.const -2147483648 i32.or i32.store offset=8 @@ -26526,12 +27223,12 @@ local.get $2 i32.store offset=4 br $block_2 - end ;; $if_11 + end ;; $if_9 local.set $0 br $block_1 end ;; $block_2 local.get $0 - local.get $6 + local.get $4 local.get $2 call $_memcpy drop @@ -26543,97 +27240,71 @@ i32.store8 local.get $5 local.get $3 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ - local.set $5 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ + local.set $2 local.get $1 - i32.load offset=16 - local.tee $2 - if $if_13 - local.get $1 - local.get $2 - i32.eq - if $if_14 - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $4 - i32.store - local.get $2 - local.get $4 - local.get $2 - i32.load - i32.load offset=12 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - local.get $2 - local.get $2 - i32.load - i32.load offset=8 - i32.const 63 - i32.and - call_indirect $26 (type $1) - i32.store - end ;; $if_14 - else - local.get $4 - i32.const 16 - i32.add - local.tee $0 - i32.const 0 - i32.store - end ;; $if_13 + i32.load + local.set $0 + local.get $1 + i32.load offset=4 + local.set $5 + local.get $1 + i32.load offset=8 + local.set $4 + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + local.tee $6 + if $if_11 + local.get $0 + local.get $6 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + end ;; $if_11 + local.get $2 local.get $4 - local.get $5 - call $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ - local.get $0 + i32.store offset=8 + local.get $2 + i32.load offset=12 + local.set $4 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $2 i32.load - local.tee $0 + local.set $1 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $5 + i32.store offset=4 local.get $4 - i32.eq - if $if_15 - local.get $0 + i32.load offset=4 + local.tee $0 + if $if_12 + local.get $1 local.get $0 - i32.load - i32.load offset=16 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) - else - local.get $0 - if $if_16 - local.get $0 - local.get $0 - i32.load - i32.load offset=20 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - end ;; $if_16 - end ;; $if_15 + call_indirect $28 (type $0) + end ;; $if_12 local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_17 + if $if_13 local.get $3 i32.load call $_free - end ;; $if_17 - local.get $4 - global.set $30 + end ;; $if_13 + local.get $8 + global.set $32 ) (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS9_EEEEjP11RootContextEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) @@ -27119,7 +27790,7 @@ end ;; $if_5 end ;; $if_4 end ;; $if_0 - i32.const 48 + i32.const 36 call $__Znwm local.tee $5 local.get $1 @@ -27136,8 +27807,11 @@ i32.const 0 i32.store offset=8 local.get $5 - i32.const 0 - i32.store offset=40 + i32.const 7 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 local.get $5 local.get $7 i32.store offset=4 @@ -27335,345 +28009,19 @@ i32.add i32.store offset=12 local.get $5 - i32.const 24 + i32.const 20 i32.add return end ;; $block_3 local.get $3 - i32.const 24 - i32.add - ) - - (func $__ZNSt3__28functionIFNS_10unique_ptrI7ContextNS_14default_deleteIS2_EEEEjP11RootContextEE4swapERS9_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - local.get $1 - i32.eq - if $if - local.get $4 - global.set $30 - return - end ;; $if - local.get $0 - i32.load offset=16 - local.tee $2 - local.set $3 - local.get $0 - local.get $2 - i32.eq - if $if_0 - local.get $1 - local.get $1 - i32.load offset=16 - i32.eq - if $if_1 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $4 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - i32.load - i32.load offset=12 - local.set $0 - local.get $4 - local.get $1 - local.get $0 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $4 - i32.load - i32.load offset=16 - local.set $0 - local.get $4 - local.get $0 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - else - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $1 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $0 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $0 - local.get $1 - i32.load offset=16 - i32.store offset=16 - end ;; $if_1 - local.get $1 - local.get $1 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $1 - local.get $1 - i32.load offset=16 - local.tee $2 - i32.eq - if $if_2 - local.get $2 - i32.load - i32.load offset=12 - local.set $3 - local.get $2 - local.get $0 - local.get $3 - i32.const 31 - i32.and - i32.const 176 - i32.add - call_indirect $26 (type $4) - local.get $1 - i32.load offset=16 - local.tee $2 - i32.load - i32.load offset=16 - local.set $3 - local.get $2 - local.get $3 - i32.const 63 - i32.and - i32.const 112 - i32.add - call_indirect $26 (type $0) - local.get $1 - local.get $0 - i32.load offset=16 - i32.store offset=16 - local.get $0 - local.get $0 - i32.store offset=16 - local.get $4 - global.set $30 - else - local.get $0 - local.get $2 - i32.store offset=16 - local.get $1 - local.get $3 - i32.store offset=16 - local.get $4 - global.set $30 - end ;; $if_2 - end ;; $if_0 - ) - - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $1 - i32.const 1 - i32.eq - if $if (result i32) - i32.const 2 - else - local.get $1 - local.get $1 - i32.const -1 - i32.add - i32.and - if $if_0 (result i32) - local.get $1 - call $__ZNSt3__212__next_primeEm - else - local.get $1 - end ;; $if_0 - end ;; $if - local.tee $1 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.gt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm - return - end ;; $if_1 - local.get $1 - local.get $3 - i32.ge_u - if $if_2 - return - end ;; $if_2 - local.get $3 - local.get $3 - i32.const -1 + i32.const 20 i32.add - i32.and - i32.eqz - local.get $3 - i32.const 2 - i32.gt_u - i32.and - local.set $4 - local.get $0 - i32.load offset=12 - f32.convert_i32_u - local.get $0 - f32.load offset=16 - f32.div - f32.ceil - local.tee $5 - local.get $5 - f32.ne - if $if_3 (result i32) - i32.const 0 - else - local.get $5 - f32.const 0x1.000000p+32 - f32.ge - if $if_4 (result i32) - i32.const 0 - else - local.get $5 - f32.const -0x1.000000p-0 - f32.le - if $if_5 (result i32) - i32.const 0 - else - local.get $5 - i32.trunc_f32_u - end ;; $if_5 - end ;; $if_4 - end ;; $if_3 - local.set $2 - local.get $4 - if $if_6 (result i32) - local.get $2 - i32.const 1 - i32.const 32 - local.get $2 - i32.const -1 - i32.add - i32.clz - i32.sub - i32.shl - local.get $2 - i32.const 2 - i32.lt_u - select - else - local.get $2 - call $__ZNSt3__212__next_primeEm - end ;; $if_6 - local.tee $2 - local.get $1 - local.get $1 - local.get $2 - i32.lt_u - select - local.tee $1 - local.get $3 - i32.ge_u - if $if_7 - return - end ;; $if_7 - local.get $0 - local.get $1 - call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteIS9_EEEEjNS_17basic_string_viewIcS3_EEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SG_EEEEEixEOS6_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -27686,794 +28034,822 @@ (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) - (local $15 i32) - local.get $1 - i32.eqz - if $if - local.get $0 - i32.load - local.set $1 - local.get $0 - i32.const 0 - i32.store - local.get $1 - if $if_0 - local.get $1 - call $_free - end ;; $if_0 - local.get $0 - i32.const 0 - i32.store offset=4 - return - end ;; $if - local.get $1 - i32.const 1073741823 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $2 - call $__ZNSt11logic_errorC2EPKc - local.get $2 - i32.const 6792 - i32.store - local.get $2 - i32.const 5344 - i32.const 43 - call $___cxa_throw - end ;; $if_1 - local.get $1 - i32.const 2 - i32.shl - call $__Znwm - local.set $2 - local.get $0 - i32.load - local.set $3 - local.get $0 - local.get $2 - i32.store - local.get $3 - if $if_2 - local.get $3 - call $_free - end ;; $if_2 - local.get $0 + (local $14 f32) + (local $15 f32) local.get $1 - i32.store offset=4 - i32.const 0 - local.set $2 - loop $loop - local.get $0 - i32.load - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.tee $2 - local.get $1 - i32.ne - br_if $loop - end ;; $loop - local.get $0 - i32.load offset=8 - local.tee $10 - i32.eqz - if $if_3 - return - end ;; $if_3 - local.get $10 - i32.load offset=4 - local.set $9 - local.get $0 i32.load local.get $1 local.get $1 - i32.const -1 - i32.add - local.tee $14 - i32.and - i32.eqz - local.tee $15 - if $if_4 (result i32) - local.get $9 - local.get $14 - i32.and - else - local.get $9 - local.get $1 - i32.ge_u - if $if_5 (result i32) - local.get $1 - if $if_6 (result i32) - local.get $9 - local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_6 - else - local.get $9 - end ;; $if_5 - end ;; $if_4 - local.tee $9 - i32.const 2 - i32.shl - i32.add - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $10 - i32.load - local.tee $5 - i32.eqz - if $if_7 - return - end ;; $if_7 - loop $loop_0 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $9 - local.get $15 - if $if_8 (result i32) - local.get $6 - local.get $14 - i32.and - else - local.get $6 - local.get $1 - i32.ge_u - if $if_9 (result i32) - local.get $1 - if $if_10 (result i32) - local.get $6 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 local.get $1 - i32.rem_u - else - i32.const 0 - end ;; $if_10 - else - local.get $6 - end ;; $if_9 - end ;; $if_8 - local.tee $6 - i32.eq - if $if_11 (result i32) - local.get $5 - else - block $block (result i32) - local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl - i32.add - local.tee $2 - i32.load - i32.eqz - if $if_12 + i32.load offset=4 + local.get $4 + i32.const 255 + i32.and local.get $2 - local.get $10 - i32.store - local.get $6 - local.set $9 - local.get $5 - br $block - end ;; $if_12 - local.get $5 - i32.load - local.tee $2 - if $if_13 - block $block_0 + select + local.tee $5 + i32.const 3 + i32.gt_u + if $if (result i32) + local.get $8 + local.set $2 local.get $5 - i32.const 8 - i32.add - local.tee $12 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.set $4 + local.tee $6 + local.set $3 + loop $loop + local.get $2 + i32.load align=1 + i32.const 1540483477 + i32.mul + local.tee $4 + local.get $4 + i32.const 24 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.get $6 + i32.const 1540483477 + i32.mul + i32.xor + local.set $6 + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const -4 + i32.add + local.tee $3 + i32.const 3 + i32.gt_u + br_if $loop + end ;; $loop local.get $5 - i32.load offset=12 - local.get $3 - i32.const 255 + i32.const -4 + i32.add + local.tee $7 + i32.const -4 i32.and - local.tee $11 + local.tee $4 + i32.const 4 + i32.add + local.get $8 + i32.add + local.set $2 + local.get $7 local.get $4 - select - local.tee $13 - i32.eqz - local.set $7 + i32.sub + else + local.get $8 + local.set $2 + local.get $5 + local.tee $6 + end ;; $if + i32.const 1 + i32.sub + br_table + $block_0 $block_1 $block_2 + $block ;; default + end ;; $block_2 + local.get $6 + local.get $2 + i32.load8_u offset=2 + i32.const 16 + i32.shl + i32.xor + local.set $6 + end ;; $block_1 + local.get $6 + local.get $2 + i32.load8_u offset=1 + i32.const 8 + i32.shl + i32.xor + local.set $6 + end ;; $block_0 + local.get $6 + local.get $2 + i32.load8_u + i32.xor + i32.const 1540483477 + i32.mul + local.set $6 + end ;; $block + local.get $6 + local.get $6 + i32.const 13 + i32.shr_u + i32.xor + i32.const 1540483477 + i32.mul + local.tee $2 + local.get $2 + i32.const 15 + i32.shr_u + i32.xor + local.set $7 + block $block_3 + local.get $0 + i32.load offset=4 + local.tee $4 + i32.eqz + local.tee $13 + if $if_0 + i32.const 0 + local.set $6 + else + local.get $0 + i32.load + local.get $4 + local.get $4 + i32.const -1 + i32.add + local.tee $12 + i32.and + i32.eqz + local.tee $9 + if $if_1 (result i32) + local.get $7 + local.get $12 + i32.and + else + local.get $7 + local.get $4 + i32.lt_u + if $if_2 (result i32) + local.get $7 + else + local.get $4 + if $if_3 (result i32) + local.get $7 local.get $4 - if $if_14 - local.get $5 - local.set $3 + i32.rem_u + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + end ;; $if_1 + local.tee $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $2 + if $if_4 + local.get $2 + i32.load + local.tee $3 + if $if_5 + block $block_4 + local.get $5 + i32.eqz + local.set $2 + local.get $9 + if $if_6 + local.get $2 + if $if_7 + loop $loop_0 + block $block_5 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_5 + local.get $3 + i32.load + local.tee $3 + br_if $loop_0 + br $block_4 + end ;; $block_5 + end ;; $loop_0 + br $block_3 + end ;; $if_7 loop $loop_1 - local.get $2 + block $block_6 + local.get $3 + i32.load offset=4 + local.tee $2 + local.get $7 + i32.eq + local.get $2 + local.get $12 + i32.and + local.get $6 + i32.eq + i32.or + i32.eqz + br_if $block_4 + local.get $3 + i32.const 8 + i32.add + local.tee $10 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.set $9 + local.get $5 + local.get $3 + i32.load offset=12 + local.get $2 + i32.const 255 + i32.and + local.tee $11 + local.get $9 + select + i32.eq + if $if_8 + block $block_7 + local.get $10 + i32.load + local.set $2 + local.get $9 + if $if_9 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_7 + br $block_6 + end ;; $if_9 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_10 + local.get $8 + local.set $2 + loop $loop_2 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_6 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_2 + end ;; $loop_2 + end ;; $if_10 + end ;; $block_7 + end ;; $if_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_1 + br $block_4 + end ;; $block_6 + end ;; $loop_1 + br $block_3 + end ;; $if_6 + local.get $2 + if $if_11 + loop $loop_3 + block $block_8 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_12 + local.get $2 + local.get $4 + i32.ge_u + if $if_13 (result i32) + local.get $4 + if $if_14 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_14 + else + local.get $2 + end ;; $if_13 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_12 + local.get $3 + i32.load offset=12 + local.get $3 + i32.load8_s offset=19 + local.tee $2 + i32.const 255 + i32.and + local.get $2 + i32.const 0 + i32.lt_s + select + i32.eqz + br_if $block_8 + local.get $3 + i32.load + local.tee $3 + br_if $loop_3 + br $block_4 + end ;; $block_8 + end ;; $loop_3 + br $block_3 + end ;; $if_11 + loop $loop_4 + block $block_9 + local.get $7 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.ne + if $if_15 + local.get $2 + local.get $4 + i32.ge_u + if $if_16 (result i32) + local.get $4 + if $if_17 (result i32) + local.get $2 + local.get $4 + i32.rem_u + else + i32.const 0 + end ;; $if_17 + else + local.get $2 + end ;; $if_16 + local.get $6 + i32.ne + br_if $block_4 + end ;; $if_15 + local.get $3 i32.const 8 i32.add - local.tee $8 + local.tee $10 i32.load8_s offset=11 - local.tee $4 + local.tee $2 i32.const 0 i32.lt_s - local.set $11 - local.get $2 + local.set $9 + local.get $5 + local.get $3 i32.load offset=12 - local.get $4 + local.get $2 i32.const 255 i32.and - local.get $11 + local.tee $11 + local.get $9 select - local.get $13 - i32.ne - if $if_15 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_15 - local.get $7 - i32.eqz - if $if_16 - local.get $12 - i32.load - local.get $8 - i32.load - local.get $8 - local.get $11 - select - local.get $13 - call $_memcmp - if $if_17 - local.get $3 + i32.eq + if $if_18 + block $block_10 + local.get $10 + i32.load local.set $2 - br $block_0 - end ;; $if_17 - end ;; $if_16 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_1 - unreachable - end ;; $loop_1 - unreachable - end ;; $if_14 - local.get $7 - if $if_18 - local.get $5 - local.set $3 - loop $loop_2 - local.get $2 - i32.load offset=12 - local.get $2 - i32.load8_s offset=19 - local.tee $4 - i32.const 255 - i32.and - local.get $4 - i32.const 0 - i32.lt_s - select - if $if_19 - local.get $3 - local.set $2 - br $block_0 - end ;; $if_19 - local.get $2 - i32.load - local.tee $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $3 - local.get $4 - local.set $2 - br $loop_2 - unreachable - end ;; $loop_2 - unreachable - end ;; $if_18 - local.get $2 - local.set $3 - local.get $5 - local.set $2 - loop $loop_3 (result i32) - local.get $3 - i32.const 8 - i32.add - local.tee $7 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.set $8 - local.get $3 - i32.load offset=12 - local.get $4 - i32.const 255 - i32.and - local.get $8 - select - local.get $13 - i32.ne - br_if $block_0 - local.get $7 - i32.load - local.get $7 - local.get $8 - select - local.tee $7 - i32.load8_u - local.get $12 - i32.load - i32.const 255 - i32.and - i32.ne - br_if $block_0 - local.get $11 - local.set $8 - local.get $12 - local.set $4 - loop $loop_4 - local.get $8 - i32.const -1 - i32.add - local.tee $8 - if $if_20 - local.get $4 - i32.const 1 - i32.add - local.tee $4 - i32.load8_s - local.get $7 - i32.const 1 - i32.add - local.tee $7 - i32.load8_s - i32.eq - if $if_21 - br $loop_4 - else - br $block_0 - end ;; $if_21 - unreachable - end ;; $if_20 - end ;; $loop_4 - local.get $3 - i32.load - local.tee $4 - if $if_22 (result i32) - local.get $3 - local.set $2 - local.get $4 - local.set $3 - br $loop_3 - else + local.get $9 + if $if_19 + local.get $2 + local.get $8 + local.get $5 + call $_memcmp + br_if $block_10 + br $block_9 + end ;; $if_19 + local.get $8 + i32.load8_u + local.get $2 + i32.const 255 + i32.and + i32.eq + if $if_20 + local.get $8 + local.set $2 + loop $loop_5 + local.get $11 + i32.const -1 + i32.add + local.tee $11 + i32.eqz + br_if $block_9 + local.get $10 + i32.const 1 + i32.add + local.tee $10 + i32.load8_s + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.load8_s + i32.eq + br_if $loop_5 + end ;; $loop_5 + end ;; $if_20 + end ;; $block_10 + end ;; $if_18 local.get $3 - end ;; $if_22 - end ;; $loop_3 - local.set $2 - end ;; $block_0 + i32.load + local.tee $3 + br_if $loop_4 + br $block_4 + end ;; $block_9 + end ;; $loop_4 + br $block_3 + end ;; $block_4 + end ;; $if_5 + end ;; $if_4 + end ;; $if_0 + i32.const 36 + call $__Znwm + local.tee $5 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $5 + local.get $1 + i32.load offset=8 + i32.store offset=16 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $5 + i32.const 6 + i32.store offset=28 + local.get $5 + i32.const 6616 + i32.store offset=32 + local.get $5 + local.get $7 + i32.store offset=4 + local.get $5 + i32.const 0 + i32.store + local.get $13 + local.get $0 + f32.load offset=16 + local.tee $15 + local.get $4 + f32.convert_i32_u + f32.mul + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + f32.convert_i32_u + local.tee $14 + f32.lt + i32.or + if $if_21 + block $block_11 (result i32) + local.get $4 + local.get $4 + i32.const -1 + i32.add + i32.and + i32.const 0 + i32.ne + local.get $4 + i32.const 3 + i32.lt_u + i32.or + local.get $4 + i32.const 1 + i32.shl + i32.or + local.set $2 + local.get $0 + local.get $14 + local.get $15 + f32.div + f32.ceil + local.tee $14 + local.get $14 + f32.ne + if $if_22 (result i32) + i32.const 0 else - local.get $5 - local.set $2 - end ;; $if_13 - local.get $10 + local.get $14 + f32.const 0x1.000000p+32 + f32.ge + if $if_23 (result i32) + i32.const 0 + else + local.get $14 + f32.const -0x1.000000p-0 + f32.le + if $if_24 (result i32) + i32.const 0 + else + local.get $14 + i32.trunc_f32_u + end ;; $if_24 + end ;; $if_23 + end ;; $if_22 + local.tee $1 local.get $2 - i32.load - i32.store local.get $2 + local.get $1 + i32.lt_u + select + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm local.get $0 - i32.load - local.get $6 - i32.const 2 - i32.shl + i32.load offset=4 + local.tee $1 + i32.const -1 i32.add - i32.load - i32.load - i32.store + local.tee $2 + local.get $7 + i32.and + local.get $1 + local.get $2 + i32.and + i32.eqz + br_if $block_11 + drop + local.get $7 + local.get $1 + i32.lt_u + if $if_25 (result i32) + local.get $7 + else + local.get $1 + if $if_26 (result i32) + local.get $7 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_26 + end ;; $if_25 + end ;; $block_11 + local.set $6 + else + local.get $4 + local.set $1 + end ;; $if_21 + block $block_12 + block $block_13 local.get $0 i32.load local.get $6 i32.const 2 i32.shl i32.add + local.tee $8 i32.load - local.get $5 - i32.store - local.get $10 - end ;; $block - end ;; $if_11 - local.tee $2 - i32.load - local.tee $5 - if $if_23 - local.get $2 - local.set $10 - br $loop_0 - end ;; $if_23 - end ;; $loop_0 - ) - - (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if - return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - ) - - (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) - (param $0 i32) - local.get $0 - i32.const 6276 - i32.store - local.get $0 - i32.load8_s offset=23 - i32.const 0 - i32.ge_s - if $if + local.tee $2 + if $if_27 + local.get $5 + local.get $2 + i32.load + i32.store + local.get $2 + local.set $1 + br $block_13 + else + local.get $5 + local.get $0 + i32.load offset=8 + i32.store + local.get $0 + local.get $5 + i32.store offset=8 + local.get $8 + local.get $0 + i32.const 8 + i32.add + i32.store + local.get $5 + i32.load + local.tee $2 + if $if_28 + local.get $2 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + local.get $1 + local.get $1 + i32.const -1 + i32.add + local.tee $8 + i32.and + if $if_29 (result i32) + local.get $2 + local.get $1 + i32.lt_u + if $if_30 (result i32) + local.get $2 + else + local.get $1 + if $if_31 (result i32) + local.get $2 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_31 + end ;; $if_30 + else + local.get $2 + local.get $8 + i32.and + end ;; $if_29 + i32.const 2 + i32.shl + i32.add + local.set $1 + br $block_13 + end ;; $if_28 + end ;; $if_27 + br $block_12 + end ;; $block_13 + local.get $1 + local.get $5 + i32.store + end ;; $block_12 local.get $0 - call $_free + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + i32.store offset=12 + local.get $5 + i32.const 20 + i32.add return - end ;; $if - local.get $0 - i32.load offset=12 - call $_free - local.get $0 - call $_free - ) - - (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) - (param $0 i32) - (result i32) - local.get $0 - i32.const 12 + end ;; $block_3 + local.get $3 + i32.const 20 i32.add - local.tee $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if ) - (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE6rehashEm (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $1 - i32.const 8 - i32.add - local.set $3 + (local $5 f32) local.get $1 - i32.const 4 - i32.add - local.set $2 - local.get $0 - i32.load - i32.const 3 + i32.const 1 i32.eq if $if (result i32) - i32.const 3 + i32.const 2 else local.get $1 - i32.const 3 - i32.store - i32.const 14952 - i32.load + local.get $1 i32.const -1 - i32.ne - if $if_0 + i32.add + i32.and + if $if_0 (result i32) local.get $1 + call $__ZNSt3__212__next_primeEm + else local.get $1 - i32.store offset=8 - local.get $2 - local.get $3 - i32.store - local.get $2 - call $__ZNSt3__211__call_onceERVmPvPFvS2_E end ;; $if_0 - i32.const 14956 - i32.load - drop - local.get $0 - i32.load end ;; $if + local.tee $1 local.get $0 i32.load offset=4 - local.get $0 - i32.load offset=8 - local.get $0 - i32.const 12 - i32.add - call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE - local.get $0 - i32.load - i32.const 3 - i32.eq + local.tee $3 + i32.gt_u if $if_1 - i32.const 24 - call $___cxa_allocate_exception - local.tee $2 - local.set $1 local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - local.set $4 - local.get $1 - i32.const 6276 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - local.get $1 - i32.const 12 - i32.add - local.get $0 - i32.const 12 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 - i32.const 4736 - i32.const 31 - call $___cxa_throw - else local.get $1 - global.set $30 - end ;; $if_1 - ) - - (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 28 - call $__Znwm - local.tee $0 - i64.const 0 - i64.store align=4 - local.get $0 - i64.const 0 - i64.store offset=8 align=4 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - i32.const 0 - i32.store offset=24 - i32.const 14956 - local.get $0 - i32.store - i32.const 53 - i32.const 4 - call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - ) - - (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) - (param $0 i32) - local.get $0 - i32.load - i32.load - i32.load - local.set $0 - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $4 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $0 - i32.const 0 - i32.lt_s - if $if - local.get $4 - global.set $30 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm return - end ;; $if - i32.const 6408 - i32.load - local.set $5 + end ;; $if_1 + local.get $1 local.get $3 - i32.load + i32.ge_u + if $if_2 + return + end ;; $if_2 local.get $3 local.get $3 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - select - local.set $3 - local.get $4 - local.get $0 - i32.const 2 - i32.shl - i32.const 1024 + i32.const -1 i32.add - i32.load - i32.store - local.get $4 - local.get $1 - i32.store offset=4 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $4 - local.get $3 - i32.store offset=12 - local.get $5 - local.get $4 - call $_fprintf - local.get $5 - call $_fflush - drop - local.get $4 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) - (local $0 i32) - i32.const 14956 - i32.load - local.tee $0 - if $if - local.get $0 - call $_free - end ;; $if - i32.const 14956 - i32.const 0 - i32.store - ) - - (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) - (param $0 i32) - local.get $0 - i32.const 7 i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - ) - - (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 14864 - i32.load8_s i32.eqz - if $if - i32.const 14864 - i32.load8_s - i32.const 1 - i32.eq - if $if_0 (result i32) + local.get $3 + i32.const 2 + i32.gt_u + i32.and + local.set $4 + local.get $0 + i32.load offset=12 + f32.convert_i32_u + local.get $0 + f32.load offset=16 + f32.div + f32.ceil + local.tee $5 + local.get $5 + f32.ne + if $if_3 (result i32) + i32.const 0 + else + local.get $5 + f32.const 0x1.000000p+32 + f32.ge + if $if_4 (result i32) i32.const 0 else - i32.const 14864 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_0 - if $if_1 - i32.const 40 - call $__Znwm - local.tee $2 - i64.const 0 - i64.store align=4 - local.get $2 - i64.const 0 - i64.store offset=8 align=4 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - i64.const 0 - i64.store offset=24 align=4 - local.get $2 - i64.const 0 - i64.store offset=32 align=4 - i32.const 14960 - local.get $2 - i32.store - end ;; $if_1 - end ;; $if - i32.const 14960 - i32.load + local.get $5 + f32.const -0x1.000000p-0 + f32.le + if $if_5 (result i32) + i32.const 0 + else + local.get $5 + i32.trunc_f32_u + end ;; $if_5 + end ;; $if_4 + end ;; $if_3 local.set $2 - local.get $3 - local.get $0 - i32.store - local.get $3 - local.get $1 - i32.store offset=4 - local.get $2 - i32.load offset=4 - local.tee $0 - local.get $2 - i32.load offset=8 - i32.lt_u - if $if_2 - local.get $0 - local.get $3 - i64.load - i64.store align=4 + local.get $4 + if $if_6 (result i32) local.get $2 + i32.const 1 + i32.const 32 local.get $2 - i32.load offset=4 - i32.const 8 + i32.const -1 i32.add - i32.store offset=4 + i32.clz + i32.sub + i32.shl + local.get $2 + i32.const 2 + i32.lt_u + select else local.get $2 - local.get $3 - call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ - end ;; $if_2 + call $__ZNSt3__212__next_primeEm + end ;; $if_6 + local.tee $2 + local.get $1 + local.get $1 + local.get $2 + i32.lt_u + select + local.tee $1 local.get $3 - global.set $30 + i32.ge_u + if $if_7 + return + end ;; $if_7 + local.get $0 + local.get $1 + call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm ) - (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFNS_10unique_ptrI11RootContextNS_14default_deleteISA_EEEEjNS_17basic_string_viewIcS4_EEEEEEENS_22__unordered_map_hasherIS7_SI_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SI_NS_8equal_toIS7_EELb1EEENS5_ISI_EEE8__rehashEm (type $4) (param $0 i32) (param $1 i32) (local $2 i32) @@ -28484,236 +28860,440 @@ (local $7 i32) (local $8 i32) (local $9 i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - local.tee $4 - i32.sub - local.tee $6 - i32.const 3 - i32.shr_s - local.tee $7 - i32.const 1 - i32.add - local.tee $2 - i32.const 536870911 - i32.gt_u + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $1 + i32.eqz if $if - call $_abort + local.get $0 + i32.load + local.set $1 + local.get $0 + i32.const 0 + i32.store + local.get $1 + if $if_0 + local.get $1 + call $_free + end ;; $if_0 + local.get $0 + i32.const 0 + i32.store offset=4 + return end ;; $if - local.get $2 - local.get $0 - i32.load offset=8 - local.get $4 - i32.sub - local.tee $3 + local.get $1 + i32.const 1073741823 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $2 + call $__ZNSt11logic_errorC2EPKc + local.get $2 + i32.const 10832 + i32.store + local.get $2 + i32.const 6400 + i32.const 108 + call $___cxa_throw + end ;; $if_1 + local.get $1 i32.const 2 - i32.shr_s - local.tee $8 - local.get $8 + i32.shl + call $__Znwm + local.set $2 + local.get $0 + i32.load + local.set $3 + local.get $0 local.get $2 - i32.lt_u - select - i32.const 536870911 + i32.store local.get $3 - i32.const 3 - i32.shr_s - i32.const 268435455 - i32.lt_u - select - local.tee $2 - if $if_0 - local.get $2 - i32.const 536870911 - i32.gt_u - if $if_1 - i32.const 8 - call $___cxa_allocate_exception - local.tee $3 - call $__ZNSt11logic_errorC2EPKc - local.get $3 - i32.const 6792 - i32.store - local.get $3 - i32.const 5344 - i32.const 43 - call $___cxa_throw - else - local.get $2 - i32.const 3 - i32.shl - call $__Znwm - local.tee $9 - local.set $5 - end ;; $if_1 - end ;; $if_0 - local.get $7 - i32.const 3 - i32.shl - local.get $5 - i32.add - local.tee $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $6 - i32.const 0 - i32.gt_s if $if_2 - local.get $9 - local.get $4 - local.get $6 - call $_memcpy - drop + local.get $3 + call $_free end ;; $if_2 local.get $0 - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.const 8 - i32.add + local.get $1 i32.store offset=4 + i32.const 0 + local.set $2 + loop $loop + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + br_if $loop + end ;; $loop local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.get $5 - i32.add - i32.store offset=8 - local.get $4 + i32.load offset=8 + local.tee $10 i32.eqz if $if_3 return end ;; $if_3 - local.get $4 - call $_free - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - i32.const 12 - i32.add - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) + local.get $10 + i32.load offset=4 + local.set $9 local.get $0 - i32.const 12 - i32.add - local.get $1 i32.load local.get $1 local.get $1 - i32.load8_s offset=11 - local.tee $2 - i32.const 0 - i32.lt_s - local.tee $3 - select - local.get $1 - i32.load offset=4 - local.get $2 - i32.const 255 - i32.and - local.get $3 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 + i32.const -1 i32.add - global.set $30 - local.get $2 - i32.const 128 - i32.add - local.tee $3 - local.get $1 - i32.store - local.get $2 - i32.const 128 - i32.const 13015 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 + local.tee $14 + i32.and + i32.eqz + local.tee $15 + if $if_4 (result i32) + local.get $9 + local.get $14 + i32.and + else + local.get $9 + local.get $1 + i32.ge_u + if $if_5 (result i32) + local.get $1 + if $if_6 (result i32) + local.get $9 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_6 + else + local.get $9 + end ;; $if_5 + end ;; $if_4 + local.tee $9 + i32.const 2 + i32.shl i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 local.get $0 - ) - - (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 144 - i32.add - global.set $30 - local.get $2 - i32.const 128 + i32.const 8 i32.add - local.tee $3 - local.get $1 i32.store - local.get $2 - i32.const 128 - i32.const 11064 - local.get $3 - call $_snprintf - drop - local.get $2 - i32.const 0 - i32.store8 offset=127 - local.get $0 - i32.const 12 - i32.add - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - drop - local.get $2 - global.set $30 - local.get $0 + local.get $10 + i32.load + local.tee $5 + i32.eqz + if $if_7 + return + end ;; $if_7 + loop $loop_0 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $9 + local.get $15 + if $if_8 (result i32) + local.get $6 + local.get $14 + i32.and + else + local.get $6 + local.get $1 + i32.ge_u + if $if_9 (result i32) + local.get $1 + if $if_10 (result i32) + local.get $6 + local.get $1 + i32.rem_u + else + i32.const 0 + end ;; $if_10 + else + local.get $6 + end ;; $if_9 + end ;; $if_8 + local.tee $6 + i32.eq + if $if_11 (result i32) + local.get $5 + else + block $block (result i32) + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + local.tee $2 + i32.load + i32.eqz + if $if_12 + local.get $2 + local.get $10 + i32.store + local.get $6 + local.set $9 + local.get $5 + br $block + end ;; $if_12 + local.get $5 + i32.load + local.tee $2 + if $if_13 + block $block_0 + local.get $5 + i32.const 8 + i32.add + local.tee $12 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.set $4 + local.get $5 + i32.load offset=12 + local.get $3 + i32.const 255 + i32.and + local.tee $11 + local.get $4 + select + local.tee $13 + i32.eqz + local.set $7 + local.get $4 + if $if_14 + local.get $5 + local.set $3 + loop $loop_1 + local.get $2 + i32.const 8 + i32.add + local.tee $8 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $11 + local.get $2 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $11 + select + local.get $13 + i32.ne + if $if_15 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_15 + local.get $7 + i32.eqz + if $if_16 + local.get $12 + i32.load + local.get $8 + i32.load + local.get $8 + local.get $11 + select + local.get $13 + call $_memcmp + if $if_17 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_17 + end ;; $if_16 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_1 + unreachable + end ;; $loop_1 + unreachable + end ;; $if_14 + local.get $7 + if $if_18 + local.get $5 + local.set $3 + loop $loop_2 + local.get $2 + i32.load offset=12 + local.get $2 + i32.load8_s offset=19 + local.tee $4 + i32.const 255 + i32.and + local.get $4 + i32.const 0 + i32.lt_s + select + if $if_19 + local.get $3 + local.set $2 + br $block_0 + end ;; $if_19 + local.get $2 + i32.load + local.tee $4 + i32.eqz + br_if $block_0 + local.get $2 + local.set $3 + local.get $4 + local.set $2 + br $loop_2 + unreachable + end ;; $loop_2 + unreachable + end ;; $if_18 + local.get $2 + local.set $3 + local.get $5 + local.set $2 + loop $loop_3 (result i32) + local.get $3 + i32.const 8 + i32.add + local.tee $7 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.set $8 + local.get $3 + i32.load offset=12 + local.get $4 + i32.const 255 + i32.and + local.get $8 + select + local.get $13 + i32.ne + br_if $block_0 + local.get $7 + i32.load + local.get $7 + local.get $8 + select + local.tee $7 + i32.load8_u + local.get $12 + i32.load + i32.const 255 + i32.and + i32.ne + br_if $block_0 + local.get $11 + local.set $8 + local.get $12 + local.set $4 + loop $loop_4 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + if $if_20 + local.get $4 + i32.const 1 + i32.add + local.tee $4 + i32.load8_s + local.get $7 + i32.const 1 + i32.add + local.tee $7 + i32.load8_s + i32.eq + if $if_21 + br $loop_4 + else + br $block_0 + end ;; $if_21 + unreachable + end ;; $if_20 + end ;; $loop_4 + local.get $3 + i32.load + local.tee $4 + if $if_22 (result i32) + local.get $3 + local.set $2 + local.get $4 + local.set $3 + br $loop_3 + else + local.get $3 + end ;; $if_22 + end ;; $loop_3 + local.set $2 + end ;; $block_0 + else + local.get $5 + local.set $2 + end ;; $if_13 + local.get $10 + local.get $2 + i32.load + i32.store + local.get $2 + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.load + i32.store + local.get $0 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + i32.store + local.get $10 + end ;; $block + end ;; $if_11 + local.tee $2 + i32.load + local.tee $5 + if $if_23 + local.get $2 + local.set $10 + br $loop_0 + end ;; $if_23 + end ;; $loop_0 ) - (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (func $__ZN6google8protobuf14FatalExceptionD2Ev (type $0) (param $0 i32) local.get $0 + i32.const 7328 + i32.store + local.get $0 i32.load8_s offset=23 i32.const 0 i32.ge_s @@ -28725,930 +29305,1107 @@ call $_free ) - (func $__GLOBAL__sub_I_status_cc (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 - i32.const 16 - i32.add - global.set $30 - i32.const 14964 - i64.const 0 - i64.store align=4 - i32.const 14972 - i64.const 0 - i64.store align=4 + (func $__ZN6google8protobuf14FatalExceptionD0Ev (type $0) + (param $0 i32) local.get $0 - i32.const 15713 + i32.const 7328 i32.store local.get $0 + i32.load8_s offset=23 i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - local.tee $1 + i32.ge_s + if $if + local.get $0 + call $_free + return + end ;; $if local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 14980 - i32.const 1 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + i32.load offset=12 + call $_free local.get $0 - i32.const 15713 - i32.store + call $_free + ) + + (func $__ZNK6google8protobuf14FatalException4whatEv (type $1) + (param $0 i32) + (result i32) local.get $0 + i32.const 12 + i32.add + local.tee $0 + i32.load8_s offset=11 i32.const 0 - i32.store offset=4 - local.get $1 - local.get $0 - i64.load align=4 - i64.store align=4 - i32.const 14996 - i32.const 2 - local.get $1 - call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE - local.get $0 - global.set $30 + i32.lt_s + if $if (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (func $__ZN6google8protobuf8internal10LogMessage6FinishEv (type $0) (param $0 i32) - (param $1 i32) - (param $2 i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $1 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $0 + global.set $32 local.get $1 - i32.store - local.get $0 - i32.const 4 + i32.const 8 i32.add - local.tee $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 + local.set $3 local.get $1 - i32.eqz - if $if - local.get $5 - global.set $30 - return - end ;; $if - local.get $5 - local.set $1 - block $block - block $block_0 + i32.const 4 + i32.add + local.set $2 + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if (result i32) + i32.const 3 + else + local.get $1 + i32.const 3 + i32.store + i32.const 24696 + i32.load + i32.const -1 + i32.ne + if $if_0 + local.get $1 + local.get $1 + i32.store offset=8 local.get $2 - i32.load - local.tee $6 - if $if_0 - local.get $2 - i32.load offset=4 - local.set $4 - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $4 - i32.const -17 - i32.gt_u - if $if_1 - call $_abort - end ;; $if_1 - block $block_1 - block $block_2 - local.get $4 - i32.const 11 - i32.lt_u - if $if_2 (result i32) - local.get $1 - local.get $4 - i32.store8 offset=11 - local.get $4 - if $if_3 (result i32) - local.get $1 - local.set $2 - br $block_2 - else - local.get $1 - end ;; $if_3 - else - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $7 - call $__Znwm - local.tee $2 - i32.store - local.get $1 - local.get $7 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $4 - i32.store offset=4 - br $block_2 - end ;; $if_2 - local.set $2 - br $block_1 - end ;; $block_2 - local.get $2 - local.get $6 - local.get $4 - call $_memcpy - drop - end ;; $block_1 - local.get $2 - local.get $4 - i32.add - i32.const 0 - i32.store8 - local.get $3 - i32.const 11 - i32.add - local.tee $2 - i32.load8_s - i32.const 0 - i32.lt_s - if $if_4 - local.get $3 - i32.load - i32.const 0 - i32.store8 - local.get $0 - i32.const 0 - i32.store offset=8 - else - local.get $2 - local.set $0 - br $block_0 - end ;; $if_4 - else - local.get $1 - i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $3 - i32.const 11 - i32.add - local.set $0 - br $block_0 - end ;; $if_0 - br $block - end ;; $block_0 - local.get $3 - i32.const 0 - i32.store8 + local.get $3 + i32.store + local.get $2 + call $__ZNSt3__211__call_onceERVmPvPFvS2_E + end ;; $if_0 + i32.const 24700 + i32.load + drop local.get $0 - i32.const 0 - i32.store8 - end ;; $block - local.get $3 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $3 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $3 - local.get $1 + i32.load + end ;; $if + local.get $0 + i32.load offset=4 + local.get $0 i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $30 - ) - - (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 32 + local.get $0 + i32.const 12 i32.add - global.set $30 - local.get $1 - if $if (result i32) + call $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE + local.get $0 + i32.load + i32.const 3 + i32.eq + if $if_1 + i32.const 24 + call $___cxa_allocate_exception + local.tee $2 + local.set $1 local.get $0 - i32.load offset=28 - local.tee $4 - local.get $1 - i32.load offset=8 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - else + i32.load offset=4 + local.set $3 local.get $0 - i32.load offset=24 - end ;; $if - local.set $4 - local.get $2 - i32.const -17 - i32.gt_u - if $if_0 - local.get $3 - i32.const 3 + i32.load offset=8 + local.set $4 + local.get $1 + i32.const 7328 i32.store + local.get $1 local.get $3 - i32.const 11067 i32.store offset=4 - local.get $3 - i32.const 116 + local.get $1 + local.get $4 i32.store offset=8 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i32.const 0 - i32.store offset=20 - local.get $3 - i32.const 11092 - call $__ZN6google8protobuf8internal10LogMessagelsEPKc - call $__ZN6google8protobuf8internal10LogMessage6FinishEv - local.get $3 - call $__ZN6google8protobuf8internal10LogMessageD2Ev - end ;; $if_0 - local.get $2 - i32.const 16 - i32.add - local.tee $2 - local.get $4 - local.get $4 - local.get $2 - i32.lt_u - select - local.tee $4 + local.get $1 + i32.const 12 + i32.add + local.get $0 + i32.const 12 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $2 + i32.const 4712 + i32.const 27 + call $___cxa_throw + else + local.get $1 + global.set $32 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal20InitLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 28 + call $__Znwm + local.tee $0 + i64.const 0 + i64.store align=4 + local.get $0 + i64.const 0 + i64.store offset=8 align=4 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 0 + i32.store offset=24 + i32.const 24700 local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $2 - local.get $1 i32.store - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $2 - local.get $4 - i32.store offset=8 + i32.const 118 + i32.const 4 + call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ + ) + + (func $__ZNSt3__217__call_once_proxyINS_5tupleIJRPFvvEEEEEEvPv (type $0) + (param $0 i32) local.get $0 - local.get $4 + i32.load + i32.load + i32.load + local.set $0 local.get $0 - i32.load offset=8 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=8 - local.get $3 - global.set $30 - local.get $2 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (func $__ZN6google8protobuf8internal17DefaultLogHandlerENS0_8LogLevelEPKciRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEE (type $5) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) + (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $0 - i32.load offset=12 - local.tee $4 - local.set $3 - loop $loop - block $block (result i32) - block $block_0 - local.get $3 - if $if (result i32) - local.get $3 - i32.load - i32.const 1 - i32.shl - local.tee $5 - i32.const 64 - i32.lt_u - if $if_0 (result i32) - br $block_0 - else - i32.const 64 - end ;; $if_0 - else - i32.const 8 - local.set $5 - br $block_0 - end ;; $if - br $block - end ;; $block_0 - local.get $5 - end ;; $block - local.set $6 - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 - local.tee $3 - local.tee $5 - i32.sub - local.get $6 - i32.const 3 - i32.shl - i32.const 8 - i32.or - local.tee $7 - i32.lt_u - if $if_1 - local.get $0 - local.get $7 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.tee $5 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - else - local.get $0 - local.get $3 - local.get $7 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $3 - local.get $4 - i32.store offset=4 - local.get $3 - local.get $6 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $0 - local.get $3 - i32.const 8 - i32.add - local.tee $4 - i32.store offset=28 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - local.get $4 - i32.add - local.tee $6 - i32.store offset=32 + i32.const 0 + i32.lt_s + if $if local.get $4 - local.get $6 - i32.eq - if $if_2 - local.get $5 - local.set $4 - br $loop - end ;; $if_2 - end ;; $loop + global.set $32 + return + end ;; $if + i32.const 7464 + i32.load + local.set $5 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.set $3 local.get $4 - local.get $1 + local.get $0 + i32.const 2 + i32.shl + i32.const 1024 + i32.add + i32.load i32.store - local.get $3 + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 local.get $2 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 + local.get $5 + local.get $4 + call $_fprintf + local.get $5 + call $_fflush + drop + local.get $4 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal22DeleteLogSilencerCountEv (type $8) + (local $0 i32) + i32.const 24700 + i32.load + local.tee $0 + if $if + local.get $0 + call $_free + end ;; $if + i32.const 24700 + i32.const 0 + i32.store + ) + + (func $__ZN6google8protobuf8internalL14RunZeroArgFuncEPKv (type $0) + (param $0 i32) local.get $0 - local.get $3 - i32.const 16 + i32.const 7 + i32.and + i32.const 152 i32.add - i32.store offset=28 + call_indirect $28 (type $8) ) - (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.load offset=8 - local.tee $3 + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24608 + i32.load8_s + i32.eqz + if $if + i32.const 24608 + i32.load8_s + i32.const 0 + i32.ne + i32.const 1 + i32.xor + if $if_0 + i32.const 40 + call $__Znwm + local.tee $2 + i64.const 0 + i64.store align=4 + local.get $2 + i64.const 0 + i64.store offset=8 align=4 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + i64.const 0 + i64.store offset=24 align=4 + local.get $2 + i64.const 0 + i64.store offset=32 align=4 + i32.const 24704 + local.get $2 + i32.store + i32.const 24608 + i32.const 0 + i32.store + i32.const 24608 + i32.const 24608 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_0 + end ;; $if + i32.const 24704 + i32.load local.set $2 local.get $3 - i32.load offset=8 - local.set $5 local.get $0 - i32.load offset=24 - local.set $3 - local.get $0 - i32.load offset=20 - local.set $4 - loop $loop - local.get $2 - local.get $5 - local.get $3 - i32.sub - local.get $4 - i32.add - i32.store offset=4 - local.get $0 - local.get $0 - i32.load - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm - local.tee $2 - i32.store offset=8 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + local.get $2 + i32.load offset=4 + local.tee $0 + local.get $2 + i32.load offset=8 + i32.lt_u + if $if_1 local.get $0 + local.get $3 + i64.load + i64.store align=4 local.get $2 local.get $2 i32.load offset=4 + i32.const 8 i32.add - local.tee $4 - i32.store offset=20 - local.get $0 - local.get $2 + i32.store offset=4 + else local.get $2 - i32.load offset=8 - local.tee $5 - i32.add - local.tee $3 - i32.store offset=24 local.get $3 - local.get $4 - i32.sub - local.get $1 - i32.lt_u - br_if $loop - end ;; $loop - local.get $0 - local.get $1 - local.get $4 - i32.add - i32.store offset=20 - local.get $4 + call $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ + end ;; $if_1 + local.get $3 + global.set $32 ) - (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) + (func $__ZNSt3__26vectorINS_4pairIPFvPKvES3_EENS_9allocatorIS6_EEE21__push_back_slow_pathIS6_EEvOT_ (type $4) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) - i32.const 4752 - i64.load + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) local.get $0 - i64.load offset=16 - i64.eq + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + local.tee $6 + i32.const 3 + i32.shr_s + local.tee $7 + i32.const 1 + i32.add + local.tee $2 + i32.const 536870911 + i32.gt_u if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm - return - end ;; $block + call $_abort end ;; $if local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 + local.get $0 + i32.load offset=8 + local.get $4 i32.sub - local.get $1 + local.tee $3 + i32.const 2 + i32.shr_s + local.tee $8 + local.get $8 + local.get $2 i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else + select + i32.const 536870911 + local.get $3 + i32.const 3 + i32.shr_s + i32.const 268435455 + i32.lt_u + select + local.tee $2 + if $if_0 local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + i32.const 536870911 + i32.gt_u + if $if_1 + i32.const 8 + call $___cxa_allocate_exception + local.tee $3 + call $__ZNSt11logic_errorC2EPKc + local.get $3 + i32.const 10832 + i32.store + local.get $3 + i32.const 6400 + i32.const 108 + call $___cxa_throw + else + local.get $2 + i32.const 3 + i32.shl + call $__Znwm + local.tee $9 + local.set $5 + end ;; $if_1 + end ;; $if_0 + local.get $7 + i32.const 3 + i32.shl + local.get $5 + i32.add + local.tee $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $6 + i32.const 0 + i32.gt_s + if $if_2 + local.get $9 + local.get $4 + local.get $6 + call $_memcpy + drop + end ;; $if_2 + local.get $0 + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.const 8 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.get $5 + i32.add + i32.store offset=8 + local.get $4 + i32.eqz + if $if_3 + return + end ;; $if_3 + local.get $4 + call $_free ) - (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (func $__ZN6google8protobuf8internal10LogMessagelsEPKc (type $3) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - i32.const 4752 - i64.load local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $2 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $2 - if $if_0 - local.get $2 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - local.set $2 - end ;; $block - end ;; $if - local.get $2 - i32.load offset=24 - local.get $2 - i32.load offset=20 - local.tee $0 - i32.sub + i32.const 12 + i32.add local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $2 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - else - local.get $2 - local.get $0 - local.get $1 - i32.add - i32.store offset=20 - local.get $0 - end ;; $if_1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (func $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - block $block - block $block_0 - local.get $0 - i32.load - local.tee $3 - i32.eqz - br_if $block_0 - loop $loop - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.ne - if $if - local.get $3 - i32.load offset=16 - local.tee $3 - br_if $loop - br $block_0 - end ;; $if - end ;; $loop - br $block - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.tee $2 - i32.const 56 - local.get $2 - i32.const 56 - i32.gt_u - select - local.tee $2 - local.get $0 - i32.load offset=40 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 16 - i32.store offset=4 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - local.get $0 - i32.load offset=8 - i32.add - i32.store offset=8 - local.get $1 - i32.const 56 - i32.store offset=4 - local.get $1 - i32.const 16 - i32.add - local.tee $3 - local.get $0 - i32.store - local.get $1 - i32.const 4752 - i32.store offset=20 - local.get $1 - local.get $1 - i32.store offset=24 - local.get $1 - local.get $1 - i32.const 56 - i32.add - i32.store offset=36 - local.get $1 - local.get $1 - local.get $1 - i32.load offset=8 - i32.add - i32.store offset=40 - local.get $1 - i32.const 0 - i32.store offset=28 - local.get $1 - i32.const 0 - i32.store offset=44 - local.get $1 - i32.const 0 - i32.store offset=48 - local.get $1 - local.get $0 - i32.load - local.tee $4 - i32.store offset=32 - local.get $4 - local.get $0 - i32.load - local.tee $2 - i32.eq - if $if_0 - local.get $0 - local.get $3 - i32.store - end ;; $if_0 - local.get $2 - local.get $4 - i32.ne - if $if_1 - loop $loop_0 - local.get $1 - local.get $2 - i32.store offset=32 - local.get $2 - local.get $0 - i32.load - local.tee $4 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store - end ;; $if_2 - local.get $2 - local.get $4 - i32.ne - if $if_3 - local.get $4 - local.set $2 - br $loop_0 - end ;; $if_3 - end ;; $loop_0 - end ;; $if_1 - end ;; $block - i32.const 4760 - local.get $3 - i32.store - i32.const 4752 - local.get $0 - i64.load offset=16 - i64.store local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $1 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and local.get $3 - i32.store offset=4 - local.get $3 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + local.get $0 ) - (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEi (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if - i32.const 4760 - i32.load - local.set $0 - else - block $block - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - if $if_1 - local.get $3 - local.set $0 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - local.get $1 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE - return - end ;; $block - end ;; $if - local.get $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_2 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_2 + i32.store + local.get $2 + i32.const 128 + i32.const 15156 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 local.get $0 - i32.load offset=28 - local.tee $1 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $32 local.get $0 - i32.load offset=32 - i32.eq - if $if_3 - local.get $0 - local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else - local.get $1 - local.get $3 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $0 - local.get $1 - i32.const 8 - i32.add - i32.store offset=28 - end ;; $if_3 - local.get $3 ) - (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (func $__ZN6google8protobuf8internal10LogMessagelsEj (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - i32.const 4752 - i64.load - local.get $0 - i64.load offset=16 - i64.eq - if $if (result i32) - i32.const 4760 - i32.load - else - block $block (result i32) - local.get $0 - i32.load offset=4 - local.tee $3 - if $if_0 - local.get $3 - local.get $3 - i32.load offset=4 - i32.const 4752 - i32.eq - br_if $block - drop - end ;; $if_0 - local.get $0 - call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv - end ;; $block - end ;; $if - local.tee $0 - i32.load offset=24 - local.get $0 - i32.load offset=20 + global.get $32 + local.set $2 + global.get $32 + i32.const 144 + i32.add + global.set $32 + local.get $2 + i32.const 128 + i32.add local.tee $3 - i32.sub local.get $1 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm - local.set $3 - else - local.get $0 - local.get $1 - local.get $3 - i32.add - i32.store offset=20 - end ;; $if_1 - local.get $0 - i32.load offset=28 - local.tee $1 - local.get $0 - i32.load offset=32 - i32.eq - if $if_2 - local.get $0 + i32.store + local.get $2 + i32.const 128 + i32.const 15159 + local.get $3 + call $_snprintf + drop + local.get $2 + i32.const 0 + i32.store8 offset=127 + local.get $0 + i32.const 12 + i32.add + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN6google8protobuf8internal10LogMessageD2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load8_s offset=23 + i32.const 0 + i32.ge_s + if $if + return + end ;; $if + local.get $0 + i32.load offset=12 + call $_free + ) + + (func $__GLOBAL__sub_I_status_cc (type $8) + (local $0 i32) + (local $1 i32) + global.get $32 + local.set $0 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const 24708 + i64.const 0 + i64.store align=4 + i32.const 24716 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 25462 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24724 + i32.const 1 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + i32.const 25462 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i64.load align=4 + i64.store align=4 + i32.const 24740 + i32.const 2 + local.get $1 + call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE + local.get $0 + global.set $32 + ) + + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + local.get $1 + i32.store + local.get $0 + i32.const 4 + i32.add + local.tee $3 + i64.const 0 + i64.store align=4 + local.get $3 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.eqz + if $if + local.get $5 + global.set $32 + return + end ;; $if + local.get $5 + local.set $1 + block $block + block $block_0 + local.get $2 + i32.load + local.tee $6 + if $if_0 + local.get $2 + i32.load offset=4 + local.set $4 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $4 + i32.const -17 + i32.gt_u + if $if_1 + call $_abort + end ;; $if_1 + block $block_1 + block $block_2 + local.get $4 + i32.const 11 + i32.lt_u + if $if_2 (result i32) + local.get $1 + local.get $4 + i32.store8 offset=11 + local.get $4 + if $if_3 (result i32) + local.get $1 + local.set $2 + br $block_2 + else + local.get $1 + end ;; $if_3 + else + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $7 + call $__Znwm + local.tee $2 + i32.store + local.get $1 + local.get $7 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $1 + local.get $4 + i32.store offset=4 + br $block_2 + end ;; $if_2 + local.set $2 + br $block_1 + end ;; $block_2 + local.get $2 + local.get $6 + local.get $4 + call $_memcpy + drop + end ;; $block_1 + local.get $2 + local.get $4 + i32.add + i32.const 0 + i32.store8 + local.get $3 + i32.const 11 + i32.add + local.tee $2 + i32.load8_s + i32.const 0 + i32.lt_s + if $if_4 + local.get $3 + i32.load + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store offset=8 + else + local.get $2 + local.set $0 + br $block_0 + end ;; $if_4 + else + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $3 + i32.const 11 + i32.add + local.set $0 + br $block_0 + end ;; $if_0 + br $block + end ;; $block_0 local.get $3 - local.get $2 - call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E - else + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 + end ;; $block + local.get $3 + i32.const 0 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $32 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=28 + local.tee $4 local.get $1 + i32.load offset=8 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select + else + local.get $0 + i32.load offset=24 + end ;; $if + local.set $4 + local.get $2 + i32.const -17 + i32.gt_u + if $if_0 local.get $3 + i32.const 3 i32.store - local.get $1 - local.get $2 + local.get $3 + i32.const 15162 i32.store offset=4 + local.get $3 + i32.const 116 + i32.store offset=8 + local.get $3 + i64.const 0 + i64.store offset=12 align=4 + local.get $3 + i32.const 0 + i32.store offset=20 + local.get $3 + i32.const 15187 + call $__ZN6google8protobuf8internal10LogMessagelsEPKc + call $__ZN6google8protobuf8internal10LogMessage6FinishEv + local.get $3 + call $__ZN6google8protobuf8internal10LogMessageD2Ev + end ;; $if_0 + local.get $2 + i32.const 16 + i32.add + local.tee $2 + local.get $4 + local.get $4 + local.get $2 + i32.lt_u + select + local.tee $4 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $2 + local.get $1 + i32.store + local.get $2 + i32.const 16 + i32.store offset=4 + local.get $2 + local.get $4 + i32.store offset=8 + local.get $0 + local.get $4 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $3 + global.set $32 + local.get $2 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.tee $4 + local.set $3 + loop $loop + block $block (result i32) + block $block_0 + local.get $3 + if $if (result i32) + local.get $3 + i32.load + i32.const 1 + i32.shl + local.tee $5 + i32.const 64 + i32.lt_u + if $if_0 (result i32) + br $block_0 + else + i32.const 64 + end ;; $if_0 + else + i32.const 8 + local.set $5 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $5 + end ;; $block + local.set $6 local.get $0 - local.get $1 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + local.tee $5 + i32.sub + local.get $6 + i32.const 3 + i32.shl + i32.const 8 + i32.or + local.tee $7 + i32.lt_u + if $if_1 + local.get $0 + local.get $7 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.tee $5 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + else + local.get $0 + local.get $3 + local.get $7 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $3 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $6 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 i32.const 8 i32.add + local.tee $4 i32.store offset=28 - end ;; $if_2 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + local.get $4 + i32.add + local.tee $6 + i32.store offset=32 + local.get $4 + local.get $6 + i32.eq + if $if_2 + local.get $5 + local.set $4 + br $loop + end ;; $if_2 + end ;; $loop + local.get $4 + local.get $1 + i32.store local.get $3 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 16 + i32.add + i32.store offset=28 ) - (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (func $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.load offset=8 + local.tee $3 + local.set $2 + local.get $3 + i32.load offset=8 + local.set $5 + local.get $0 + i32.load offset=24 + local.set $3 + local.get $0 + i32.load offset=20 + local.set $4 + loop $loop + local.get $2 + local.get $5 + local.get $3 + i32.sub + local.get $4 + i32.add + i32.store offset=4 + local.get $0 + local.get $0 + i32.load + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl8NewBlockEPNS2_5BlockEm + local.tee $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=4 + i32.add + local.tee $4 + i32.store offset=20 + local.get $0 + local.get $2 + local.get $2 + i32.load offset=8 + local.tee $5 + i32.add + local.tee $3 + i32.store offset=24 + local.get $3 + local.get $4 + i32.sub + local.get $1 + i32.lt_u + br_if $loop + end ;; $loop + local.get $0 + local.get $1 + local.get $4 + i32.add + i32.store offset=20 + local.get $4 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl15AllocateAlignedEm (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -29659,33 +30416,453 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 local.get $0 local.get $1 - call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + call $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm return end ;; $block end ;; $if local.get $2 - i32.load offset=28 - local.tee $0 + i32.load offset=24 local.get $2 - i32.load offset=32 - i32.eq - if $if_1 - local.get $2 - local.get $1 - i32.const 49 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl23AllocateAlignedFallbackEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + local.set $2 + end ;; $block + end ;; $if + local.get $2 + i32.load offset=24 + local.get $2 + i32.load offset=20 + local.tee $0 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + else + local.get $2 + local.get $0 + local.get $1 + i32.add + i32.store offset=20 + local.get $0 + end ;; $if_1 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + block $block + block $block_0 + local.get $0 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + loop $loop + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.ne + if $if + local.get $3 + i32.load offset=16 + local.tee $3 + br_if $loop + br $block_0 + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.load offset=24 + local.tee $2 + i32.const 56 + local.get $2 + i32.const 56 + i32.gt_u + select + local.tee $2 + local.get $0 + i32.load offset=40 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.tee $1 + i32.const 0 + i32.store + local.get $1 + i32.const 16 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $0 + local.get $2 + local.get $0 + i32.load offset=8 + i32.add + i32.store offset=8 + local.get $1 + i32.const 56 + i32.store offset=4 + local.get $1 + i32.const 16 + i32.add + local.tee $3 + local.get $0 + i32.store + local.get $1 + i32.const 4728 + i32.store offset=20 + local.get $1 + local.get $1 + i32.store offset=24 + local.get $1 + local.get $1 + i32.const 56 + i32.add + i32.store offset=36 + local.get $1 + local.get $1 + local.get $1 + i32.load offset=8 + i32.add + i32.store offset=40 + local.get $1 + i32.const 0 + i32.store offset=28 + local.get $1 + i32.const 0 + i32.store offset=44 + local.get $1 + i32.const 0 + i32.store offset=48 + local.get $1 + local.get $0 + i32.load + local.tee $4 + i32.store offset=32 + local.get $4 + local.get $0 + i32.load + local.tee $2 + i32.eq + if $if_0 + local.get $0 + local.get $3 + i32.store + end ;; $if_0 + local.get $2 + local.get $4 + i32.ne + if $if_1 + loop $loop_0 + local.get $1 + local.get $2 + i32.store offset=32 + local.get $2 + local.get $0 + i32.load + local.tee $4 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store + end ;; $if_2 + local.get $2 + local.get $4 + i32.ne + if $if_3 + local.get $4 + local.set $2 + br $loop_0 + end ;; $if_3 + end ;; $loop_0 + end ;; $if_1 + end ;; $block + i32.const 4736 + local.get $3 + i32.store + i32.const 4728 + local.get $0 + i64.load offset=16 + i64.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl28AllocateAlignedAndAddCleanupEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $0 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + if $if_1 + local.get $3 + local.set $0 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE + return + end ;; $block + end ;; $if + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_2 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_3 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl36AllocateAlignedAndAddCleanupFallbackEmPFvPvE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if (result i32) + i32.const 4736 + i32.load + else + block $block (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + if $if_0 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + drop + end ;; $if_0 + local.get $0 + call $__ZN6google8protobuf8internal9ArenaImpl22GetSerialArenaFallbackEPv + end ;; $block + end ;; $if + local.tee $0 + i32.load offset=24 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.sub + local.get $1 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena23AllocateAlignedFallbackEm + local.set $3 + else + local.get $0 + local.get $1 + local.get $3 + i32.add + i32.store offset=20 + end ;; $if_1 + local.get $0 + i32.load offset=28 + local.tee $1 + local.get $0 + i32.load offset=32 + i32.eq + if $if_2 + local.get $0 + local.get $3 + local.get $2 + call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E + else + local.get $1 + local.get $3 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 8 + i32.add + i32.store offset=28 + end ;; $if_2 + local.get $3 + ) + + (func $__ZN6google8protobuf8internal9ArenaImpl10AddCleanupEPvPFvS3_E (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + i32.const 4728 + i64.load + local.get $0 + i64.load offset=16 + i64.eq + if $if + i32.const 4736 + i32.load + local.set $2 + else + block $block + local.get $0 + i32.load offset=4 + local.tee $2 + if $if_0 + local.get $2 + i32.load offset=4 + i32.const 4728 + i32.eq + br_if $block + end ;; $if_0 + local.get $0 + local.get $1 + call $__ZN6google8protobuf8internal9ArenaImpl18AddCleanupFallbackEPvPFvS3_E + return + end ;; $block + end ;; $if + local.get $2 + i32.load offset=28 + local.tee $0 + local.get $2 + i32.load offset=32 + i32.eq + if $if_1 + local.get $2 + local.get $1 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 49 + i32.const 114 i32.store offset=4 local.get $2 local.get $0 @@ -29699,13 +30876,13 @@ (param $0 i32) (param $1 i32) (local $2 i32) - i32.const 4752 + i32.const 4728 i64.load local.get $0 i64.load offset=16 i64.eq if $if - i32.const 4760 + i32.const 4736 i32.load local.set $2 else @@ -29716,7 +30893,7 @@ if $if_0 local.get $2 i32.load offset=4 - i32.const 4752 + i32.const 4728 i32.eq br_if $block end ;; $if_0 @@ -29734,14 +30911,14 @@ if $if_1 local.get $2 local.get $1 - i32.const 49 + i32.const 114 call $__ZN6google8protobuf8internal9ArenaImpl11SerialArena18AddCleanupFallbackEPvPFvS4_E else local.get $0 local.get $1 i32.store local.get $0 - i32.const 49 + i32.const 114 i32.store offset=4 local.get $2 local.get $0 @@ -29760,11 +30937,11 @@ local.set $1 local.get $0 local.get $1 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh (type $15) @@ -29789,12 +30966,12 @@ (local $17 i32) (local $18 i64) (local $19 i64) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $6 local.get $4 i32.store @@ -29812,7 +30989,7 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -34374,9 +35551,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_190 local.tee $4 i32.store @@ -34520,9 +35697,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_196 local.tee $4 i32.store @@ -34685,9 +35862,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_202 local.tee $4 i32.store @@ -34855,9 +36032,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_208 local.tee $4 i32.store @@ -35058,7 +36235,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35117,9 +36294,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_214 br $block @@ -35259,7 +36436,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35318,9 +36495,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_222 br $block @@ -35479,7 +36656,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35537,9 +36714,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) end ;; $if_230 i32.store local.get $9 @@ -35702,7 +36879,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $3 local.get $6 i32.load @@ -35761,9 +36938,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.store end ;; $if_238 br $block @@ -39790,7 +40967,7 @@ i32.load local.set $4 local.get $11 - i32.const 6296 + i32.const 7348 i32.store local.get $11 local.get $4 @@ -39837,9 +41014,9 @@ i32.load offset=16 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) local.get $6 local.get $6 i32.load @@ -39858,7 +41035,7 @@ i32.const 3 i32.store local.get $11 - i32.const 11179 + i32.const 15274 i32.store offset=4 local.get $11 i32.const 571 @@ -39870,7 +41047,7 @@ i32.const 0 i32.store offset=20 local.get $11 - i32.const 11221 + i32.const 15316 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $4 call $__ZN6google8protobuf8internal10LogMessagelsEi @@ -39890,24 +41067,24 @@ i32.load local.set $0 local.get $6 - global.set $30 + global.set $32 local.get $0 ) (func $__ZN6google8protobuf8internal17PackedFieldHelperILi9EE9SerializeINS1_11ArrayOutputEEEvPKvRKNS1_13FieldMetadataEPT_ (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 3 i32.store local.get $1 - i32.const 11179 + i32.const 15274 i32.store offset=4 local.get $1 i32.const 534 @@ -39919,12 +41096,12 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 11221 + i32.const 15316 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=4 call $__ZN6google8protobuf8internal10LogMessagelsEj - i32.const 11251 + i32.const 15346 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=12 @@ -39933,50 +41110,58 @@ local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal11InitSCCImplEPNS1_11SCCInfoBaseE (type $8) (local $0 i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 - i32.const 14896 + global.set $32 + i32.const 24640 i32.load8_s i32.eqz if $if - i32.const 14896 + i32.const 24640 i32.load8_s - i32.const 1 + i32.const 0 i32.ne + i32.const 1 + i32.xor if $if_0 - i32.const 14896 + i32.const 24640 + i32.const 0 + i32.store + i32.const 24640 + i32.const 24640 + i32.load i32.const 1 - i32.store8 + i32.or + i32.store end ;; $if_0 end ;; $if - i32.const 15040 + i32.const 24784 i32.load - i32.const 6416 + i32.const 7468 call $_pthread_equal if $if_1 - i32.const 5596 + i32.const 6648 i32.load i32.const 1 i32.eq if $if_2 local.get $0 - global.set $30 + global.set $32 return end ;; $if_2 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 11179 + i32.const 15274 i32.store offset=4 local.get $0 i32.const 801 @@ -39988,53 +41173,56 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 11263 + i32.const 15358 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 return end ;; $if_1 - i32.const 14888 + i32.const 24632 i32.load8_s i32.eqz if $if_3 - i32.const 14888 + i32.const 24632 i32.load8_s + i32.const 0 + i32.ne i32.const 1 - i32.eq - if $if_4 (result i32) - i32.const 0 - else - i32.const 14888 - i32.const 1 - i32.store8 - i32.const 1 - end ;; $if_4 - if $if_5 - i32.const 14872 + i32.xor + if $if_4 + i32.const 24616 i64.const 0 i64.store - i32.const 14880 + i32.const 24624 i32.const 0 i32.store - i32.const 54 - i32.const 14872 + i32.const 119 + i32.const 24616 call $__ZN6google8protobuf8internal13OnShutdownRunEPFvPKvES3_ - end ;; $if_5 + i32.const 24632 + i32.const 0 + i32.store + i32.const 24632 + i32.const 24632 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_4 end ;; $if_3 - i32.const 15040 - i32.const 6416 + i32.const 24784 + i32.const 7468 i32.store - i32.const 5596 + i32.const 6648 call $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE - i32.const 15040 + i32.const 24784 i32.const 0 i32.store local.get $0 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal12_GLOBAL__N_111InitSCC_DFSEPNS1_11SCCInfoBaseE (type $0) @@ -40093,9 +41281,9 @@ local.get $1 i32.const 7 i32.and - i32.const 104 + i32.const 152 i32.add - call_indirect $26 (type $8) + call_indirect $28 (type $8) local.get $0 i32.const 0 i32.store @@ -40122,31 +41310,31 @@ i32.const 50 i32.store offset=4 local.get $1 - i32.const 11428 + i32.const 15523 i64.load align=1 i64.store align=1 local.get $1 - i32.const 11436 + i32.const 15531 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 11444 + i32.const 15539 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 11452 + i32.const 15547 i64.load align=1 i64.store offset=24 align=1 local.get $1 - i32.const 11460 + i32.const 15555 i64.load align=1 i64.store offset=32 align=1 local.get $1 - i32.const 11468 + i32.const 15563 i64.load align=1 i64.store offset=40 align=1 local.get $1 - i32.const 11476 + i32.const 15571 i32.load16_s align=1 i32.store16 offset=48 align=1 local.get $1 @@ -40166,7 +41354,7 @@ i32.load local.set $2 local.get $0 - i32.const 15714 + i32.const 25453 i32.load8_s i32.const 1 i32.and @@ -40176,9 +41364,9 @@ local.get $2 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $__ZNK6google8protobuf11MessageLite39InternalSerializeWithCachedSizesToArrayEbPh (type $2) @@ -40191,19 +41379,19 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $0 local.get $0 i32.load i32.load offset=68 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $3 if $if local.get $0 @@ -40220,7 +41408,7 @@ call $__ZN6google8protobuf8internal24SerializeInternalToArrayEPKhPKNS1_13FieldMetadataEibPh local.set $0 local.get $4 - global.set $30 + global.set $32 local.get $0 return end ;; $if @@ -40230,7 +41418,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.tee $6 local.set $5 local.get $4 @@ -40238,7 +41426,7 @@ i32.add local.tee $7 local.tee $3 - i32.const 6296 + i32.const 7348 i32.store local.get $3 local.get $2 @@ -40271,11 +41459,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $3 i32.load8_s offset=16 if $if_0 @@ -40283,7 +41471,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11358 + i32.const 15453 i32.store offset=4 local.get $4 i32.const 373 @@ -40295,7 +41483,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11390 + i32.const 15485 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -40308,7 +41496,7 @@ local.get $3 call $__ZN6google8protobuf2io17CodedOutputStreamD2Ev local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -40321,12 +41509,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=12 local.set $4 @@ -40342,7 +41530,7 @@ i32.ge_s if $if local.get $3 - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -40378,7 +41566,7 @@ i32.const 3 i32.store local.get $3 - i32.const 11511 + i32.const 15606 i32.store offset=4 local.get $3 i32.const 59 @@ -40390,9 +41578,9 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 11545 + i32.const 15640 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11662 + i32.const 15757 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -40424,13 +41612,13 @@ local.get $1 i32.load offset=48 if $if_3 - i32.const 5408 + i32.const 6472 local.get $2 i64.extend_i32_u local.get $1 i32.load offset=60 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) end ;; $if_3 end ;; $if_2 local.get $1 @@ -40494,7 +41682,7 @@ i32.add local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -40507,12 +41695,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $1 i32.const 8 @@ -40561,7 +41749,7 @@ br_if $block end ;; $block_6 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_4 @@ -40599,7 +41787,7 @@ end ;; $block_8 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_3 @@ -40678,7 +41866,7 @@ i32.store end ;; $if_1 local.get $2 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_2 @@ -40764,7 +41952,7 @@ i32.store offset=40 end ;; $if_3 local.get $2 - global.set $30 + global.set $32 local.get $3 local.get $1 i32.const -8 @@ -40808,17 +41996,17 @@ end ;; $block_15 local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $2 - global.set $30 + global.set $32 i32.const 0 ) @@ -40982,12 +42170,12 @@ (local $7 i32) (local $8 i64) (local $9 i64) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block block $block_0 local.get $1 @@ -41126,7 +42314,7 @@ local.get $8 call $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $if_2 @@ -41196,7 +42384,7 @@ i32.sub i32.store offset=8 local.get $5 - global.set $30 + global.set $32 i32.const 1 return end ;; $block_5 @@ -41752,17 +42940,17 @@ br $block end ;; $block_1 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block local.get $5 - global.set $30 + global.set $32 local.get $0 ) @@ -42020,12 +43208,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42075,7 +43263,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11710 + i32.const 15805 i32.store offset=4 local.get $4 i32.const 507 @@ -42087,7 +43275,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11746 + i32.const 15841 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42139,7 +43327,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 return end ;; $if_2 local.get $1 @@ -42221,7 +43409,7 @@ select call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS0_2io17CodedOutputStreamE (type $4) @@ -42232,12 +43420,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.load offset=8 i32.const 4 @@ -42287,7 +43475,7 @@ i32.const 3 i32.store local.get $4 - i32.const 11710 + i32.const 15805 i32.store offset=4 local.get $4 i32.const 516 @@ -42299,7 +43487,7 @@ i32.const 0 i32.store offset=20 local.get $4 - i32.const 11746 + i32.const 15841 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $4 @@ -42425,7 +43613,7 @@ call $__ZN6google8protobuf2io17CodedOutputStream8WriteRawEPKvi end ;; $if_5 local.get $4 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal14WireFormatLite12WriteMessageEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $6) @@ -42518,7 +43706,7 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $0 local.get $2 i32.load offset=8 @@ -42535,11 +43723,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) return end ;; $if_2 local.get $2 @@ -42608,11 +43796,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite24WriteMessageMaybeToArrayEiRKNS0_11MessageLiteEPNS0_2io17CodedOutputStreamE (type $4) @@ -42664,7 +43852,7 @@ i32.load offset=60 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) local.set $4 local.get $1 i32.load offset=8 @@ -42778,9 +43966,9 @@ i32.load i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop return end ;; $if_4 @@ -42790,11 +43978,11 @@ local.get $0 i32.load i32.load offset=52 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $__ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt3__212basic_stringIcNS6_11char_traitsIcEENS6_9allocatorIcEEEE (type $3) @@ -42910,18 +44098,18 @@ (param $3 i32) (result i32) (local $4 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $0 local.get $1 call $__ZN6google8protobuf8internal23IsStructurallyValidUTF8EPKci if $if local.get $4 - global.set $30 + global.set $32 i32.const 1 return end ;; $if @@ -42978,13 +44166,13 @@ i32.load offset=8 i32.store offset=8 end ;; $if_0 - i32.const 11792 + i32.const 15887 i32.const 0 local.get $2 i32.const 1 i32.eq select - i32.const 11804 + i32.const 15899 local.get $2 select local.set $3 @@ -42996,7 +44184,7 @@ i32.const 2 i32.store local.get $1 - i32.const 11710 + i32.const 15805 i32.store offset=4 local.get $1 i32.const 626 @@ -43008,21 +44196,21 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11818 + i32.const 15913 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 call $__ZN6google8protobuf8internal10LogMessagelsERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE - i32.const 11831 + i32.const 15926 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11850 + i32.const 15945 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $3 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11867 + i32.const 15962 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11880 + i32.const 15975 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 11936 + i32.const 16031 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -43037,7 +44225,7 @@ call $_free end ;; $if_2 local.get $4 - global.set $30 + global.set $32 i32.const 0 ) @@ -43148,12 +44336,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.set $5 local.get $0 @@ -43196,7 +44384,7 @@ select local.set $7 local.get $5 - global.set $30 + global.set $32 local.get $7 return end ;; $block @@ -43319,7 +44507,7 @@ i32.lt_s if $if_9 local.get $5 - global.set $30 + global.set $32 i64.const -1 return end ;; $if_9 @@ -43347,7 +44535,7 @@ local.get $2 i32.store local.get $5 - global.set $30 + global.set $32 local.get $1 i64.extend_i32_u ) @@ -43718,12 +44906,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 48 i32.add - global.set $30 + global.set $32 local.get $2 i32.const 28 i32.add @@ -43763,9 +44951,9 @@ i32.load offset=8 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $4 @@ -43792,7 +44980,7 @@ i32.const 3 i32.store local.get $2 - i32.const 11944 + i32.const 16039 i32.store offset=4 local.get $2 i32.const 591 @@ -43804,7 +44992,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 11979 + i32.const 16074 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -43897,7 +45085,7 @@ end ;; $block local.set $0 local.get $2 - global.set $30 + global.set $32 local.get $0 return end ;; $if_1 @@ -43913,7 +45101,7 @@ i32.lt_s if $if_5 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_5 @@ -43923,31 +45111,31 @@ i32.eq if $if_6 local.get $2 - global.set $30 + global.set $32 i32.const 0 return end ;; $if_6 local.get $0 call $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv local.get $2 - global.set $30 + global.set $32 i32.const 0 ) (func $__ZN6google8protobuf2io16CodedInputStream25PrintTotalBytesLimitErrorEv (type $0) (param $0 i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 2 i32.store local.get $1 - i32.const 11944 + i32.const 16039 i32.store offset=4 local.get $1 i32.const 190 @@ -43959,18 +45147,18 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12016 + i32.const 16111 call $__ZN6google8protobuf8internal10LogMessagelsEPKc local.get $0 i32.load offset=36 call $__ZN6google8protobuf8internal10LogMessagelsEi - i32.const 12083 + i32.const 16178 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $1 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io16CodedInputStream34DecrementRecursionDepthAndPopLimitEi (type $3) @@ -44106,11 +45294,11 @@ local.get $0 local.get $3 local.get $1 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) drop i32.const 0 return @@ -44124,11 +45312,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) if $if_2 (result i32) local.get $0 local.get $0 @@ -44149,9 +45337,9 @@ local.get $2 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) i64.store32 offset=12 i32.const 0 end ;; $if_2 @@ -44331,7 +45519,6 @@ local.get $2 local.get $5 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop local.get $0 i32.load local.set $2 @@ -44378,7 +45565,6 @@ local.get $2 local.get $6 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop local.get $0 local.get $6 local.get $0 @@ -44398,12 +45584,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44476,7 +45662,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44489,7 +45675,7 @@ i32.load align=1 i32.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44503,12 +45689,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $7 local.set $3 local.get $0 @@ -44581,7 +45767,7 @@ br $block end ;; $block_0 local.get $7 - global.set $30 + global.set $32 i32.const 0 return end ;; $block @@ -44594,7 +45780,7 @@ i64.load align=1 i64.store align=1 local.get $7 - global.set $30 + global.set $32 i32.const 1 ) @@ -44609,12 +45795,12 @@ (local $6 i32) (local $7 i32) (local $8 i64) - global.get $30 + global.get $32 local.set $7 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.load offset=4 local.tee $6 @@ -44662,7 +45848,7 @@ end ;; $if_1 local.set $0 local.get $7 - global.set $30 + global.set $32 local.get $0 return end ;; $block @@ -44832,7 +46018,7 @@ i32.and if $if_11 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_11 @@ -44895,7 +46081,7 @@ i64.gt_u if $if_12 local.get $7 - global.set $30 + global.set $32 i32.const -1 return end ;; $if_12 @@ -44903,7 +46089,7 @@ local.get $2 i32.store local.get $7 - global.set $30 + global.set $32 local.get $8 i32.wrap_i64 ) @@ -44917,12 +46103,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 block $block local.get $0 i32.load offset=4 @@ -45020,7 +46206,7 @@ i32.store8 offset=24 end ;; $if_6 local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_2 @@ -45061,7 +46247,7 @@ br_if $block end ;; $block_3 local.get $5 - global.set $30 + global.set $32 local.get $0 return end ;; $block_0 @@ -45220,12 +46406,12 @@ local.get $1 i32.store local.get $5 - global.set $30 + global.set $32 local.get $4 return end ;; $block local.get $5 - global.set $30 + global.set $32 i32.const 0 ) @@ -45234,12 +46420,12 @@ (param $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45268,9 +46454,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) if $if local.get $0 local.get $2 @@ -45298,19 +46484,19 @@ i32.const 0 i32.store8 offset=16 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamC2EPNS1_20ZeroCopyOutputStreamEb (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 local.get $1 i32.store @@ -45327,7 +46513,7 @@ i32.const 0 i32.store8 offset=18 local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStreamD2Ev (type $0) @@ -45352,11 +46538,11 @@ local.get $2 local.get $1 local.get $3 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 local.get $0 i32.load offset=12 @@ -45381,12 +46567,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.set $6 local.get $0 @@ -45424,9 +46610,9 @@ local.get $5 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -45466,7 +46652,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block end ;; $if @@ -45488,7 +46674,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream15WriteAliasedRawEPKvi (type $6) @@ -45537,11 +46723,11 @@ local.get $3 local.get $5 local.get $4 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) local.get $0 i32.const 12 i32.add @@ -45591,9 +46777,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.xor i32.const 1 @@ -45614,12 +46800,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -45646,7 +46832,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -45688,9 +46874,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -45730,7 +46916,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $5 @@ -45751,7 +46937,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream19WriteLittleEndian64Ey (type $20) @@ -45765,12 +46951,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add @@ -45797,7 +46983,7 @@ i32.add i32.store local.get $3 - global.set $30 + global.set $32 return end ;; $if local.get $3 @@ -45837,9 +47023,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -45879,7 +47065,7 @@ i32.const 1 i32.store8 offset=16 local.get $3 - global.set $30 + global.set $32 return end ;; $block local.get $6 @@ -45900,7 +47086,7 @@ i32.sub i32.store local.get $3 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint32SlowPathEj (type $4) @@ -45912,12 +47098,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $6 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $6 i32.const 4 i32.add @@ -46005,9 +47191,9 @@ local.get $3 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46047,7 +47233,7 @@ i32.const 1 i32.store8 offset=16 local.get $6 - global.set $30 + global.set $32 return end ;; $block else @@ -46072,7 +47258,7 @@ i32.sub i32.store local.get $6 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream21WriteVarint64SlowPathEy (type $20) @@ -46086,12 +47272,12 @@ (local $7 i32) (local $8 i32) (local $9 i64) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 4 i32.add @@ -46183,9 +47369,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.eqz br_if $block_0 local.get $0 @@ -46225,7 +47411,7 @@ i32.const 1 i32.store8 offset=16 local.get $7 - global.set $30 + global.set $32 return end ;; $block end ;; $if_1 @@ -46247,7 +47433,7 @@ i32.sub i32.store local.get $7 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt3__212basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPh (type $3) @@ -46341,6 +47527,12 @@ i32.add ) + (func $__ZN6google8protobuf2io17ArrayOutputStreamD0Ev (type $0) + (param $0 i32) + local.get $0 + call $_free + ) + (func $__ZN6google8protobuf2io17ArrayOutputStream4NextEPPvPi (type $2) (param $0 i32) (param $1 i32) @@ -46402,12 +47594,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46422,7 +47614,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $2 i32.const 132 @@ -46434,9 +47626,9 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12308 + i32.const 16403 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12352 + i32.const 16447 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46457,7 +47649,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $2 i32.const 134 @@ -46469,7 +47661,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12407 + i32.const 16502 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46489,14 +47681,14 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 return end ;; $if_1 local.get $3 i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $3 i32.const 135 @@ -46508,7 +47700,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12277 + i32.const 16372 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46523,7 +47715,7 @@ i32.const 0 i32.store offset=20 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io17ArrayOutputStream9ByteCountEv (type $10) @@ -46544,12 +47736,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $5 i32.const 24 i32.add @@ -46564,7 +47756,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $3 i32.const 151 @@ -46576,7 +47768,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12497 + i32.const 16592 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46650,7 +47842,7 @@ i32.const 2 i32.store local.get $5 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $5 i32.const 164 @@ -46662,15 +47854,15 @@ i32.const 0 i32.store offset=20 local.get $5 - i32.const 12574 + i32.const 16669 call $__ZN6google8protobuf8internal10LogMessagelsEPKc - i32.const 12624 + i32.const 16719 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $5 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $5 - global.set $30 + global.set $32 i32.const 0 return end ;; $block_0 @@ -46711,7 +47903,7 @@ i32.sub i32.store local.get $5 - global.set $30 + global.set $32 i32.const 1 ) @@ -46721,12 +47913,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 80 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 48 i32.add @@ -46739,7 +47931,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $2 i32.const 182 @@ -46751,7 +47943,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12277 + i32.const 16372 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46772,7 +47964,7 @@ i32.const 3 i32.store local.get $2 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $2 i32.const 183 @@ -46784,7 +47976,7 @@ i32.const 0 i32.store offset=20 local.get $2 - i32.const 12497 + i32.const 16592 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $2 @@ -46814,7 +48006,7 @@ i32.const 3 i32.store local.get $3 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $3 i32.const 184 @@ -46826,7 +48018,7 @@ i32.const 0 i32.store offset=20 local.get $3 - i32.const 12529 + i32.const 16624 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $3 @@ -46862,7 +48054,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc end ;; $if_3 local.get $3 - global.set $30 + global.set $32 ) (func $__ZNK6google8protobuf2io18StringOutputStream9ByteCountEv (type $10) @@ -46871,12 +48063,12 @@ (local $1 i32) (local $2 i32) (local $3 i64) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 block $block (result i32) local.get $0 i32.load offset=4 @@ -46887,7 +48079,7 @@ i32.const 3 i32.store local.get $1 - i32.const 12228 + i32.const 16323 i32.store offset=4 local.get $1 i32.const 189 @@ -46899,7 +48091,7 @@ i32.const 0 i32.store offset=20 local.get $1 - i32.const 12497 + i32.const 16592 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $1 @@ -46920,11 +48112,11 @@ i64.extend_i32_u local.set $3 local.get $1 - global.set $30 + global.set $32 local.get $3 else local.get $1 - global.set $30 + global.set $32 local.get $0 i32.const 255 i32.and @@ -46939,12 +48131,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 1040 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.load @@ -46954,7 +48146,7 @@ i32.add local.tee $3 i32.const 1024 - i32.const 11812 + i32.const 15907 local.get $2 call $_vsnprintf local.tee $4 @@ -46966,14 +48158,13 @@ i32.le_s if $if_0 local.get $2 - global.set $30 + global.set $32 return end ;; $if_0 local.get $0 local.get $3 local.get $4 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop else local.get $4 i32.const 1 @@ -46987,7 +48178,7 @@ i32.store local.get $3 local.get $5 - i32.const 11812 + i32.const 15907 local.get $2 call $_vsnprintf local.tee $1 @@ -47003,25 +48194,24 @@ local.get $3 local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop end ;; $if_1 local.get $3 call $_free end ;; $if local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf12StringPrintfEPKcz (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $2 local.get $1 i32.store @@ -47035,7 +48225,7 @@ local.get $2 call $__ZN6google8protobuf13StringAppendVEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKcPi local.get $2 - global.set $30 + global.set $32 ) (func $__ZN6google8protobuf8internal15UTF8GenericScanEPKNS1_19UTF8StateMachineObjEPKciPi (type $2) @@ -47064,7 +48254,7 @@ i32.const 241 return end ;; $if - i32.const 6376 + i32.const 7428 i32.load local.set $13 local.get $0 @@ -47074,18 +48264,18 @@ i32.const -7 i32.add local.set $10 - i32.const 6404 + i32.const 7456 i32.load local.set $4 - i32.const 6384 + i32.const 7436 i32.load local.set $11 - i32.const 6388 + i32.const 7440 i32.load local.set $12 - i32.const 6392 + i32.const 7444 i32.load - i32.const 6360 + i32.const 7412 i32.load i32.add local.tee $8 @@ -47298,7 +48488,7 @@ local.get $3 local.get $14 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.ge_u if $if_7 @@ -47330,7 +48520,7 @@ local.get $3 local.get $8 i32.sub - i32.const 6364 + i32.const 7416 i32.load i32.lt_u if $if_9 (result i32) @@ -47378,17 +48568,17 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.eqz if $if local.get $2 - global.set $30 + global.set $32 local.get $1 i32.eqz return @@ -47511,7 +48701,7 @@ br_if $loop end ;; $loop local.get $4 - global.set $30 + global.set $32 local.get $1 local.get $0 local.get $6 @@ -47524,17 +48714,17 @@ (param $1 i32) (param $2 i32) (result i32) - global.get $30 + global.get $32 local.set $0 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 3 i32.store local.get $0 - i32.const 12686 + i32.const 16781 i32.store offset=4 local.get $0 i32.const 47 @@ -47546,13 +48736,13 @@ i32.const 0 i32.store offset=20 local.get $0 - i32.const 12725 + i32.const 16820 call $__ZN6google8protobuf8internal10LogMessagelsEPKc call $__ZN6google8protobuf8internal10LogMessage6FinishEv local.get $0 call $__ZN6google8protobuf8internal10LogMessageD2Ev local.get $0 - global.set $30 + global.set $32 i32.const 0 ) @@ -47560,12 +48750,12 @@ (param $0 i32) (result i32) (local $1 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 local.get $0 i32.load offset=60 @@ -47577,7 +48767,7 @@ i32.const -4096 i32.gt_u if $if - i32.const 15108 + i32.const 24852 i32.const 0 local.get $0 i32.sub @@ -47586,217 +48776,63 @@ local.set $0 end ;; $if local.get $1 - global.set $30 + global.set $32 local.get $0 ) - (func $___stdio_write (type $2) + (func $___stdout_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 48 - i32.add - global.set $30 - local.get $6 + global.get $32 + local.set $3 + global.get $32 i32.const 32 i32.add - local.set $5 - local.get $6 - local.tee $3 - local.get $0 - i32.load offset=28 - local.tee $4 - i32.store - local.get $3 - local.get $0 - i32.load offset=20 - local.get $4 - i32.sub - local.tee $4 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $2 - i32.store offset=12 + global.set $32 local.get $3 i32.const 16 i32.add - local.tee $1 + local.set $4 local.get $0 - i32.load offset=60 - i32.store - local.get $1 - local.get $3 - i32.store offset=4 - local.get $1 - i32.const 2 - i32.store offset=8 - block $block - block $block_0 - local.get $2 - local.get $4 - i32.add - local.tee $8 - block $block_1 (result i32) - i32.const 146 - local.get $1 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if - i32.const 15108 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if - local.get $1 - end ;; $block_1 - i32.eq - br_if $block_0 - i32.const 2 - local.set $7 - loop $loop - local.get $1 - i32.const 0 - i32.ge_s - if $if_0 - local.get $3 - i32.const 8 - i32.add - local.get $3 - local.get $1 - local.get $3 - i32.load offset=4 - local.tee $4 - i32.gt_u - local.tee $9 - select - local.tee $3 - local.get $1 - local.get $4 - i32.const 0 - local.get $9 - select - i32.sub - local.tee $4 - local.get $3 - i32.load - i32.add - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - local.get $4 - i32.sub - i32.store offset=4 - local.get $5 - local.get $0 - i32.load offset=60 - i32.store - local.get $5 - local.get $3 - i32.store offset=4 - local.get $5 - local.get $9 - i32.const 31 - i32.shl - i32.const 31 - i32.shr_s - local.get $7 - i32.add - local.tee $7 - i32.store offset=8 - local.get $8 - local.get $1 - i32.sub - local.tee $8 - block $block_2 (result i32) - i32.const 146 - local.get $5 - call $___syscall146 - local.tee $1 - i32.const -4096 - i32.gt_u - if $if_1 - i32.const 15108 - i32.const 0 - local.get $1 - i32.sub - i32.store - i32.const -1 - local.set $1 - end ;; $if_1 - local.get $1 - end ;; $block_2 - i32.eq - br_if $block_0 - br $loop - end ;; $if_0 - end ;; $loop - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - local.get $0 - i32.load - i32.const 32 - i32.or - i32.store - local.get $7 - i32.const 2 - i32.eq - if $if_2 (result i32) - i32.const 0 - else - local.get $2 - local.get $3 - i32.load offset=4 - i32.sub - end ;; $if_2 - local.set $2 - br $block - end ;; $block_0 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - local.get $0 - local.get $1 - i32.store offset=28 + i32.const 9 + i32.store offset=36 + local.get $0 + i32.load + i32.const 64 + i32.and + i32.eqz + if $if + local.get $3 local.get $0 - local.get $1 - i32.store offset=20 - end ;; $block - local.get $6 - global.set $30 + i32.load offset=60 + i32.store + local.get $3 + i32.const 21523 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store offset=8 + i32.const 54 + local.get $3 + call $___syscall54 + if $if_0 + local.get $0 + i32.const -1 + i32.store8 offset=75 + end ;; $if_0 + end ;; $if + local.get $0 + local.get $1 local.get $2 + call $___stdio_write + local.set $0 + local.get $3 + global.set $32 + local.get $0 ) (func $___stdio_seek (type $12) @@ -47806,12 +48842,12 @@ (result i64) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 32 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 8 i32.add @@ -47840,7 +48876,7 @@ i32.const -4096 i32.gt_u if $if (result i32) - i32.const 15108 + i32.const 24852 i32.const 0 local.get $0 i32.sub @@ -47862,68 +48898,303 @@ end ;; $if_0 local.set $1 local.get $3 - global.set $30 + global.set $32 local.get $1 ) (func $___errno_location (type $14) (result i32) - i32.const 15108 + i32.const 24852 ) - (func $___stdout_write (type $2) + (func $___stdio_write (type $2) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $6 i32.const 32 i32.add - global.set $30 + local.set $5 + local.get $6 + local.tee $3 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.store + local.get $3 + local.get $0 + i32.load offset=20 + local.get $4 + i32.sub + local.tee $4 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $2 + i32.store offset=12 local.get $3 i32.const 16 i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.store offset=36 + local.tee $1 local.get $0 - i32.load - i32.const 64 - i32.and - i32.eqz - if $if - local.get $3 + i32.load offset=60 + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + i32.const 2 + i32.store offset=8 + block $block + block $block_0 + local.get $2 + local.get $4 + i32.add + local.tee $8 + block $block_1 (result i32) + i32.const 146 + local.get $1 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if + i32.const 24852 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if + local.get $1 + end ;; $block_1 + i32.eq + br_if $block_0 + i32.const 2 + local.set $7 + loop $loop + local.get $1 + i32.const 0 + i32.ge_s + if $if_0 + local.get $3 + i32.const 8 + i32.add + local.get $3 + local.get $1 + local.get $3 + i32.load offset=4 + local.tee $4 + i32.gt_u + local.tee $9 + select + local.tee $3 + local.get $1 + local.get $4 + i32.const 0 + local.get $9 + select + i32.sub + local.tee $4 + local.get $3 + i32.load + i32.add + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + local.get $4 + i32.sub + i32.store offset=4 + local.get $5 + local.get $0 + i32.load offset=60 + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $5 + local.get $9 + i32.const 31 + i32.shl + i32.const 31 + i32.shr_s + local.get $7 + i32.add + local.tee $7 + i32.store offset=8 + local.get $8 + local.get $1 + i32.sub + local.tee $8 + block $block_2 (result i32) + i32.const 146 + local.get $5 + call $___syscall146 + local.tee $1 + i32.const -4096 + i32.gt_u + if $if_1 + i32.const 24852 + i32.const 0 + local.get $1 + i32.sub + i32.store + i32.const -1 + local.set $1 + end ;; $if_1 + local.get $1 + end ;; $block_2 + i32.eq + br_if $block_0 + br $loop + end ;; $if_0 + end ;; $loop + local.get $0 + i32.const 0 + i32.store offset=16 + local.get $0 + i32.const 0 + i32.store offset=28 + local.get $0 + i32.const 0 + i32.store offset=20 + local.get $0 + local.get $0 + i32.load + i32.const 32 + i32.or + i32.store + local.get $7 + i32.const 2 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $2 + local.get $3 + i32.load offset=4 + i32.sub + end ;; $if_2 + local.set $2 + br $block + end ;; $block_0 local.get $0 - i32.load offset=60 - i32.store - local.get $3 - i32.const 21523 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store offset=8 - i32.const 54 - local.get $3 - call $___syscall54 - if $if_0 + local.get $0 + i32.load offset=44 + local.tee $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + end ;; $block + local.get $6 + global.set $32 + local.get $2 + ) + + (func $_strlen (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 local.get $0 - i32.const -1 - i32.store8 offset=75 - end ;; $if_0 - end ;; $if + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block local.get $0 - local.get $1 local.get $2 - call $___stdio_write - local.set $0 - local.get $3 - global.set $30 - local.get $0 + i32.sub ) (func $_memcmp (type $2) @@ -47977,6 +49248,133 @@ end ;; $if ) + (func $_frexp (type $21) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_memchr (type $3) (param $0 i32) (param $1 i32) @@ -48099,6 +49497,33 @@ local.get $0 ) + (func $_snprintf (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + (func $_vsnprintf (type $16) (param $0 i32) (param $1 i32) @@ -48107,18 +49532,18 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $4 - global.get $30 + global.get $32 i32.const 160 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 144 i32.add local.set $5 local.get $4 - i32.const 5104 + i32.const 5080 i32.const 144 call $_memcpy drop @@ -48132,7 +49557,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 15108 + i32.const 24852 i32.const 75 i32.store i32.const -1 @@ -48197,7 +49622,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $30 + global.set $32 local.get $0 ) @@ -48243,12 +49668,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $30 + global.get $32 local.set $21 - global.get $30 + global.get $32 i32.const 560 i32.add - global.set $30 + global.set $32 local.get $21 i32.const 32 i32.add @@ -48280,13 +49705,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 12909 + i32.const 17004 local.set $18 i32.const 1 else - i32.const 12912 - i32.const 12915 - i32.const 12910 + i32.const 17007 + i32.const 17010 + i32.const 17005 local.get $4 i32.const 1 i32.and @@ -48309,8 +49734,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 12936 - i32.const 12940 + i32.const 17031 + i32.const 17035 local.get $5 i32.const 32 i32.and @@ -48318,8 +49743,8 @@ i32.ne local.tee $3 select - i32.const 12928 - i32.const 12932 + i32.const 17023 + i32.const 17027 local.get $3 select local.get $1 @@ -48337,15 +49762,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48353,7 +49778,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -48611,11 +50036,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -48623,14 +50048,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -48643,11 +50068,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -48655,7 +50080,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -49562,11 +50987,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -49574,7 +50999,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -49643,7 +51068,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -49667,9 +51092,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 12944 + i32.const 19803 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -49716,7 +51141,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -49746,7 +51171,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -49814,7 +51239,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -49826,9 +51251,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 12944 + i32.const 19803 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -49865,7 +51290,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -49889,13 +51314,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -49904,13 +51329,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $30 + global.set $32 local.get $2 local.get $0 local.get $0 @@ -49953,12 +51378,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 224 i32.add - global.set $30 + global.set $32 local.get $3 i32.const 160 i32.add @@ -50069,9 +51494,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $1 i32.const -1 @@ -50114,7 +51539,7 @@ end ;; $if local.set $0 local.get $3 - global.set $30 + global.set $32 local.get $0 ) @@ -50146,12 +51571,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $30 + global.get $32 local.set $15 - global.get $30 + global.get $32 i32.const -64 i32.sub - global.set $30 + global.set $32 local.get $15 i32.const 40 i32.add @@ -50200,7 +51625,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 15108 + i32.const 24852 i32.const 75 i32.store i32.const -1 @@ -50290,7 +51715,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -50503,7 +51928,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -50539,7 +51964,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -50729,7 +52154,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -50916,7 +52341,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16987 local.set $8 br $block_14 end ;; $block_25 @@ -50932,13 +52357,13 @@ i64.sub local.tee $25 i64.store - i32.const 12892 + i32.const 16987 local.set $8 i32.const 1 else - i32.const 12893 - i32.const 12894 - i32.const 12892 + i32.const 16988 + i32.const 16989 + i32.const 16987 local.get $7 i32.const 1 i32.and @@ -50962,7 +52387,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16987 local.set $8 br $block_16 end ;; $block_23 @@ -50978,7 +52403,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16987 local.set $8 local.get $18 local.set $1 @@ -50987,7 +52412,7 @@ local.get $10 i32.load local.tee $5 - i32.const 12902 + i32.const 16997 local.get $5 select local.tee $6 @@ -51007,7 +52432,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16987 local.set $8 local.get $1 local.get $6 @@ -51043,7 +52468,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -51058,7 +52483,7 @@ local.get $7 local.get $6 i32.const 65 - call_indirect $26 (type $11) + call_indirect $28 (type $11) local.set $1 br $block_9 end ;; $block_18 @@ -51068,7 +52493,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 12892 + i32.const 16987 local.set $8 local.get $18 local.set $1 @@ -51096,11 +52521,11 @@ local.tee $8 select local.set $12 - i32.const 12892 + i32.const 16987 local.get $6 i32.const 4 i32.shr_u - i32.const 12892 + i32.const 16987 i32.add local.get $8 select @@ -51166,7 +52591,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -51197,7 +52622,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -51260,7 +52685,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -51293,11 +52718,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -51305,17 +52730,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -51323,7 +52748,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -51355,7 +52780,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -51396,11 +52821,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $30 + global.set $32 local.get $9 ) - (func $_out_279 (type $6) + (func $_out (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51417,7 +52842,7 @@ end ;; $if ) - (func $_getint_280 (type $1) + (func $_getint (type $1) (param $0 i32) (result i32) (local $1 i32) @@ -51459,7 +52884,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $6) + (func $_pop_arg (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -51683,13 +53108,13 @@ end ;; $block_0 local.get $0 local.get $2 - i32.const 199 - call_indirect $26 (type $4) + i32.const 396 + call_indirect $28 (type $4) end ;; $block end ;; $if ) - (func $_fmt_x (type $21) + (func $_fmt_x (type $22) (param $0 i64) (param $1 i32) (param $2 i32) @@ -51725,7 +53150,7 @@ local.get $1 ) - (func $_fmt_o (type $22) + (func $_fmt_o (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -51757,7 +53182,7 @@ local.get $1 ) - (func $_fmt_u (type $22) + (func $_fmt_u (type $23) (param $0 i64) (param $1 i32) (result i32) @@ -51830,19 +53255,19 @@ local.get $1 ) - (func $_pad_285 (type $7) + (func $_pad_524 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $30 + global.get $32 local.set $5 - global.get $30 + global.get $32 i32.const 256 i32.add - global.set $30 + global.set $32 local.get $4 i32.const 73728 i32.and @@ -51881,7 +53306,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -51898,10 +53323,10 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $30 + global.set $32 ) (func $_wctomb (type $3) @@ -51935,7 +53360,7 @@ i32.const 1 br $block end ;; $if_0 - i32.const 6604 + i32.const 7656 i32.load i32.load i32.eqz @@ -51952,7 +53377,7 @@ i32.const 1 br $block else - i32.const 15108 + i32.const 24852 i32.const 84 i32.store i32.const -1 @@ -52057,7 +53482,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 15108 + i32.const 24852 i32.const 84 i32.store i32.const -1 @@ -52107,9 +53532,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop br $block end ;; $if_0 @@ -52154,9 +53579,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.get $3 i32.lt_u br_if $block @@ -52237,76 +53662,6 @@ end ;; $if ) - (func $_frexp (type $23) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $2) (param $0 i32) (param $1 i32) @@ -52341,176 +53696,26 @@ local.get $2 ) - (func $_strlen (type $1) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $16) + (func $_fprintf (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (result i32) - (local $4 i32) - global.get $30 - local.set $4 - global.get $30 + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $4 - local.get $3 + global.set $32 + local.get $2 + local.get $1 i32.store local.get $0 - local.get $1 + i32.const 15036 local.get $2 - local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $30 - local.get $0 - ) - - (func $_fputc (type $0) - (param $0 i32) - (local $1 i32) - block $block - local.get $0 - i32.load offset=76 - i32.const 0 - i32.ge_s - if $if - block $block_0 - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.eq - br_if $block_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.ge_u - br_if $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $block_0 - local.get $0 - call $___overflow - br $block - end ;; $if - local.get $0 - i32.load8_s offset=75 - i32.const 10 - i32.ne - if $if_0 - local.get $0 - i32.load offset=20 - local.tee $1 - local.get $0 - i32.load offset=16 - i32.lt_u - if $if_1 - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=20 - local.get $1 - i32.const 10 - i32.store8 - br $block - end ;; $if_1 - end ;; $if_0 - local.get $0 - call $___overflow - end ;; $block + call $_vfprintf + drop + local.get $2 + global.set $32 ) (func $___overflow (type $0) @@ -52518,12 +53723,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 local.set $1 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $1 i32.const 10 i32.store8 @@ -52573,9 +53778,9 @@ i32.load offset=36 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) i32.const 1 i32.eq if $if_2 (result i32) @@ -52587,29 +53792,7 @@ drop end ;; $block local.get $1 - global.set $30 - ) - - (func $_fprintf (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - local.get $1 - i32.store - local.get $0 - i32.const 10944 - local.get $2 - call $_vfprintf - drop - local.get $2 - global.set $30 + global.set $32 ) (func $_fflush (type $1) @@ -52633,10 +53816,10 @@ end ;; $block local.set $0 else - i32.const 6412 + i32.const 7460 i32.load if $if_1 (result i32) - i32.const 6412 + i32.const 7460 i32.load call $_fflush else @@ -52644,9 +53827,9 @@ end ;; $if_1 local.set $0 block $block_0 (result i32) - i32.const 15112 + i32.const 24856 call $___lock - i32.const 15120 + i32.const 24864 i32.load local.tee $1 end ;; $block_0 @@ -52680,7 +53863,7 @@ br_if $loop end ;; $loop end ;; $if_2 - i32.const 15112 + i32.const 24856 call $___unlock end ;; $if local.get $0 @@ -52709,9 +53892,9 @@ local.get $1 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) drop local.get $0 i32.load offset=20 @@ -52739,9 +53922,9 @@ local.get $3 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) drop end ;; $if local.get $0 @@ -52763,6 +53946,70 @@ end ;; $block ) + (func $_fputc (type $0) + (param $0 i32) + (local $1 i32) + block $block + local.get $0 + i32.load offset=76 + i32.const 0 + i32.ge_s + if $if + block $block_0 + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.eq + br_if $block_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.ge_u + br_if $block_0 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $block_0 + local.get $0 + call $___overflow + br $block + end ;; $if + local.get $0 + i32.load8_s offset=75 + i32.const 10 + i32.ne + if $if_0 + local.get $0 + i32.load offset=20 + local.tee $1 + local.get $0 + i32.load offset=16 + i32.lt_u + if $if_1 + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=20 + local.get $1 + i32.const 10 + i32.store8 + br $block + end ;; $if_1 + end ;; $if_0 + local.get $0 + call $___overflow + end ;; $block + ) + (func $_malloc (type $1) (param $0 i32) (result i32) @@ -52788,17 +54035,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $30 + global.get $32 local.set $17 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 15124 + i32.const 24868 i32.load local.tee $6 i32.const 16 @@ -52830,7 +54077,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.tee $3 i32.load offset=8 @@ -52843,7 +54090,7 @@ local.get $3 i32.eq if $if_1 - i32.const 15124 + i32.const 24868 local.get $6 i32.const 1 local.get $0 @@ -52853,7 +54100,7 @@ i32.and i32.store else - i32.const 15140 + i32.const 24884 i32.load local.get $4 i32.gt_u @@ -52893,12 +54140,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $30 + global.set $32 local.get $1 return end ;; $if_0 local.get $14 - i32.const 15132 + i32.const 24876 i32.load local.tee $13 i32.gt_u @@ -52977,7 +54224,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.tee $1 i32.load offset=8 @@ -52990,7 +54237,7 @@ local.get $1 i32.eq if $if_6 - i32.const 15124 + i32.const 24868 local.get $6 i32.const 1 local.get $0 @@ -53001,7 +54248,7 @@ local.tee $8 i32.store else - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.gt_u @@ -53051,7 +54298,7 @@ i32.store local.get $13 if $if_9 - i32.const 15144 + i32.const 24888 i32.load local.set $10 local.get $13 @@ -53060,7 +54307,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $2 local.get $8 @@ -53070,7 +54317,7 @@ local.tee $0 i32.and if $if_10 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.const 8 @@ -53088,7 +54335,7 @@ local.set $4 end ;; $if_11 else - i32.const 15124 + i32.const 24868 local.get $0 local.get $8 i32.or @@ -53113,18 +54360,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 15132 + i32.const 24876 local.get $6 i32.store - i32.const 15144 + i32.const 24888 local.get $3 i32.store local.get $17 - global.set $30 + global.set $32 local.get $9 return end ;; $if_5 - i32.const 15128 + i32.const 24872 i32.load local.tee $11 if $if_12 (result i32) @@ -53187,7 +54434,7 @@ i32.add i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add i32.load local.tee $0 @@ -53237,7 +54484,7 @@ br $loop end ;; $block end ;; $loop - i32.const 15140 + i32.const 24884 i32.load local.tee $7 local.get $9 @@ -53361,7 +54608,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.tee $0 i32.load @@ -53374,7 +54621,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 15128 + i32.const 24872 local.get $11 i32.const 1 local.get $1 @@ -53386,7 +54633,7 @@ br $block_2 end ;; $if_25 else - i32.const 15140 + i32.const 24884 i32.load local.get $18 i32.gt_u @@ -53411,7 +54658,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $3 @@ -53444,7 +54691,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 15140 + i32.const 24884 i32.load local.get $0 i32.gt_u @@ -53500,7 +54747,7 @@ i32.store local.get $13 if $if_33 - i32.const 15144 + i32.const 24888 i32.load local.set $4 local.get $13 @@ -53509,7 +54756,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $3 local.get $6 @@ -53519,7 +54766,7 @@ local.tee $0 i32.and if $if_34 - i32.const 15140 + i32.const 24884 i32.load local.get $3 i32.const 8 @@ -53537,7 +54784,7 @@ local.set $12 end ;; $if_35 else - i32.const 15124 + i32.const 24868 local.get $0 local.get $6 i32.or @@ -53562,15 +54809,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 15132 + i32.const 24876 local.get $10 i32.store - i32.const 15144 + i32.const 24888 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $30 + global.set $32 local.get $9 i32.const 8 i32.add @@ -53596,7 +54843,7 @@ i32.const -8 i32.and local.set $15 - i32.const 15128 + i32.const 24872 i32.load local.tee $4 if $if_37 (result i32) @@ -53676,7 +54923,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add i32.load local.tee $0 @@ -53841,7 +55088,7 @@ i32.add i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add i32.load local.set $0 @@ -53904,13 +55151,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 15132 + i32.const 24876 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 15140 + i32.const 24884 i32.load local.tee $12 local.get $2 @@ -54034,7 +55281,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.tee $0 i32.load @@ -54047,7 +55294,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 15128 + i32.const 24872 local.get $4 i32.const 1 local.get $3 @@ -54060,7 +55307,7 @@ br $block_9 end ;; $if_60 else - i32.const 15140 + i32.const 24884 i32.load local.get $8 i32.gt_u @@ -54089,7 +55336,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $13 @@ -54122,7 +55369,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 15140 + i32.const 24884 i32.load local.get $0 i32.gt_u @@ -54196,10 +55443,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $3 - i32.const 15124 + i32.const 24868 i32.load local.tee $1 i32.const 1 @@ -54208,7 +55455,7 @@ local.tee $0 i32.and if $if_70 - i32.const 15140 + i32.const 24884 i32.load local.get $3 i32.const 8 @@ -54226,7 +55473,7 @@ local.set $11 end ;; $if_71 else - i32.const 15124 + i32.const 24868 local.get $0 local.get $1 i32.or @@ -54322,7 +55569,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.set $3 local.get $5 @@ -54342,7 +55589,7 @@ i32.and i32.eqz if $if_74 - i32.const 15128 + i32.const 24872 local.get $0 local.get $1 i32.or @@ -54423,7 +55670,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 15140 + i32.const 24884 i32.load local.get $4 i32.gt_u @@ -54446,7 +55693,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $6 @@ -54479,7 +55726,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $30 + global.set $32 local.get $2 i32.const 8 i32.add @@ -54499,13 +55746,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 15132 + i32.const 24876 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 15144 + i32.const 24888 i32.load local.set $0 local.get $3 @@ -54515,13 +55762,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 15144 + i32.const 24888 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 15132 + i32.const 24876 local.get $2 i32.store local.get $1 @@ -54540,10 +55787,10 @@ i32.or i32.store offset=4 else - i32.const 15132 + i32.const 24876 i32.const 0 i32.store - i32.const 15144 + i32.const 24888 i32.const 0 i32.store local.get $0 @@ -54564,13 +55811,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 15136 + i32.const 24880 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 15136 + i32.const 24880 local.get $12 local.get $11 i32.sub @@ -54578,31 +55825,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 15596 + i32.const 25340 i32.load if $if_83 (result i32) - i32.const 15604 + i32.const 25348 i32.load else - i32.const 15604 + i32.const 25348 i32.const 4096 i32.store - i32.const 15600 + i32.const 25344 i32.const 4096 i32.store - i32.const 15608 + i32.const 25352 i32.const -1 i32.store - i32.const 15612 + i32.const 25356 i32.const -1 i32.store - i32.const 15616 + i32.const 25360 i32.const 0 i32.store - i32.const 15568 + i32.const 25312 i32.const 0 i32.store - i32.const 15596 + i32.const 25340 local.get $17 i32.const -16 i32.and @@ -54629,11 +55876,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 15564 + i32.const 25308 i32.load local.tee $2 if $if_85 - i32.const 15556 + i32.const 25300 i32.load local.tee $1 local.get $8 @@ -54655,7 +55902,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 15568 + i32.const 25312 i32.load i32.const 4 i32.and @@ -54666,12 +55913,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 15148 + i32.const 24892 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 15572 + i32.const 25316 local.set $2 loop $loop_5 block $block_20 @@ -54734,11 +55981,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 15556 + i32.const 25300 i32.load local.tee $4 local.get $0 - i32.const 15600 + i32.const 25344 i32.load local.tee $2 i32.const -1 @@ -54769,7 +56016,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 15564 + i32.const 25308 i32.load local.tee $1 if $if_92 @@ -54827,7 +56074,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 15604 + i32.const 25348 i32.load local.tee $1 local.get $6 @@ -54864,8 +56111,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 15568 - i32.const 15568 + i32.const 25312 + i32.const 25312 i32.load i32.const 4 i32.or @@ -54920,28 +56167,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 15556 - i32.const 15556 + i32.const 25300 + i32.const 25300 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 15560 + i32.const 25304 i32.load i32.gt_u if $if_98 - i32.const 15560 + i32.const 25304 local.get $1 i32.store end ;; $if_98 - i32.const 15148 + i32.const 24892 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 15572 + i32.const 25316 local.set $2 block $block_22 block $block_23 @@ -54999,7 +56246,7 @@ local.tee $1 i32.add local.set $2 - i32.const 15136 + i32.const 24880 i32.load local.get $3 i32.add @@ -55007,10 +56254,10 @@ local.get $1 i32.sub local.set $1 - i32.const 15148 + i32.const 24892 local.get $2 i32.store - i32.const 15136 + i32.const 24880 local.get $1 i32.store local.get $2 @@ -55023,8 +56270,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24896 + i32.const 25356 i32.load i32.store br $block_21 @@ -55032,12 +56279,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 15140 + i32.const 24884 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 15140 + i32.const 24884 local.get $0 i32.store local.get $0 @@ -55047,7 +56294,7 @@ local.get $3 i32.add local.set $1 - i32.const 15572 + i32.const 25316 local.set $8 block $block_24 block $block_25 @@ -55128,14 +56375,14 @@ local.get $6 i32.eq if $if_104 - i32.const 15136 - i32.const 15136 + i32.const 24880 + i32.const 24880 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15148 + i32.const 24892 local.get $5 i32.store local.get $5 @@ -55145,19 +56392,19 @@ i32.store offset=4 else block $block_26 - i32.const 15144 + i32.const 24888 i32.load local.get $3 i32.eq if $if_105 - i32.const 15132 - i32.const 15132 + i32.const 24876 + i32.const 24876 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 15144 + i32.const 24888 local.get $5 i32.store local.get $5 @@ -55202,7 +56449,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.tee $0 i32.ne @@ -55226,8 +56473,8 @@ local.get $6 i32.eq if $if_110 - i32.const 15124 - i32.const 15124 + i32.const 24868 + i32.const 24868 i32.load i32.const 1 local.get $1 @@ -55385,7 +56632,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.tee $0 i32.load @@ -55398,8 +56645,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 15128 - i32.const 15128 + i32.const 24872 + i32.const 24872 i32.load i32.const 1 local.get $1 @@ -55411,7 +56658,7 @@ br $block_27 end ;; $block_32 else - i32.const 15140 + i32.const 24884 i32.load local.get $8 i32.gt_u @@ -55436,7 +56683,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $16 @@ -55470,7 +56717,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 15140 + i32.const 24884 i32.load local.get $0 i32.gt_u @@ -55522,10 +56769,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $2 - i32.const 15124 + i32.const 24868 i32.load local.tee $1 i32.const 1 @@ -55535,7 +56782,7 @@ i32.and if $if_128 block $block_33 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.const 8 @@ -55554,7 +56801,7 @@ call $_abort end ;; $block_33 else - i32.const 15124 + i32.const 24868 local.get $0 local.get $1 i32.or @@ -55650,7 +56897,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.set $2 local.get $5 @@ -55662,7 +56909,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24872 i32.load local.tee $1 i32.const 1 @@ -55672,7 +56919,7 @@ i32.and i32.eqz if $if_132 - i32.const 15128 + i32.const 24872 local.get $0 local.get $1 i32.or @@ -55753,7 +57000,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.gt_u @@ -55776,7 +57023,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $9 @@ -55809,14 +57056,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $30 + global.set $32 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 15572 + i32.const 25316 local.set $2 loop $loop_10 block $block_35 @@ -55841,7 +57088,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 15148 + i32.const 24892 i32.const 0 local.get $0 i32.const 8 @@ -55860,7 +57107,7 @@ i32.add local.tee $4 i32.store - i32.const 15136 + i32.const 24880 local.get $3 i32.const -40 i32.add @@ -55879,8 +57126,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24896 + i32.const 25356 i32.load i32.store local.get $6 @@ -55913,23 +57160,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 15572 + i32.const 25316 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 15580 + i32.const 25324 i64.load align=4 i64.store offset=16 align=4 - i32.const 15572 + i32.const 25316 local.get $0 i32.store - i32.const 15576 + i32.const 25320 local.get $3 i32.store - i32.const 15584 + i32.const 25328 i32.const 0 i32.store - i32.const 15580 + i32.const 25324 local.get $2 i32.const 8 i32.add @@ -55988,10 +57235,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $2 - i32.const 15124 + i32.const 24868 i32.load local.tee $1 i32.const 1 @@ -56000,7 +57247,7 @@ local.tee $0 i32.and if $if_142 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.const 8 @@ -56018,7 +57265,7 @@ local.set $5 end ;; $if_143 else - i32.const 15124 + i32.const 24868 local.get $0 local.get $1 i32.or @@ -56114,7 +57361,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.set $2 local.get $6 @@ -56126,7 +57373,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24872 i32.load local.tee $1 i32.const 1 @@ -56136,7 +57383,7 @@ i32.and i32.eqz if $if_146 - i32.const 15128 + i32.const 24872 local.get $0 local.get $1 i32.or @@ -56217,7 +57464,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 15140 + i32.const 24884 i32.load local.get $3 i32.gt_u @@ -56240,7 +57487,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $10 @@ -56273,7 +57520,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 15140 + i32.const 24884 i32.load local.tee $1 i32.eqz @@ -56282,219 +57529,219 @@ i32.lt_u i32.or if $if_152 - i32.const 15140 + i32.const 24884 local.get $0 i32.store end ;; $if_152 - i32.const 15572 + i32.const 25316 local.get $0 i32.store - i32.const 15576 + i32.const 25320 local.get $3 i32.store - i32.const 15584 + i32.const 25328 i32.const 0 i32.store - i32.const 15160 - i32.const 15596 + i32.const 24904 + i32.const 25340 i32.load i32.store - i32.const 15156 + i32.const 24900 i32.const -1 i32.store - i32.const 15176 - i32.const 15164 + i32.const 24920 + i32.const 24908 i32.store - i32.const 15172 - i32.const 15164 + i32.const 24916 + i32.const 24908 i32.store - i32.const 15184 - i32.const 15172 + i32.const 24928 + i32.const 24916 i32.store - i32.const 15180 - i32.const 15172 + i32.const 24924 + i32.const 24916 i32.store - i32.const 15192 - i32.const 15180 + i32.const 24936 + i32.const 24924 i32.store - i32.const 15188 - i32.const 15180 + i32.const 24932 + i32.const 24924 i32.store - i32.const 15200 - i32.const 15188 + i32.const 24944 + i32.const 24932 i32.store - i32.const 15196 - i32.const 15188 + i32.const 24940 + i32.const 24932 i32.store - i32.const 15208 - i32.const 15196 + i32.const 24952 + i32.const 24940 i32.store - i32.const 15204 - i32.const 15196 + i32.const 24948 + i32.const 24940 i32.store - i32.const 15216 - i32.const 15204 + i32.const 24960 + i32.const 24948 i32.store - i32.const 15212 - i32.const 15204 + i32.const 24956 + i32.const 24948 i32.store - i32.const 15224 - i32.const 15212 + i32.const 24968 + i32.const 24956 i32.store - i32.const 15220 - i32.const 15212 + i32.const 24964 + i32.const 24956 i32.store - i32.const 15232 - i32.const 15220 + i32.const 24976 + i32.const 24964 i32.store - i32.const 15228 - i32.const 15220 + i32.const 24972 + i32.const 24964 i32.store - i32.const 15240 - i32.const 15228 + i32.const 24984 + i32.const 24972 i32.store - i32.const 15236 - i32.const 15228 + i32.const 24980 + i32.const 24972 i32.store - i32.const 15248 - i32.const 15236 + i32.const 24992 + i32.const 24980 i32.store - i32.const 15244 - i32.const 15236 + i32.const 24988 + i32.const 24980 i32.store - i32.const 15256 - i32.const 15244 + i32.const 25000 + i32.const 24988 i32.store - i32.const 15252 - i32.const 15244 + i32.const 24996 + i32.const 24988 i32.store - i32.const 15264 - i32.const 15252 + i32.const 25008 + i32.const 24996 i32.store - i32.const 15260 - i32.const 15252 + i32.const 25004 + i32.const 24996 i32.store - i32.const 15272 - i32.const 15260 + i32.const 25016 + i32.const 25004 i32.store - i32.const 15268 - i32.const 15260 + i32.const 25012 + i32.const 25004 i32.store - i32.const 15280 - i32.const 15268 + i32.const 25024 + i32.const 25012 i32.store - i32.const 15276 - i32.const 15268 + i32.const 25020 + i32.const 25012 i32.store - i32.const 15288 - i32.const 15276 + i32.const 25032 + i32.const 25020 i32.store - i32.const 15284 - i32.const 15276 + i32.const 25028 + i32.const 25020 i32.store - i32.const 15296 - i32.const 15284 + i32.const 25040 + i32.const 25028 i32.store - i32.const 15292 - i32.const 15284 + i32.const 25036 + i32.const 25028 i32.store - i32.const 15304 - i32.const 15292 + i32.const 25048 + i32.const 25036 i32.store - i32.const 15300 - i32.const 15292 + i32.const 25044 + i32.const 25036 i32.store - i32.const 15312 - i32.const 15300 + i32.const 25056 + i32.const 25044 i32.store - i32.const 15308 - i32.const 15300 + i32.const 25052 + i32.const 25044 i32.store - i32.const 15320 - i32.const 15308 + i32.const 25064 + i32.const 25052 i32.store - i32.const 15316 - i32.const 15308 + i32.const 25060 + i32.const 25052 i32.store - i32.const 15328 - i32.const 15316 + i32.const 25072 + i32.const 25060 i32.store - i32.const 15324 - i32.const 15316 + i32.const 25068 + i32.const 25060 i32.store - i32.const 15336 - i32.const 15324 + i32.const 25080 + i32.const 25068 i32.store - i32.const 15332 - i32.const 15324 + i32.const 25076 + i32.const 25068 i32.store - i32.const 15344 - i32.const 15332 + i32.const 25088 + i32.const 25076 i32.store - i32.const 15340 - i32.const 15332 + i32.const 25084 + i32.const 25076 i32.store - i32.const 15352 - i32.const 15340 + i32.const 25096 + i32.const 25084 i32.store - i32.const 15348 - i32.const 15340 + i32.const 25092 + i32.const 25084 i32.store - i32.const 15360 - i32.const 15348 + i32.const 25104 + i32.const 25092 i32.store - i32.const 15356 - i32.const 15348 + i32.const 25100 + i32.const 25092 i32.store - i32.const 15368 - i32.const 15356 + i32.const 25112 + i32.const 25100 i32.store - i32.const 15364 - i32.const 15356 + i32.const 25108 + i32.const 25100 i32.store - i32.const 15376 - i32.const 15364 + i32.const 25120 + i32.const 25108 i32.store - i32.const 15372 - i32.const 15364 + i32.const 25116 + i32.const 25108 i32.store - i32.const 15384 - i32.const 15372 + i32.const 25128 + i32.const 25116 i32.store - i32.const 15380 - i32.const 15372 + i32.const 25124 + i32.const 25116 i32.store - i32.const 15392 - i32.const 15380 + i32.const 25136 + i32.const 25124 i32.store - i32.const 15388 - i32.const 15380 + i32.const 25132 + i32.const 25124 i32.store - i32.const 15400 - i32.const 15388 + i32.const 25144 + i32.const 25132 i32.store - i32.const 15396 - i32.const 15388 + i32.const 25140 + i32.const 25132 i32.store - i32.const 15408 - i32.const 15396 + i32.const 25152 + i32.const 25140 i32.store - i32.const 15404 - i32.const 15396 + i32.const 25148 + i32.const 25140 i32.store - i32.const 15416 - i32.const 15404 + i32.const 25160 + i32.const 25148 i32.store - i32.const 15412 - i32.const 15404 + i32.const 25156 + i32.const 25148 i32.store - i32.const 15424 - i32.const 15412 + i32.const 25168 + i32.const 25156 i32.store - i32.const 15420 - i32.const 15412 + i32.const 25164 + i32.const 25156 i32.store - i32.const 15148 + i32.const 24892 i32.const 0 local.get $0 i32.const 8 @@ -56513,7 +57760,7 @@ i32.add local.tee $4 i32.store - i32.const 15136 + i32.const 24880 local.get $3 i32.const -40 i32.add @@ -56532,18 +57779,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 15152 - i32.const 15612 + i32.const 24896 + i32.const 25356 i32.load i32.store end ;; $if_99 - i32.const 15136 + i32.const 24880 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 15136 + i32.const 24880 local.get $0 local.get $11 i32.sub @@ -56552,13 +57799,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 15108 + i32.const 24852 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 15148 - i32.const 15148 + i32.const 24892 + i32.const 24892 i32.load local.tee $0 local.get $11 @@ -56577,14 +57824,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $30 + global.set $32 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $30 + global.set $32 i32.const 0 ) @@ -56616,7 +57863,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 15140 + i32.const 24884 i32.load local.tee $11 i32.lt_u @@ -56675,7 +57922,7 @@ local.get $10 i32.add local.set $5 - i32.const 15144 + i32.const 24888 i32.load local.get $0 i32.eq @@ -56695,7 +57942,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 15132 + i32.const 24876 local.get $5 i32.store local.get $7 @@ -56732,7 +57979,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.tee $4 i32.ne @@ -56755,8 +58002,8 @@ local.get $3 i32.eq if $if_11 - i32.const 15124 - i32.const 15124 + i32.const 24868 + i32.const 24868 i32.load i32.const 1 local.get $2 @@ -56922,7 +58169,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.tee $6 i32.load @@ -56935,8 +58182,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 15128 - i32.const 15128 + i32.const 24872 + i32.const 24872 i32.load i32.const 1 local.get $2 @@ -56953,7 +58200,7 @@ br $block end ;; $if_24 else - i32.const 15140 + i32.const 24884 i32.load local.get $13 i32.gt_u @@ -56986,7 +58233,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 15140 + i32.const 24884 i32.load local.tee $6 local.get $8 @@ -57019,7 +58266,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.gt_u @@ -57089,19 +58336,19 @@ local.get $1 i32.store else - i32.const 15148 + i32.const 24892 i32.load local.get $7 i32.eq if $if_35 - i32.const 15136 - i32.const 15136 + i32.const 24880 + i32.const 24880 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15148 + i32.const 24892 local.get $3 i32.store local.get $3 @@ -57110,33 +58357,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 15144 + i32.const 24888 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 15144 + i32.const 24888 i32.const 0 i32.store - i32.const 15132 + i32.const 24876 i32.const 0 i32.store return end ;; $if_35 - i32.const 15144 + i32.const 24888 i32.load local.get $7 i32.eq if $if_37 - i32.const 15132 - i32.const 15132 + i32.const 24876 + i32.const 24876 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 15144 + i32.const 24888 local.get $4 i32.store local.get $3 @@ -57175,12 +58422,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.tee $0 i32.ne if $if_39 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.gt_u @@ -57199,8 +58446,8 @@ local.get $2 i32.eq if $if_42 - i32.const 15124 - i32.const 15124 + i32.const 24868 + i32.const 24868 i32.load i32.const 1 local.get $6 @@ -57220,7 +58467,7 @@ i32.add local.set $16 else - i32.const 15140 + i32.const 24884 i32.load local.get $1 i32.gt_u @@ -57303,7 +58550,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 15140 + i32.const 24884 i32.load local.get $1 i32.gt_u @@ -57318,7 +58565,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 15140 + i32.const 24884 i32.load local.get $7 i32.load offset=8 @@ -57358,7 +58605,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.tee $1 i32.load @@ -57371,8 +58618,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 15128 - i32.const 15128 + i32.const 24872 + i32.const 24872 i32.load i32.const 1 local.get $0 @@ -57384,7 +58631,7 @@ br $block_2 end ;; $if_55 else - i32.const 15140 + i32.const 24884 i32.load local.get $8 i32.gt_u @@ -57410,7 +58657,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 15140 + i32.const 24884 i32.load local.tee $1 local.get $9 @@ -57443,7 +58690,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 15140 + i32.const 24884 i32.load local.get $0 i32.gt_u @@ -57471,12 +58718,12 @@ i32.add local.get $5 i32.store - i32.const 15144 + i32.const 24888 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 15132 + i32.const 24876 local.get $5 i32.store return @@ -57496,10 +58743,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 15164 + i32.const 24908 i32.add local.set $0 - i32.const 15124 + i32.const 24868 i32.load local.tee $1 i32.const 1 @@ -57508,7 +58755,7 @@ local.tee $4 i32.and if $if_64 - i32.const 15140 + i32.const 24884 i32.load local.get $0 i32.const 8 @@ -57526,7 +58773,7 @@ local.set $15 end ;; $if_65 else - i32.const 15124 + i32.const 24868 local.get $1 local.get $4 i32.or @@ -57623,7 +58870,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 15428 + i32.const 25172 i32.add local.set $0 local.get $3 @@ -57635,7 +58882,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 15128 + i32.const 24872 i32.load local.tee $5 i32.const 1 @@ -57707,7 +58954,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 15140 + i32.const 24884 i32.load local.get $2 i32.gt_u @@ -57730,7 +58977,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 15140 + i32.const 24884 i32.load local.tee $0 local.get $14 @@ -57762,7 +59009,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 15128 + i32.const 24872 local.get $2 local.get $5 i32.or @@ -57780,8 +59027,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 15156 - i32.const 15156 + i32.const 24900 + i32.const 24900 i32.load i32.const -1 i32.add @@ -57791,7 +59038,7 @@ if $if_74 return end ;; $if_74 - i32.const 15580 + i32.const 25324 local.set $0 loop $loop_2 local.get $0 @@ -57803,30 +59050,96 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 15156 + i32.const 24900 i32.const -1 i32.store ) - (func $__ZSt18uncaught_exceptionv (type $14) - (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and - i32.const 0 - i32.gt_s - ) - - (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (func $_realloc (type $3) (param $0 i32) + (param $1 i32) (result i32) - i32.const 12946 + (local $2 i32) + (local $3 i32) + local.get $0 + i32.eqz + if $if + local.get $1 + call $_malloc + return + end ;; $if + local.get $1 + i32.const -65 + i32.gt_u + if $if_0 + i32.const 24852 + i32.const 12 + i32.store + i32.const 0 + return + end ;; $if_0 + local.get $0 + i32.const -8 + i32.add + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + call $_try_realloc_chunk + local.tee $2 + if $if_1 + local.get $2 + i32.const 8 + i32.add + return + end ;; $if_1 + local.get $1 + call $_malloc + local.tee $2 + i32.eqz + if $if_2 + i32.const 0 + return + end ;; $if_2 + local.get $2 + local.get $0 + local.get $0 + i32.const -4 + i32.add + i32.load + local.tee $3 + i32.const -8 + i32.and + i32.const 4 + i32.const 8 + local.get $3 + i32.const 3 + i32.and + select + i32.sub + local.tee $3 + local.get $1 + local.get $3 + local.get $1 + i32.lt_u + select + call $_memcpy + drop + local.get $0 + call $_free + local.get $2 ) - (func $__ZNSt3__212__next_primeEm (type $1) + (func $_try_realloc_chunk (type $3) (param $0 i32) + (param $1 i32) (result i32) - (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -57836,163 +59149,1932 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $30 - local.set $3 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $3 - local.tee $8 - i32.const 4 - i32.add - local.set $3 - local.get $8 - i32.const 8 + (local $11 i32) + (local $12 i32) + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.const -8 + i32.and + local.tee $2 i32.add - local.tee $5 + local.tee $4 local.get $0 - i32.store + i32.gt_u + local.get $7 + i32.const 3 + i32.and + local.tee $8 + i32.const 1 + i32.ne + i32.const 24884 + i32.load + local.tee $10 local.get $0 - i32.const 212 - i32.lt_u + i32.le_u + i32.and + i32.and + i32.eqz if $if - i32.const 4080 - i32.const 4272 - local.get $5 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.load - local.set $0 - else - block $block + call $_abort + end ;; $if + local.get $4 + i32.load offset=4 + local.tee $6 + i32.const 1 + i32.and + i32.eqz + if $if_0 + call $_abort + end ;; $if_0 + block $block + local.get $8 + i32.eqz + if $if_1 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + local.get $2 + local.get $1 + i32.const 4 + i32.add + i32.ge_u + if $if_2 + local.get $2 + local.get $1 + i32.sub + i32.const 25348 + i32.load + i32.const 1 + i32.shl + i32.le_u + if $if_3 + local.get $0 + return + end ;; $if_3 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $1 + i32.ge_u + if $if_4 + local.get $2 + local.get $1 + i32.sub + local.tee $3 + i32.const 15 + i32.le_u + if $if_5 + local.get $0 + return + end ;; $if_5 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $3 + call $_dispose_chunk local.get $0 + return + end ;; $if_4 + i32.const 24892 + i32.load + local.get $4 + i32.eq + if $if_6 + i32.const 24880 + i32.load + local.get $2 + i32.add + local.tee $3 + local.get $1 + i32.le_u + br_if $block local.get $0 - i32.const 210 - i32.div_u - local.tee $9 - i32.const 210 - i32.mul - local.tee $4 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $2 + local.get $3 + local.get $1 i32.sub + local.tee $1 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 24892 + local.get $2 i32.store - i32.const 4272 - i32.const 4464 - local.get $3 - call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ - i32.const 4272 + i32.const 24880 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_6 + i32.const 24888 + i32.load + local.get $4 + i32.eq + if $if_7 + i32.const 24876 + i32.load + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.lt_u + br_if $block + local.get $2 + local.get $1 i32.sub - i32.const 2 - i32.shr_s - local.set $6 - i32.const 0 - local.set $0 - block $block_0 - loop $loop + local.tee $3 + i32.const 15 + i32.gt_u + if $if_8 + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $3 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $2 + local.get $3 + i32.store + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + else + local.get $0 + local.get $2 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $3 + end ;; $if_8 + i32.const 24876 + local.get $3 + i32.store + i32.const 24888 + local.get $1 + i32.store + local.get $0 + return + end ;; $if_7 + local.get $6 + i32.const 2 + i32.and + br_if $block + local.get $2 + local.get $6 + i32.const -8 + i32.and + i32.add + local.tee $11 + local.get $1 + i32.lt_u + br_if $block + local.get $11 + local.get $1 + i32.sub + local.set $12 + local.get $6 + i32.const 3 + i32.shr_u + local.set $2 + block $block_0 + local.get $6 + i32.const 256 + i32.lt_u + if $if_9 + local.get $4 + i32.load offset=12 + local.set $5 + local.get $4 + i32.load offset=8 + local.tee $6 + local.get $2 + i32.const 3 + i32.shl + i32.const 24908 + i32.add + local.tee $8 + i32.ne + if $if_10 + local.get $10 + local.get $6 + i32.gt_u + if $if_11 + call $_abort + end ;; $if_11 + local.get $4 + local.get $6 + i32.load offset=12 + i32.ne + if $if_12 + call $_abort + end ;; $if_12 + end ;; $if_10 + local.get $5 + local.get $6 + i32.eq + if $if_13 + i32.const 24868 + i32.const 24868 + i32.load + i32.const 1 + local.get $2 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_13 + local.get $5 + local.get $8 + i32.eq + if $if_14 + local.get $5 + i32.const 8 + i32.add + local.set $3 + else + local.get $10 + local.get $5 + i32.gt_u + if $if_15 + call $_abort + end ;; $if_15 + local.get $5 + i32.const 8 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_16 + local.get $2 + local.set $3 + else + call $_abort + end ;; $if_16 + end ;; $if_14 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + else + local.get $4 + i32.load offset=24 + local.set $9 + local.get $4 + i32.load offset=12 + local.tee $3 + local.get $4 + i32.eq + if $if_17 block $block_1 - local.get $6 - i32.const 2 - i32.shl - i32.const 4272 - i32.add - i32.load local.get $4 + i32.const 16 i32.add - local.set $3 - i32.const 5 - local.set $4 - block $block_2 - block $block_3 - loop $loop_0 - local.get $4 - i32.const 47 - i32.ge_u - br_if $block_3 - local.get $4 - i32.const 2 - i32.shl - i32.const 4080 + local.tee $2 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $3 + if $if_18 + local.get $6 + local.set $2 + else + local.get $2 + i32.load + local.tee $3 + i32.eqz + br_if $block_1 + end ;; $if_18 + loop $loop + block $block_2 + local.get $3 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $8 + i32.eqz + if $if_19 + local.get $3 + i32.const 16 i32.add + local.tee $6 i32.load - local.tee $1 - local.tee $2 - if $if_0 (result i32) - local.get $3 - local.get $2 - i32.div_u - else - i32.const 0 - end ;; $if_0 - local.tee $2 - local.get $1 - i32.lt_u - br_if $block_1 - local.get $4 - i32.const 1 - i32.add - local.set $4 - local.get $1 - local.get $2 - i32.mul - local.get $3 - i32.ne - br_if $loop_0 - end ;; $loop_0 - br $block_2 - end ;; $block_3 - i32.const 211 + local.tee $8 + i32.eqz + br_if $block_2 + end ;; $if_19 + local.get $6 + local.set $2 + local.get $8 + local.set $3 + br $loop + end ;; $block_2 + end ;; $loop + local.get $10 + local.get $2 + i32.gt_u + if $if_20 + call $_abort + else + local.get $2 + i32.const 0 + i32.store + local.get $3 + local.set $5 + end ;; $if_20 + end ;; $block_1 + else + local.get $10 + local.get $4 + i32.load offset=8 + local.tee $2 + i32.gt_u + if $if_21 + call $_abort + end ;; $if_21 + local.get $4 + local.get $2 + i32.load offset=12 + i32.ne + if $if_22 + call $_abort + end ;; $if_22 + local.get $3 + i32.load offset=8 + local.get $4 + i32.eq + if $if_23 + local.get $2 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $2 + i32.store offset=8 + local.get $3 + local.set $5 + else + call $_abort + end ;; $if_23 + end ;; $if_17 + local.get $9 + if $if_24 + local.get $4 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25172 + i32.add + local.tee $2 + i32.load + local.get $4 + i32.eq + if $if_25 + local.get $2 + local.get $5 + i32.store + local.get $5 + i32.eqz + if $if_26 + i32.const 24872 + i32.const 24872 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_0 + end ;; $if_26 + else + i32.const 24884 + i32.load + local.get $9 + i32.gt_u + if $if_27 + call $_abort + else + local.get $9 + i32.const 16 + i32.add + local.tee $3 + local.get $9 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $4 + i32.eq + select + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_0 + end ;; $if_27 + end ;; $if_25 + i32.const 24884 + i32.load + local.tee $2 + local.get $5 + i32.gt_u + if $if_28 + call $_abort + end ;; $if_28 + local.get $5 + local.get $9 + i32.store offset=24 + local.get $4 + i32.load offset=16 + local.tee $3 + if $if_29 + local.get $2 + local.get $3 + i32.gt_u + if $if_30 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_30 + end ;; $if_29 + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_31 + i32.const 24884 + i32.load + local.get $3 + i32.gt_u + if $if_32 + call $_abort + else + local.get $5 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $if_32 + end ;; $if_31 + end ;; $if_24 + end ;; $if_9 + end ;; $block_0 + local.get $12 + i32.const 16 + i32.lt_u + if $if_33 + local.get $0 + local.get $11 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + else + local.get $0 + local.get $1 + local.get $7 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.tee $1 + local.get $12 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $11 + i32.add + local.tee $3 + local.get $3 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $12 + call $_dispose_chunk + end ;; $if_33 + local.get $0 + return + end ;; $block + i32.const 0 + ) + + (func $_dispose_chunk (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + local.get $0 + local.get $1 + i32.add + local.set $6 + local.get $0 + i32.load offset=4 + local.tee $8 + i32.const 1 + i32.and + if $if + local.get $0 + local.set $2 + local.get $1 + local.set $5 + else + block $block + local.get $0 + i32.load + local.set $4 + local.get $8 + i32.const 3 + i32.and + i32.eqz + if $if_0 + return + end ;; $if_0 + local.get $0 + local.get $4 + i32.sub + local.tee $0 + i32.const 24884 + i32.load + local.tee $11 + i32.lt_u + if $if_1 + call $_abort + end ;; $if_1 + local.get $1 + local.get $4 + i32.add + local.set $1 + i32.const 24888 + i32.load + local.get $0 + i32.eq + if $if_2 + local.get $6 + i32.load offset=4 + local.tee $5 + i32.const 3 + i32.and + i32.const 3 + i32.ne + if $if_3 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_3 + i32.const 24876 + local.get $1 + i32.store + local.get $6 + local.get $5 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $1 + i32.store + return + end ;; $if_2 + local.get $4 + i32.const 3 + i32.shr_u + local.set $8 + local.get $4 + i32.const 256 + i32.lt_u + if $if_4 + local.get $0 + i32.load offset=12 + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $8 + i32.const 3 + i32.shl + i32.const 24908 + i32.add + local.tee $5 + i32.ne + if $if_5 + local.get $11 + local.get $4 + i32.gt_u + if $if_6 + call $_abort + end ;; $if_6 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_7 + call $_abort + end ;; $if_7 + end ;; $if_5 + local.get $2 + local.get $4 + i32.eq + if $if_8 + i32.const 24868 + i32.const 24868 + i32.load + i32.const 1 + local.get $8 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_8 + local.get $2 + local.get $5 + i32.eq + if $if_9 + local.get $2 + i32.const 8 + i32.add + local.set $3 + else + local.get $11 + local.get $2 + i32.gt_u + if $if_10 + call $_abort + end ;; $if_10 + local.get $2 + i32.const 8 + i32.add + local.tee $5 + i32.load + local.get $0 + i32.eq + if $if_11 + local.get $5 + local.set $3 + else + call $_abort + end ;; $if_11 + end ;; $if_9 + local.get $4 + local.get $2 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_4 + local.get $0 + i32.load offset=24 + local.set $10 + local.get $0 + i32.load offset=12 + local.tee $3 + local.get $0 + i32.eq + if $if_12 + block $block_0 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.const 4 + i32.add + local.tee $8 + i32.load + local.tee $3 + if $if_13 + local.get $8 + local.set $4 + else + local.get $4 + i32.load + local.tee $3 + i32.eqz + br_if $block_0 + end ;; $if_13 + loop $loop + block $block_1 + local.get $3 + i32.const 20 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + if $if_14 + local.get $3 + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $12 + i32.eqz + br_if $block_1 + end ;; $if_14 + local.get $8 local.set $4 - loop $loop_1 - block $block_4 - local.get $4 - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.div_u - else - i32.const 0 - end ;; $if_1 - local.tee $1 - local.get $4 - i32.lt_u - if $if_2 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - else - local.get $3 - local.get $1 - local.get $4 - i32.mul - i32.eq - if $if_3 - i32.const 9 - local.set $1 - else - local.get $4 - i32.const 10 - i32.add - local.tee $2 - local.tee $1 - if $if_4 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_4 - local.tee $1 - local.get $2 - i32.lt_u - if $if_5 (result i32) - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - else - local.get $3 + local.get $12 + local.set $3 + br $loop + end ;; $block_1 + end ;; $loop + local.get $11 + local.get $4 + i32.gt_u + if $if_15 + call $_abort + else + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.set $7 + end ;; $if_15 + end ;; $block_0 + else + local.get $11 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.gt_u + if $if_16 + call $_abort + end ;; $if_16 + local.get $0 + local.get $4 + i32.load offset=12 + i32.ne + if $if_17 + call $_abort + end ;; $if_17 + local.get $3 + i32.load offset=8 + local.get $0 + i32.eq + if $if_18 + local.get $4 + local.get $3 + i32.store offset=12 + local.get $3 + local.get $4 + i32.store offset=8 + local.get $3 + local.set $7 + else + call $_abort + end ;; $if_18 + end ;; $if_12 + local.get $10 + if $if_19 + local.get $0 + i32.load offset=28 + local.tee $3 + i32.const 2 + i32.shl + i32.const 25172 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.eq + if $if_20 + local.get $4 + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_21 + i32.const 24872 + i32.const 24872 + i32.load + i32.const 1 + local.get $3 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_21 + else + i32.const 24884 + i32.load + local.get $10 + i32.gt_u + if $if_22 + call $_abort + else + local.get $10 + i32.const 16 + i32.add + local.tee $3 + local.get $10 + i32.const 20 + i32.add + local.get $3 + i32.load + local.get $0 + i32.eq + select + local.get $7 + i32.store + local.get $7 + i32.eqz + if $if_23 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + br $block + end ;; $if_23 + end ;; $if_22 + end ;; $if_20 + i32.const 24884 + i32.load + local.tee $4 + local.get $7 + i32.gt_u + if $if_24 + call $_abort + end ;; $if_24 + local.get $7 + local.get $10 + i32.store offset=24 + local.get $0 + i32.load offset=16 + local.tee $3 + if $if_25 + local.get $4 + local.get $3 + i32.gt_u + if $if_26 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $7 + i32.store offset=24 + end ;; $if_26 + end ;; $if_25 + local.get $0 + i32.load offset=20 + local.tee $3 + if $if_27 + i32.const 24884 + i32.load + local.get $3 + i32.gt_u + if $if_28 + call $_abort + else + local.get $7 + local.get $3 + i32.store offset=20 + local.get $3 + local.get $7 + i32.store offset=24 + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_28 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_27 + else + local.get $0 + local.set $2 + local.get $1 + local.set $5 + end ;; $if_19 + end ;; $block + end ;; $if + local.get $6 + i32.const 24884 + i32.load + local.tee $8 + i32.lt_u + if $if_29 + call $_abort + end ;; $if_29 + local.get $6 + i32.load offset=4 + local.tee $0 + i32.const 2 + i32.and + if $if_30 + local.get $6 + local.get $0 + i32.const -2 + i32.and + i32.store offset=4 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + else + i32.const 24892 + i32.load + local.get $6 + i32.eq + if $if_31 + i32.const 24880 + i32.const 24880 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24892 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + i32.const 24888 + i32.load + i32.ne + if $if_32 + return + end ;; $if_32 + i32.const 24888 + i32.const 0 + i32.store + i32.const 24876 + i32.const 0 + i32.store + return + end ;; $if_31 + i32.const 24888 + i32.load + local.get $6 + i32.eq + if $if_33 + i32.const 24876 + i32.const 24876 + i32.load + local.get $5 + i32.add + local.tee $0 + i32.store + i32.const 24888 + local.get $2 + i32.store + local.get $2 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $0 + i32.store + return + end ;; $if_33 + local.get $0 + i32.const -8 + i32.and + local.get $5 + i32.add + local.set $5 + local.get $0 + i32.const 3 + i32.shr_u + local.set $4 + block $block_2 + local.get $0 + i32.const 256 + i32.lt_u + if $if_34 + local.get $6 + i32.load offset=12 + local.set $1 + local.get $6 + i32.load offset=8 + local.tee $3 + local.get $4 + i32.const 3 + i32.shl + i32.const 24908 + i32.add + local.tee $0 + i32.ne + if $if_35 + local.get $8 + local.get $3 + i32.gt_u + if $if_36 + call $_abort + end ;; $if_36 + local.get $6 + local.get $3 + i32.load offset=12 + i32.ne + if $if_37 + call $_abort + end ;; $if_37 + end ;; $if_35 + local.get $1 + local.get $3 + i32.eq + if $if_38 + i32.const 24868 + i32.const 24868 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_38 + local.get $0 + local.get $1 + i32.eq + if $if_39 + local.get $1 + i32.const 8 + i32.add + local.set $14 + else + local.get $8 + local.get $1 + i32.gt_u + if $if_40 + call $_abort + end ;; $if_40 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.eq + if $if_41 + local.get $0 + local.set $14 + else + call $_abort + end ;; $if_41 + end ;; $if_39 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $14 + local.get $3 + i32.store + else + local.get $6 + i32.load offset=24 + local.set $7 + local.get $6 + i32.load offset=12 + local.tee $0 + local.get $6 + i32.eq + if $if_42 + block $block_3 + local.get $6 + i32.const 16 + i32.add + local.tee $1 + i32.const 4 + i32.add + local.tee $3 + i32.load + local.tee $0 + if $if_43 + local.get $3 + local.set $1 + else + local.get $1 + i32.load + local.tee $0 + i32.eqz + br_if $block_3 + end ;; $if_43 + loop $loop_0 + block $block_4 + local.get $0 + i32.const 20 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + if $if_44 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load + local.tee $4 + i32.eqz + br_if $block_4 + end ;; $if_44 + local.get $3 + local.set $1 + local.get $4 + local.set $0 + br $loop_0 + end ;; $block_4 + end ;; $loop_0 + local.get $8 + local.get $1 + i32.gt_u + if $if_45 + call $_abort + else + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.set $9 + end ;; $if_45 + end ;; $block_3 + else + local.get $8 + local.get $6 + i32.load offset=8 + local.tee $1 + i32.gt_u + if $if_46 + call $_abort + end ;; $if_46 + local.get $6 + local.get $1 + i32.load offset=12 + i32.ne + if $if_47 + call $_abort + end ;; $if_47 + local.get $0 + i32.load offset=8 + local.get $6 + i32.eq + if $if_48 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.set $9 + else + call $_abort + end ;; $if_48 + end ;; $if_42 + local.get $7 + if $if_49 + local.get $6 + i32.load offset=28 + local.tee $0 + i32.const 2 + i32.shl + i32.const 25172 + i32.add + local.tee $1 + i32.load + local.get $6 + i32.eq + if $if_50 + local.get $1 + local.get $9 + i32.store + local.get $9 + i32.eqz + if $if_51 + i32.const 24872 + i32.const 24872 + i32.load + i32.const 1 + local.get $0 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + br $block_2 + end ;; $if_51 + else + i32.const 24884 + i32.load + local.get $7 + i32.gt_u + if $if_52 + call $_abort + else + local.get $7 + i32.const 16 + i32.add + local.tee $0 + local.get $7 + i32.const 20 + i32.add + local.get $0 + i32.load + local.get $6 + i32.eq + select + local.get $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + end ;; $if_52 + end ;; $if_50 + i32.const 24884 + i32.load + local.tee $1 + local.get $9 + i32.gt_u + if $if_53 + call $_abort + end ;; $if_53 + local.get $9 + local.get $7 + i32.store offset=24 + local.get $6 + i32.load offset=16 + local.tee $0 + if $if_54 + local.get $1 + local.get $0 + i32.gt_u + if $if_55 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_55 + end ;; $if_54 + local.get $6 + i32.load offset=20 + local.tee $0 + if $if_56 + i32.const 24884 + i32.load + local.get $0 + i32.gt_u + if $if_57 + call $_abort + else + local.get $9 + local.get $0 + i32.store offset=20 + local.get $0 + local.get $9 + i32.store offset=24 + end ;; $if_57 + end ;; $if_56 + end ;; $if_49 + end ;; $if_34 + end ;; $block_2 + local.get $2 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $5 + i32.add + local.get $5 + i32.store + i32.const 24888 + i32.load + local.get $2 + i32.eq + if $if_58 + i32.const 24876 + local.get $5 + i32.store + return + end ;; $if_58 + end ;; $if_30 + local.get $5 + i32.const 3 + i32.shr_u + local.set $1 + local.get $5 + i32.const 256 + i32.lt_u + if $if_59 + local.get $1 + i32.const 3 + i32.shl + i32.const 24908 + i32.add + local.set $0 + i32.const 24868 + i32.load + local.tee $5 + i32.const 1 + local.get $1 + i32.shl + local.tee $1 + i32.and + if $if_60 + i32.const 24884 + i32.load + local.get $0 + i32.const 8 + i32.add + local.tee $1 + i32.load + local.tee $5 + i32.gt_u + if $if_61 + call $_abort + else + local.get $1 + local.set $15 + local.get $5 + local.set $13 + end ;; $if_61 + else + i32.const 24868 + local.get $1 + local.get $5 + i32.or + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $15 + local.get $0 + local.set $13 + end ;; $if_60 + local.get $15 + local.get $2 + i32.store + local.get $13 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $13 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + return + end ;; $if_59 + local.get $5 + i32.const 8 + i32.shr_u + local.tee $0 + if $if_62 (result i32) + local.get $5 + i32.const 16777215 + i32.gt_u + if $if_63 (result i32) + i32.const 31 + else + local.get $0 + local.get $0 + i32.const 1048320 + i32.add + i32.const 16 + i32.shr_u + i32.const 8 + i32.and + local.tee $3 + i32.shl + local.tee $1 + i32.const 520192 + i32.add + i32.const 16 + i32.shr_u + i32.const 4 + i32.and + local.set $0 + local.get $1 + local.get $0 + i32.shl + local.tee $4 + i32.const 245760 + i32.add + i32.const 16 + i32.shr_u + i32.const 2 + i32.and + local.set $1 + local.get $5 + i32.const 14 + local.get $0 + local.get $3 + i32.or + local.get $1 + i32.or + i32.sub + local.get $4 + local.get $1 + i32.shl + i32.const 15 + i32.shr_u + i32.add + local.tee $0 + i32.const 7 + i32.add + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.or + end ;; $if_63 + else + i32.const 0 + end ;; $if_62 + local.tee $1 + i32.const 2 + i32.shl + i32.const 25172 + i32.add + local.set $0 + local.get $2 + local.get $1 + i32.store offset=28 + local.get $2 + i32.const 0 + i32.store offset=20 + local.get $2 + i32.const 0 + i32.store offset=16 + block $block_5 + i32.const 24872 + i32.load + local.tee $3 + i32.const 1 + local.get $1 + i32.shl + local.tee $4 + i32.and + i32.eqz + if $if_64 + i32.const 24872 + local.get $3 + local.get $4 + i32.or + i32.store + local.get $0 + local.get $2 + i32.store + br $block_5 + end ;; $if_64 + local.get $5 + local.get $0 + i32.load + local.tee $0 + i32.load offset=4 + i32.const -8 + i32.and + i32.ne + if $if_65 + block $block_6 + local.get $5 + i32.const 0 + i32.const 25 + local.get $1 + i32.const 1 + i32.shr_u + i32.sub + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $0 + i32.const 16 + i32.add + local.get $3 + i32.const 31 + i32.shr_u + i32.const 2 + i32.shl + i32.add + local.tee $4 + i32.load + local.tee $1 + if $if_66 + local.get $3 + i32.const 1 + i32.shl + local.set $3 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $5 + i32.eq + if $if_67 + local.get $1 + local.set $0 + br $block_6 + else + local.get $1 + local.set $0 + br $loop_1 + end ;; $if_67 + unreachable + end ;; $if_66 + end ;; $loop_1 + i32.const 24884 + i32.load + local.get $4 + i32.gt_u + if $if_68 + call $_abort + end ;; $if_68 + local.get $4 + local.get $2 + i32.store + br $block_5 + end ;; $block_6 + end ;; $if_65 + i32.const 24884 + i32.load + local.tee $1 + local.get $0 + i32.le_u + local.get $1 + local.get $0 + i32.load offset=8 + local.tee $1 + i32.le_u + i32.and + i32.eqz + if $if_69 + call $_abort + end ;; $if_69 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + i32.store offset=8 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + i32.const 0 + i32.store offset=24 + return + end ;; $block_5 + local.get $2 + local.get $0 + i32.store offset=24 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + ) + + (func $__ZSt18uncaught_exceptionv (type $14) + (result i32) + call $___cxa_uncaught_exceptions + i32.const 0 + i32.gt_s + ) + + (func $__ZNKSt3__217bad_function_call4whatEv (type $1) + (param $0 i32) + (result i32) + i32.const 17039 + ) + + (func $__ZNSt3__212__next_primeEm (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + local.tee $8 + i32.const 4 + i32.add + local.set $3 + local.get $8 + i32.const 8 + i32.add + local.tee $5 + local.get $0 + i32.store + local.get $0 + i32.const 212 + i32.lt_u + if $if + i32.const 4080 + i32.const 4272 + local.get $5 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.load + local.set $0 + else + block $block + local.get $3 + local.get $0 + local.get $0 + i32.const 210 + i32.div_u + local.tee $9 + i32.const 210 + i32.mul + local.tee $4 + i32.sub + i32.store + i32.const 4272 + i32.const 4464 + local.get $3 + call $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ + i32.const 4272 + i32.sub + i32.const 2 + i32.shr_s + local.set $6 + i32.const 0 + local.set $0 + block $block_0 + loop $loop + block $block_1 + local.get $6 + i32.const 2 + i32.shl + i32.const 4272 + i32.add + i32.load + local.get $4 + i32.add + local.set $3 + i32.const 5 + local.set $4 + block $block_2 + block $block_3 + loop $loop_0 + local.get $4 + i32.const 47 + i32.ge_u + br_if $block_3 + local.get $4 + i32.const 2 + i32.shl + i32.const 4080 + i32.add + i32.load + local.tee $1 + local.tee $2 + if $if_0 (result i32) + local.get $3 + local.get $2 + i32.div_u + else + i32.const 0 + end ;; $if_0 + local.tee $2 + local.get $1 + i32.lt_u + br_if $block_1 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $1 + local.get $2 + i32.mul + local.get $3 + i32.ne + br_if $loop_0 + end ;; $loop_0 + br $block_2 + end ;; $block_3 + i32.const 211 + local.set $4 + loop $loop_1 + block $block_4 + local.get $4 + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.div_u + else + i32.const 0 + end ;; $if_1 + local.tee $1 + local.get $4 + i32.lt_u + if $if_2 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + else + local.get $3 + local.get $1 + local.get $4 + i32.mul + i32.eq + if $if_3 + i32.const 9 + local.set $1 + else + local.get $4 + i32.const 10 + i32.add + local.tee $2 + local.tee $1 + if $if_4 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_4 + local.tee $1 + local.get $2 + i32.lt_u + if $if_5 (result i32) + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + else + local.get $3 local.get $1 local.get $2 i32.mul @@ -59268,3002 +62350,28300 @@ i32.lt_u if $if_119 i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_119 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_120 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_120 - local.get $4 - i32.const 178 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_119 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_120 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_120 + local.get $4 + i32.const 178 + i32.add + local.tee $2 + local.tee $1 + if $if_121 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_121 + local.tee $1 + local.get $2 + i32.lt_u + if $if_122 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_122 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_123 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_123 + local.get $4 + i32.const 180 + i32.add + local.tee $2 + local.tee $1 + if $if_124 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_124 + local.tee $1 + local.get $2 + i32.lt_u + if $if_125 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_125 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_126 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_126 + local.get $4 + i32.const 186 + i32.add + local.tee $2 + local.tee $1 + if $if_127 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_127 + local.tee $1 + local.get $2 + i32.lt_u + if $if_128 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_128 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_129 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_129 + local.get $4 + i32.const 190 + i32.add + local.tee $2 + local.tee $1 + if $if_130 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_130 + local.tee $1 + local.get $2 + i32.lt_u + if $if_131 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_131 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_132 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_132 + local.get $4 + i32.const 192 + i32.add + local.tee $2 + local.tee $1 + if $if_133 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_133 + local.tee $1 + local.get $2 + i32.lt_u + if $if_134 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_134 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_135 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_135 + local.get $4 + i32.const 196 + i32.add + local.tee $2 + local.tee $1 + if $if_136 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_136 + local.tee $1 + local.get $2 + i32.lt_u + if $if_137 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_137 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_138 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_138 + local.get $4 + i32.const 198 + i32.add + local.tee $2 + local.tee $1 + if $if_139 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_139 + local.tee $1 + local.get $2 + i32.lt_u + if $if_140 + i32.const 1 + local.set $1 + local.get $3 + local.set $0 + local.get $2 + br $block_5 + end ;; $if_140 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + if $if_141 + i32.const 9 + local.set $1 + local.get $2 + br $block_5 + end ;; $if_141 + local.get $4 + i32.const 208 + i32.add + local.tee $2 + local.tee $1 + if $if_142 (result i32) + local.get $3 + local.get $1 + i32.div_u + else + i32.const 0 + end ;; $if_142 + local.tee $1 + local.get $2 + i32.lt_u + local.set $7 + i32.const 1 + i32.const 9 + i32.const 0 + local.get $3 + local.get $1 + local.get $2 + i32.mul + i32.eq + local.tee $10 + select + local.get $7 + select + local.set $1 + local.get $3 + local.get $0 + local.get $7 + select + local.set $0 + local.get $2 + local.get $4 + i32.const 210 + i32.add + local.get $7 + local.get $10 + i32.or + select + end ;; $block_5 + end ;; $if_21 + end ;; $if_20 + end ;; $if_18 + end ;; $if_17 + end ;; $if_15 + end ;; $if_14 + end ;; $if_12 + end ;; $if_11 + end ;; $if_9 + end ;; $if_8 + end ;; $if_6 + end ;; $if_5 + local.set $4 + end ;; $if_3 + end ;; $if_2 + block $block_6 + local.get $1 + i32.const 15 + i32.and + br_table + $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 + $block_4 ;; default + end ;; $block_6 + br $loop_1 + end ;; $block_4 + end ;; $loop_1 + local.get $1 + br_if $block_0 + end ;; $block_2 + local.get $6 + i32.const 1 + i32.add + local.tee $3 + i32.const 48 + i32.eq + local.tee $1 + local.get $9 + i32.add + local.tee $4 + local.set $9 + local.get $4 + i32.const 210 + i32.mul + local.set $4 + i32.const 0 + local.get $3 + local.get $1 + select + local.set $6 + br $loop + end ;; $block_1 + end ;; $loop + local.get $5 + local.get $3 + i32.store + local.get $3 + local.set $0 + br $block + end ;; $block_0 + local.get $5 + local.get $3 + i32.store + end ;; $block + end ;; $if + local.get $8 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $2 + i32.load + local.set $4 + local.get $1 + local.get $0 + i32.sub + i32.const 2 + i32.shr_s + local.set $1 + loop $loop + local.get $1 + if $if + local.get $1 + i32.const 1 + i32.shr_u + local.tee $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + local.tee $5 + i32.load + local.get $4 + i32.lt_u + local.set $3 + local.get $5 + i32.const 4 + i32.add + local.get $0 + local.get $3 + select + local.set $0 + local.get $1 + i32.const -1 + i32.add + local.get $2 + i32.sub + local.get $2 + local.get $3 + select + local.set $1 + br $loop + end ;; $if + end ;; $loop + local.get $0 + ) + + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + ) + + (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (param $0 i32) + loop $loop + i32.const 24696 + i32.load + i32.const 1 + i32.eq + if $if + i32.const 25392 + i32.const 25364 + call $_pthread_cond_wait + drop + br $loop + end ;; $if + end ;; $loop + i32.const 24696 + i32.load + i32.eqz + if $if_0 + i32.const 24696 + i32.const 1 + i32.store + local.get $0 + i32.const 277 + call_indirect $28 (type $0) + i32.const 24696 + i32.const -1 + i32.store + end ;; $if_0 + ) + + (func $__Znwm (type $1) + (param $0 i32) + (result i32) + local.get $0 + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 15088 + call $_strlen + local.tee $2 + i32.const 13 + i32.add + call $__Znwm + local.tee $1 + local.get $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.const 12 + i32.add + local.tee $1 + i32.const 15088 + local.get $2 + i32.const 1 + i32.add + call $_memcpy + drop + local.get $0 + local.get $1 + i32.store + ) + + (func $__ZNSt11logic_errorC2EPKc (type $0) + (param $0 i32) + local.get $0 + i32.const 10812 + i32.store + local.get $0 + i32.const 4 + i32.add + call $__ZNSt3__218__libcpp_refstringC2EPKc + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm + else + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $2 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $5 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $5 + local.set $0 + end ;; $if_0 + local.get $0 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.ne + if $if + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + local.tee $0 + i32.const 0 + i32.lt_s + local.tee $2 + select + local.get $1 + i32.load offset=4 + local.get $0 + i32.const 255 + i32.and + local.get $2 + select + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $6 + i32.const 0 + i32.lt_s + local.tee $3 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if + local.tee $5 + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $5 + local.get $2 + local.get $5 + i32.sub + local.get $3 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + else + local.get $6 + i32.const 255 + i32.and + end ;; $if_1 + local.tee $0 + i32.const 0 + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $4 + i32.const 0 + i32.store8 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.load8_s + i32.store8 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $2 + i32.store offset=4 + else + local.get $0 + local.get $2 + i32.store8 offset=11 + end ;; $if_3 + end ;; $if_0 + local.get $4 + global.set $32 + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 + local.get $1 + local.get $2 + call $_memmove + drop + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (param $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $8 + global.get $32 + i32.const 16 + i32.add + global.set $32 + i32.const -18 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $9 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $10 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $10 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $10 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $9 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $6 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $7 + local.get $6 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $3 + local.get $5 + i32.sub + local.tee $3 + local.get $4 + i32.sub + local.tee $7 + if $if_4 + local.get $6 + local.get $2 + local.get $4 + i32.add + i32.add + local.get $5 + local.get $4 + local.get $9 + i32.add + i32.add + local.get $7 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_4 + local.get $1 + i32.const 10 + i32.ne + if $if_5 + local.get $9 + call $_free + end ;; $if_5 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $10 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $3 + local.get $6 + i32.add + local.tee $0 + i32.store offset=4 + local.get $8 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $8 + i32.load8_s + i32.store8 + local.get $8 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + local.get $1 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + local.get $3 + i32.sub + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc + else + local.get $4 + if $if_1 + local.get $1 + local.get $0 + i32.load + i32.add + local.set $3 + local.get $2 + i32.const 0 + i32.store8 + local.get $3 + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.load8_s + i32.store8 + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_1 + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + if $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $3 + i32.const 255 + i32.and + local.set $2 + i32.const 10 + end ;; $if_0 + local.tee $4 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_1 (result i32) + local.get $0 + local.get $4 + local.get $1 + local.get $2 + i32.add + local.get $4 + i32.sub + local.get $2 + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm + local.get $0 + i32.load8_s offset=11 + else + local.get $3 + end ;; $if_1 + i32.const 0 + i32.lt_s + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $3 + local.get $2 + i32.add + local.set $4 + local.get $1 + if $if_3 + local.get $4 + i32.const 0 + local.get $1 + call $_memset + drop + end ;; $if_3 + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_4 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $3 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + (local $6 i32) + i32.const -17 + local.get $1 + i32.sub + local.get $2 + i32.lt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_0 + local.set $5 + local.get $1 + i32.const 2147483623 + i32.lt_u + if $if_1 (result i32) + i32.const 11 + local.get $1 + i32.const 1 + i32.shl + local.tee $6 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + local.get $6 + i32.lt_u + select + local.tee $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.get $2 + i32.const 11 + i32.lt_u + select + else + i32.const -17 + end ;; $if_1 + local.tee $6 + call $__Znwm + local.set $2 + local.get $4 + if $if_2 + local.get $2 + local.get $5 + local.get $4 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_2 + local.get $3 + local.get $4 + i32.sub + local.tee $3 + if $if_3 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $5 + i32.add + local.get $3 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + end ;; $if_3 + local.get $1 + i32.const 10 + i32.ne + if $if_4 + local.get $5 + call $_free + end ;; $if_4 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $6 + i32.const -2147483648 + i32.or + i32.store offset=8 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $4 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $32 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $5 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $3 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $5 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_2 + local.get $0 + local.get $4 + local.get $2 + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + i32.const 0 + i32.const 0 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_3 + local.get $5 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $5 + local.set $4 + local.get $3 + if $if_5 + local.get $1 + local.get $2 + i32.add + local.get $1 + local.get $4 + local.get $1 + i32.le_u + local.get $3 + local.get $5 + i32.add + local.get $1 + i32.gt_u + i32.and + select + local.set $1 + local.get $2 + local.get $4 + i32.add + local.get $4 + local.get $3 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $4 + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $6 + i32.const 0 + i32.store8 + local.get $1 + local.get $5 + i32.add + local.get $6 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + local.get $1 + local.get $1 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $2 + i32.const 11 + i32.lt_u + if $if_0 + local.get $0 + local.get $1 + i32.store8 offset=11 + else + local.get $0 + local.get $2 + i32.const 16 + i32.add + i32.const -16 + i32.and + local.tee $4 + call $__Znwm + local.tee $2 + i32.store + local.get $0 + local.get $4 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=4 + local.get $2 + local.set $0 + end ;; $if_0 + local.get $0 + i32.const 14257 + local.get $1 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $3 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + i32.add + local.get $3 + i32.load8_s + i32.store8 + local.get $3 + global.set $32 + ) + + (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i64.const 0 + i64.store align=4 + local.get $0 + i32.const 0 + i32.store offset=8 + loop $loop + local.get $2 + i32.const 3 + i32.ne + if $if + local.get $2 + i32.const 2 + i32.shl + local.get $0 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 14257 + call $_strlen + local.tee $2 + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 255 + i32.and + local.get $3 + i32.const 0 + i32.lt_s + select + local.tee $3 + i32.add + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + local.get $0 + local.get $1 + i32.load + local.get $1 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + select + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + ) + + (func $__ZL28demangling_terminate_handlerv (type $8) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 1072 + i32.add + global.set $32 + local.get $2 + i32.const 1048 + i32.add + local.set $1 + local.get $2 + i32.const 1040 + i32.add + local.set $3 + local.get $2 + i32.const 1024 + i32.add + local.set $4 + local.get $2 + i32.const 1068 + i32.add + local.set $5 + local.get $2 + i32.const 1064 + i32.add + local.set $6 + local.get $2 + i32.const 1060 + i32.add + local.set $7 + i32.const 25440 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.ne + if $if_0 + local.get $1 + i32.const 17244 + i32.store + i32.const 17194 + local.get $1 + call $_abort_message + end ;; $if_0 + local.get $0 + i32.const 80 + i32.add + local.set $1 + local.get $5 + local.get $0 + i64.load offset=48 + i64.const 4849336966747728641 + i64.eq + if $if_1 (result i32) + local.get $0 + i32.load offset=44 + else + local.get $1 + end ;; $if_1 + i32.store + local.get $0 + i32.load + local.set $0 + local.get $7 + i32.const 1024 + i32.store + local.get $0 + i32.load offset=4 + local.get $2 + local.get $7 + local.get $6 + call $___cxa_demangle + local.set $1 + local.get $6 + i32.load + if $if_2 + local.get $0 + i32.load offset=4 + local.set $1 + end ;; $if_2 + i32.const 5240 + local.get $0 + local.get $5 + i32.const 5240 + i32.load + i32.load offset=16 + i32.const 15 + i32.and + i32.const 130 + i32.add + call_indirect $28 (type $2) + if $if_3 + local.get $5 + i32.load + local.tee $0 + i32.load + i32.load offset=8 + local.set $3 + local.get $0 + local.get $3 + i32.const 63 + i32.and + call_indirect $28 (type $1) + local.set $0 + local.get $4 + i32.const 17244 + i32.store + local.get $4 + local.get $1 + i32.store offset=4 + local.get $4 + local.get $0 + i32.store offset=8 + i32.const 17108 + local.get $4 + call $_abort_message + else + local.get $3 + i32.const 17244 + i32.store + local.get $3 + local.get $1 + i32.store offset=4 + i32.const 17153 + local.get $3 + call $_abort_message + end ;; $if_3 + end ;; $if + i32.const 17232 + local.get $2 + i32.const 1056 + i32.add + call $_abort_message + ) + + (func $___cxa_demangle (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 4496 + i32.add + global.set $32 + local.get $5 + i32.const 4472 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.eqz + br_if $block_0 + local.get $2 + i32.eqz + local.tee $6 + local.get $1 + i32.const 0 + i32.ne + i32.and + br_if $block_0 + local.get $5 + local.get $0 + local.get $0 + call $_strlen + local.get $0 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ + local.get $4 + i32.const -1 + i32.store offset=12 + local.get $4 + i32.const -1 + i32.store offset=16 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv + local.tee $0 + if $if (result i32) + local.get $1 + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 0 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $6 + i32.eqz + if $if_1 + local.get $2 + local.get $4 + i32.load offset=4 + i32.store + end ;; $if_1 + local.get $4 + i32.load + local.set $1 + i32.const 0 + else + i32.const -1 + end ;; $if_0 + else + i32.const -2 + end ;; $if + local.set $0 + local.get $3 + if $if_2 + local.get $3 + local.get $0 + i32.store + end ;; $if_2 + i32.const 0 + local.get $1 + local.get $0 + select + local.set $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev + br $block + end ;; $block_0 + local.get $3 + if $if_3 + local.get $3 + i32.const -3 + i32.store + end ;; $if_3 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $_abort_message (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + i32.const 7464 + i32.load + local.tee $1 + local.get $0 + local.get $2 + call $_vfprintf + drop + local.get $1 + call $_fputc + call $_abort + ) + + (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + i32.const 1 + else + local.get $1 + if $if_0 (result i32) + local.get $1 + i32.const 5264 + i32.const 5248 + call $___dynamic_cast + local.tee $1 + if $if_1 (result i32) + local.get $3 + local.get $1 + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 + local.get $3 + local.get $2 + i32.load + i32.const 1 + local.get $0 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_2 (result i32) + local.get $2 + local.get $3 + i32.load offset=16 + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if_2 + block $block + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.eq + if $if_5 + local.get $1 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_6 + local.get $1 + i32.const 1 + i32.store8 offset=54 + end ;; $if_6 + end ;; $if_5 + local.get $1 + i32.const 4 + i32.store offset=44 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if_2 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + end ;; $if + ) + + (func $__ZL8is_equalPKSt9type_infoS1_b (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=16 + local.tee $3 + if $if + block $block + local.get $1 + local.get $3 + i32.ne + if $if_0 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $0 + i32.load offset=24 + i32.const 2 + i32.eq + if $if_1 + local.get $0 + local.get $2 + i32.store offset=24 + end ;; $if_1 + end ;; $block + else + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $2 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 1 + i32.store8 offset=53 + local.get $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if + block $block + local.get $0 + i32.const 1 + i32.store8 offset=52 + local.get $0 + i32.load offset=16 + local.tee $2 + i32.eqz + if $if_0 + local.get $0 + local.get $1 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=24 + local.get $0 + i32.const 1 + i32.store offset=36 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_0 + local.get $1 + local.get $2 + i32.ne + if $if_1 + local.get $0 + local.get $0 + i32.load offset=36 + i32.const 1 + i32.add + i32.store offset=36 + local.get $0 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_1 + local.get $0 + i32.load offset=24 + local.tee $1 + i32.const 2 + i32.eq + if $if_2 + local.get $0 + local.get $3 + i32.store offset=24 + else + local.get $1 + local.set $3 + end ;; $if_2 + local.get $0 + i32.load offset=48 + i32.const 1 + i32.eq + local.get $3 + i32.const 1 + i32.eq + i32.and + if $if_3 + local.get $0 + i32.const 1 + i32.store8 offset=54 + end ;; $if_3 + end ;; $block + end ;; $if + ) + + (func $___dynamic_cast (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $0 + local.get $0 + i32.load + local.tee $4 + i32.const -8 + i32.add + i32.load + i32.add + local.set $5 + local.get $4 + i32.const -4 + i32.add + i32.load + local.set $4 + local.get $3 + local.get $2 + i32.store + local.get $3 + local.get $0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 0 + i32.store offset=12 + local.get $3 + i64.const 0 + i64.store offset=16 align=4 + local.get $3 + i64.const 0 + i64.store offset=24 align=4 + local.get $3 + i64.const 0 + i64.store offset=32 align=4 + local.get $3 + i64.const 0 + i64.store offset=40 align=4 + local.get $3 + i32.const 0 + i32.store offset=48 + local.get $3 + i32.const 0 + i32.store16 offset=52 + local.get $3 + i32.const 0 + i32.store8 offset=54 + local.get $4 + local.get $2 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if (result i32) + local.get $3 + i32.const 1 + i32.store offset=48 + local.get $4 + local.get $3 + local.get $5 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=20 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $5 + i32.const 0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.eq + select + else + block $block (result i32) + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.const 0 + local.get $4 + i32.load + i32.load offset=24 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + block $block_0 + block $block_1 + block $block_2 + local.get $3 + i32.load offset=36 + br_table + $block_2 $block_0 + $block_1 ;; default + end ;; $block_2 + local.get $3 + i32.load offset=20 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.const 1 + i32.eq + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + select + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + i32.load offset=24 + i32.const 1 + i32.ne + if $if_0 + i32.const 0 + local.get $3 + i32.load offset=40 + i32.eqz + local.get $3 + i32.load offset=28 + i32.const 1 + i32.eq + i32.and + local.get $3 + i32.load offset=32 + i32.const 1 + i32.eq + i32.and + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $3 + i32.load offset=16 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + local.get $4 + call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $6 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (local $5 i32) + local.get $0 + local.get $1 + i32.load offset=8 + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $2 + local.get $1 + i32.load offset=4 + i32.eq + if $if_0 + local.get $1 + i32.load offset=28 + i32.const 1 + i32.ne + if $if_1 + local.get $1 + local.get $3 + i32.store offset=28 + end ;; $if_1 + end ;; $if_0 + else + block $block + local.get $0 + local.get $1 + i32.load + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz + if $if_2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $5 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + local.get $5 + i32.const 7 + i32.and + i32.const 426 + i32.add + call_indirect $28 (type $7) + br $block + end ;; $if_2 + local.get $1 + i32.load offset=16 + local.get $2 + i32.ne + if $if_3 + local.get $1 + i32.load offset=20 + local.get $2 + i32.ne + if $if_4 + local.get $1 + local.get $3 + i32.store offset=32 + local.get $1 + i32.load offset=44 + i32.const 4 + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 434 + i32.add + call_indirect $28 (type $13) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 + br $block + end ;; $if_4 + end ;; $if_3 + local.get $3 + i32.const 1 + i32.eq + if $if_7 + local.get $1 + i32.const 1 + i32.store offset=32 + end ;; $if_7 + end ;; $block + end ;; $if + ) + + (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=8 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b + if $if + local.get $1 + local.get $2 + local.get $3 + call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi + else + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=28 + local.set $4 + local.get $0 + local.get $1 + local.get $2 + local.get $3 + local.get $4 + i32.const 7 + i32.and + i32.const 418 + i32.add + call_indirect $28 (type $5) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E5parseEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $1 + local.get $3 + i32.const 16 + i32.add + local.set $2 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + i32.const 17423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load offset=24 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_2 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $3 + local.get $0 + i32.load + i32.store + local.get $3 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + local.tee $2 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_2 + i32.const 0 + local.get $2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + else + i32.const 0 + end ;; $if_0 + else + block $block (result i32) + local.get $2 + i32.const 17426 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_3 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + select + br $block + end ;; $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $4 + i32.const 17431 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $2 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + i32.and + if $if_6 (result i32) + i32.const 0 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 46 + i32.eq + if $if_8 + local.get $0 + local.get $0 + i32.load offset=4 + i32.store + end ;; $if_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + if $if_9 (result i32) + i32.const 0 + else + local.get $0 + i32.const 17445 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + end ;; $if_9 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_ED2Ev (type $0) + (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv + local.get $0 + i32.const 332 + i32.add + local.tee $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load offset=332 + call $_free + end ;; $if + local.get $0 + i32.const 288 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 148 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + local.get $0 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + ) + + (func $__ZN12_GLOBAL__N_122initializeOutputStreamEPcPmRNS_12OutputStreamEm (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + block $block (result i32) + block $block_0 + local.get $0 + if $if (result i32) + local.get $1 + i32.load + local.set $1 + br $block_0 + else + i32.const 1024 + call $_malloc + local.tee $0 + if $if_0 (result i32) + i32.const 1024 + local.set $1 + br $block_0 + else + i32.const 0 + end ;; $if_0 + end ;; $if + br $block + end ;; $block_0 + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + i32.const 1 + end ;; $block + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load8_s offset=5 + i32.const 1 + i32.ne + if $if + local.get $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLEc (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $0 + i32.load offset=4 + local.tee $0 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $1 + i32.store8 + ) + + (func $__ZN12_GLOBAL__N_112OutputStream4growEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=4 + i32.add + local.tee $1 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.ge_u + if $if + local.get $0 + local.get $1 + local.get $2 + i32.const 1 + i32.shl + local.tee $2 + local.get $2 + local.get $1 + i32.lt_u + select + local.tee $1 + i32.store offset=8 + local.get $0 + local.get $0 + i32.load + local.get $1 + call $_realloc + local.tee $0 + i32.store + local.get $0 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + end ;; $if + ) + + (func $__ZSt9terminatev (type $8) + (local $0 i32) + i32.const 25440 + i32.load + local.tee $0 + if $if + local.get $0 + i64.load offset=48 + i64.const -256 + i64.and + i64.const 4849336966747728640 + i64.eq + if $if_0 + local.get $0 + i32.load offset=12 + call $__ZSt11__terminatePFvvE + end ;; $if_0 + end ;; $if + i32.const 5 + call $__ZSt11__terminatePFvvE + ) + + (func $__ZSt11__terminatePFvvE (type $0) + (param $0 i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 7 + i32.and + i32.const 152 + i32.add + call_indirect $28 (type $8) + i32.const 17383 + local.get $1 + call $_abort_message + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev (type $0) + (param $0 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.ne + if $if + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator5resetEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 4096 + i32.add + local.set $1 + loop $loop + local.get $1 + i32.load + local.tee $2 + if $if + local.get $1 + local.get $2 + i32.load + i32.store + local.get $0 + local.get $2 + i32.ne + if $if_0 + local.get $2 + call $_free + end ;; $if_0 + br $loop + end ;; $if + end ;; $loop + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $1 + local.get $0 + i32.store + ) + + (func $__ZN12_GLOBAL__N_110StringViewC2EPKc (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $1 + call $_strlen + local.get $1 + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + local.get $0 + i32.load + i32.store + local.get $5 + local.get $3 + i32.store offset=4 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if (result i32) + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $3 + local.get $1 + i32.const 40 + i32.add + local.set $7 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 20 + i32.add + local.set $8 + local.get $1 + i32.const 16 + i32.add + local.set $6 + local.get $1 + i32.const 8 + i32.add + local.set $5 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv + br $block + end ;; $block_0 + local.get $7 + local.get $0 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ + local.get $8 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE + if $if_1 (result i32) + i32.const 0 + else + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + if $if_2 (result i32) + local.get $2 + else + local.get $6 + i32.const 0 + i32.store + local.get $5 + i32.const 22778 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + block $block_2 (result i32) + block $block_3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_3 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_4 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_4 + local.get $5 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_3 + end ;; $loop + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_3 + end ;; $block_4 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $3 + i32.const 0 + i32.store + block $block_5 (result i32) + block $block_6 + local.get $4 + i32.load8_s + br_if $block_6 + local.get $4 + i32.load8_s offset=1 + i32.eqz + br_if $block_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + br_if $block_6 + i32.const 0 + br $block_5 + end ;; $block_6 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + br $block_5 + end ;; $if_4 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $2 + block $block_7 + loop $loop_0 + block $block_8 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_8 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $7 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv + i32.eqz + br_if $loop_0 + br $block_7 + end ;; $block_8 + end ;; $loop_0 + i32.const 0 + br $block_5 + end ;; $block_7 + local.get $1 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + local.get $3 + local.get $8 + local.get $1 + local.get $6 + local.get $4 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ + end ;; $block_5 + end ;; $block_2 + end ;; $if_2 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $block + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load8_u + local.get $1 + i32.const 255 + i32.and + i32.eq + if $if_0 (result i32) + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + i32.const 1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + if $if + local.get $1 + i32.const 110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + end ;; $if + block $block + block $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_0 + local.get $1 + i32.load + local.tee $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_0 + loop $loop + block $block_1 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eqz + br_if $block_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block_1 + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.store + br $loop + end ;; $block_1 + end ;; $loop + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $1 + local.get $4 + i32.const 16 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 65 + i32.sub + br_table + $block_12 $block_2 $block_6 $block_14 $block_2 $block_13 $block_5 $block_2 $block_2 $block_2 $block_37 $block_2 $block_11 $block_2 $block_7 $block_9 + $block_2 $block_8 $block_4 $block_10 $block_3 $block_37 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 $block_2 + $block_32 $block_34 $block_33 $block_19 $block_18 $block_20 $block_17 $block_31 $block_28 $block_27 $block_2 $block_26 $block_25 $block_22 $block_21 $block_2 + $block_2 $block_37 $block_30 $block_29 $block_15 $block_36 $block_35 $block_24 $block_23 $block_16 + $block_2 ;; default + end ;; $block_37 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + local.get $2 + i32.const 255 + i32.and + i32.const 114 + i32.eq + local.tee $2 + local.tee $5 + local.tee $6 + i32.gt_u + if $if_0 (result i32) + local.get $1 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 86 + i32.eq + local.set $1 + block $block_38 + block $block_39 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 2 + i32.const 1 + local.get $2 + select + local.get $5 + local.get $1 + select + local.tee $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 75 + i32.eq + i32.add + local.tee $1 + local.tee $2 + i32.gt_u + if $if_2 (result i32) + local.get $2 + local.get $6 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_39 $block_3 $block_38 + $block_3 ;; default + end ;; $block_39 + block $block_40 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.gt_u + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_40 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_40 $block_40 + $block_3 ;; default + end ;; $block_40 + end ;; $block_38 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_36 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17479 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17484 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17489 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_32 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17494 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17506 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17520 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17526 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17541 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17545 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_26 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17558 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17563 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17577 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 1 i32.add - local.tee $2 - local.tee $1 - if $if_121 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_121 - local.tee $1 - local.get $2 - i32.lt_u - if $if_122 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_122 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_123 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_123 - local.get $4 - i32.const 180 + i32.store + local.get $0 + i32.const 17587 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_21 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17596 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17614 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17620 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17632 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 17643 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_4 (result i32) + i32.const 0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_4 + br $block + end ;; $block_14 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_5 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_42 $block_41 $block_41 $block_41 $block_41 $block_45 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 $block_41 + $block_41 $block_41 $block_48 $block_41 $block_47 $block_54 $block_53 $block_52 $block_41 $block_51 $block_50 $block_41 $block_41 $block_41 $block_41 $block_46 + $block_42 $block_43 $block_41 $block_41 $block_49 $block_45 $block_41 $block_44 $block_42 $block_42 + $block_41 ;; default + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17647 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17657 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17668 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_51 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17678 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17688 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_124 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_124 - local.tee $1 - local.get $2 - i32.lt_u - if $if_125 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_125 - local.get $3 - local.get $1 + i32.store + local.get $0 + i32.const 17697 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17706 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17711 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 17726 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_45 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_44 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_42 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_41 + i32.const 0 + br $block + end ;; $block_13 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_12 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_11 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_10 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_56 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_55 $block_56 $block_55 + $block_56 + $block_55 ;; default + end ;; $block_56 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_55 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $2 + i32.store + local.get $2 + if $if_7 (result i32) + local.get $0 + i32.load8_s offset=360 + i32.eqz + br_if $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 255 + i32.and + i32.const 73 + i32.ne + br_if $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 0 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $4 + i32.const 1 + i32.store + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_4 + block $block_57 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + br_table + $block_2 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_2 + $block_57 ;; default + end ;; $block_57 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_10 (result i32) + local.get $0 + i32.load8_s offset=360 + if $if_11 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_12 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_12 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_13 (result i32) + local.get $4 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + i32.const 0 + local.get $2 + i32.eqz + br_if $block + drop + local.get $3 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $block_0 + else + local.get $2 + end ;; $if_13 + else + local.get $2 + end ;; $if_11 + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $1 + i32.store + br $block_1 + end ;; $block_2 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv + local.tee $1 + i32.store + end ;; $block_1 + local.get $1 + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 148 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + i32.load + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseFunctionTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 80 + i32.add + global.set $32 + local.get $2 + i32.const -64 + i32.sub + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $8 + local.get $2 + i32.const 72 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $9 + local.get $2 + i32.const 8 + i32.add + local.set $10 + local.get $2 + i32.const 28 + i32.add + local.tee $11 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + i32.store + local.get $6 + i32.const 0 + i32.store + local.get $3 + i32.const 22479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $6 + local.get $0 + i32.const 22482 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + br $block_0 + else + block $block_1 (result i32) + local.get $4 + i32.const 22491 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + i32.const 0 + local.get $3 + i32.eqz + br_if $block_1 + drop + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_1 + drop + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $if_0 + local.get $5 + i32.const 22494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_2 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_1 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_1 + end ;; $loop + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $block_1 + end ;; $if + br $block + end ;; $block_0 + local.get $8 + i32.const 22497 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $0 + i32.const 70 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 89 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + i32.const 8 + i32.add + local.tee $3 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_3 (result i32) + block $block_4 + block $block_5 + block $block_6 + loop $loop_0 + block $block_7 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $0 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $9 + i32.const 22500 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_7 + local.get $10 + i32.const 22503 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_6 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_4 + br $loop_0 + end ;; $block_7 + end ;; $loop_0 + local.get $7 + i32.const 1 + i32.store8 + br $block_4 + end ;; $block_6 + local.get $7 + i32.const 2 + i32.store8 + br $block_4 + end ;; $block_5 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + local.get $11 + local.get $7 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $1 + i32.const 48 + i32.add + local.set $2 + local.get $1 + i32.const 40 + i32.add + local.set $4 + local.get $1 + i32.const 32 + i32.add + local.set $5 + local.get $1 + i32.const 20 + i32.add + local.set $3 + local.get $0 + i32.const 85 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $4 + i32.load + local.get $4 + i32.load offset=4 + i32.eq + if $if_0 (result i32) + i32.const 0 + else + block $block (result i32) + local.get $5 + i32.const 22294 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + i32.eqz + if $if_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $2 + local.get $4 + i32.const 9 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $2 + i32.load + local.set $4 + local.get $3 + local.get $0 + i32.store + local.get $3 + local.get $0 + i32.load + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $0 + local.get $4 + i32.store + local.get $2 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 4 + i32.add + i32.store offset=8 + local.get $1 + local.get $0 + i32.load offset=4 + i32.store offset=12 + local.get $1 + i32.const 1 + i32.store8 offset=16 + local.get $0 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $1 + i32.load8_s offset=16 + if $if_3 + local.get $1 + i32.load offset=8 + local.get $1 + i32.load offset=12 + i32.store + end ;; $if_3 + local.get $3 + i32.load8_s offset=8 + if $if_4 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if_4 + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_5 (result i32) + i32.const 0 + else + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseQualifiedTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + end ;; $if_5 + end ;; $block + end ;; $if_0 + local.set $0 + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.tee $5 + i32.store + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_7 + local.get $5 + if $if_8 + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE + local.get $4 + local.get $0 + i32.store + else + local.get $3 + local.set $0 + end ;; $if_8 + else + i32.const 0 + local.set $0 + end ;; $if_7 + end ;; $if + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + block $block + block $block_0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + br_if $block_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $3 + i32.load + local.tee $3 + i32.lt_u + br_if $block_0 + local.get $2 + local.get $1 + i32.load + local.tee $4 + i32.store + local.get $2 + local.get $3 + local.get $4 + i32.add + i32.store offset=4 + local.get $1 + local.get $3 + local.get $1 + i32.load + i32.add + i32.store + local.get $0 + local.get $2 + i64.load + i64.store align=4 + br $block + end ;; $block_0 + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + end ;; $block + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 68 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 116 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + i32.const 0 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block + drop + end ;; $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 22258 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseVectorTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $2 + local.get $1 + i32.const 8 + i32.add + i32.const 22133 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + block $block_0 (result i32) + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ + br $block_0 + end ;; $if_3 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block_0 + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_6 (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $if_5 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_7 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_8 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseArrayTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 65 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_1 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + i32.const 0 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $2 + if $if_2 (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $1 + local.get $2 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + br $block_0 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E24parsePointerToMemberTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.set $3 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_0 (result i32) + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseClassEnumTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $1 + i32.const 32 + i32.add + local.set $2 + local.get $1 + i32.const 16 + i32.add + local.set $3 + local.get $1 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $1 + i32.const 24 + i32.add + local.tee $5 + i32.const 21189 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + i32.const 21192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + block $block + local.get $3 + i32.const 21199 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_0 + local.get $1 + i32.const 21202 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $if_0 + local.get $4 + i32.const 21208 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 21211 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if_1 + end ;; $block + end ;; $if + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.ne + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $3 + end ;; $if_3 + else + i32.const 0 + end ;; $if_2 + local.set $3 + local.get $1 + global.set $32 + local.get $3 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.const 84 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + i32.const 0 + i32.store + block $block (result i32) + block $block_0 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + br $block_0 + else + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + i32.eqz + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $3 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + end ;; $if_1 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_0 + local.get $0 + i32.load8_s offset=362 + if $if_2 + local.get $0 + i32.const 17706 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.load8_s offset=361 + if $if_3 + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em + local.get $2 + local.get $3 + local.tee $1 + i32.store + local.get $0 + i32.const 332 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + br $block + end ;; $if_3 + local.get $3 + local.get $0 + i32.const 288 + i32.add + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_4 (result i32) + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_4 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $4 + i32.const 16 + i32.add + local.set $2 + local.get $4 + i32.const 12 + i32.add + local.set $7 + local.get $4 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.const 288 + i32.add + local.set $5 + local.get $1 + if $if_0 + local.get $5 + local.get $5 + i32.load + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 8 + i32.add + local.tee $8 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $9 + block $block_0 + block $block_1 + loop $loop + block $block_2 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + if $if_1 + local.get $2 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ + local.get $7 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ + local.get $3 + i32.eqz + br_if $block_2 + local.get $8 + local.get $7 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $6 + local.get $3 + i32.store + local.get $3 + i32.load8_u offset=4 + i32.const 28 + i32.eq + if $if_2 + local.get $4 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $6 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + end ;; $if_2 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + else + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_1 + local.get $8 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_1 + br $loop + end ;; $block_2 + end ;; $loop + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EED2Ev + i32.const 0 + br $block + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + local.get $9 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13ReferenceTypeEJRPNS0_4NodeENS0_13ReferenceKindEEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 83 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $2 + i32.const -97 + i32.add + i32.const 26 + i32.ge_u + if $if_1 + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + i32.const 0 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + br_if $block + drop + local.get $0 + i32.load + i32.load + br $block + end ;; $if_2 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + if $if_3 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.add + local.tee $2 + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 148 + i32.add + local.tee $0 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.lt_u + if $if_5 (result i32) + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + end ;; $if_3 + br $block + end ;; $if_1 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + local.get $2 + i32.const 97 + i32.sub + br_table + $block_7 $block_6 $block_1 $block_2 $block_1 $block_1 $block_1 $block_1 $block_4 $block_1 $block_1 $block_1 $block_1 $block_1 $block_3 $block_1 + $block_1 $block_1 $block_5 + $block_1 ;; default + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 0 + i32.store + br $block_0 + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 1 + i32.store + br $block_0 + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 2 + i32.store + br $block_0 + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 3 + i32.store + br $block_0 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 4 + i32.store + br $block_0 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $1 + i32.const 5 + i32.store + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $2 + local.get $3 + i32.eq + if $if_6 (result i32) + local.get $2 + else + local.get $0 + i32.const 148 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + end ;; $if_6 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.tee $2 + local.get $0 + i32.load offset=8 + i32.eq + if $if + local.get $0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 1 + i32.shl + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm + local.get $0 + i32.load offset=4 + local.set $2 + end ;; $if + local.get $1 + i32.load + local.set $1 + local.get $0 + local.get $2 + i32.const 4 + i32.add + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE7reserveEm (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.const 2 + i32.shl + call $_malloc + local.tee $2 + i32.eqz + if $if_0 + call $__ZSt9terminatev + end ;; $if_0 + local.get $0 + i32.const 4 + i32.add + local.tee $4 + i32.load + local.get $0 + i32.load + local.tee $6 + i32.sub + local.tee $3 + if $if_1 + local.get $2 + local.get $6 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $2 + i32.store + else + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.const 2 + i32.shl + call $_realloc + local.tee $3 + i32.store + local.get $3 + if $if_2 + local.get $3 + local.set $2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + else + call $__ZSt9terminatev + end ;; $if_2 + end ;; $if + local.get $4 + local.get $5 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store + local.get $0 + local.get $1 + i32.const 2 + i32.shl + local.get $2 + i32.add + i32.store offset=8 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + local.get $1 + i32.store + block $block + block $block_0 + loop $loop + local.get $0 + i32.const 66 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseBareSourceNameEv + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_0 + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + local.tee $1 + i32.store + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + i32.const 0 + local.set $1 + end ;; $block + local.get $2 + global.set $32 + local.get $1 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.gt_s + if $if_0 (result i32) + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_1 (result i32) + i32.const 1 + else + local.get $2 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.lt_s + end ;; $if_1 + if $if_2 (result i32) + i32.const 0 + local.set $2 + loop $loop + block $block + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + local.tee $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 47 + i32.le_s + br_if $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 58 + i32.lt_s + if $if_4 (result i32) + i32.const -48 + else + local.get $3 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 26 + i32.ge_s + br_if $block + i32.const -55 + end ;; $if_4 + local.set $4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $4 + local.get $2 + i32.const 36 + i32.mul + i32.add + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.add + local.set $2 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $2 + i32.store + i32.const 0 + else + i32.const 1 + end ;; $if_2 + else + i32.const 1 + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10AbiTagAttrEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $block (result i32) + block $block_0 + local.get $0 + i32.const 4096 + i32.add + local.tee $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $6 + i32.load + local.tee $7 + local.get $1 + i32.const 15 + i32.add + i32.const -16 + i32.and + local.tee $2 + i32.add + local.tee $4 + i32.const 4087 + i32.gt_u + if $if (result i32) + local.get $2 + i32.const 4088 + i32.gt_u + if $if_0 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm + else + local.get $0 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv + local.get $5 + i32.load + local.tee $3 + i32.const 4 + i32.add + local.tee $0 + i32.load + local.tee $1 + local.get $2 + i32.add + local.set $4 + br $block_0 + end ;; $if_0 + else + local.get $7 + local.set $1 + local.get $6 + local.set $0 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $0 + local.get $4 + i32.store + local.get $1 + local.get $3 + i32.const 8 + i32.add + i32.add + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10AbiTagAttrC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 8 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 7820 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10AbiTagAttr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $4 + i32.const 17741 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 17747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $2 + if $if + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStream4growEm + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + i32.add + local.get $1 + i32.load + local.get $2 + call $_memmove + drop + local.get $0 + local.get $0 + i32.load offset=4 + local.get $2 + i32.add + i32.store offset=4 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle4NodeD0Ev (type $0) + (param $0 i32) + call $_llvm_trap + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator15allocateMassiveEm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.const 8 + i32.add + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + i32.load + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + local.get $1 + i32.const 8 + i32.add + return + else + call $__ZSt9terminatev + end ;; $if + i32.const 0 + ) + + (func $__ZN12_GLOBAL__N_120BumpPointerAllocator4growEv (type $0) + (param $0 i32) + (local $1 i32) + i32.const 4096 + call $_malloc + local.tee $1 + if $if + local.get $1 + local.get $0 + i32.const 4096 + i32.add + local.tee $0 + i32.load + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + else + call $__ZSt9terminatev + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SpecialSubstitutionEJNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 36 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7908 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17906 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 17924 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 17936 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $8 + i32.const 17949 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 17962 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17836 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 17866 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 17874 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 17882 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18032 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 5 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7952 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20PostfixQualifiedType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20PostfixQualifiedTypeEJRPNS2_4NodeERA9_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18100 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle20PostfixQualifiedTypeC2EPNS0_4NodeENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ReferenceTypeC2EPKNS0_4NodeENS0_13ReferenceKindE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 12 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 7996 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $3 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + i32.const 32 + i32.add + local.set $7 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 16 + i32.add + local.tee $5 + i32.load8_s + i32.eqz + if $if + local.get $4 + local.get $5 + i32.store + local.get $4 + local.get $5 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $5 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + local.get $6 + i32.load offset=4 + local.tee $0 + i32.load + i32.load offset=16 + local.set $5 + local.get $0 + local.get $1 + local.get $5 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $7 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block + block $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $8 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $2 + i32.const 18117 + i32.const 18115 + local.get $6 + i32.load + select + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.load8_s offset=5 + if $if_1 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 16 + i32.add + local.tee $4 + i32.load8_s + i32.eqz + if $if + local.get $3 + local.get $4 + i32.store + local.get $3 + local.get $4 + i32.load8_s + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $4 + i32.const 1 + i32.store8 + local.get $6 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE + block $block + block $block_0 + local.get $6 + i32.load offset=4 + local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + local.get $1 + local.get $0 + i32.load + i32.load offset=20 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + i32.load8_s offset=5 + if $if_0 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ReferenceType8collapseERNS_12OutputStreamE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.load offset=12 + local.tee $4 + i32.store + local.get $0 + local.get $1 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + loop $loop + local.get $1 + local.get $2 + local.get $1 + i32.load + i32.load offset=12 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.tee $3 + i32.load8_u offset=4 + i32.const 12 + i32.eq + if $if + local.get $0 + local.get $3 + i32.load offset=8 + local.tee $1 + i32.store offset=4 + local.get $0 + local.get $3 + i32.load offset=12 + local.tee $3 + local.get $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.tee $4 + i32.store + br $loop + end ;; $if + end ;; $loop + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=6 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=7 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.load8_s offset=5 + local.tee $2 + i32.const 2 + i32.eq + if $if (result i32) + local.get $0 + i32.load + i32.load + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $2 + i32.eqz + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PointerTypeEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $3 + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.tee $1 + i32.load8_s offset=5 + local.set $4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 11 + i32.store8 offset=4 + local.get $0 + local.get $4 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $2 + i32.const 8040 + i32.store + local.get $2 + local.get $1 + i32.store offset=8 + local.get $3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 + i32.const 16 + i32.add + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $4 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + if $if + local.get $0 + i32.load offset=8 + local.set $0 + local.get $8 + i32.const 18184 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $9 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $0 + i32.load offset=8 + local.set $4 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + local.get $4 + local.get $1 + local.get $4 + i32.load + i32.load offset=16 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + if $if_0 + local.get $5 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $6 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $7 + i32.const 18182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11PointerType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + local.get $0 + i32.load offset=8 + local.tee $2 + i32.load8_u offset=4 + i32.const 10 + i32.ne + br_if $block_0 + local.get $2 + call $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv + i32.eqz + if $if + local.get $0 + i32.load offset=8 + local.set $2 + br $block_0 + end ;; $if + br $block + end ;; $block_0 + block $block_1 + block $block_2 + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_2 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_2 + br $block_1 + end ;; $block_2 + local.get $3 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block_1 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName12isObjCObjectEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load8_u offset=4 + i32.const 7 + i32.eq + if $if (result i32) + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + i32.const 18170 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.eq + if $if (result i32) + block $block (result i32) + local.get $0 + i32.load + local.set $2 + local.get $0 + i32.load offset=4 + local.set $3 + local.get $1 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $2 + local.get $3 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + else + i32.const 0 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgsC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 32 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8084 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20NameWithTemplateArgs11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=8 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEC2EOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_0 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_0 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 74 + i32.sub + br_table + $block_2 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_3 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + if $if_0 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + local.set $0 + local.get $2 + global.set $32 + local.get $0 + return + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $4 + i32.store + local.get $4 + i32.eqz + br_if $block_5 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_5 + end ;; $loop + i32.const 0 + br $block + end ;; $block_4 + local.get $2 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 90 + i32.ne + if $if_2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $if_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_3 (result i32) + local.get $1 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + select + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm8EEaSEOS4_ (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load + local.get $0 + i32.const 12 + i32.add + i32.eq + local.set $2 + local.get $1 + i32.load + local.get $1 + i32.const 12 + i32.add + i32.eq + if $if + local.get $2 + i32.eqz + if $if_0 + local.get $0 + i32.load + call $_free + local.get $0 + local.get $0 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + local.get $0 + i32.const 44 + i32.add + i32.store offset=8 + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + local.tee $2 + i32.sub + local.tee $3 + if $if_1 + local.get $0 + i32.load + local.get $2 + local.get $3 + call $_memmove + drop + end ;; $if_1 + local.get $0 + local.get $0 + i32.load + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + else + local.get $2 + if $if_2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $1 + i32.const 12 + i32.add + local.tee $0 + i32.store + local.get $1 + local.get $0 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + else + local.get $0 + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $1 + local.get $2 + i32.store + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=4 + i32.store offset=4 + local.get $1 + local.get $2 + i32.store offset=4 + local.get $0 + i32.load offset=8 + local.set $2 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $1 + i32.load + i32.store offset=4 + end ;; $if_2 + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + local.get $1 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + local.get $0 + i32.load + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12TemplateArgsEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 30 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8128 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12TemplateArgs9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 18295 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.load offset=4 + local.tee $0 + if $if (result i32) + local.get $1 + i32.load + local.get $0 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 62 + i32.eq + if $if_0 + local.get $4 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $2 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $4 + i32.const 1 + local.set $5 + loop $loop + local.get $3 + local.get $0 + i32.load offset=4 + i32.ne + if $if + local.get $1 + i32.load offset=4 + local.set $6 + local.get $5 + i32.eqz + if $if_0 + local.get $2 + i32.const 18297 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + local.get $1 + i32.load offset=4 + i32.eq + if $if_1 + local.get $1 + local.get $6 + i32.store offset=4 + else + i32.const 0 + local.set $5 + end ;; $if_1 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop + end ;; $if + end ;; $loop + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + local.get $1 + i32.const 368 + i32.add + local.get $3 + local.get $2 + i32.sub + local.tee $1 + i32.const 2 + i32.shr_s + local.tee $4 + i32.const 2 + i32.shl + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $3 + local.get $1 + if $if + local.get $3 + local.get $2 + local.get $1 + call $_memmove + drop + end ;; $if + local.get $0 + local.get $3 + i32.store + local.get $0 + local.get $4 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ParameterPackEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ParameterPackC2ENS0_9NodeArrayE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 27 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8172 + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block + block $block_0 + loop $loop + local.get $1 + local.get $3 + i32.eq + br_if $block_0 + local.get $1 + i32.load + i32.load8_s offset=6 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + i32.const 1 + i32.store8 offset=6 + end ;; $block + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $block_1 + block $block_2 + loop $loop_0 + local.get $1 + local.get $3 + i32.eq + br_if $block_2 + local.get $1 + i32.load + i32.load8_s offset=7 + i32.const 1 + i32.eq + local.set $4 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $4 + br_if $loop_0 + end ;; $loop_0 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const 1 + i32.store8 offset=7 + end ;; $block_1 + local.get $2 + i32.load + local.set $1 + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.const 2 + i32.shl + i32.add + local.set $2 + block $block_3 + block $block_4 + loop $loop_1 + local.get $1 + local.get $2 + i32.eq + br_if $block_4 + local.get $1 + i32.load + i32.load8_s offset=5 + i32.const 1 + i32.eq + local.set $3 + local.get $1 + i32.const 4 + i32.add + local.set $1 + local.get $3 + br_if $loop_1 + end ;; $loop_1 + br $block_3 + end ;; $block_4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + end ;; $block_3 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + else + i32.const 0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=12 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + else + local.get $0 + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ParameterPack10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=16 + i32.const -1 + i32.eq + if $if + local.get $1 + local.get $0 + i32.load offset=12 + i32.store offset=16 + local.get $1 + i32.const 0 + i32.store offset=12 + end ;; $if + local.get $1 + i32.load offset=12 + local.tee $2 + local.get $0 + i32.load offset=12 + i32.lt_u + if $if_0 + local.get $0 + i32.load offset=8 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + end ;; $if_0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 352 + i32.add + global.set $32 + local.get $3 + i32.const 336 + i32.add + local.set $2 + local.get $3 + i32.const 344 + i32.add + local.set $5 + local.get $3 + i32.const 320 + i32.add + local.set $6 + local.get $3 + i32.const 312 + i32.add + local.set $7 + local.get $3 + i32.const 304 + i32.add + local.set $8 + local.get $3 + i32.const 296 + i32.add + local.set $9 + local.get $3 + i32.const 288 + i32.add + local.set $10 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $3 + i32.const 280 + i32.add + local.set $11 + local.get $3 + i32.const 272 + i32.add + local.set $12 + local.get $3 + i32.const 264 + i32.add + local.set $13 + local.get $3 + i32.const 256 + i32.add + local.set $14 + local.get $3 + i32.const 248 + i32.add + local.set $15 + local.get $3 + i32.const 240 + i32.add + local.set $16 + local.get $3 + i32.const 232 + i32.add + local.set $17 + local.get $3 + i32.const 224 + i32.add + local.set $18 + local.get $3 + i32.const 216 + i32.add + local.set $19 + local.get $3 + i32.const 208 + i32.add + local.set $20 + local.get $3 + i32.const 200 + i32.add + local.set $21 + local.get $3 + i32.const 192 + i32.add + local.set $22 + local.get $3 + i32.const 184 + i32.add + local.set $23 + local.get $3 + i32.const 176 + i32.add + local.set $24 + local.get $3 + i32.const 168 + i32.add + local.set $25 + local.get $3 + i32.const 160 + i32.add + local.set $26 + local.get $3 + i32.const 152 + i32.add + local.set $27 + local.get $3 + i32.const 144 + i32.add + local.set $28 + local.get $3 + i32.const 136 + i32.add + local.set $29 + local.get $3 + i32.const 128 + i32.add + local.set $30 + local.get $3 + i32.const 120 + i32.add + local.set $31 + local.get $3 + i32.const 112 + i32.add + local.set $32 + local.get $3 + i32.const 104 + i32.add + local.set $33 + local.get $3 + i32.const 96 + i32.add + local.set $34 + local.get $3 + i32.const 88 + i32.add + local.set $35 + local.get $3 + i32.const 80 + i32.add + local.set $36 + local.get $3 + i32.const 72 + i32.add + local.set $37 + local.get $3 + i32.const -64 + i32.sub + local.set $38 + local.get $3 + i32.const 56 + i32.add + local.set $39 + local.get $3 + i32.const 48 + i32.add + local.set $40 + local.get $3 + i32.const 40 + i32.add + local.set $41 + local.get $3 + i32.const 32 + i32.add + local.set $42 + local.get $3 + i32.const 24 + i32.add + local.set $43 + local.get $3 + i32.const 16 + i32.add + local.set $44 + local.get $3 + i32.const 328 + i32.add + i32.const 18826 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=328 align=4 + i64.store align=4 + local.get $5 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 2 + i32.lt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + local.get $0 + i32.load + local.tee $1 + i32.load8_s + i32.const 49 + i32.sub + br_table + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_19 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_0 $block_0 $block_18 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_16 $block_0 $block_15 $block_14 $block_13 $block_17 $block_12 $block_0 $block_11 $block_0 $block_0 $block_10 $block_9 $block_8 $block_7 $block_6 + $block_5 $block_4 $block_3 $block_2 + $block_0 ;; default + end ;; $block_19 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv + br $block + end ;; $block_18 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + br $block + end ;; $block_17 + block $block_20 + block $block_21 + block $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) local.get $2 - i32.mul - i32.eq - if $if_126 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_126 - local.get $4 - i32.const 186 - i32.add - local.tee $2 - local.tee $1 - if $if_127 (result i32) - local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_22 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 $block_20 + $block_20 $block_20 $block_20 $block_20 $block_21 + $block_20 ;; default + end ;; $block_22 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 2 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s offset=2 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $block_21 + br $block_20 + end ;; $block_21 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + br $block + end ;; $block_20 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv + br $block + end ;; $block_16 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + local.get $1 + i32.load8_s offset=1 + i32.const 78 + i32.sub + br_table + $block_27 $block_23 $block_23 $block_23 $block_23 $block_26 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_23 $block_23 $block_23 $block_30 $block_23 $block_23 $block_29 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 $block_23 + $block_28 $block_23 $block_23 $block_23 $block_23 $block_23 $block_25 $block_23 $block_23 $block_23 $block_23 $block_23 $block_24 + $block_23 ;; default + end ;; $block_30 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $6 + i32.const 18117 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_29 + local.get $0 local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_127 - local.tee $1 - local.get $2 - i32.lt_u - if $if_128 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_128 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_129 - i32.const 9 - local.set $1 + i32.const 2 + i32.add + i32.store + local.get $7 + i32.const 18115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - br $block_5 - end ;; $if_129 - local.get $4 - i32.const 190 - i32.add - local.tee $2 - local.tee $1 - if $if_130 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_130 - local.tee $1 - local.get $2 - i32.lt_u - if $if_131 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - br $block_5 - end ;; $if_131 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_28 + local.get $0 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_132 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_132 - local.get $4 - i32.const 192 + i32.const 2 i32.add - local.tee $2 - local.tee $1 - if $if_133 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_133 - local.tee $1 - local.get $2 - i32.lt_u - if $if_134 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_134 - local.get $3 - local.get $1 + i32.store + local.get $8 + i32.const 18115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_135 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_135 - local.get $4 - i32.const 196 - i32.add - local.tee $2 - local.tee $1 - if $if_136 (result i32) - local.get $3 - local.get $1 - i32.div_u - else - i32.const 0 - end ;; $if_136 - local.tee $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 local.get $2 - i32.lt_u - if $if_137 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 - local.get $2 - br $block_5 - end ;; $if_137 - local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_27 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $9 + i32.const 18829 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_26 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $10 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_25 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 18834 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_24 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 18834 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_23 + i32.const 0 + br $block + end ;; $block_15 + block $block_31 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + block $block_36 local.get $1 - local.get $2 - i32.mul - i32.eq - if $if_138 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_138 + i32.load8_s offset=1 + i32.const 99 + i32.sub + br_table + $block_36 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_31 $block_35 $block_34 $block_31 $block_33 $block_31 $block_31 $block_31 + $block_31 $block_31 $block_31 $block_32 + $block_31 ;; default + end ;; $block_36 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) local.get $4 - i32.const 198 - i32.add - local.tee $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv local.tee $1 - if $if_139 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ else i32.const 0 - end ;; $if_139 + end ;; $if_5 + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_35 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_37 (result i32) + local.get $0 + i32.const 8 + i32.add local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_38 + loop $loop + block $block_39 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_38 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_39 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_39 + end ;; $loop + i32.const 0 + br $block_37 + end ;; $block_38 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add local.get $2 - i32.lt_u - if $if_140 - i32.const 1 - local.set $1 - local.get $3 - local.set $0 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_37 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_34 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $11 + i32.const 18844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_33 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $12 + i32.const 18846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_32 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv + br $block + end ;; $block_31 + i32.const 0 + br $block + end ;; $block_14 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + local.get $1 + i32.load8_s offset=1 + i32.const 86 + i32.sub + br_table + $block_41 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_49 $block_40 $block_48 $block_40 $block_47 + $block_40 $block_40 $block_40 $block_40 $block_40 $block_40 $block_46 $block_40 $block_45 $block_40 $block_40 $block_40 $block_40 $block_44 $block_43 $block_40 + $block_42 + $block_40 ;; default + end ;; $block_49 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_7 + br $block + end ;; $block_48 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store local.get $2 - br $block_5 - end ;; $if_140 - local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + i32.const 0 + end ;; $if_8 + br $block + end ;; $block_47 + local.get $0 local.get $1 + i32.const 2 + i32.add + i32.store + local.get $13 + i32.const 18182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - i32.mul - i32.eq - if $if_141 - i32.const 9 - local.set $1 - local.get $2 - br $block_5 - end ;; $if_141 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_46 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) local.get $4 - i32.const 208 - i32.add - local.tee $2 - local.tee $1 - if $if_142 (result i32) - local.get $3 - local.get $1 - i32.div_u + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_45 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_44 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_11 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + local.get $2 + i32.const 18848 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block + end ;; $block_43 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_13 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_14 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_14 + else + i32.const 0 + end ;; $if_13 + br $block + end ;; $block_42 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $14 + i32.const 18851 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_41 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $15 + i32.const 18853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_40 + i32.const 0 + br $block + end ;; $block_13 + block $block_50 + block $block_51 + block $block_52 + block $block_53 + local.get $1 + i32.load8_s offset=1 + i32.const 79 + i32.sub + br_table + $block_52 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 $block_50 + $block_53 $block_50 $block_51 + $block_50 ;; default + end ;; $block_53 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $16 + i32.const 18856 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_52 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $17 + i32.const 18858 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_51 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $18 + i32.const 18861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_50 + i32.const 0 + br $block + end ;; $block_12 + block $block_54 + block $block_55 + block $block_56 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_56 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_54 $block_55 + $block_54 ;; default + end ;; $block_56 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $19 + i32.const 18864 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_55 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $20 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_54 + i32.const 0 + br $block + end ;; $block_11 + block $block_57 + block $block_58 + block $block_59 + local.get $1 + i32.load8_s offset=1 + i32.const 108 + i32.sub + br_table + $block_57 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_58 $block_59 + $block_58 ;; default + end ;; $block_59 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_16 + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_58 + i32.const 0 + br $block + end ;; $block_57 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_60 + loop $loop_0 + block $block_61 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_60 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_61 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_61 + end ;; $loop_0 + i32.const 0 + br $block + end ;; $block_60 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ + br $block + end ;; $block_10 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + local.get $1 + i32.load8_s offset=1 + i32.const 83 + i32.sub + br_table + $block_64 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_62 $block_62 $block_66 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 $block_62 + $block_65 $block_63 + $block_62 ;; default + end ;; $block_66 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $21 + i32.const 18867 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_65 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $22 + i32.const 18870 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_64 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $23 + i32.const 18873 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_63 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $24 + i32.const 18295 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_62 + i32.const 0 + br $block + end ;; $block_9 + block $block_67 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $1 + i32.load8_s offset=1 + i32.const 73 + i32.sub + br_table + $block_71 $block_67 $block_67 $block_69 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 $block_67 + $block_72 $block_67 $block_67 $block_70 $block_68 + $block_67 ;; default + end ;; $block_72 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $25 + i32.const 18716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_71 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $26 + i32.const 18877 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_70 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $27 + i32.const 18182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_69 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $28 + i32.const 18880 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_68 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_17 + local.get $29 + i32.const 18883 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_17 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_18 (result i32) + local.get $0 + local.get $2 + i32.const 18883 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_18 + br $block + end ;; $block_67 + i32.const 0 + br $block + end ;; $block_8 + block $block_73 + block $block_74 + block $block_75 + block $block_76 + block $block_77 + block $block_78 + local.get $1 + i32.load8_s offset=1 + i32.const 97 + i32.sub + br_table + $block_78 $block_73 $block_73 $block_73 $block_77 $block_73 $block_76 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 $block_73 + $block_73 $block_73 $block_73 $block_75 $block_73 $block_73 $block_78 $block_74 + $block_73 ;; default + end ;; $block_78 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv + br $block + end ;; $block_77 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $30 + i32.const 18886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_76 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $31 + i32.const 18716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_75 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $32 + i32.const 18889 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_74 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_19 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_19 + br $block + end ;; $block_73 + i32.const 0 + br $block + end ;; $block_7 + block $block_79 + block $block_80 + block $block_81 + block $block_82 + block $block_83 + local.get $1 + i32.load8_s offset=1 + i32.const 82 + i32.sub + br_table + $block_80 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 + $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_79 $block_83 $block_82 $block_79 $block_79 + $block_81 + $block_79 ;; default + end ;; $block_83 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_82 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $33 + i32.const 18891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_81 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $34 + i32.const 18894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_80 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $35 + i32.const 18896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_79 + i32.const 0 + br $block + end ;; $block_6 + block $block_84 + block $block_85 + block $block_86 + block $block_87 + block $block_88 + block $block_89 + block $block_90 + local.get $1 + i32.load8_s offset=1 + i32.const 76 + i32.sub + br_table + $block_88 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 $block_84 + $block_89 $block_90 $block_84 $block_84 $block_87 $block_84 $block_84 $block_86 $block_85 + $block_84 ;; default + end ;; $block_90 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $36 + i32.const 18899 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_89 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $37 + i32.const 18903 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $37 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_88 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $38 + i32.const 18905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $38 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_87 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_20 + local.get $39 + i32.const 18908 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $39 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $if_20 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_21 (result i32) + local.get $0 + local.get $2 + i32.const 18908 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_21 + br $block + end ;; $block_86 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $40 + i32.const 18903 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $40 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE + br $block + end ;; $block_85 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_22 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_23 (result i32) + local.get $0 + local.get $2 + i32.const 18911 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_23 + else + i32.const 0 + end ;; $if_22 + br $block + end ;; $block_84 + i32.const 0 + br $block + end ;; $block_5 + i32.const 0 + local.get $1 + i32.load8_s offset=1 + i32.const 117 + i32.ne + br_if $block + drop + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_25 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_26 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $2 + i32.load + local.get $4 + i32.load + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_26 + else + i32.const 0 + end ;; $if_25 + else + i32.const 0 + end ;; $if_24 + br $block + end ;; $block_4 + block $block_91 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 + local.get $1 + i32.load8_s offset=1 + i32.const 77 + i32.sub + br_table + $block_94 $block_91 $block_91 $block_91 $block_91 $block_91 $block_92 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_96 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 $block_91 + $block_95 $block_91 $block_91 $block_91 $block_91 $block_91 $block_93 + $block_91 ;; default + end ;; $block_96 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_27 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_28 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_28 + else + i32.const 0 + end ;; $if_27 + br $block + end ;; $block_95 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $41 + i32.const 18914 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $41 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_94 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $42 + i32.const 18916 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $42 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_93 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $43 + i32.const 18919 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $43 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_92 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $44 + i32.const 18922 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $44 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE + br $block + end ;; $block_91 + i32.const 0 + br $block + end ;; $block_3 + block $block_97 + block $block_98 + block $block_99 + block $block_100 + block $block_101 + block $block_102 + block $block_103 + block $block_104 + local.get $1 + i32.load8_s offset=1 + i32.const 80 + i32.sub + br_table + $block_98 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_99 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_97 $block_97 $block_97 $block_104 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 $block_97 + $block_103 $block_97 $block_102 $block_97 $block_101 $block_97 $block_97 $block_97 $block_97 $block_97 $block_100 + $block_97 ;; default + end ;; $block_104 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_29 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_30 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_30 + else + i32.const 0 + end ;; $if_29 + br $block + end ;; $block_103 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_31 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ParameterPackExpansionEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_31 + br $block + end ;; $block_102 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_101 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_32 (result i32) + local.get $0 + i32.const 18926 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_32 + br $block + end ;; $block_100 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_33 (result i32) + local.get $0 + i32.const 18926 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_33 + br $block + end ;; $block_99 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + block $block_105 + block $block_106 + block $block_107 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_34 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_34 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_107 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 $block_105 + $block_105 $block_105 $block_106 + $block_105 ;; default + end ;; $block_107 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_35 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_35 + br $block + end ;; $block_106 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv + local.tee $1 + i32.store + local.get $1 + if $if_36 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_36 + br $block + end ;; $block_105 + i32.const 0 + br $block + end ;; $block_98 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_108 + loop $loop_1 + block $block_109 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_108 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseTemplateArgEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_109 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_1 + end ;; $block_109 + end ;; $loop_1 + i32.const 0 + br $block + end ;; $block_108 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + i32.const 368 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + br $block + end ;; $block_97 + i32.const 0 + br $block + end ;; $block_2 + block $block_110 + block $block_111 + block $block_112 + block $block_113 + block $block_114 + block $block_115 + local.get $1 + i32.load8_s offset=1 + i32.const 101 + i32.sub + br_table + $block_115 $block_110 $block_110 $block_110 $block_114 $block_110 $block_110 $block_113 $block_110 $block_110 $block_110 $block_110 $block_110 $block_112 $block_110 $block_110 + $block_110 $block_110 $block_111 + $block_110 ;; default + end ;; $block_115 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_37 (result i32) + local.get $0 + i32.const 18935 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_37 + br $block + end ;; $block_114 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_38 (result i32) + local.get $0 + i32.const 18935 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ + else + i32.const 0 + end ;; $if_38 + br $block + end ;; $block_113 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_39 (result i32) + block $block_116 (result i32) + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_117 + loop $loop_2 + block $block_118 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_117 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_118 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_2 + end ;; $block_118 + end ;; $loop_2 + i32.const 0 + br $block_116 + end ;; $block_117 + local.get $4 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $4 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block_116 + else + i32.const 0 + end ;; $if_39 + br $block + end ;; $block_112 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 18944 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_111 + local.get $0 + local.get $1 + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_40 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_40 + br $block + end ;; $block_110 + i32.const 0 + br $block + end ;; $block_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + end ;; $if + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseExprPrimaryEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 160 + i32.add + global.set $32 + local.get $2 + i32.const 144 + i32.add + local.set $1 + local.get $2 + i32.const 136 + i32.add + local.set $3 + local.get $2 + i32.const 128 + i32.add + local.set $4 + local.get $2 + i32.const 120 + i32.add + local.set $5 + local.get $2 + i32.const 112 + i32.add + local.set $6 + local.get $2 + i32.const 104 + i32.add + local.set $7 + local.get $2 + i32.const 96 + i32.add + local.set $8 + local.get $2 + i32.const 88 + i32.add + local.set $9 + local.get $2 + i32.const 80 + i32.add + local.set $10 + local.get $2 + i32.const 72 + i32.add + local.set $11 + local.get $2 + i32.const -64 + i32.sub + local.set $12 + local.get $2 + i32.const 56 + i32.add + local.set $13 + local.get $2 + i32.const 48 + i32.add + local.set $14 + local.get $2 + i32.const 40 + i32.add + local.set $15 + local.get $2 + i32.const 32 + i32.add + local.set $16 + local.get $2 + i32.const 24 + i32.add + local.set $17 + local.get $2 + i32.const 16 + i32.add + local.set $18 + local.get $2 + i32.const 8 + i32.add + local.set $19 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $20 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $20 + i32.load8_s else i32.const 0 - end ;; $if_142 - local.tee $1 - local.get $2 - i32.lt_u - local.set $7 - i32.const 1 - i32.const 9 - i32.const 0 - local.get $3 - local.get $1 - local.get $2 - i32.mul - i32.eq - local.tee $10 - select - local.get $7 - select - local.set $1 - local.get $3 - local.get $0 - local.get $7 - select - local.set $0 - local.get $2 - local.get $4 - i32.const 210 - i32.add - local.get $7 - local.get $10 - i32.or - select - end ;; $block_5 - end ;; $if_21 - end ;; $if_20 - end ;; $if_18 - end ;; $if_17 - end ;; $if_15 - end ;; $if_14 - end ;; $if_12 - end ;; $if_11 - end ;; $if_9 - end ;; $if_8 - end ;; $if_6 - end ;; $if_5 - local.set $4 - end ;; $if_3 - end ;; $if_2 - block $block_6 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 84 + i32.sub + br_table + $block_20 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_16 $block_18 $block_17 + $block_3 $block_2 $block_4 $block_0 $block_15 $block_12 $block_11 $block_0 $block_10 $block_9 $block_6 $block_5 $block_0 $block_0 $block_0 $block_14 + $block_13 $block_0 $block_0 $block_19 $block_8 $block_7 + $block_0 ;; default + end ;; $block_20 + i32.const 0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $3 + i32.const 18399 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_18 + local.get $4 + i32.const 18407 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 0 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $if_1 + local.get $5 + i32.const 18411 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $1 + i32.const 1 + i32.store + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $6 + i32.const 17489 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_16 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $7 + i32.const 17494 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $8 + i32.const 17506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_14 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $9 + i32.const 17520 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $10 + i32.const 17526 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_12 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $11 + i32.const 25462 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $12 + i32.const 18415 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $13 + i32.const 18417 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $14 + i32.const 18419 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $15 + i32.const 18422 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $16 + i32.const 18425 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $17 + i32.const 17587 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $18 + i32.const 17596 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv + br $block + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv + br $block + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv + br $block + end ;; $block_1 + local.get $19 + i32.const 17423 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + i32.const 0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + br_if $block + drop + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + if $if_2 + local.get $1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block + drop + end ;; $if_2 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_3 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + local.set $5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $4 + local.get $5 + if $if_4 (result i32) + local.get $3 + i32.const 0 + local.get $4 + select + else + local.get $4 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $block + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseIntegerLiteralENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if (result i32) + i32.const 0 + else + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8BoolExprEJiEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIfEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 9 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 8 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 8 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIdEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 17 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 16 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 16 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseFloatingLiteralIeEEPNS0_4NodeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.const 21 + i32.lt_u + if $if (result i32) + i32.const 0 + else + local.get $1 + local.get $0 + i32.load + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.const 20 + i32.add + i32.store offset=4 + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $4 + block $block (result i32) + block $block_0 + loop $loop (result i32) + local.get $2 + local.get $4 + i32.eq + br_if $block_0 + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + i32.const 0 + i32.ne + local.get $3 + i32.const 32 + i32.or + i32.const -97 + i32.add + i32.const 6 + i32.lt_u + i32.or + i32.eqz + local.set $3 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + i32.eqz + br_if $loop + i32.const 0 + end ;; $loop + br $block + end ;; $block_0 + local.get $0 + local.get $0 + i32.load + i32.const 20 + i32.add + i32.store + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + end ;; $block + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15IntegerCastExprEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15IntegerCastExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 60 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8216 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15IntegerCastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIeEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 64 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8260 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIeE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $4 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $4 + i32.sub + i32.const 20 + i32.gt_u + if $if + local.get $6 + i32.const 8 + i32.add + local.set $9 + local.get $6 + local.set $0 + loop $loop + local.get $3 + i32.const 20 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $4 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $4 + i32.add + i32.load8_s + local.tee $8 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $8 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $6 + local.set $3 + local.get $9 + i32.const 2 + i32.add + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $4 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $4 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $2 + i64.const 0 + i64.store offset=32 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $2 + i32.const 40 + i32.const 18481 + local.get $5 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $7 + local.get $2 + i32.store + local.get $7 + local.get $0 + i32.store offset=4 + local.get $5 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIdEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 63 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8304 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIdE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.set $5 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 16 + i32.gt_u + if $if + local.get $5 + i32.const 8 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 16 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $2 + i64.const 0 + i64.store offset=24 + local.get $4 + local.get $5 + f64.load + f64.store + local.get $2 + i32.const 32 + i32.const 18542 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FloatLiteralImplIfEEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 62 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8348 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FloatLiteralImplIfE9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 40 + i32.add + local.set $5 + local.get $2 + i32.const 32 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.tee $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + local.get $7 + i32.sub + i32.const 8 + i32.gt_u + if $if + local.get $5 + i32.const 4 + i32.add + local.set $8 + local.get $5 + local.set $0 + loop $loop + local.get $3 + i32.const 8 + i32.ne + if $if_0 + local.get $0 + i32.const 208 + i32.const 169 + local.get $7 + local.get $3 + i32.const 1 + i32.or + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 0 + i32.const 9 + local.get $3 + local.get $7 + i32.add + i32.load8_s + local.tee $9 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + select + local.get $9 + i32.add + i32.const 4 + i32.shl + i32.add + i32.store8 + local.get $0 + i32.const 1 + i32.add + local.set $0 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop + end ;; $if_0 + end ;; $loop + local.get $5 + local.set $3 + local.get $8 + local.set $0 + loop $loop_0 + local.get $3 + local.get $0 + i32.const -1 + i32.add + local.tee $0 + i32.lt_u + if $if_1 + local.get $3 + i32.load8_s + local.set $8 + local.get $3 + local.get $0 + i32.load8_s + i32.store8 + local.get $0 + local.get $8 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop_0 + end ;; $if_1 + end ;; $loop_0 + local.get $2 + i64.const 0 + i64.store + local.get $2 + i64.const 0 + i64.store offset=8 + local.get $2 + i64.const 0 + i64.store offset=16 + local.get $4 + local.get $5 + f32.load + f64.promote_f32 + f64.store + local.get $2 + i32.const 24 + i32.const 18601 + local.get $4 + call $_snprintf + local.get $2 + i32.add + local.set $0 + local.get $6 + local.get $2 + i32.store + local.get $6 + local.get $0 + i32.store offset=4 + local.get $4 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8BoolExprC2Eb (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 59 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8392 + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8BoolExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=8 + if $if + local.get $2 + i32.const 18661 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + else + local.get $2 + i32.const 18666 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14IntegerLiteralEJRNS_10StringViewES5_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14IntegerLiteralC2ENS_10StringViewES2_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 61 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8436 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14IntegerLiteral9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 3 + i32.gt_u + if $if + local.get $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=16 + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $0 + i32.const 16 + i32.add + local.tee $6 + i32.load + i32.load8_s + i32.const 110 + i32.eq + if $if_0 + local.get $4 + i32.const 18716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + local.get $6 + i32.const 1 + call $__ZNK12_GLOBAL__N_110StringView9dropFrontEm + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + else + local.get $3 + local.get $6 + i64.load align=4 + i64.store offset=8 + local.get $2 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + end ;; $if_0 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $0 + i32.load offset=8 + i32.sub + i32.const 4 + i32.lt_u + if $if_1 + local.get $3 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_110StringView9dropFrontEm (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $1 + i32.load offset=4 + local.set $3 + local.get $0 + local.get $1 + i32.load + local.get $2 + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.tee $1 + i32.const -1 + i32.add + local.get $1 + local.get $2 + i32.gt_u + select + i32.add + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20TemplateArgumentPackEJRNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 28 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8480 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle20TemplateArgumentPack9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseFunctionParamEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + i32.const 21072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_0 + else + local.get $2 + i32.const 21075 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 0 + else + local.get $0 + i32.const 112 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + drop + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_4 (result i32) + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseFoldExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 288 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 272 + i32.add + local.set $7 + local.get $2 + i32.const 264 + i32.add + local.set $3 + local.get $2 + i32.const 256 + i32.add + local.set $4 + local.get $2 + i32.const 248 + i32.add + local.set $8 + local.get $2 + i32.const 240 + i32.add + local.set $9 + local.get $2 + i32.const 232 + i32.add + local.set $10 + local.get $2 + i32.const 224 + i32.add + local.set $11 + local.get $2 + i32.const 216 + i32.add + local.set $12 + local.get $2 + i32.const 208 + i32.add + local.set $13 + local.get $2 + i32.const 200 + i32.add + local.set $14 + local.get $2 + i32.const 192 + i32.add + local.set $15 + local.get $2 + i32.const 184 + i32.add + local.set $16 + local.get $2 + i32.const 176 + i32.add + local.set $17 + local.get $2 + i32.const 168 + i32.add + local.set $18 + local.get $2 + i32.const 160 + i32.add + local.set $19 + local.get $2 + i32.const 152 + i32.add + local.set $20 + local.get $2 + i32.const 144 + i32.add + local.set $21 + local.get $2 + i32.const 136 + i32.add + local.set $22 + local.get $2 + i32.const 128 + i32.add + local.set $23 + local.get $2 + i32.const 120 + i32.add + local.set $24 + local.get $2 + i32.const 112 + i32.add + local.set $25 + local.get $2 + i32.const 104 + i32.add + local.set $26 + local.get $2 + i32.const 96 + i32.add + local.set $27 + local.get $2 + i32.const 88 + i32.add + local.set $28 + local.get $2 + i32.const 80 + i32.add + local.set $29 + local.get $2 + i32.const 72 + i32.add + local.set $30 + local.get $2 + i32.const -64 + i32.sub + local.set $31 + local.get $2 + i32.const 56 + i32.add + local.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $33 + local.get $2 + i32.const 40 + i32.add + local.set $34 + local.get $2 + i32.const 32 + i32.add + local.set $35 + local.get $2 + i32.const 24 + i32.add + local.set $36 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 102 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 $block_1 + $block_2 $block_1 $block_1 $block_1 $block_1 $block_1 $block_0 + $block_1 ;; default + end ;; $block_2 + i32.const 1 + local.set $37 + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $7 + local.get $37 + i32.store8 + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + i32.const 20925 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + block $block_3 + block $block_4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $1 + i32.const 18117 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + else + block $block_5 + local.get $4 + i32.const 20928 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_2 + local.get $1 + i32.const 18115 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_2 + local.get $8 + i32.const 20931 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_3 + local.get $1 + i32.const 18829 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_3 + local.get $9 + i32.const 20934 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $1 + i32.const 18832 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_4 + local.get $10 + i32.const 20937 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_5 + local.get $1 + i32.const 18844 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_5 + local.get $11 + i32.const 20940 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $11 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_6 + local.get $1 + i32.const 18848 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_6 + local.get $12 + i32.const 20943 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $12 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_7 + local.get $1 + i32.const 18851 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_7 + local.get $13 + i32.const 20946 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $13 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_8 + local.get $1 + i32.const 18853 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_8 + local.get $14 + i32.const 20949 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $14 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_9 + local.get $1 + i32.const 18856 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_9 + local.get $15 + i32.const 20952 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $15 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_10 + local.get $1 + i32.const 18858 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_10 + local.get $16 + i32.const 20955 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $16 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_11 + local.get $1 + i32.const 18861 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_11 + local.get $17 + i32.const 20958 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $17 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_12 + local.get $1 + i32.const 18864 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_12 + local.get $18 + i32.const 20961 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $18 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_13 + local.get $1 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_13 + local.get $19 + i32.const 20964 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $19 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_14 + local.get $1 + i32.const 18867 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_14 + local.get $20 + i32.const 20967 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $20 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_15 + local.get $1 + i32.const 18870 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_15 + local.get $21 + i32.const 20970 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $21 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_16 + local.get $1 + i32.const 18873 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_16 + local.get $22 + i32.const 20973 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $22 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_17 + local.get $1 + i32.const 18295 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_17 + local.get $23 + i32.const 20976 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $23 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_18 + local.get $1 + i32.const 18716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_18 + local.get $24 + i32.const 20979 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $24 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_19 + local.get $1 + i32.const 18877 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_19 + local.get $25 + i32.const 20982 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $25 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_20 + local.get $1 + i32.const 18182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_20 + local.get $26 + i32.const 20985 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $26 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_21 + local.get $1 + i32.const 18880 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_21 + local.get $27 + i32.const 20988 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $27 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_22 + local.get $1 + i32.const 18886 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_22 + local.get $28 + i32.const 20991 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $28 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_23 + local.get $1 + i32.const 18891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_23 + local.get $29 + i32.const 20994 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $29 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_24 + local.get $1 + i32.const 18894 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_24 + local.get $30 + i32.const 20997 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $30 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_25 + local.get $1 + i32.const 18896 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_25 + local.get $31 + i32.const 21000 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $31 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_26 + local.get $1 + i32.const 18903 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_26 + local.get $32 + i32.const 21003 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $32 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_27 + local.get $1 + i32.const 18905 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_27 + local.get $33 + i32.const 21006 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $33 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_28 + local.get $1 + i32.const 18914 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_28 + local.get $34 + i32.const 21009 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $34 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_29 + local.get $1 + i32.const 18916 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_29 + local.get $35 + i32.const 21012 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $35 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_30 + local.get $1 + i32.const 18919 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $if_30 + local.get $36 + i32.const 21015 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $36 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_31 + i32.const 0 + local.set $0 + br $block_5 + end ;; $if_31 + local.get $1 + i32.const 18922 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block_4 + end ;; $block_5 + end ;; $if_1 + br $block_3 + end ;; $block_4 + local.get $2 + local.get $1 + i64.load + i64.store + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $5 + i32.const 0 + i32.store + local.get $3 + if $if_32 (result i32) + block $block_6 (result i32) + block $block_7 + block $block_8 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_8 $block_7 $block_7 $block_7 $block_7 $block_7 $block_8 + $block_7 ;; default + end ;; $block_8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + i32.const 0 + local.get $4 + i32.eqz + br_if $block_6 + drop + local.get $37 + if $if_33 + local.get $1 + local.get $4 + i32.store + local.get $5 + local.get $3 + i32.store + end ;; $if_33 + end ;; $block_7 + local.get $0 + i32.const 368 + i32.add + local.get $7 + local.get $2 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ + end ;; $block_6 + else + i32.const 0 + end ;; $if_32 + local.set $0 + end ;; $block_3 + end ;; $block + else + i32.const 0 + local.set $0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBinaryExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 4 + i32.add + local.tee $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parsePrefixExprENS_10StringViewE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $3 + i32.store + local.get $3 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA10_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseConversionExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $1 + local.get $2 + i32.const 16 + i32.add + i32.const 20713 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $1 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $1 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $1 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $4 + i32.store + local.get $1 + i32.load8_s offset=5 + if $if_0 + local.get $1 + i32.load + local.get $1 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_2 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $4 + i32.store + local.get $4 + if $if_3 (result i32) + local.get $2 + local.get $0 + local.get $1 + local.get $1 + i32.const 4 + i32.add + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13makeNodeArrayIPPNS0_4NodeEEENS0_9NodeArrayET_SB_ + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $5 + i32.load offset=4 + local.get $5 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_0 + loop $loop + block $block_1 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $block_1 + end ;; $loop + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10DeleteExprEJRPNS0_4NodeERbbEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $2 + local.get $4 + i32.const 16 + i32.add + local.set $1 + local.get $4 + i32.const 8 + i32.add + local.tee $3 + i32.const 0 + i32.store + local.get $4 + i32.const 24 + i32.add + i32.const 19852 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load offset=24 align=4 + i64.store align=4 + block $block + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_2 + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_3 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_3 + end ;; $if_2 + block $block_0 + block $block_1 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_4 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + br_if $block_1 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + br $loop + end ;; $if_4 + end ;; $loop + br $block_0 + end ;; $block_1 + i32.const 0 + local.set $0 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + i32.const 0 + end ;; $if_0 + else + local.get $1 + i32.const 18826 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + local.set $5 + local.get $4 + i32.const 19856 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_6 + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + i32.eqz + local.get $5 + i32.const 1 + i32.xor + i32.or + if $if_7 + local.get $1 + local.set $0 + br $block + end ;; $if_7 + local.get $3 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + local.tee $0 + i32.store + br $block + end ;; $if_6 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_9 + block $block_2 + loop $loop_0 + block $block_3 + local.get $2 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_3 + local.get $3 + i32.load + if $if_10 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + local.get $5 + if $if_11 + local.get $3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ + i32.store + else + local.get $3 + local.get $6 + i32.store + end ;; $if_11 + end ;; $if_10 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop_0 + br $block_2 + end ;; $block_3 + end ;; $loop_0 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + else + local.get $3 + local.get $0 + local.tee $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + if $if_12 + i32.const 0 + local.set $0 + br $block + end ;; $if_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_13 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_13 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_14 + local.get $2 + local.get $1 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_15 + local.get $3 + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + else + i32.const 0 + local.set $0 + br $block + end ;; $if_15 + end ;; $if_14 + end ;; $if_9 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv + local.tee $1 + i32.store + local.get $1 + if $if_16 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_16 + end ;; $if + local.set $0 + end ;; $block + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10MemberExprEJRPNS0_4NodeERA3_KcSA_EEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + block $block_0 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 100 + i32.ne + br_if $block_0 + block $block_1 (result i32) + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 88 + i32.sub + br_table + $block_2 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_0 $block_4 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_3 + $block_0 ;; default + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $2 + i32.const 0 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + i32.const 0 + end ;; $if_1 + br $block_1 + end ;; $block_3 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $2 + i32.const 1 + i32.store8 + local.get $0 + local.get $3 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + br $block_1 + end ;; $block_2 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseBracedExprEv + local.tee $1 + i32.store + local.get $1 + if $if_7 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $4 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ + local.get $0 + else + i32.const 0 + end ;; $if_7 + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11PostfixExprEJRPNS0_4NodeERA3_KcEEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseNewExprEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $1 + local.get $2 + i32.const 57 + i32.add + local.set $6 + local.get $2 + i32.const 56 + i32.add + local.set $7 + local.get $2 + i32.const 32 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $8 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 40 + i32.add + i32.const 18826 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=40 align=4 + i64.store align=4 + local.get $6 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.const 1 + i32.and + i32.store8 + local.get $7 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $9 + i32.sub + i32.const 1 + i32.gt_u + if $if (result i32) + local.get $9 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 97 + i32.eq + i32.store8 + local.get $4 + i32.const 19440 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $3 + i32.const 19443 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + i32.const 0 + br $block + end ;; $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $4 + local.tee $3 + i32.load offset=4 + local.get $3 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_1 + block $block_2 + loop $loop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_0 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $9 + i32.store + local.get $9 + i32.eqz + br_if $block_2 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop + end ;; $if_0 + end ;; $loop + br $block_1 + end ;; $block_2 + i32.const 0 + br $block + end ;; $block_1 + local.get $8 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_1 (result i32) + block $block_3 (result i32) + local.get $5 + i32.const 19446 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + i32.const 0 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $block_3 + drop + local.get $1 + i32.const 0 + i32.store + local.get $1 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + br $block_3 + end ;; $if_2 + local.get $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $3 + block $block_4 + loop $loop_0 + block $block_5 + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseExprEv + local.tee $5 + i32.store + local.get $5 + i32.eqz + br_if $block_5 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $loop_0 + end ;; $block_5 + end ;; $loop_0 + i32.const 0 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $8 + local.get $2 + local.get $1 + local.get $6 + local.get $7 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ + end ;; $block_3 + else + i32.const 0 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13EnclosingExprEJRA12_KcRPNS0_4NodeERA2_S8_EEESC_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ThrowExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 58 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8524 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ThrowExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18950 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 56 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8568 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12InitListExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $2 + if $if + local.get $2 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $1 + i32.const 123 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 125 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13NodeArrayNodeEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 0 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8612 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA12_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19101 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 47 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8656 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13EnclosingExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store offset=8 + local.get $2 + i32.const 16 + i32.add + local.tee $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=20 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle19SizeofParamPackExprEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 49 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8700 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19SizeofParamPackExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 32 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 24 + i32.add + local.tee $5 + i32.const 19163 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $0 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 29 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8744 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ParameterPackExpansion9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 48 + i32.add + local.set $5 + local.get $2 + i32.const 24 + i32.add + local.set $8 + local.get $2 + i32.const 32 + i32.add + local.tee $7 + local.tee $3 + local.get $1 + i32.const 12 + i32.add + i32.store + local.get $3 + local.get $1 + i32.load offset=12 + i32.store offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=12 + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.tee $6 + local.get $1 + i32.const 16 + i32.add + i32.store + local.get $6 + local.get $1 + i32.load offset=16 + i32.store offset=4 + local.get $6 + i32.const 1 + i32.store8 offset=8 + local.get $1 + i32.const -1 + i32.store offset=16 + local.get $1 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $1 + i32.load offset=16 + local.tee $6 + i32.const -1 + i32.sub + br_table + $block_2 $block_1 + $block_0 ;; default + end ;; $block_2 + local.get $8 + i32.const 17643 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_1 + local.get $1 + local.get $4 + i32.store offset=4 + br $block + end ;; $block_0 + i32.const 1 + local.set $4 + loop $loop + local.get $4 + local.get $6 + i32.ge_u + br_if $block + local.get $2 + i32.const 18297 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $5 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + local.get $4 + i32.store offset=12 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop + unreachable + end ;; $loop + unreachable + end ;; $block + local.get $3 + i32.load8_s offset=8 + if $if + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.store + end ;; $if + local.get $7 + i32.load8_s offset=8 + if $if_0 + local.get $7 + i32.load + local.get $7 + i32.load offset=4 + i32.store + end ;; $if_0 + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA9_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $3 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $1 + local.get $3 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $5 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA12_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19289 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 48 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8788 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CastExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $6 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 32 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18295 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load + i32.load offset=16 + local.set $7 + local.get $4 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $5 + i32.const 19301 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 + local.get $0 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $6 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA17_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 19348 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ConditionalExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 45 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8832 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ConditionalExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19365 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 19371 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $3 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13EnclosingExprEJRA11_KcRPNS2_4NodeERA2_S4_EEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $5 + i32.const 19429 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle13EnclosingExprC2ENS_10StringViewEPNS0_4NodeES2_ + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle7NewExprEJRNS2_9NodeArrayERPNS2_4NodeES4_RbS9_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $6 + i32.const 24 + i32.add + local.set $7 + local.get $6 + i32.const 16 + i32.add + local.set $8 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $6 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.load + local.set $1 + local.get $6 + local.get $3 + i64.load align=4 + i64.store + local.get $4 + i32.load8_s + i32.const 0 + i32.ne + local.set $2 + local.get $5 + i32.load8_s + i32.const 0 + i32.ne + local.set $3 + local.get $8 + local.get $6 + i64.load offset=8 align=4 + i64.store align=4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $8 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb + local.get $6 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle7NewExprC2ENS0_9NodeArrayEPNS0_4NodeES2_bb (type $13) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 51 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8876 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=20 align=4 + local.get $0 + local.get $4 + i32.const 1 + i32.and + i32.store8 offset=28 + local.get $0 + local.get $5 + i32.const 1 + i32.and + i32.store8 offset=29 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle7NewExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 48 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=28 + if $if + local.get $4 + i32.const 19449 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $3 + i32.const 32 + i32.add + local.set $4 + local.get $3 + i32.const 24 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + local.set $6 + local.get $3 + i32.const 8 + i32.add + local.set $7 + local.get $3 + i32.const 40 + i32.add + i32.const 19461 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=40 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=29 + if $if_0 + local.get $4 + i32.const 19465 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.tee $4 + i32.load offset=4 + if $if_1 + local.get $5 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $6 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.const 20 + i32.add + local.tee $0 + i32.load offset=4 + if $if_2 + local.get $7 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $3 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11PostfixExprEJRPNS2_4NodeERA3_KcEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle11PostfixExprC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 44 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8920 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12InitListExprEJDnNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12InitListExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $1 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.const 8 + i32.add + local.set $3 + local.get $1 + i32.const 16 + i32.add + local.tee $2 + i32.const 0 + i32.store + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm + if $if (result i32) + i32.const 0 + else + local.get $2 + i32.load + local.tee $2 + i32.const -1 + i32.add + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.lt_u + if $if_0 (result i32) + local.get $3 + local.get $0 + i32.load + local.tee $5 + i32.store + local.get $3 + local.get $2 + local.get $5 + i32.add + i32.store offset=4 + local.get $0 + local.get $2 + local.get $0 + i32.load + i32.add + i32.store + local.get $1 + i32.const 19668 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $4 + call $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ + else + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_10BracedExprEJRPNS0_4NodeESA_bEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15BracedRangeExprC2EPKNS0_4NodeES4_S4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 66 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 8964 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15BracedRangeExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19559 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if (result i32) + local.get $2 + i32.const 19565 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + else + local.get $4 + end ;; $if + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BracedExprC2EPKNS0_4NodeES4_b (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 65 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9008 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BracedExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load8_s offset=16 + if $if + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $1 + i32.const 46 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=12 + local.tee $4 + i32.load8_s offset=4 + i32.const -65 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 2 + i32.ge_s + if $if_0 (result i32) + local.get $2 + i32.const 19565 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + else + local.get $4 + end ;; $if_0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parsePositiveIntegerEPm (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.gt_s + if $if_0 (result i32) + i32.const 1 + else + loop $loop (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_1 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_1 + i32.const -48 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 10 + i32.ge_s + if $if_2 (result i32) + i32.const 0 + else + local.get $1 + local.get $3 + i32.const 10 + i32.mul + i32.store + local.get $1 + local.get $0 + i32.load + local.tee $2 + local.get $0 + i32.load offset=4 + i32.eq + if $if_3 (result i32) + i32.const 0 + else + local.get $0 + local.get $2 + i32.const 1 + i32.add + i32.store + local.get $2 + i32.load8_s + end ;; $if_3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + local.get $1 + i32.load + i32.add + local.tee $3 + i32.store + br $loop + end ;; $if_2 + end ;; $loop + end ;; $if_0 + ) + + (func $__ZNK12_GLOBAL__N_110StringView10startsWithES0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + i32.gt_u + if $if (result i32) + i32.const 0 + else + block $block (result i32) + local.get $1 + i32.load + local.set $2 + local.get $1 + i32.load offset=4 + local.set $1 + local.get $0 + i32.load + local.set $0 + loop $loop (result i32) + i32.const 1 + local.get $1 + local.get $2 + i32.eq + br_if $block + drop + local.get $2 + i32.load8_s + local.get $0 + i32.load8_s + i32.eq + if $if_0 (result i32) + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + else + i32.const 0 + end ;; $if_0 + end ;; $loop + end ;; $block + end ;; $if + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA22_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 19679 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 7 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9052 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $0 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8NameType11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle18ArraySubscriptExprC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 43 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9096 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle18ArraySubscriptExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 19745 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 17747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA2_KcS6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + i32.const 19803 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 46 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9140 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10MemberExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10MemberExprEJRPNS2_4NodeERA3_KcS6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10MemberExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 68 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 + $block_2 + $block_0 ;; default + end ;; $block_2 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + local.tee $1 + i32.store + local.get $1 + if $if_0 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $1 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 4 + i32.add + local.tee $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $2 + i32.store + local.get $2 + if $if_2 (result i32) + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + else + local.get $2 + end ;; $if_1 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13QualifiedNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E23parseBaseUnresolvedNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $1 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + block $block (result i32) + local.get $1 + i32.const 19918 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv + br $block + end ;; $if_1 + local.get $4 + i32.const 19921 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + drop + local.get $3 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $4 + i32.sub + i32.const 0 + i32.gt_u + if $if_3 (result i32) + local.get $4 + i32.load8_s + else + i32.const 0 + end ;; $if_3 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_4 (result i32) + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + else + local.get $1 + end ;; $if_4 + else + i32.const 0 + end ;; $if_2 + end ;; $block + end ;; $if_0 + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_19GlobalQualifiedNameEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19GlobalQualifiedNameC2EPNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 33 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9184 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19GlobalQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 19859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseDestructorNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseSimpleIdEv + else + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E19parseUnresolvedTypeEv + end ;; $if_0 + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $5 + i32.const 16 + i32.add + local.set $2 + local.get $5 + i32.const 8 + i32.add + local.set $4 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_15 $block_0 $block_14 $block_13 $block_12 $block_0 $block_11 $block_0 $block_10 $block_0 $block_0 $block_9 $block_8 $block_7 $block_6 $block_5 + $block_4 $block_3 $block_2 $block_0 $block_0 $block_1 + $block_0 ;; default + end ;; $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_18 $block_16 $block_16 $block_16 $block_16 $block_17 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_16 $block_16 $block_16 $block_20 $block_16 $block_16 $block_19 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 $block_16 + $block_19 + $block_16 ;; default + end ;; $block_20 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19924 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_19 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19935 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_18 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19945 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_17 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19956 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_16 + i32.const 0 + local.set $0 + br $block + end ;; $block_14 + block $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_1 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 108 + i32.sub + br_table + $block_25 $block_24 $block_21 $block_23 $block_21 $block_21 $block_21 $block_21 $block_21 $block_21 $block_22 + $block_21 ;; default + end ;; $block_25 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19966 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_24 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19977 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_23 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19987 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_22 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 360 + i32.add + i32.store + local.get $2 + local.get $0 + i32.load8_s offset=360 + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=360 + local.get $1 + i32.const 0 + i32.ne + local.tee $6 + local.get $0 + i32.load8_s offset=361 + i32.const 0 + i32.ne + i32.or + local.set $7 + local.get $4 + local.get $0 + i32.const 361 + i32.add + local.tee $3 + i32.store + local.get $4 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $4 + i32.const 1 + i32.store8 offset=5 + local.get $3 + local.get $7 + i32.store8 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $3 + i32.store + local.get $3 + if $if_2 (result i32) + local.get $6 + if $if_3 + local.get $1 + i32.const 1 + i32.store8 + end ;; $if_3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_2 + local.set $0 + local.get $4 + i32.load8_s offset=5 + if $if_4 + local.get $4 + i32.load + local.get $4 + i32.load8_s offset=4 + i32.store8 + end ;; $if_4 + local.get $2 + i32.load8_s offset=5 + if $if_5 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_5 + br $block + end ;; $block_21 + i32.const 0 + local.set $0 + br $block + end ;; $block_13 + block $block_26 + block $block_27 + block $block_28 + block $block_29 + block $block_30 + block $block_31 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 86 + i32.sub + br_table + $block_27 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_31 $block_26 $block_26 $block_26 $block_30 + $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_29 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 $block_26 + $block_28 + $block_26 ;; default + end ;; $block_31 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 19997 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_30 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20015 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_29 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 368 + i32.add + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ + local.set $0 + br $block + end ;; $block_28 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20025 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_27 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20035 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_26 + i32.const 0 + local.set $0 + br $block + end ;; $block_12 + block $block_32 + block $block_33 + block $block_34 + block $block_35 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_7 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_7 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 79 + i32.sub + br_table + $block_34 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 $block_32 + $block_35 $block_32 $block_33 + $block_32 ;; default + end ;; $block_35 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20046 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_34 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20056 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_33 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20067 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_32 + i32.const 0 + local.set $0 + br $block + end ;; $block_11 + block $block_36 + block $block_37 + block $block_38 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 101 + i32.sub + br_table + $block_38 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_36 $block_37 + $block_36 ;; default + end ;; $block_38 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20078 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_37 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20089 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_36 + i32.const 0 + local.set $0 + br $block + end ;; $block_10 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 120 + i32.eq + if $if_10 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20099 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_10 + local.set $0 + br $block + end ;; $block_9 + block $block_39 + block $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_11 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 83 + i32.sub + br_table + $block_41 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_39 $block_39 $block_44 $block_39 $block_39 $block_39 $block_43 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 $block_39 + $block_42 $block_40 + $block_39 ;; default + end ;; $block_44 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20110 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_43 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_12 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_12 + local.set $0 + br $block + end ;; $block_42 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20121 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_41 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20132 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_40 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20144 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_39 + i32.const 0 + local.set $0 + br $block + end ;; $block_8 + block $block_45 + block $block_46 + block $block_47 + block $block_48 + block $block_49 + block $block_50 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_13 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_13 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 73 + i32.sub + br_table + $block_49 $block_45 $block_45 $block_47 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 $block_45 + $block_50 $block_45 $block_45 $block_48 $block_46 + $block_45 ;; default + end ;; $block_50 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20154 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_49 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20164 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_48 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20015 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_47 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20175 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_46 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20186 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_45 + i32.const 0 + local.set $0 + br $block + end ;; $block_7 + block $block_51 + block $block_52 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 97 + i32.sub + br_table + $block_56 $block_51 $block_51 $block_51 $block_55 $block_51 $block_54 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 $block_51 + $block_51 $block_51 $block_51 $block_53 $block_51 $block_51 $block_52 + $block_51 ;; default + end ;; $block_56 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20197 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_55 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20212 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_54 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20154 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_53 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20223 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_52 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20233 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_51 + i32.const 0 + local.set $0 + br $block + end ;; $block_6 + block $block_57 + block $block_58 + block $block_59 + block $block_60 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_15 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_15 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_58 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 + $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_57 $block_60 $block_57 $block_57 + $block_59 + $block_57 ;; default + end ;; $block_60 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20246 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_59 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20257 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_58 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20267 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_57 + i32.const 0 + local.set $0 + br $block + end ;; $block_5 + block $block_61 + block $block_62 + block $block_63 + block $block_64 + block $block_65 + block $block_66 + block $block_67 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_16 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_16 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 76 + i32.sub + br_table + $block_65 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 $block_61 + $block_66 $block_67 $block_61 $block_61 $block_64 $block_61 $block_61 $block_63 $block_62 + $block_61 ;; default + end ;; $block_67 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20278 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_66 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20290 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_65 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20300 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_64 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20311 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_63 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20290 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_62 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20322 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_61 + i32.const 0 + local.set $0 + br $block + end ;; $block_4 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_17 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_17 + i32.const 255 + i32.and + i32.const 117 + i32.eq + if $if_18 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20333 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_18 + local.set $0 + br $block + end ;; $block_3 + block $block_68 + block $block_69 + block $block_70 + block $block_71 + block $block_72 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_19 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_19 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 77 + i32.sub + br_table + $block_71 $block_68 $block_68 $block_68 $block_68 $block_68 $block_69 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 $block_68 + $block_72 $block_68 $block_68 $block_68 $block_68 $block_68 $block_70 + $block_68 ;; default + end ;; $block_72 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20343 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_71 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20353 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_70 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20364 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_69 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20375 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + local.set $0 + br $block + end ;; $block_68 + i32.const 0 + local.set $0 + br $block + end ;; $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_20 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_20 + i32.const 255 + i32.and + i32.const 115 + i32.eq + if $if_21 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $0 + i32.const 20387 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + else + i32.const 0 + end ;; $if_21 + local.set $0 + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_22 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_22 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_23 (result i32) + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_24 (result i32) + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_24 + else + i32.const 0 + end ;; $if_23 + local.set $0 + br $block + end ;; $block_0 + i32.const 0 + local.set $0 + end ;; $block + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_22ConversionOperatorTypeEJRPNS0_4NodeEEEES9_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15LiteralOperatorEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 19 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9228 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15LiteralOperator9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20399 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA16_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 20463 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ConversionOperatorTypeC2EPKNS0_4NodeE (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 4 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9272 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ConversionOperatorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 20479 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8DtorNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 38 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9316 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8DtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 18846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13QualifiedNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 22 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9360 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 19859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13QualifiedName11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $1 + i32.load offset=12 + local.tee $1 + i32.load + i32.load offset=24 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA13_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20642 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10DeleteExprEJRPNS2_4NodeERbbEEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load8_s + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10DeleteExprC2EPNS0_4NodeEbb (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 52 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9404 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.const 1 + i32.and + i32.store8 offset=13 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10DeleteExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 19859 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 20655 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load8_s offset=13 + if $if_0 + local.get $2 + i32.const 20662 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle14ConversionExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle14ConversionExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 55 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9448 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle14ConversionExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20716 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CallExprEJRPNS2_4NodeENS2_9NodeArrayEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8CallExprC2EPKNS0_4NodeENS0_9NodeArrayE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 50 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9492 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8CallExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8CastExprEJRA11_KcRPNS2_4NodeES9_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + i32.const 20814 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8CastExprC2ENS_10StringViewEPKNS0_4NodeES5_ + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10PrefixExprEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10PrefixExprC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 53 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9536 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10PrefixExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 24 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10BinaryExprEJRPNS2_4NodeERNS_10StringViewES6_EEEPT_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $4 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $5 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $5 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10BinaryExprC2EPKNS0_4NodeENS_10StringViewES4_ (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 42 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9580 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10BinaryExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $5 + local.get $3 + i32.const 40 + i32.add + local.set $6 + local.get $3 + i32.const 32 + i32.add + local.set $7 + local.get $3 + i32.const 24 + i32.add + local.set $8 + local.get $3 + i32.const 16 + i32.add + local.set $9 + local.get $3 + i32.const 8 + i32.add + local.set $10 + local.get $0 + i32.const 12 + i32.add + local.set $4 + local.get $3 + i32.const 56 + i32.add + local.tee $2 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if + local.get $5 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $6 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $7 + i32.const 20872 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $8 + i32.const 20875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=20 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $9 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $4 + local.get $2 + call $__ZN12_GLOBAL__N_1eqERKNS_10StringViewES2_ + if $if_0 + local.get $10 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $10 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8FoldExprEJRbRNS_10StringViewERPNS2_4NodeES9_EEEPT_DpOT0_ (type $15) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (result i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $5 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $5 + i32.const 8 + i32.add + local.set $6 + local.get $0 + i32.const 28 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load8_s + i32.const 0 + i32.ne + local.set $1 + local.get $5 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load + local.set $3 + local.get $6 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $6 + local.get $2 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ + local.get $5 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8FoldExprC2EbNS_10StringViewEPKNS0_4NodeES5_ (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 57 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9624 + i32.store + local.get $0 + local.get $3 + i32.store offset=8 + local.get $0 + local.get $4 + i32.store offset=12 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.const 1 + i32.and + i32.store8 offset=24 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $2 + i32.const 56 + i32.add + local.set $3 + local.get $2 + i32.const 48 + i32.add + local.set $6 + local.get $2 + i32.const 40 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + local.tee $5 + local.get $1 + i32.store + local.get $5 + local.get $0 + i32.store offset=4 + local.get $1 + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load8_s offset=24 + if $if + local.get $0 + i32.load offset=12 + local.tee $4 + if $if_0 + local.get $4 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i32.const 16 + i32.add + local.tee $0 + i64.load align=4 + i64.store offset=24 + local.get $3 + local.get $2 + i64.load offset=24 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + else + local.get $0 + i32.const 16 + i32.add + local.set $0 + end ;; $if_0 + local.get $6 + i32.const 21018 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load align=4 + i64.store offset=16 + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + else + local.get $5 + call $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21023 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + if $if_1 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_1 + end ;; $if + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZZNK12_GLOBAL__N_116itanium_demangle8FoldExpr9printLeftERNS_12OutputStreamEENKUlvE_clEv (type $0) + (param $0 i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load + i32.const 40 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + local.get $2 + i32.load offset=8 + call $__ZN12_GLOBAL__N_116itanium_demangle22ParameterPackExpansionC2EPKNS0_4NodeE + local.get $1 + local.get $0 + i32.load + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $0 + i32.load + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $1 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 0 + i32.store + local.get $0 + i32.const 114 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if + local.get $1 + local.get $1 + i32.load + i32.const 4 + i32.or + i32.store + end ;; $if + local.get $0 + i32.const 86 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 + local.get $1 + local.get $1 + i32.load + i32.const 2 + i32.or + i32.store + end ;; $if_0 + local.get $0 + i32.const 75 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $1 + local.get $1 + i32.load + i32.const 1 + i32.or + i32.store + end ;; $if_1 + local.get $1 + i32.load + local.set $0 + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_13FunctionParamEJRNS_10StringViewEEEEPNS0_4NodeEDpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13FunctionParamEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 54 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9668 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13FunctionParam9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 21072 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle24ForwardTemplateReferenceC2Em (type $4) + (param $0 i32) + (param $1 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 31 + i32.store8 offset=4 + local.get $0 + i32.const 2 + i32.store8 offset=5 + local.get $0 + i32.const 2 + i32.store8 offset=6 + local.get $0 + i32.const 2 + i32.store8 offset=7 + local.get $0 + i32.const 9712 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + i32.const 0 + i32.store8 offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + if $if + i32.const 0 + local.set $0 + else + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference13getSyntaxNodeERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=12 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 63 + i32.and + i32.const 66 + i32.add + call_indirect $28 (type $3) + local.set $0 + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=16 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle24ForwardTemplateReference10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + i32.add + local.tee $3 + i32.load8_s + i32.eqz + if $if + local.get $2 + local.get $3 + i32.store + local.get $2 + local.get $3 + i32.load8_s + i32.store8 offset=4 + local.get $2 + i32.const 1 + i32.store8 offset=5 + local.get $3 + i32.const 1 + i32.store8 + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + i32.load8_s offset=5 + if $if_0 + local.get $2 + i32.load + local.get $2 + i32.load8_s offset=4 + i32.store8 + end ;; $if_0 + end ;; $if + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 4 + i32.add + local.set $4 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 78 + i32.sub + br_table + $block_3 $block_0 $block_0 $block_0 $block_0 $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE + br $block + end ;; $block_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE + br $block + end ;; $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $2 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_0 + local.get $4 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $2 + i32.store + local.get $2 + if $if_1 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_3 (result i32) + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_4 (result i32) + local.get $2 + if $if_5 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_5 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + else + i32.const 0 + end ;; $if_3 + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_0 + local.get $4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE + local.tee $2 + i32.store + local.get $2 + if $if_6 (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_7 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_7 + i32.const 255 + i32.and + i32.const 73 + i32.eq + if $if_8 (result i32) + local.get $0 + i32.const 148 + i32.add + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $3 + local.get $0 + local.get $1 + i32.const 0 + i32.ne + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $5 + i32.store + local.get $5 + if $if_9 (result i32) + local.get $2 + if $if_10 + local.get $1 + i32.const 1 + i32.store8 offset=1 + end ;; $if_10 + local.get $0 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_9 + else + local.get $2 + end ;; $if_8 + else + i32.const 0 + end ;; $if_6 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle22ElaboratedTypeSpefTypeEJRNS_10StringViewERPNS2_4NodeEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefTypeC2ENS_10StringViewEPNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 6 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9756 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle22ElaboratedTypeSpefType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $4 + i32.const 32 + i32.add + local.set $6 + local.get $4 + i32.const 20 + i32.add + local.set $8 + local.get $4 + i32.const 24 + i32.add + local.set $2 + local.get $4 + i32.const 8 + i32.add + local.set $5 + local.get $4 + local.get $1 + i32.store offset=20 + local.get $0 + i32.const 78 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCVQualifiersEv + local.set $3 + local.get $1 + i32.eqz + local.tee $7 + i32.eqz + if $if_0 + local.get $1 + local.get $3 + i32.store offset=4 + end ;; $if_0 + local.get $0 + i32.const 79 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 + local.get $7 + i32.eqz + if $if_2 + local.get $1 + i32.const 2 + i32.store8 offset=8 + end ;; $if_2 + else + block $block + local.get $0 + i32.const 82 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $7 + local.get $1 + i32.const 0 + i32.ne + local.set $3 + local.get $7 + if $if_3 + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=8 + else + local.get $3 + i32.eqz + br_if $block + local.get $1 + i32.const 0 + i32.store8 offset=8 + end ;; $if_3 + end ;; $block + end ;; $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $5 + local.get $0 + i32.store + local.get $5 + local.get $2 + i32.store offset=4 + local.get $5 + local.get $8 + i32.store offset=8 + local.get $4 + i32.const 21279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $6 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_4 + local.get $2 + local.get $0 + i32.const 21597 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + end ;; $if_4 + local.get $0 + i32.const 148 + i32.add + local.set $1 + block $block_0 (result i32) + block $block_1 + block $block_2 + block $block_3 + loop $loop + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + br_if $block_2 + local.get $0 + i32.const 76 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + drop + block $block_4 + local.get $0 + i32.const 77 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + else + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 0 + i32.gt_u + if $if_6 (result i32) + local.get $3 + i32.load8_s + else + i32.const 0 + end ;; $if_6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_9 $block_7 $block_7 $block_7 $block_7 $block_10 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 $block_7 + $block_8 $block_11 + $block_7 ;; default + end ;; $block_11 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E18parseTemplateParamEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_10 + local.get $6 + local.get $0 + local.get $4 + i32.load offset=20 + i32.const 0 + i32.ne + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseTemplateArgsEb + local.tee $3 + i32.store + local.get $3 + i32.eqz + local.get $2 + i32.load + i32.eqz + i32.or + br_if $block_3 + local.get $2 + local.get $0 + local.get $2 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_20NameWithTemplateArgsEJRPNS0_4NodeESA_EEES9_DpOT0_ + i32.store + local.get $4 + i32.load offset=20 + local.tee $3 + if $if_7 + local.get $3 + i32.const 1 + i32.store8 offset=1 + end ;; $if_7 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_9 + block $block_12 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_8 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_8 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_7 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 $block_6 + $block_6 $block_12 + $block_6 ;; default + end ;; $block_12 + local.get $5 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseDecltypeEv + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_8 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $3 + i32.sub + i32.const 1 + i32.gt_u + if $if_9 (result i32) + local.get $3 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_9 + i32.const 255 + i32.and + i32.const 116 + i32.eq + br_if $block_7 + local.get $6 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseSubstitutionEv + local.tee $3 + i32.store + local.get $5 + local.get $3 + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_1 + local.get $3 + local.get $2 + i32.load + i32.ne + if $if_10 + local.get $1 + local.get $6 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $if_10 + br $block_5 + end ;; $block_7 + local.get $5 + local.get $0 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + br $block_5 + end ;; $block_6 + local.get $2 + i32.load + i32.eqz + br_if $block_4 + local.get $5 + local.get $0 + local.get $2 + local.get $4 + i32.load offset=20 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE + call $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ + i32.eqz + br_if $block_4 + local.get $2 + local.get $0 + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + local.tee $3 + i32.store + local.get $3 + i32.eqz + br_if $block_4 local.get $1 - i32.const 15 - i32.and - br_table - $block_6 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_4 $block_2 - $block_4 ;; default - end ;; $block_6 - br $loop_1 - end ;; $block_4 - end ;; $loop_1 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + end ;; $block_5 + end ;; $if_5 + br $loop + end ;; $block_4 + end ;; $loop + i32.const 0 + br $block_0 + end ;; $block_3 + i32.const 0 + br $block_0 + end ;; $block_2 + local.get $2 + i32.load + if $if_11 (result i32) + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_12 (result i32) + i32.const 0 + else + local.get $1 + local.get $1 + i32.load offset=4 + i32.const -4 + i32.add + i32.store offset=4 + local.get $2 + i32.load + end ;; $if_12 + else + i32.const 0 + end ;; $if_11 + br $block_0 + end ;; $block_1 + i32.const 0 + end ;; $block_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E14parseLocalNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 90 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_0 (result i32) + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + block $block (result i32) + local.get $0 + i32.const 115 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $2 + local.get $0 + i32.const 21537 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_8NameTypeEJRA5_KcEEEPNS0_4NodeEDpOT0_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + br $block + end ;; $if_2 + local.get $0 + i32.const 100 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + if $if_3 + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + local.get $0 + i32.load + local.get $0 + i32.load offset=4 + call $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ + i32.store + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $if_3 + local.get $2 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_5 (result i32) + local.get $2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + local.get $0 + local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ + else + i32.const 0 + end ;; $if_6 + else + i32.const 0 + end ;; $if_5 + end ;; $block + else + i32.const 0 + end ;; $if_1 + else + i32.const 0 + end ;; $if_0 + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseUnscopedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + i32.const 21275 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=8 align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $2 + i32.const 21279 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + br $block + end ;; $block_0 + local.get $3 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if + end ;; $block + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnqualifiedNameEPNS5_9NameStateE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $4 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $4 + i32.const 8 + i32.add + local.set $3 + block $block (result i32) + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $2 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $2 + i32.load8_s + else + i32.const 0 + end ;; $if + local.tee $2 + i32.const 255 + i32.and + i32.const 85 + i32.eq + if $if_0 (result i32) + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE + local.set $1 + br $block_1 + else + local.get $2 + i32.const -49 + i32.add + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 255 + i32.and + i32.const 9 + i32.lt_s + if $if_1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_1 + local.get $4 + i32.const 21341 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + i32.eqz + if $if_2 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseOperatorNameEPNS5_9NameStateE + local.set $1 + br $block_1 + end ;; $if_2 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.tee $2 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $5 + block $block_2 + loop $loop + local.get $3 + local.get $0 + local.tee $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseSourceNameEPNS5_9NameStateE + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_2 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $3 + local.get $0 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ + local.set $0 + br $block_0 + end ;; $block_2 + i32.const 0 + end ;; $if_0 + br $block + end ;; $block_1 + local.get $1 + if $if_3 (result i32) + local.get $0 + local.set $2 + local.get $1 + local.set $0 + br $block_0 + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_0 + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E12parseAbiTagsEPNS0_4NodeE + end ;; $block + local.set $0 + local.get $4 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16StdQualifiedNameEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 34 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9800 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle16StdQualifiedName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 21282 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20parseUnnamedTypeNameEPNS5_9NameStateE (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $2 + i32.const 40 + i32.add + local.set $1 + local.get $2 + i32.const 24 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 32 + i32.add + i32.const 21402 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $2 + i64.load offset=32 align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_0 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_0 + local.set $0 + else + local.get $5 + i32.const 21405 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + if $if_1 + local.get $2 + i32.const 0 + i32.store + local.get $2 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.const 362 + i32.add + i32.store + local.get $3 + local.get $0 + i32.load8_s offset=362 + i32.store8 offset=4 + local.get $3 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=362 + local.get $4 + i32.const 21408 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + local.get $4 + i64.load align=4 + i64.store align=4 + block $block (result i32) + block $block_0 + local.get $0 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfENS_10StringViewE + br_if $block_0 + local.get $0 + i32.const 8 + i32.add + local.tee $5 + local.tee $4 + i32.load offset=4 + local.get $4 + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + block $block_1 + loop $loop + local.get $1 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $6 + i32.store + local.get $6 + i32.eqz + br_if $block_1 + local.get $5 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle14PODSmallVectorIPNS0_4NodeELm32EE9push_backERKS3_ + local.get $0 + i32.const 69 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.eqz + br_if $loop + end ;; $loop + local.get $2 + local.get $0 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E20popTrailingNodeArrayEm + br $block_0 + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $1 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + end ;; $block + local.set $0 + local.get $3 + i32.load8_s offset=5 + if $if_3 + local.get $3 + i32.load + local.get $3 + i32.load8_s offset=4 + i32.store8 + end ;; $if_3 + else + i32.const 0 + local.set $0 + end ;; $if_1 + end ;; $if + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle21StructuredBindingNameEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 41 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9844 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle21StructuredBindingName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + local.get $1 + i32.const 91 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15ClosureTypeNameEJRNS2_9NodeArrayERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $3 + i32.const 16 + i32.add + local.set $5 + local.get $0 + i32.const 24 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $5 + local.get $3 + i64.load offset=8 align=4 + i64.store align=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle15ClosureTypeNameC2ENS0_9NodeArrayENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 40 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9888 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=16 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15ClosureTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.tee $6 + i32.const 21411 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + local.get $0 + i64.load offset=16 align=4 + i64.store + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21419 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15UnnamedTypeNameEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 39 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9932 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15UnnamedTypeName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + local.tee $5 + i32.const 21474 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $4 + i32.const 21483 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19parse_discriminatorEPKcS2_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + local.get $1 + i32.ne + if $if + block $block + local.get $0 + i32.load8_s + local.tee $2 + i32.const 95 + i32.ne + if $if_0 + local.get $2 + i32.const -48 + i32.add + i32.const 10 + i32.ge_u + br_if $block + local.get $0 + local.set $2 + loop $loop + local.get $1 + local.get $2 + i32.const 1 + i32.add + local.tee $2 + i32.eq + if $if_1 + local.get $1 + local.set $0 + br $block + end ;; $if_1 + local.get $2 + i32.load8_s + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + br_if $loop + end ;; $loop + br $block + end ;; $if_0 + local.get $0 + i32.const 1 + i32.add + local.tee $2 + local.get $1 + i32.ne + if $if_2 + local.get $2 + i32.load8_s + local.tee $2 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_3 + local.get $0 + i32.const 2 + i32.add + local.set $0 + br $block + end ;; $if_3 + local.get $2 + i32.const 95 + i32.eq + if $if_4 + local.get $0 + i32.const 2 + i32.add + local.set $2 + loop $loop_0 + local.get $1 + local.get $2 + i32.eq + br_if $block + local.get $2 + i32.load8_s + local.tee $3 + i32.const -48 + i32.add + i32.const 10 + i32.lt_u + if $if_5 + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop_0 + end ;; $if_5 + end ;; $loop_0 + local.get $2 + i32.const 1 + i32.add + local.get $0 + local.get $3 + i32.const 95 + i32.eq + select + return + end ;; $if_4 + end ;; $if_2 + end ;; $block + end ;; $if + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_9LocalNameEJRPNS0_4NodeESA_EEES9_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9LocalNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 24 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 9976 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseNestedNameEPNS5_9NameStateEENKUlPNS0_4NodeEE_clES9_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + local.get $1 + i32.store + local.get $0 + i32.load + local.set $4 + local.get $1 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.tee $3 + i32.load + if $if_0 + local.get $4 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $1 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ + local.get $0 + i32.load offset=4 + local.get $1 + i32.store + else + local.get $3 + local.get $1 + i32.store + end ;; $if_0 + local.get $0 + i32.load offset=8 + i32.load + local.tee $1 + if $if_1 + local.get $1 + i32.const 0 + i32.store8 offset=1 + end ;; $if_1 + local.get $0 + i32.load offset=4 + i32.load + i32.const 0 + i32.ne + else + i32.const 0 + end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E17parseCtorDtorNameERPNS0_4NodeEPNS5_9NameStateE (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.load + local.tee $4 + i32.load8_u offset=4 + i32.const 36 + i32.eq + if $if + local.get $3 + local.get $4 + i32.load offset=8 + local.tee $4 + i32.store + local.get $4 + i32.const -2 + i32.add + i32.const 4 + i32.lt_u + if $if_0 + local.get $1 + local.get $0 + i32.const 368 + i32.add + local.get $3 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ + i32.store + end ;; $if_0 + end ;; $if + local.get $3 + i32.const 4 + i32.add + local.set $4 + block $block (result i32) + local.get $0 + i32.const 67 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $0 + i32.const 73 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + local.set $5 + block $block_0 + block $block_1 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $6 + i32.sub + i32.const 0 + i32.gt_u + if $if_2 (result i32) + local.get $6 + i32.load8_s + else + i32.const 0 + end ;; $if_2 + local.tee $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 49 + i32.sub + br_table + $block_0 $block_0 $block_0 $block_1 $block_0 + $block_1 ;; default + end ;; $block_1 + i32.const 0 + br $block + end ;; $block_0 + local.get $3 + local.get $6 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 1 + i32.add + i32.store + local.get $2 + if $if_3 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_3 + block $block_2 (result i32) + block $block_3 + local.get $5 + i32.eqz + br_if $block_3 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + br_if $block_3 + i32.const 0 + br $block_2 + end ;; $block_3 + local.get $4 + i32.const 0 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + end ;; $block_2 + else + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 0 + i32.gt_u + if $if_4 (result i32) + local.get $5 + i32.load8_s + else + i32.const 0 + end ;; $if_4 + i32.const 255 + i32.and + i32.const 68 + i32.eq + if $if_5 (result i32) + block $block_4 + block $block_5 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $5 + i32.sub + i32.const 1 + i32.gt_u + if $if_6 (result i32) + local.get $5 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_6 + local.tee $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 48 + i32.sub + br_table + $block_4 $block_4 $block_4 $block_5 $block_5 $block_4 + $block_5 ;; default + end ;; $block_5 + i32.const 0 + br $block + end ;; $block_4 + local.get $3 + local.get $5 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const -48 + i32.add + i32.store + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + if $if_7 + local.get $2 + i32.const 1 + i32.store8 + end ;; $if_7 + local.get $4 + i32.const 1 + i32.store8 + local.get $0 + local.get $1 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ + else + i32.const 0 + end ;; $if_5 + end ;; $if_1 + end ;; $block + local.set $0 + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_12CtorDtorNameEJRPNS0_4NodeEbRiEEES9_DpOT0_ (type $16) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $1 + i32.load + local.get $2 + i32.load8_s + i32.const 0 + i32.ne + local.get $3 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12CtorDtorNameC2EPKNS0_4NodeEbi (type $5) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 37 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10020 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.const 1 + i32.and + i32.store8 offset=12 + local.get $0 + local.get $3 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle12CtorDtorName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load8_s offset=12 + if $if + local.get $4 + i32.const 18846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=24 + local.set $4 + local.get $2 + local.get $0 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle27ExpandedSpecialSubstitutionEJRNS2_14SpecialSubKindEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 35 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10064 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $2 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 48 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $4 + local.get $3 + i32.const 32 + i32.add + local.set $5 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 16 + i32.add + local.set $7 + local.get $3 + i32.const 8 + i32.add + local.set $8 + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $0 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $4 + i32.const 17891 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - br_if $block_0 - end ;; $block_2 - local.get $6 - i32.const 1 - i32.add - local.tee $3 - i32.const 48 - i32.eq - local.tee $1 - local.get $9 - i32.add - local.tee $4 - local.set $9 - local.get $4 - i32.const 210 - i32.mul - local.set $4 - i32.const 0 - local.get $3 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_4 + local.get $5 + i32.const 17906 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 local.get $1 - select - local.set $6 - br $loop - end ;; $block_1 - end ;; $loop - local.get $5 - local.get $3 - i32.store - local.get $3 - local.set $0 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_3 + local.get $6 + i32.const 21693 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_2 + local.get $7 + i32.const 21764 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE br $block - end ;; $block_0 + end ;; $block_1 + local.get $8 + i32.const 21814 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 21864 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $3 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle27ExpandedSpecialSubstitution11getBaseNameEv (type $4) + (param $0 i32) + (param $1 i32) + block $block + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + local.get $1 + i32.load offset=8 + br_table + $block_5 $block_4 $block_3 $block_2 $block_1 $block_0 + $block ;; default + end ;; $block_5 + local.get $0 + i32.const 17836 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_4 + local.get $0 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_3 + local.get $0 + i32.const 17846 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_2 + local.get $0 + i32.const 21650 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_1 + local.get $0 + i32.const 21664 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + br $block + end ;; $block_0 + local.get $0 + i32.const 21678 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + end ;; $block + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10NestedNameC2EPNS0_4NodeES3_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 23 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10108 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle19PointerToMemberTypeC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (local $3 i32) + local.get $2 + i32.load8_s offset=5 + local.set $3 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 13 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10152 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=12 + local.tee $6 + i32.load + i32.load offset=16 + local.set $7 + local.get $6 + local.get $1 + local.get $7 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + local.get $5 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 22026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle19PointerToMemberType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + block $block + block $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + br_if $block_0 + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + br_if $block_0 + br $block + end ;; $block_0 + local.get $2 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=12 + local.tee $3 + i32.load + i32.load offset=20 + local.set $0 + local.get $3 + local.get $1 + local.get $0 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + local.get $1 + i32.load + local.tee $2 + i32.const 1 + i32.add + local.get $2 + local.get $1 + i32.load offset=4 + local.tee $1 + i32.eqz + local.tee $2 + select + i32.store + local.get $0 + local.get $1 + i32.const 1 + i32.add + local.get $1 + local.get $2 + select + i32.store offset=4 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9ArrayTypeEJRPNS2_4NodeERNS2_12NodeOrStringEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9ArrayTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 14 + i32.store8 offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 0 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10196 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType19hasRHSComponentSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 1 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle9ArrayType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 48 + i32.add + global.set $32 + local.get $3 + i32.const 32 + i32.add + local.set $2 + local.get $3 + i32.const 24 + i32.add + local.set $4 + local.get $1 + i32.load offset=4 + local.tee $5 + if $if (result i32) + local.get $1 + i32.load + local.get $5 + i32.const -1 + i32.add + i32.add + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 255 + i32.and + i32.const 93 + i32.ne + if $if_0 + local.get $4 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $3 + i32.const 16 + i32.add + i32.const 22086 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $4 + local.tee $6 + i32.load offset=4 + if $if_1 (result i32) + local.get $6 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $4 + i32.load offset=4 + local.set $6 + local.get $5 + local.get $4 + i32.load + i32.store + local.get $5 + local.get $6 + i32.store offset=4 + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + else + local.get $4 + i32.load + if $if_3 (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if_3 + if $if_4 + local.get $4 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_4 + end ;; $if_2 + local.get $3 + i32.const 17747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 + local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $3 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $3 + i32.const 16 + i32.add + local.set $4 + local.get $3 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $5 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $4 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 25 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10240 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle10VectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 22136 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.tee $0 + local.tee $4 + i32.load + if $if (result i32) + local.get $4 + i32.load offset=4 + i32.eqz + else + i32.const 0 + end ;; $if + if $if_0 + local.get $0 + i32.load + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + else + local.get $0 + i32.load offset=4 + if $if_1 (result i32) + local.get $0 + i32.load + else + i32.const 0 + end ;; $if_1 + if $if_2 + local.get $0 + i32.load offset=4 + local.set $4 local.get $5 - local.get $3 + local.get $0 + i32.load i32.store - end ;; $block - end ;; $if - local.get $8 - global.set $30 + local.get $5 + local.get $4 + i32.store offset=4 + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + end ;; $if_0 + local.get $2 + i32.const 17747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle10VectorTypeEJRPNS2_4NodeES6_EEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i32.load + i32.store + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle10VectorTypeC2EPKNS0_4NodeENS0_12NodeOrStringE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle15PixelVectorTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle12NodeOrStringC2ENS_10StringViewE + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 26 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10284 + i32.store + local.get $0 + local.get $3 + i64.load align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle15PixelVectorType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $2 + i32.const 16 + i32.add + i32.const 22192 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load offset=16 align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=12 + local.set $5 + local.get $4 + local.get $0 + i32.load offset=8 + i32.store + local.get $4 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + i32.const 17747 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRNS_10StringViewEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + i64.load align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA11_KcEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + local.get $1 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA7_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22268 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA19_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 22275 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 local.get $0 ) - (func $__ZNSt3__213__lower_boundIRNS_6__lessIjmEEPKjmEET0_S6_S6_RKT1_T_ (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle8NameTypeEJRA8_KcEEEPT_DpOT0_ (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $1 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $1 + i32.const 8 + i32.add + local.set $2 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.const 18399 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle8NameTypeC2ENS_10StringViewE + local.get $1 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle8QualTypeC2EPKNS0_4NodeENS0_10QualifiersE (type $6) (param $0 i32) (param $1 i32) (param $2 i32) - (result i32) (local $3 i32) (local $4 i32) (local $5 i32) + local.get $1 + i32.load8_s offset=5 + local.set $3 + local.get $1 + i32.load8_s offset=6 + local.set $4 + local.get $1 + i32.load8_s offset=7 + local.set $5 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 3 + i32.store8 offset=4 + local.get $0 + local.get $3 + i32.store8 offset=5 + local.get $0 + local.get $4 + i32.store8 offset=6 + local.get $0 + local.get $5 + i32.store8 offset=7 + local.get $0 + i32.const 10328 + i32.store + local.get $0 local.get $2 + i32.store offset=8 + local.get $0 + local.get $1 + i32.store offset=12 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType12hasArraySlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node8hasArrayERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType15hasFunctionSlowERNS_12OutputStreamE (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node11hasFunctionERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.tee $2 i32.load - local.set $4 + i32.load offset=16 + local.set $3 + local.get $2 local.get $1 + local.get $3 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $0 - i32.sub - i32.const 2 - i32.shr_s - local.set $1 - loop $loop - local.get $1 - if $if - local.get $1 - i32.const 2 - i32.div_s - local.tee $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - local.tee $5 - i32.load - local.get $4 - i32.lt_u - local.set $3 - local.get $5 - i32.const 4 - i32.add - local.get $0 - local.get $3 - select - local.set $0 - local.get $1 - i32.const -1 - i32.add - local.get $2 - i32.sub - local.get $2 - local.get $3 - select - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.tee $0 + i32.load + i32.load offset=20 + local.set $2 local.get $0 + local.get $1 + local.get $2 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle8QualType10printQualsERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 + local.tee $5 + i32.const 1 + i32.and if $if + local.get $4 + i32.const 22304 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if + local.get $2 + i32.const 8 + i32.add + local.set $4 + local.get $5 + i32.const 2 + i32.and + if $if_0 + local.get $4 + i32.const 22311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.set $5 + end ;; $if_0 + local.get $5 + i32.const 4 + i32.and + if $if_1 local.get $2 - call $_memcpy - drop - end ;; $if + i32.const 22321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + local.get $2 + global.set $32 ) - (func $__ZNSt3__211__call_onceERVmPvPFvS2_E (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle17VendorExtQualTypeEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) - loop $loop - i32.const 14952 - i32.load - i32.const 1 - i32.eq - if $if - i32.const 15648 - i32.const 15620 - call $_pthread_cond_wait - drop - br $loop - end ;; $if - end ;; $loop - i32.const 14952 + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 i32.load - i32.eqz - if $if_0 - i32.const 14952 - i32.const 1 - i32.store - local.get $0 - i32.const 164 - call_indirect $26 (type $0) - i32.const 14952 - i32.const -1 - i32.store - end ;; $if_0 + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 ) - (func $__Znwm (type $1) + (func $__ZN12_GLOBAL__N_116itanium_demangle17VendorExtQualTypeC2EPKNS0_4NodeENS_10StringViewE (type $6) (param $0 i32) - (result i32) - (local $1 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 2 + i32.store8 offset=4 local.get $0 i32.const 1 + i32.store8 offset=5 local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 15704 - i32.const 15704 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - local.get $0 - i32.const 7 - i32.and - i32.const 104 - i32.add - call_indirect $26 (type $8) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10372 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $0) + (func $__ZNK12_GLOBAL__N_116itanium_demangle17VendorExtQualType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) - i32.const 10996 - call $_strlen - local.tee $2 - i32.const 13 + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $__Znwm - local.tee $1 + global.set $32 local.get $2 - i32.store - local.get $1 + i32.const 16 + i32.add + local.set $3 local.get $2 - i32.store offset=4 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.load offset=8 local.get $1 - i32.const 0 - i32.store offset=8 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 12 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle13ObjCProtoNameEJRPNS2_4NodeERNS_10StringViewEEEEPT_DpOT0_ (type $2) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 i32.add - local.tee $1 - i32.const 10996 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle13ObjCProtoNameC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 10 + i32.store8 offset=4 + local.get $0 i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10416 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle13ObjCProtoName9printLeftERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 i32.add - call $_memcpy - drop + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 + i32.const 16 + i32.add + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 + i32.load offset=8 local.get $1 - i32.store + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 18295 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18188 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12FunctionTypeEJRPNS2_4NodeERNS2_9NodeArrayERNS2_10QualifiersERNS2_15FunctionRefQualES6_EEEPT_DpOT0_ (type $24) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (result i32) + (local $6 i32) + (local $7 i32) + global.get $32 + local.set $6 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $6 + i32.const 8 + i32.add + local.set $7 + local.get $0 + i32.const 32 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $6 + local.get $2 + i64.load align=4 + i64.store + local.get $3 + i32.load + local.set $2 + local.get $4 + i32.load8_s + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $7 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $7 + local.get $2 + local.get $3 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ + local.get $6 + global.set $32 + local.get $0 ) - (func $__ZNSt11logic_errorC2EPKc (type $0) + (func $__ZN12_GLOBAL__N_116itanium_demangle12FunctionTypeC2EPKNS0_4NodeENS0_9NodeArrayENS0_10QualifiersENS0_15FunctionRefQualES4_ (type $13) (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) local.get $0 - i32.const 6772 + i32.const 7864 i32.store local.get $0 - i32.const 4 - i32.add - call $__ZNSt3__218__libcpp_refstringC2EPKc - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ (type $4) - (param $0 i32) - (param $1 i32) + i32.const 15 + i32.store8 offset=4 local.get $0 - i64.const 0 - i64.store align=4 + i32.const 0 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 i32.const 0 - i32.store offset=8 + i32.store8 offset=7 + local.get $0 + i32.const 10460 + i32.store + local.get $0 local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - i32.load offset=4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm - else - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 - local.get $0 - local.get $1 - i32.load offset=8 - i32.store offset=8 - end ;; $if + i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 + local.get $0 + local.get $3 + i32.store offset=20 + local.get $0 + local.get $4 + i32.store8 offset=24 + local.get $0 + local.get $5 + i32.store offset=28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - global.get $30 - local.set $3 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if + global.set $32 local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $2 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $5 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $2 - i32.store offset=4 - local.get $5 - local.set $0 - end ;; $if_0 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=16 + local.set $4 local.get $0 local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 0 - i32.store8 - local.get $0 local.get $2 - i32.add - local.get $3 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_ (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12FunctionType10printRightERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) - local.get $0 - local.get $1 - i32.ne - if $if - local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 - local.tee $0 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $1 - i32.load offset=4 - local.get $0 - i32.const 255 - i32.and - local.get $2 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm - end ;; $if - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcm (type $6) - (param $0 i32) - (param $1 i32) - (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $4 - global.get $30 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 + i32.add + local.set $2 + local.get $3 + i32.const 40 + i32.add + local.set $5 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 + i32.const 24 + i32.add + local.set $7 + local.get $3 i32.const 16 i32.add - global.set $30 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 12 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $3 - if $if (result i32) + i32.load offset=8 + local.tee $5 + i32.load + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=20 + local.tee $4 + i32.const 1 + i32.and + if $if + local.get $6 + i32.const 22304 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 + i32.load offset=20 + local.set $4 end ;; $if - local.tee $5 - local.get $2 - i32.lt_u + local.get $4 + i32.const 2 + i32.and if $if_0 - local.get $0 - local.get $5 + local.get $7 + i32.const 22311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $5 - i32.sub - local.get $3 - if $if_1 (result i32) - local.get $0 - i32.load offset=4 - else - local.get $6 - i32.const 255 - i32.and - end ;; $if_1 - local.tee $0 - i32.const 0 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 + i32.load offset=20 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 4 + i32.and + if $if_1 + local.get $8 + i32.const 22321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $3 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 + local.get $8 + i64.load align=4 + i64.store align=4 local.get $1 local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $4 - i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_1 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=24 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block + end ;; $block_0 + local.get $3 + i32.const 22509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 local.get $3 - i32.add - local.get $4 - i32.load8_s - i32.store8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=28 + if $if_2 + local.get $1 + i32.const 32 + call $__ZN12_GLOBAL__N_112OutputStreampLEc local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $2 - i32.store offset=4 - else - local.get $0 - local.get $2 - i32.store8 offset=11 - end ;; $if_3 - end ;; $if_0 - local.get $4 - global.set $30 + i32.load offset=28 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_2 + local.get $3 + global.set $32 ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle20DynamicExceptionSpecEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 - if $if - local.get $0 - local.get $1 - local.get $2 - call $_memmove - drop - end ;; $if + local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 17 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10504 + i32.store + local.get $0 + local.get $2 + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $17) + (func $__ZNK12_GLOBAL__N_116itanium_demangle20DynamicExceptionSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (param $6 i32) - (param $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $30 - local.set $8 - global.get $30 + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - i32.const -18 - local.get $1 - i32.sub + global.set $32 local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $9 + i32.const 8 + i32.add + local.set $3 + local.get $2 + i32.const 22562 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $10 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $10 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $10 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $9 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 - local.get $6 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $7 - local.get $6 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 local.get $3 - local.get $5 - i32.sub - local.tee $3 - local.get $4 - i32.sub - local.tee $7 - if $if_4 - local.get $6 - local.get $2 - local.get $4 - i32.add - i32.add - local.get $5 - local.get $4 - local.get $9 - i32.add - i32.add - local.get $7 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 8 + i32.add + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 41 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12NoexceptSpecEJRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + local.get $0 + i32.const 12 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $2 + local.set $0 local.get $1 - i32.const 10 - i32.ne - if $if_5 - local.get $9 - call $_free - end ;; $if_5 + i32.load + local.set $1 local.get $0 - local.get $2 + i32.const 7864 i32.store local.get $0 - local.get $10 - i32.const -2147483648 - i32.or - i32.store offset=8 + i32.const 16 + i32.store8 offset=4 local.get $0 - local.get $3 - local.get $6 - i32.add - local.tee $0 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store8 + i32.const 1 + i32.store8 offset=5 local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10548 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $2 - i32.add - local.get $8 - i32.load8_s - i32.store8 - local.get $8 - global.set $30 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $4) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12NoexceptSpec9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u + global.get $32 local.set $2 - i32.const 10 - local.get $1 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 i32.const 16 i32.add - i32.const -16 - i32.and - i32.const -1 + local.set $3 + local.get $2 + i32.const 8 i32.add + local.tee $4 + i32.const 22626 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE local.get $2 - select - local.tee $7 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA34_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) - (local $2 i32) + (param $2 i32) + (result i32) (local $3 i32) (local $4 i32) - global.get $30 - local.set $2 - global.get $30 + global.get $32 + local.set $3 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $4 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $3 local.get $1 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - local.get $3 - i32.sub - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc - else - local.get $4 - if $if_1 - local.get $1 - local.get $0 - i32.load - i32.add - local.set $3 - local.get $2 - i32.const 0 - i32.store8 - local.get $3 - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $2 - i32.const 0 - i32.store8 - local.get $0 - local.get $1 - i32.add - local.get $2 - i32.load8_s - i32.store8 - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_1 - end ;; $if_0 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $2 - global.set $30 + i32.load + local.set $1 + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $4 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $3 + global.set $32 + local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 20 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10592 + i32.store + local.get $0 + local.get $1 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + local.get $2 + i32.store offset=16 + ) + + (func $__ZNK12_GLOBAL__N_116itanium_demangle11SpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + local.get $0 + i64.load offset=8 align=4 + i64.store + local.get $2 + i32.const 8 + i32.add + local.tee $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - if $if - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $3 - i32.const 255 - i32.and - local.set $2 - i32.const 10 - end ;; $if_0 - local.tee $4 - local.get $2 - i32.sub - local.get $1 - i32.lt_u - if $if_1 (result i32) - local.get $0 - local.get $4 - local.get $1 - local.get $2 - i32.add - local.get $4 - i32.sub - local.get $2 - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm - local.get $0 - i32.load8_s offset=11 - else - local.get $3 - end ;; $if_1 - i32.const 0 - i32.lt_s - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $3 - local.get $2 - i32.add - local.set $4 - local.get $1 - if $if_3 - local.get $4 - i32.const 0 - local.get $1 - call $_memset - drop - end ;; $if_3 - local.get $1 - local.get $2 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_4 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_4 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $3 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if - local.get $5 - global.set $30 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=16 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle9DotSuffixEJRPNS2_4NodeENS_10StringViewEEEEPT_DpOT0_ (type $2) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) - (local $6 i32) - i32.const -17 - local.get $1 - i32.sub - local.get $2 - i32.lt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_0 - local.set $5 - local.get $1 - i32.const 2147483623 - i32.lt_u - if $if_1 (result i32) - i32.const 11 - local.get $1 - i32.const 1 - i32.shl - local.tee $6 - local.get $1 - local.get $2 - i32.add - local.tee $2 - local.get $2 - local.get $6 - i32.lt_u - select - local.tee $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.get $2 - i32.const 11 - i32.lt_u - select - else - i32.const -17 - end ;; $if_1 - local.tee $6 - call $__Znwm - local.set $2 - local.get $4 - if $if_2 - local.get $2 - local.get $5 - local.get $4 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_2 + (result i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 local.get $3 - local.get $4 - i32.sub - local.tee $3 - if $if_3 - local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $5 - i32.add - local.get $3 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - end ;; $if_3 - local.get $1 - i32.const 10 - i32.ne - if $if_4 - local.get $5 - call $_free - end ;; $if_4 + i32.const 8 + i32.add + local.set $4 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store + local.get $4 + local.get $3 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + local.get $4 + call $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE + local.get $3 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle9DotSuffixC2EPKNS0_4NodeENS_10StringViewE (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 i32.store local.get $0 - local.get $6 - i32.const -2147483648 - i32.or + i32.const 1 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10636 + i32.store + local.get $0 + local.get $1 i32.store offset=8 + local.get $0 + local.get $2 + i64.load align=4 + i64.store offset=12 align=4 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle9DotSuffix9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 24 + i32.add + local.set $3 + local.get $2 i32.const 16 i32.add - global.set $30 + local.set $4 + local.get $2 + i32.const 8 + i32.add + local.set $5 local.get $0 - i32.load8_s offset=11 - local.tee $4 - i32.const 0 - i32.lt_s - local.tee $6 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $4 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.tee $4 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $4 + i32.const 20875 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.sub + local.get $4 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $2 - i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $2 + global.set $32 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E16parseSpecialNameEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $3 + i32.const 8 + i32.add + local.set $2 + block $block (result i32) + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 71 + i32.sub + br_table + $block_1 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_0 $block_2 + $block_0 ;; default + end ;; $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_0 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 67 + i32.sub + br_table + $block_6 $block_3 $block_3 $block_3 $block_3 $block_4 $block_9 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_8 $block_10 $block_3 $block_11 $block_5 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_7 + $block_3 ;; default + end ;; $block_11 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_1 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_1 + br $block + end ;; $block_10 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_2 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_2 + br $block + end ;; $block_9 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_3 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_3 + br $block + end ;; $block_8 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_4 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_4 + br $block + end ;; $block_7 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $1 + i32.store + local.get $1 + if $if_5 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_5 + br $block + end ;; $block_6 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_6 (result i32) + block $block_12 (result i32) + local.get $3 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + i32.const 0 + local.get $3 + i32.load + local.get $3 + i32.load offset=4 + i32.eq + br_if $block_12 + drop + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_7 (result i32) + local.get $3 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseTypeEv + local.tee $1 + i32.store + local.get $1 + if $if_8 (result i32) + local.get $0 + i32.const 368 + i32.add + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.tee $0 + local.get $3 + i32.load + local.get $2 + i32.load + call $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ + local.get $0 + else + i32.const 0 + end ;; $if_8 + else + i32.const 0 + end ;; $if_7 + end ;; $block_12 + else + i32.const 0 + end ;; $if_6 + br $block + end ;; $block_5 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_9 (result i32) + local.get $0 + i32.const 22907 + local.get $2 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_11SpecialNameEJRA34_KcRPNS0_4NodeEEEESC_DpOT0_ + else + i32.const 0 + end ;; $if_9 + br $block + end ;; $block_4 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_10 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_10 + br $block + end ;; $block_3 + local.get $0 local.get $0 i32.load - else + i32.const 1 + i32.add + i32.store local.get $0 - end ;; $if_2 - local.tee $4 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 0 + i32.gt_u + if $if_11 (result i32) + local.get $1 + i32.load8_s + else + i32.const 0 + end ;; $if_11 + i32.const 255 + i32.and + i32.const 118 + i32.eq + local.set $1 + i32.const 0 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv + br_if $block + drop + local.get $2 + local.get $0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEv + local.tee $4 + i32.store + local.get $4 + if $if_12 (result i32) + local.get $1 + if $if_13 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ + end ;; $if_13 + else + i32.const 0 + end ;; $if_12 + br $block + end ;; $block_1 + block $block_13 + block $block_14 + block $block_15 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $1 + i32.sub + i32.const 1 + i32.gt_u + if $if_14 (result i32) + local.get $1 + i32.load8_s offset=1 + else + i32.const 0 + end ;; $if_14 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 82 + i32.sub + br_table + $block_13 $block_14 $block_14 $block_14 $block_15 + $block_14 ;; default + end ;; $block_15 + local.get $0 + local.get $0 + i32.load + i32.const 2 + i32.add + i32.store + local.get $2 + local.get $0 + i32.const 0 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store + local.get $1 + if $if_15 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_15 + br $block + end ;; $block_14 + i32.const 0 + br $block + end ;; $block_13 + local.get $0 + local.get $0 + i32.load + i32.const 2 i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.store local.get $2 - local.get $3 - i32.add - local.set $1 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 i32.const 0 - i32.store8 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9parseNameEPNS5_9NameStateE + local.tee $1 + i32.store local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $30 + if $if_16 (result i32) + local.get $0 + local.get $3 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E10parseSeqIdEPm + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.or + if $if_17 (result i32) + local.get $0 + i32.const 368 + i32.add + local.get $2 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ + else + i32.const 0 + end ;; $if_17 + else + i32.const 0 + end ;; $if_16 + br $block + end ;; $block_0 + i32.const 0 + end ;; $block + local.set $0 + local.get $3 + global.set $32 local.get $0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9NameStateC2EPS5_ (type $4) (param $0 i32) (param $1 i32) - (result i32) + local.get $0 + i32.const 0 + i32.store8 + local.get $0 + i32.const 0 + i32.store8 offset=1 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store8 offset=8 local.get $0 local.get $1 + i32.load offset=336 local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm + i32.load offset=332 + i32.sub + i32.const 2 + i32.shr_s + i32.store offset=12 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $2) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E26resolveForwardTemplateRefsERNS5_9NameStateE (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $30 - local.set $6 - global.get $30 - i32.const 16 - i32.add - global.set $30 local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $5 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if + i32.const 332 + i32.add local.tee $3 - i32.const 0 - i32.lt_u - if $if_0 - call $_abort - end ;; $if_0 - local.get $5 - if $if_1 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_1 - local.tee $4 - local.get $3 - i32.sub + local.tee $2 + i32.load offset=4 local.get $2 - i32.lt_u - if $if_2 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - i32.const 0 - i32.const 0 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_3 - local.get $5 - if $if_4 (result i32) - local.get $0 - i32.load - else + i32.load + i32.sub + i32.const 2 + i32.shr_s + local.set $4 + local.get $0 + i32.const 288 + i32.add + local.set $2 + local.get $1 + i32.load offset=12 + local.tee $1 + local.set $0 + block $block (result i32) + block $block_0 + loop $loop (result i32) local.get $0 - end ;; $if_4 - local.tee $5 - local.set $4 - local.get $3 - if $if_5 - local.get $1 - local.get $2 - i32.add - local.get $1 local.get $4 - local.get $1 - i32.le_u + i32.ge_u + br_if $block_0 local.get $3 - local.get $5 + i32.load + local.get $0 + i32.const 2 + i32.shl i32.add - local.get $1 - i32.gt_u - i32.and - select - local.set $1 + i32.load + local.tee $5 + i32.load offset=8 + local.tee $6 local.get $2 - local.get $4 - i32.add - local.get $4 - local.get $3 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - end ;; $if_5 - local.get $4 - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4moveEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 + i32.load offset=4 + local.get $2 + i32.load + i32.sub + i32.const 2 + i32.shr_s + i32.ge_u + if $if (result i32) + i32.const 1 + else + local.get $5 + local.get $2 + i32.load + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store offset=12 + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop + end ;; $if + end ;; $loop + br $block + end ;; $block_0 + local.get $3 + local.get $3 + i32.load + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + i32.const 0 + end ;; $block + ) + + (func $__ZZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E13parseEncodingEvENKUlvE_clEv (type $1) + (param $0 i32) + (result i32) + (local $1 i32) + local.get $0 + i32.load + local.tee $0 + local.tee $1 + i32.load offset=4 + local.get $1 + i32.load + i32.sub + if $if + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + local.tee $0 + i32.sub + i32.const 0 + i32.gt_u + if $if_0 (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_6 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_6 - local.get $6 - i32.const 0 - i32.store8 - local.get $1 - local.get $5 - i32.add - local.get $6 i32.load8_s - i32.store8 - end ;; $if_3 - end ;; $if_2 - local.get $6 - global.set $30 - local.get $0 + else + i32.const 0 + end ;; $if_0 + local.tee $0 + i32.const 255 + i32.and + i32.const 69 + i32.ne + if $if_1 + local.get $0 + i32.const 255 + i32.and + i32.const 95 + i32.eq + local.get $0 + i32.const 255 + i32.and + i32.const 46 + i32.eq + i32.or + return + end ;; $if_1 + end ;; $if + i32.const 1 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $3) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E4makeINS0_16FunctionEncodingEJRPNS0_4NodeESA_NS0_9NodeArrayESA_RNS0_10QualifiersERNS0_15FunctionRefQualEEEES9_DpOT0_ (type $25) (param $0 i32) (param $1 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) (result i32) local.get $0 + i32.const 368 + i32.add local.get $1 - local.get $1 - call $_strlen - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + local.get $2 + local.get $3 + local.get $4 + local.get $5 + local.get $6 + call $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle16FunctionEncodingEJRPNS2_4NodeES6_NS2_9NodeArrayES6_RNS2_10QualifiersERNS2_15FunctionRefQualEEEEPT_DpOT0_ (type $25) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - global.get $30 - local.set $3 - global.get $30 + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) + (result i32) + (local $7 i32) + (local $8 i32) + global.get $32 + local.set $7 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $2 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $2 - i32.const 11 - i32.lt_u - if $if_0 - local.get $0 - local.get $1 - i32.store8 offset=11 - else - local.get $0 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - local.tee $4 - call $__Znwm - local.tee $2 - i32.store - local.get $0 - local.get $4 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $1 - i32.store offset=4 - local.get $2 - local.set $0 - end ;; $if_0 + global.set $32 + local.get $7 + i32.const 8 + i32.add + local.set $8 local.get $0 - i32.const 10165 + i32.const 36 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $1 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + i32.load + local.set $1 + local.get $2 + i32.load + local.set $2 + local.get $7 local.get $3 - i32.const 0 - i32.store8 + i64.load align=4 + i64.store + local.get $4 + i32.load + local.set $3 + local.get $5 + i32.load + local.set $4 + local.get $6 + i32.load8_s + local.set $5 + local.get $8 + local.get $7 + i64.load align=4 + i64.store align=4 local.get $0 local.get $1 - i32.add - local.get $3 - i32.load8_s - i32.store8 + local.get $2 + local.get $8 local.get $3 - global.set $30 + local.get $4 + local.get $5 + call $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE + local.get $7 + global.set $32 + local.get $0 ) - (func $__ZNSt3__2plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_RKS9_ (type $4) + (func $__ZN12_GLOBAL__N_116itanium_demangle16FunctionEncodingC2EPKNS0_4NodeES4_NS0_9NodeArrayES4_NS0_10QualifiersENS0_15FunctionRefQualE (type $26) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) + (param $2 i32) + (param $3 i32) + (param $4 i32) + (param $5 i32) + (param $6 i32) local.get $0 - i64.const 0 - i64.store align=4 + i32.const 7864 + i32.store local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $2 - i32.const 3 - i32.ne - if $if - local.get $2 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop - end ;; $if - end ;; $loop + i32.const 18 + i32.store8 offset=4 local.get $0 - i32.const 10165 - call $_strlen - local.tee $2 - local.get $2 - local.get $1 - i32.load offset=4 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 255 - i32.and - local.get $3 i32.const 0 - i32.lt_s - select - local.tee $3 - i32.add - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcmm + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 local.get $0 - local.get $1 - i32.load - local.get $1 - local.get $1 - i32.load8_s offset=11 i32.const 0 - i32.lt_s - select - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - drop - ) - - (func $__ZNSt3__29to_stringEi (type $4) - (param $0 i32) - (param $1 i32) - (local $2 i32) - global.get $30 - local.set $2 - global.get $30 - i32.const 16 - i32.add - global.set $30 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv + i32.store8 offset=7 + local.get $0 + i32.const 10680 + i32.store local.get $0 - local.get $2 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if - local.get $2 - i32.load - call $_free - end ;; $if + i32.store offset=8 + local.get $0 local.get $2 - global.set $30 - ) - - (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $0) - (param $0 i32) - (local $1 i32) + i32.store offset=12 local.get $0 - i64.const 0 - i64.store align=4 + local.get $3 + i64.load align=4 + i64.store offset=16 align=4 local.get $0 - i32.const 0 - i32.store offset=8 - loop $loop - local.get $1 - i32.const 3 - i32.ne - if $if - local.get $1 - i32.const 2 - i32.shl - local.get $0 - i32.add - i32.const 0 - i32.store - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $loop - end ;; $if - end ;; $loop + local.get $4 + i32.store offset=24 local.get $0 + local.get $5 + i32.store offset=28 local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - i32.const 10 - end ;; $if_0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $6 + i32.store8 offset=32 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEiEET_T0_SD_PKNSD_10value_typeET1_ (type $6) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $30 - local.set $5 - global.get $30 + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - local.get $1 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - if $if (result i32) + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.load offset=8 + local.tee $4 + if $if + local.get $4 + i32.load + i32.load offset=16 + local.set $5 + local.get $4 local.get $1 - i32.load offset=4 - else - local.get $3 - i32.const 255 + local.get $5 + i32.const 127 i32.and - end ;; $if - local.set $4 - loop $loop - block $block + i32.const 288 + i32.add + call_indirect $28 (type $4) + local.get $0 + i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node15hasRHSComponentERNS_12OutputStreamE + i32.eqz + if $if_0 + local.get $2 + i32.const 18111 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - if $if_0 (result i32) - local.get $1 - i32.load - else - local.get $1 - end ;; $if_0 - local.set $3 - local.get $5 local.get $2 - i32.store + i64.load align=4 + i64.store align=4 local.get $1 local.get $3 - local.get $4 - i32.const 1 - i32.add - i32.const 13015 - local.get $5 - call $_snprintf - local.tee $3 - i32.const -1 - i32.gt_s - if $if_1 (result i32) - local.get $3 - local.get $4 - i32.le_u - br_if $block - local.get $3 - else - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - i32.or - end ;; $if_1 - local.tee $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $1 - i32.load8_s offset=11 - local.set $3 - br $loop - end ;; $block - end ;; $loop - local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc - local.get $0 - local.get $1 - i64.load align=4 - i64.store align=4 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_0 + end ;; $if local.get $0 + i32.load offset=12 local.get $1 - i32.load offset=8 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop_0 - local.get $0 - i32.const 3 - i32.ne - if $if_2 - local.get $0 - i32.const 2 - i32.shl - local.get $1 - i32.add - i32.const 0 - i32.store - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop_0 - end ;; $if_2 - end ;; $loop_0 - local.get $5 - global.set $30 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZL25default_terminate_handlerv (type $8) - (local $0 i32) - (local $1 i32) + (func $__ZNK12_GLOBAL__N_116itanium_demangle16FunctionEncoding10printRightERNS_12OutputStreamE (type $4) + (param $0 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i64) - global.get $30 - local.set $1 - global.get $30 - i32.const 48 + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $32 + local.set $3 + global.get $32 + i32.const -64 + i32.sub + global.set $32 + local.get $3 + i32.const 56 i32.add - global.set $30 - local.get $1 - i32.const 32 + local.set $2 + local.get $3 + i32.const 40 i32.add local.set $5 - local.get $1 + local.get $3 + i32.const 32 + i32.add + local.set $6 + local.get $3 i32.const 24 i32.add - local.set $2 - local.get $1 + local.set $7 + local.get $3 i32.const 16 i32.add - local.set $3 + local.set $8 + local.get $3 + i32.const 8 + i32.add + local.set $9 + local.get $3 + i32.const 48 + i32.add + local.tee $4 + i32.const 18113 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 - i32.const 36 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.const 16 i32.add - local.set $4 - call $___cxa_get_globals_fast - local.tee $0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $5 + i32.const 18109 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $5 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=8 + local.tee $5 if $if - local.get $0 + local.get $5 i32.load - local.tee $0 - if $if_0 - local.get $0 - i64.load offset=48 - local.tee $7 - i64.const -256 - i64.and - i64.const 4849336966747728640 - i64.ne - if $if_1 - local.get $2 - i32.const 13154 - i32.store - i32.const 13104 - local.get $2 - call $_abort_message - end ;; $if_1 - local.get $0 - i32.const 80 - i32.add - local.set $2 - local.get $7 - i64.const 4849336966747728641 - i64.eq - if $if_2 - local.get $0 - i32.load offset=44 - local.set $2 - end ;; $if_2 - local.get $4 - local.get $2 - i32.store - local.get $0 - i32.load - local.tee $0 - i32.load offset=4 - local.set $2 - i32.const 5264 - i32.load - i32.load offset=16 - local.set $6 - i32.const 5264 - local.get $0 - local.get $4 - local.get $6 - i32.const 15 - i32.and - i32.const 82 - i32.add - call_indirect $26 (type $2) - if $if_3 - local.get $4 - i32.load - local.tee $0 - i32.load - i32.load offset=8 - local.set $3 - local.get $0 - local.get $3 - i32.const 63 - i32.and - call_indirect $26 (type $1) - local.set $0 - local.get $1 - i32.const 13154 - i32.store - local.get $1 - local.get $2 - i32.store offset=4 - local.get $1 - local.get $0 - i32.store offset=8 - i32.const 13018 - local.get $1 - call $_abort_message - else - local.get $3 - i32.const 13154 - i32.store - local.get $3 - local.get $2 - i32.store offset=4 - i32.const 13063 - local.get $3 - call $_abort_message - end ;; $if_3 - end ;; $if_0 + i32.load offset=20 + local.set $4 + local.get $5 + local.get $1 + local.get $4 + i32.const 127 + i32.and + i32.const 288 + i32.add + call_indirect $28 (type $4) end ;; $if - i32.const 13142 - local.get $5 - call $_abort_message - ) - - (func $___cxa_get_globals_fast (type $14) - (result i32) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $1 - global.get $30 - i32.const 16 - i32.add - global.set $30 - block $block (result i32) - i32.const 0 - i32.const 15696 - i32.load - i32.const 324508639 - i32.eq - br_if $block - drop - i32.const 109 - call_indirect $26 (type $8) - i32.const 15696 - i32.const 324508639 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13293 + local.get $0 + i32.load offset=28 + local.tee $4 + i32.const 1 + i32.and + if $if_0 + local.get $6 + i32.const 22304 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $6 + i64.load align=4 + i64.store align=4 local.get $1 - call $_abort_message - else - block $block_0 (result i32) - i32.const 0 - i32.const 15700 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block_0 - drop - local.get $0 - i32.load + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_0 + local.get $4 + i32.const 2 + i32.and + if $if_1 + local.get $7 + i32.const 22311 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $7 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 + i32.load offset=28 + local.set $4 + end ;; $if_1 + local.get $4 + i32.const 4 + i32.and + if $if_2 + local.get $8 + i32.const 22321 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $8 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $if_2 + block $block + block $block_0 + block $block_1 + local.get $0 + i32.load8_s offset=32 + i32.const 1 + i32.sub + br_table + $block_1 $block_0 + $block ;; default + end ;; $block_1 + local.get $9 + i32.const 22506 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $9 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + br $block end ;; $block_0 - local.set $0 + local.get $3 + i32.const 22509 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $2 + local.get $3 + i64.load align=4 + i64.store align=4 local.get $1 - global.set $30 + local.get $2 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + end ;; $block + local.get $0 + i32.load offset=24 + local.tee $0 + if $if_3 local.get $0 - return - end ;; $if - i32.const 0 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + end ;; $if_3 + local.get $3 + global.set $32 ) - (func $_abort_message (type $4) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle12EnableIfAttrEJNS2_9NodeArrayEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) + (result i32) (local $2 i32) - global.get $30 + global.get $32 local.set $2 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $0 + i32.const 16 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 local.get $2 local.get $1 + i64.load align=4 + i64.store + local.get $2 + local.get $2 + i64.load align=4 + i64.store offset=8 align=4 + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 9 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10724 i32.store - i32.const 6408 - i32.load - local.tee $1 local.get $0 local.get $2 - call $_vfprintf - drop - local.get $1 - call $_fputc - call $_abort + i64.load offset=8 align=4 + i64.store offset=8 align=4 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv (type $2) + (func $__ZNK12_GLOBAL__N_116itanium_demangle12EnableIfAttr9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (result i32) + (local $2 i32) (local $3 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 + local.get $2 + i32.const 22845 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 local.get $1 - i32.eq - if $if (result i32) - i32.const 1 - else - local.get $1 - if $if_0 (result i32) - local.get $1 - i32.const 5288 - i32.const 5272 - call $___dynamic_cast - local.tee $1 - if $if_1 (result i32) - local.get $3 - i64.const 0 - i64.store offset=4 align=4 - local.get $3 - i64.const 0 - i64.store offset=12 align=4 - local.get $3 - i64.const 0 - i64.store offset=20 align=4 - local.get $3 - i64.const 0 - i64.store offset=28 align=4 - local.get $3 - i64.const 0 - i64.store offset=36 align=4 - local.get $3 - i64.const 0 - i64.store offset=44 align=4 - local.get $3 - i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store - local.get $3 - local.get $0 - i32.store offset=8 - local.get $3 - i32.const -1 - i32.store offset=12 - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $1 - local.get $3 - local.get $2 - i32.load - i32.const 1 - local.get $1 - i32.load - i32.load offset=28 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - if $if_2 (result i32) - local.get $2 - local.get $3 - i32.load offset=16 - i32.store - i32.const 1 - else - i32.const 0 - end ;; $if_2 - else - i32.const 0 - end ;; $if_1 - else - i32.const 0 - end ;; $if_0 - end ;; $if - local.set $0 local.get $3 - global.set $30 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - ) - - (func $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) + i32.const 8 + i32.add local.get $1 - i32.load offset=8 - local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - end ;; $if + call $__ZNK12_GLOBAL__N_116itanium_demangle9NodeArray14printWithCommaERNS_12OutputStreamE + local.get $1 + i32.const 93 + call $__ZN12_GLOBAL__N_112OutputStreampLEc + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E15parseCallOffsetEv (type $1) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - local.get $1 - i32.load offset=8 + (result i32) + (local $1 i32) + (local $2 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $1 local.get $0 - i32.eq - if $if - local.get $2 + i32.const 104 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load local.get $1 i32.load offset=4 i32.eq - if $if_0 - local.get $1 - i32.load offset=28 + if $if_0 (result i32) i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + i32.const 1 + i32.xor end ;; $if_0 else - local.get $1 - i32.load local.get $0 - i32.eq - if $if_2 - block $block - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 + i32.const 118 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_1 (result i32) + local.get $1 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $1 + i32.load + local.get $1 + i32.load offset=4 + i32.eq + if $if_2 (result i32) + i32.const 1 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc + if $if_3 (result i32) local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 + local.get $0 + i32.const 1 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E11parseNumberEb + local.get $2 + i32.load + local.get $2 + i32.load offset=4 + i32.eq + if $if_4 (result i32) i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 + else + local.get $0 + i32.const 95 + call $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_E9consumeIfEc i32.const 1 - i32.eq - if $if_5 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_6 - local.get $1 - i32.const 1 - i32.store8 offset=54 - end ;; $if_6 - end ;; $if_5 - local.get $1 - i32.const 4 - i32.store offset=44 - br $block + i32.xor end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_7 - local.get $1 + else i32.const 1 - i32.store offset=32 - end ;; $if_7 - end ;; $block - end ;; $if_2 + end ;; $if_3 + end ;; $if_2 + else + i32.const 1 + end ;; $if_1 end ;; $if + local.set $0 + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA25_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22941 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $6) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA20_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) + (result i32) + (local $2 i32) (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22966 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=16 - local.tee $3 - if $if - block $block - local.get $1 - local.get $3 - i32.ne - if $if_0 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $0 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_1 - local.get $0 - local.get $2 - i32.store offset=24 - end ;; $if_1 - end ;; $block - else - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $2 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA22_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - i32.const 1 - i32.store8 offset=53 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 22986 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.load offset=4 - i32.eq - if $if - block $block - local.get $0 - i32.const 1 - i32.store8 offset=52 - local.get $0 - i32.load offset=16 - local.tee $2 - i32.eqz - if $if_0 - local.get $0 - local.get $1 - i32.store offset=16 - local.get $0 - local.get $3 - i32.store offset=24 - local.get $0 - i32.const 1 - i32.store offset=36 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_0 - local.get $1 - local.get $2 - i32.ne - if $if_1 - local.get $0 - local.get $0 - i32.load offset=36 - i32.const 1 - i32.add - i32.store offset=36 - local.get $0 - i32.const 1 - i32.store8 offset=54 - br $block - end ;; $if_1 - local.get $0 - i32.load offset=24 - local.tee $1 - i32.const 2 - i32.eq - if $if_2 - local.get $0 - local.get $3 - i32.store offset=24 - else - local.get $1 - local.set $3 - end ;; $if_2 - local.get $0 - i32.load offset=48 - i32.const 1 - i32.eq - local.get $3 - i32.const 1 - i32.eq - i32.and - if $if_3 - local.get $0 - i32.const 1 - i32.store8 offset=54 - end ;; $if_3 - end ;; $block - end ;; $if ) - (func $___dynamic_cast (type $2) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA18_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $30 + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add local.set $3 - global.get $30 - i32.const -64 - i32.sub - global.set $30 - local.get $0 local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23008 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.tee $4 - i32.const -8 - i32.add - i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA41_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 i32.add - local.set $5 - local.get $4 - i32.const -4 + global.set $32 + local.get $2 + i32.const 8 i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23026 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 i32.load - local.set $4 + local.set $1 local.get $3 local.get $2 - i32.store - local.get $3 + i64.load align=4 + i64.store align=4 local.get $0 - i32.store offset=4 local.get $3 local.get $1 - i32.store offset=8 - local.get $3 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.const 0 - i64.store offset=16 align=4 - local.get $3 - i64.const 0 - i64.store offset=24 align=4 - local.get $3 - i64.const 0 - i64.store offset=32 align=4 - local.get $3 - i64.const 0 - i64.store offset=40 align=4 - local.get $3 - i32.const 0 - i32.store offset=48 - local.get $3 - i32.const 0 - i32.store16 offset=52 - local.get $3 - i32.const 0 - i32.store8 offset=54 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE local.get $2 - local.get $4 - i32.eq - if $if (result i32) - local.get $3 - i32.const 1 - i32.store offset=48 - local.get $4 - local.get $3 - local.get $5 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=20 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $5 - i32.const 0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.eq - select - else - block $block (result i32) - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.const 0 - local.get $4 - i32.load - i32.load offset=24 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - block $block_0 - block $block_1 - block $block_2 - local.get $3 - i32.load offset=36 - br_table - $block_2 $block_0 - $block_1 ;; default - end ;; $block_2 - local.get $3 - i32.load offset=20 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.const 1 - i32.eq - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - select - br $block - end ;; $block_1 - i32.const 0 - br $block - end ;; $block_0 - local.get $3 - i32.load offset=24 - i32.const 1 - i32.ne - if $if_0 - i32.const 0 - local.get $3 - i32.load offset=40 - i32.eqz - local.get $3 - i32.load offset=28 - i32.const 1 - i32.eq - i32.and - local.get $3 - i32.load offset=32 - i32.const 1 - i32.eq - i32.and - i32.eqz - br_if $block - drop - end ;; $if_0 - local.get $3 - i32.load offset=16 - end ;; $block - end ;; $if - local.set $0 - local.get $3 - global.set $30 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialNameC2EPKNS0_4NodeES4_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + i32.const 7864 + i32.store + local.get $0 + i32.const 21 + i32.store8 offset=4 + local.get $0 + i32.const 1 + i32.store8 offset=5 + local.get $0 + i32.const 1 + i32.store8 offset=6 + local.get $0 + i32.const 1 + i32.store8 offset=7 + local.get $0 + i32.const 10768 + i32.store + local.get $0 + local.get $1 + i32.store offset=8 local.get $0 + local.get $2 + i32.store offset=12 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) + (func $__ZNK12_GLOBAL__N_116itanium_demangle21CtorVtableSpecialName9printLeftERNS_12OutputStreamE (type $4) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (param $5 i32) - (local $6 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 32 + i32.add + global.set $32 + local.get $2 + i32.const 16 + i32.add + local.set $3 + local.get $2 + i32.const 8 + i32.add + local.tee $4 + i32.const 23067 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $4 + i64.load align=4 + i64.store align=4 local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE + local.get $0 i32.load offset=8 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + i32.const 23092 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $1 + local.get $3 + call $__ZN12_GLOBAL__N_112OutputStreampLENS_10StringViewE local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - local.get $4 - call $__ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $6 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - local.get $6 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - end ;; $if + i32.load offset=12 + local.get $1 + call $__ZNK12_GLOBAL__N_116itanium_demangle4Node5printERNS_12OutputStreamE + local.get $2 + global.set $32 ) - (func $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA27_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (param $4 i32) - (local $5 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23155 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $2 - local.get $1 - i32.load offset=4 - i32.eq - if $if_0 - local.get $1 - i32.load offset=28 - i32.const 1 - i32.ne - if $if_1 - local.get $1 - local.get $3 - i32.store offset=28 - end ;; $if_1 - end ;; $if_0 - else - block $block - local.get $0 - local.get $1 - i32.load - i32.ne - if $if_2 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=24 - local.set $5 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - local.get $5 - i32.const 7 - i32.and - i32.const 218 - i32.add - call_indirect $26 (type $7) - br $block - end ;; $if_2 - local.get $1 - i32.load offset=16 - local.get $2 - i32.ne - if $if_3 - local.get $1 - i32.load offset=20 - local.get $2 - i32.ne - if $if_4 - local.get $1 - local.get $3 - i32.store offset=32 - local.get $1 - i32.load offset=44 - i32.const 4 - i32.eq - br_if $block - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 226 - i32.add - call_indirect $26 (type $13) - local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 - br $block - end ;; $if_4 - end ;; $if_3 - local.get $3 - i32.const 1 - i32.eq - if $if_8 - local.get $1 - i32.const 1 - i32.store offset=32 - end ;; $if_8 - end ;; $block - end ;; $if ) - (func $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi (type $5) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA19_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23182 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc local.get $1 - i32.load offset=8 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 local.get $0 - i32.eq - if $if - local.get $1 - local.get $2 - local.get $3 - call $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi - else - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=28 - local.set $4 - local.get $0 - local.get $1 - local.get $2 - local.get $3 - local.get $4 - i32.const 7 - i32.and - i32.const 210 - i32.add - call_indirect $26 (type $5) - end ;; $if ) - (func $__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev (type $8) - (local $0 i32) - (local $1 i32) - global.get $30 - local.set $0 - global.get $30 + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA14_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 - block $block (result i32) - i32.const 8 - call $_malloc - local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 38177486 - i32.store offset=4 - i32.const 15700 - local.get $1 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13342 - local.get $0 - call $_abort_message - else - local.get $0 - global.set $30 - end ;; $if + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23201 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 ) - (func $__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv (type $0) + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA9_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) (param $0 i32) - (local $1 i32) - global.get $30 + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 + i32.const 16 + i32.add + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 + local.get $0 + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23215 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load local.set $1 - global.get $30 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116DefaultAllocator8makeNodeINS_16itanium_demangle11SpecialNameEJRA12_KcRPNS2_4NodeEEEEPT_DpOT0_ (type $3) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + global.get $32 + local.set $2 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 + local.get $2 + i32.const 8 + i32.add + local.set $3 local.get $0 - call $_free - block $block (result i32) - i32.const 22 - i32.const 15700 - i32.load - local.tee $0 - i32.load offset=4 - i32.const 38177486 - i32.ne - br_if $block - drop - local.get $0 - i32.const 0 - i32.store - i32.const 0 - end ;; $block - if $if - i32.const 13392 - local.get $1 - call $_abort_message - else - local.get $1 - global.set $30 - end ;; $if + i32.const 20 + call $__ZN12_GLOBAL__N_120BumpPointerAllocator8allocateEm + local.set $0 + local.get $2 + i32.const 23224 + call $__ZN12_GLOBAL__N_110StringViewC2EPKc + local.get $1 + i32.load + local.set $1 + local.get $3 + local.get $2 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $3 + local.get $1 + call $__ZN12_GLOBAL__N_116itanium_demangle11SpecialNameC2ENS_10StringViewEPKNS0_4NodeE + local.get $2 + global.set $32 + local.get $0 + ) + + (func $__ZN12_GLOBAL__N_116itanium_demangle22AbstractManglingParserINS0_14ManglingParserINS_16DefaultAllocatorEEES3_EC2EPKcS7_ (type $6) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $0 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 148 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 140 + i32.add + i32.store offset=8 + local.get $0 + i32.const 288 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 44 + i32.add + i32.store offset=8 + local.get $0 + i32.const 332 + i32.add + local.tee $1 + local.get $1 + i32.const 12 + i32.add + local.tee $2 + i32.store + local.get $1 + local.get $2 + i32.store offset=4 + local.get $1 + local.get $1 + i32.const 28 + i32.add + i32.store offset=8 + local.get $0 + i32.const 1 + i32.store8 offset=360 + local.get $0 + i32.const 0 + i32.store8 offset=361 + local.get $0 + i32.const 0 + i32.store8 offset=362 + local.get $0 + i32.const 368 + i32.add + local.tee $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 4096 + i32.add + local.get $0 + i32.store ) (func $__ZNSt11logic_errorD2Ev (type $0) (param $0 i32) local.get $0 - i32.const 6772 + i32.const 10812 i32.store local.get $0 i32.const 4 @@ -62295,9 +90675,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -62312,7 +90690,8 @@ (result i32) local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b ) (func $__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62326,10 +90705,13 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62339,20 +90721,20 @@ else local.get $1 i32.load8_s offset=52 - local.set $7 + local.set $6 local.get $1 i32.load8_s offset=53 - local.set $8 + local.set $9 local.get $0 i32.const 16 i32.add local.get $0 i32.load offset=12 - local.tee $6 + local.tee $8 i32.const 3 i32.shl i32.add - local.set $9 + local.set $11 local.get $1 i32.const 0 i32.store8 offset=52 @@ -62369,72 +90751,142 @@ local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib local.get $6 + local.get $1 + i32.load8_s offset=52 + local.tee $10 + i32.or + local.set $7 + local.get $9 + local.get $1 + i32.load8_s offset=53 + local.tee $9 + i32.or + local.set $6 + local.get $8 i32.const 1 i32.gt_s - if $if_0 - block $block + if $if_0 (result i32) + block $block (result i32) local.get $0 i32.const 24 i32.add - local.set $6 - loop $loop + local.set $8 + loop $loop (result i32) + local.get $6 + i32.const 1 + i32.and + local.set $6 + local.get $7 + i32.const 1 + i32.and + local.set $7 local.get $1 i32.load8_s offset=54 - br_if $block - local.get $1 - i32.load8_s offset=52 if $if_1 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_1 + local.get $10 + i32.const 255 + i32.and + if $if_2 local.get $1 i32.load offset=24 i32.const 1 i32.eq - br_if $block + if $if_3 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_3 local.get $0 i32.load offset=8 i32.const 2 i32.and i32.eqz - br_if $block + if $if_4 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_4 else - local.get $1 - i32.load8_s offset=53 - if $if_2 + local.get $9 + i32.const 255 + i32.and + if $if_5 local.get $0 i32.load offset=8 i32.const 1 i32.and i32.eqz - br_if $block - end ;; $if_2 - end ;; $if_1 + if $if_6 + local.get $7 + local.set $2 + local.get $6 + br $block + end ;; $if_6 + end ;; $if_5 + end ;; $if_2 local.get $1 i32.const 0 i32.store8 offset=52 local.get $1 i32.const 0 i32.store8 offset=53 - local.get $6 + local.get $8 local.get $1 local.get $2 local.get $3 local.get $4 local.get $5 call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=52 + local.tee $10 + local.get $7 + i32.or + local.set $7 + local.get $1 + i32.load8_s offset=53 + local.tee $9 local.get $6 + i32.or + local.set $6 + local.get $8 i32.const 8 i32.add - local.tee $6 - local.get $9 + local.tee $8 + local.get $11 i32.lt_u br_if $loop + local.get $7 + local.set $2 + local.get $6 end ;; $loop end ;; $block + else + local.get $7 + local.set $2 + local.get $6 end ;; $if_0 + local.set $0 local.get $1 - local.get $7 + local.get $2 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=52 local.get $1 - local.get $8 + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.ne i32.store8 offset=53 end ;; $if ) @@ -62448,10 +90900,11 @@ (local $5 i32) (local $6 i32) (local $7 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -62473,7 +90926,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.const 16 @@ -62613,145 +91068,150 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.add - local.get $0 - i32.load offset=12 - i32.const 3 - i32.shl - i32.add - local.set $7 - i32.const 0 - local.set $3 - local.get $0 - i32.const 16 - i32.add - local.set $6 - local.get $1 - block $block_0 (result i32) - block $block_1 - loop $loop_2 - block $block_2 - local.get $6 - local.get $7 - i32.ge_u - br_if $block_2 - local.get $1 - i32.const 0 - i32.store8 offset=52 - local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $6 - local.get $1 - local.get $2 - local.get $2 - i32.const 1 - local.get $4 - call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib - local.get $1 - i32.load8_s offset=54 - br_if $block_2 - local.get $1 - i32.load8_s offset=53 - if $if_9 - block $block_3 (result i32) - local.get $1 - i32.load8_s offset=52 - i32.eqz - if $if_10 + i32.ne + if $if_9 + local.get $0 + i32.const 16 + i32.add + local.get $0 + i32.load offset=12 + i32.const 3 + i32.shl + i32.add + local.set $7 + i32.const 0 + local.set $3 + local.get $0 + i32.const 16 + i32.add + local.set $6 + local.get $1 + block $block_0 (result i32) + block $block_1 + loop $loop_2 + block $block_2 + local.get $6 + local.get $7 + i32.ge_u + br_if $block_2 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $6 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + call $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib + local.get $1 + i32.load8_s offset=54 + br_if $block_2 + local.get $1 + i32.load8_s offset=53 + if $if_10 + block $block_3 + local.get $1 + i32.load8_s offset=52 + i32.eqz + if $if_11 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.and + if $if_12 + i32.const 1 + local.set $5 + br $block_3 + else + br $block_1 + end ;; $if_12 + unreachable + end ;; $if_11 + local.get $1 + i32.load offset=24 + i32.const 1 + i32.eq + if $if_13 + i32.const 1 + local.set $3 + br $block_1 + end ;; $if_13 local.get $0 i32.load offset=8 - i32.const 1 + i32.const 2 i32.and - if $if_11 + if $if_14 (result i32) + i32.const 1 + local.set $5 i32.const 1 - br $block_3 else i32.const 1 local.set $3 - br $block_2 - end ;; $if_11 - unreachable - end ;; $if_10 - local.get $1 - i32.load offset=24 - i32.const 1 - i32.eq - br_if $block_1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.and - i32.eqz - br_if $block_1 - i32.const 1 - local.set $5 - i32.const 1 - end ;; $block_3 - local.set $3 - end ;; $if_9 - local.get $6 - i32.const 8 - i32.add - local.set $6 - br $loop_2 - end ;; $block_2 - end ;; $loop_2 - local.get $5 - i32.eqz - if $if_12 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_13 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_14 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_14 - end ;; $if_13 - end ;; $if_12 - local.get $3 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + br $block_1 + end ;; $if_14 + local.set $3 + end ;; $block_3 + end ;; $if_10 + local.get $6 + i32.const 8 + i32.add + local.set $6 + br $loop_2 + end ;; $block_2 + end ;; $loop_2 + local.get $5 + if $if_15 (result i32) + br $block_1 + else + i32.const 4 + end ;; $if_15 + br $block_0 + end ;; $block_1 + i32.const 3 + end ;; $block_0 + i32.store offset=44 + local.get $3 + i32.const 1 + i32.and + br_if $block + end ;; $if_9 + local.get $1 + local.get $2 + i32.store offset=20 + local.get $1 + local.get $1 + i32.load offset=40 + i32.const 1 + i32.add + i32.store offset=40 + local.get $1 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_8 end ;; $if_7 local.get $3 i32.const 1 i32.eq - if $if_15 + if $if_16 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_15 + end ;; $if_16 end ;; $block end ;; $if ) @@ -62763,10 +91223,11 @@ (param $3 i32) (local $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -62831,20 +91292,24 @@ (local $6 i32) local.get $0 i32.load offset=4 - local.tee $5 - i32.const 8 - i32.shr_s - local.set $4 - local.get $5 - i32.const 1 - i32.and + local.set $5 + local.get $2 if $if - local.get $2 - i32.load - local.get $4 - i32.add - i32.load + local.get $5 + i32.const 8 + i32.shr_s local.set $4 + local.get $5 + i32.const 1 + i32.and + if $if_0 + local.get $2 + i32.load + local.get $4 + i32.add + i32.load + local.set $4 + end ;; $if_0 end ;; $if local.get $0 i32.load @@ -62866,9 +91331,9 @@ local.get $6 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib (type $13) @@ -62920,9 +91385,9 @@ local.get $8 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $__ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib (type $7) @@ -62972,9 +91437,9 @@ local.get $7 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) (func $___cxa_can_catch (type $2) @@ -62984,12 +91449,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $30 + global.get $32 local.set $3 - global.get $30 + global.get $32 i32.const 16 i32.add - global.set $30 + global.set $32 local.get $3 local.get $2 i32.load @@ -63004,9 +91469,9 @@ local.get $4 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) local.tee $0 if $if local.get $2 @@ -63015,7 +91480,7 @@ i32.store end ;; $if local.get $3 - global.set $30 + global.set $32 local.get $0 i32.const 1 i32.and @@ -63027,8 +91492,8 @@ local.get $0 if $if (result i32) local.get $0 - i32.const 5288 - i32.const 5376 + i32.const 5264 + i32.const 6432 call $___dynamic_cast i32.const 0 i32.ne @@ -63490,7 +91955,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $29 + global.get $31 i32.load local.tee $2 i32.add @@ -63528,7 +91993,7 @@ return end ;; $if_1 end ;; $if_0 - global.get $29 + global.get $31 local.get $1 i32.store local.get $2 @@ -63542,10 +92007,10 @@ local.get $0 i32.const 63 i32.and - call_indirect $26 (type $1) + call_indirect $28 (type $1) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $27) (param $0 i32) (param $1 i32) (param $2 f64) @@ -63565,7 +92030,7 @@ i32.and i32.const -64 i32.sub - call_indirect $26 (type $11) + call_indirect $28 (type $11) ) (func $dynCall_iii (type $2) @@ -63576,11 +92041,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 15 + i32.const 63 i32.and i32.const 66 i32.add - call_indirect $26 (type $3) + call_indirect $28 (type $3) ) (func $dynCall_iiii (type $16) @@ -63595,9 +92060,9 @@ local.get $0 i32.const 15 i32.and - i32.const 82 + i32.const 130 i32.add - call_indirect $26 (type $2) + call_indirect $28 (type $2) ) (func $dynCall_vi (type $4) @@ -63605,11 +92070,11 @@ (param $1 i32) local.get $1 local.get $0 - i32.const 63 + i32.const 127 i32.and - i32.const 112 + i32.const 160 i32.add - call_indirect $26 (type $0) + call_indirect $28 (type $0) ) (func $dynCall_vii (type $6) @@ -63619,11 +92084,11 @@ local.get $1 local.get $2 local.get $0 - i32.const 31 + i32.const 127 i32.and - i32.const 176 + i32.const 288 i32.add - call_indirect $26 (type $4) + call_indirect $28 (type $4) ) (func $dynCall_viii (type $5) @@ -63637,9 +92102,9 @@ local.get $0 i32.const 1 i32.and - i32.const 208 + i32.const 416 i32.add - call_indirect $26 (type $6) + call_indirect $28 (type $6) ) (func $dynCall_viiii (type $7) @@ -63655,9 +92120,9 @@ local.get $0 i32.const 7 i32.and - i32.const 210 + i32.const 418 i32.add - call_indirect $26 (type $5) + call_indirect $28 (type $5) ) (func $dynCall_viiiii (type $13) @@ -63675,12 +92140,12 @@ local.get $0 i32.const 7 i32.and - i32.const 218 + i32.const 426 i32.add - call_indirect $26 (type $7) + call_indirect $28 (type $7) ) - (func $dynCall_viiiiii (type $25) + (func $dynCall_viiiiii (type $26) (param $0 i32) (param $1 i32) (param $2 i32) @@ -63697,9 +92162,9 @@ local.get $0 i32.const 3 i32.and - i32.const 226 + i32.const 434 i32.add - call_indirect $26 (type $13) + call_indirect $28 (type $13) ) (func $b0 (type $1) @@ -63833,9 +92298,9 @@ local.get $0 i32.const 3 i32.and - i32.const 98 + i32.const 146 i32.add - call_indirect $26 (type $10) + call_indirect $28 (type $10) local.tee $2 i64.const 32 i64.shr_u @@ -63865,9 +92330,9 @@ local.get $0 i32.const 1 i32.and - i32.const 102 + i32.const 150 i32.add - call_indirect $26 (type $12) + call_indirect $28 (type $12) local.tee $5 i64.const 32 i64.shr_u @@ -63892,9 +92357,9 @@ i64.shl i64.or local.get $4 - i32.const 230 - call_indirect $26 (type $9) + i32.const 438 + call_indirect $28 (type $9) ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\e7\01\80\08\c0\84\c1\02\a0\84\01\b0\84\01" + ;; "\00\02\00\04\00\80\02\b7\03\80\08\d0\d0\c1\02\b0\d0\01\c0\d0\01" ) \ No newline at end of file diff --git a/test/extensions/filters/http/wasm/wasm_filter_stress_test.cc b/test/extensions/filters/http/wasm/wasm_filter_stress_test.cc index 7d6befe727aaf..6eed6c86da86a 100644 --- a/test/extensions/filters/http/wasm/wasm_filter_stress_test.cc +++ b/test/extensions/filters/http/wasm/wasm_filter_stress_test.cc @@ -77,7 +77,6 @@ TEST_P(GrpcWasmStressTest, CalloutHappyPath) { vm: "{}" code: filename: "{}" - allow_precompiled: true )EOF", wasmVM(), wasm_file)); @@ -167,6 +166,112 @@ TEST_P(GrpcWasmStressTest, CalloutHappyPath) { EXPECT_EQ(counters["test_callout_successes"], requests_to_send); } +TEST_P(GrpcWasmStressTest, CalloutErrorResponse) { + constexpr uint32_t connections_to_initiate = 30; + constexpr uint32_t requests_to_send = 30 * connections_to_initiate; + const std::string wasm_file = absl::StrCat( + TestEnvironment::runfilesDirectory(), + "/test/extensions/filters/http/wasm/test_data/grpc_callout_", wasmLang(), ".wasm"); + // Must match cluster name in the wasm bundle: + const std::string callout_cluster_name{"callout_cluster"}; + + // + // Configure the wasm filter + // + + config_helper_.addFilter(fmt::format(R"EOF( + name: envoy.wasm + config: + vm_config: + vm: "{}" + code: + filename: "{}" + allow_precompiled: true +)EOF", + wasmVM(), wasm_file)); + + // + // This test first sends a request from wasm to a callout cluster: + // Client -> Envoy -> Wasm -> Callout Cluster + // The callout cluster sends an error response which prevents Envoy from + // forwarding the data plane request to the origin cluster. + // + + addCluster(std::make_unique(StressTest::ORIGIN_CLUSTER_NAME)) + .addServer(std::make_unique( + [](ServerConnection&, ServerStream& stream, Http::HeaderMapPtr&&) { + ENVOY_LOG(debug, "Origin server received request"); + Http::TestHeaderMapImpl response{{":status", "200"}}; + stream.sendResponseHeaders(response); + })); + addCluster(std::make_unique(callout_cluster_name)) + .addServer(std::make_unique( + [](ServerConnection&, ServerStream& stream, Http::HeaderMapPtr&&) { + ENVOY_LOG(debug, "Callout server received request"); + ProtobufWkt::Value response; + response.set_string_value("response"); + stream.sendGrpcResponse(Grpc::Status::PermissionDenied, response); + })); + + try { + bind(); + } catch (Network::SocketBindException& ex) { + if (Network::Address::IpVersion::v6 == ipVersion()) { + ENVOY_LOG(info, "Environment does not support IPv6, skipping test"); + GTEST_SKIP(); + } + throw ex; + } + + LoadGeneratorPtr client = start(); + + // + // Exec test and wait for it to finish + // + + Http::HeaderMapPtr request{new Http::TestHeaderMapImpl{ + {":method", "GET"}, {":path", "/"}, {":scheme", "http"}, {":authority", "host"}}}; + client->run(connections_to_initiate, requests_to_send, std::move(request)); + + CounterMap counters; + extractCounters(counters); + + // + // Block until all servers exit + // + + stopServers(); + + // + // Evaluate test + // + + // All client connections are successfully established. + EXPECT_EQ(client->connectSuccesses(), connections_to_initiate); + EXPECT_EQ(client->connectFailures(), 0); + // Client close callback called for every client connection. + EXPECT_EQ(client->localCloses(), connections_to_initiate); + // Client response callback is called for every request sent + EXPECT_EQ(client->responsesReceived(), requests_to_send); + // Every response was a 5xx class + EXPECT_EQ(client->class2xxResponses(), 0); + EXPECT_EQ(client->class4xxResponses(), 0); + EXPECT_EQ(client->class5xxResponses(), requests_to_send); + EXPECT_EQ(client->responseTimeouts(), 0); + // No client sockets are rudely closed by server / no client sockets are + // reset. + EXPECT_EQ(client->remoteCloses(), 0); + + // assert that the callout server saw every request and prevented the + // origin server from seeing it. + EXPECT_EQ(findCluster(StressTest::ORIGIN_CLUSTER_NAME).requestsReceived(), 0); + EXPECT_EQ(findCluster(callout_cluster_name).requestsReceived(), requests_to_send); + + // And the wasm filter should have successfully created the failure + // counter and received a gRPC error response for every inbound request. + EXPECT_EQ(counters["test_callout_failures"], requests_to_send); +} + // TODO fix test. Currently fails with a: // terminate called after throwing an instance of 'Extensions::Common::Wasm::WasmException' // what(): emscripten cxa_allocate_exception @@ -191,7 +296,6 @@ TEST_P(HttpWasmStressTest, DISABLED_CalloutHappyPath) { vm: "{}" code: filename: "{}" - allow_precompiled: true )EOF", wasm_vm, wasm_file)); diff --git a/test/extensions/filters/http/wasm/wasm_filter_test.cc b/test/extensions/filters/http/wasm/wasm_filter_test.cc index 011341f0d94c7..b675a354bb567 100644 --- a/test/extensions/filters/http/wasm/wasm_filter_test.cc +++ b/test/extensions/filters/http/wasm/wasm_filter_test.cc @@ -83,7 +83,8 @@ class WasmHttpFilterTest : public testing::TestWithParam { scope_ = Stats::ScopeSharedPtr(stats_store_.createScope("wasm.")); wasm_ = Extensions::Common::Wasm::createWasmForTesting( proto_config.vm_id(), proto_config.vm_config(), proto_config.root_id(), cluster_manager_, - dispatcher_, *api, *scope_, local_info_, &listener_metadata_, nullptr, + dispatcher_, *api, *scope_, Envoy::Extensions::Common::Wasm::PluginDirection::Inbound, + local_info_, &listener_metadata_, nullptr, std::unique_ptr(root_context_)); } @@ -97,7 +98,8 @@ class WasmHttpFilterTest : public testing::TestWithParam { scope_ = Stats::ScopeSharedPtr(stats_store_.createScope("wasm.")); wasm_ = Extensions::Common::Wasm::createWasmForTesting( proto_config.vm_id(), proto_config.vm_config(), proto_config.root_id(), cluster_manager_, - dispatcher_, *api, *scope_, local_info_, &listener_metadata_, nullptr, + dispatcher_, *api, *scope_, Envoy::Extensions::Common::Wasm::PluginDirection::Inbound, + local_info_, &listener_metadata_, nullptr, std::unique_ptr(root_context_)); } @@ -365,11 +367,47 @@ TEST_F(WasmHttpFilterTest, NullPluginRequestHeadersOnly) { filter_->onDestroy(); } +TEST_F(WasmHttpFilterTest, NullVmResolver) { + setupNullConfig("null_vm_plugin"); + setupFilter(); + envoy::api::v2::core::Node node_data; + ProtobufWkt::Value node_val; + node_val.set_string_value("sample_data"); + (*node_data.mutable_metadata()->mutable_fields())["istio.io/metadata"] = node_val; + EXPECT_CALL(local_info_, node()).WillRepeatedly(ReturnRef(node_data)); + + request_stream_info_.metadata_.mutable_filter_metadata()->insert( + Protobuf::MapPair( + HttpFilters::HttpFilterNames::get().Wasm, + MessageUtil::keyValueStruct("wasm_request_get_key", "wasm_request_get_value"))); + EXPECT_CALL(request_stream_info_, responseCode()).WillRepeatedly(Return(403)); + EXPECT_CALL(decoder_callbacks_, streamInfo()).WillRepeatedly(ReturnRef(request_stream_info_)); + EXPECT_CALL(*filter_, + scriptLog_(spdlog::level::debug, Eq(absl::string_view("onRequestHeaders 2")))); + EXPECT_CALL(*filter_, + scriptLog_(spdlog::level::info, Eq(absl::string_view("header path /test_context")))); + + // test outputs should match inputs + EXPECT_CALL(*filter_, scriptLog_(spdlog::level::warn, + Eq(absl::string_view("request.path: /test_context")))); + EXPECT_CALL(*filter_, + scriptLog_(spdlog::level::warn, Eq(absl::string_view("node.metadata: sample_data")))); + EXPECT_CALL(*filter_, scriptLog_(spdlog::level::warn, + Eq(absl::string_view("metadata: wasm_request_get_value")))); + EXPECT_CALL(*filter_, + scriptLog_(spdlog::level::warn, Eq(absl::string_view("response.code: 403")))); + + Http::TestHeaderMapImpl request_headers{{":path", "/test_context"}}; + EXPECT_EQ(Http::FilterHeadersStatus::Continue, filter_->decodeHeaders(request_headers, true)); + StreamInfo::MockStreamInfo log_stream_info; + filter_->log(&request_headers, nullptr, nullptr, log_stream_info); +} + TEST_P(WasmHttpFilterTest, SharedData) { setupConfig(TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/filters/http/wasm/test_data/shared_cpp.wasm"))); setupFilter(); - EXPECT_CALL(*filter_, scriptLog_(spdlog::level::info, Eq(absl::string_view("set 1 1 0")))); + EXPECT_CALL(*filter_, scriptLog_(spdlog::level::info, Eq(absl::string_view("set CasMismatch")))); EXPECT_CALL(*filter_, scriptLog_(spdlog::level::debug, Eq(absl::string_view("get 1 shared_data_value1")))); EXPECT_CALL(*filter_, @@ -385,12 +423,12 @@ TEST_P(WasmHttpFilterTest, SharedQueue) { setupConfig(TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/filters/http/wasm/test_data/queue_cpp.wasm"))); setupFilter(); - EXPECT_CALL(*filter_, - scriptLog_(spdlog::level::warn, Eq(absl::string_view("onRequestHeaders 1")))); + EXPECT_CALL(*filter_, scriptLog_(spdlog::level::warn, + Eq(absl::string_view("onRequestHeaders enqueue Ok")))); EXPECT_CALL(*root_context_, scriptLog_(spdlog::level::info, Eq(absl::string_view("onQueueReady")))); EXPECT_CALL(*root_context_, - scriptLog_(spdlog::level::debug, Eq(absl::string_view("data data1 1")))); + scriptLog_(spdlog::level::debug, Eq(absl::string_view("data data1 Ok")))); EXPECT_CALL(dispatcher_, post(_)).WillOnce(Return()); Http::TestHeaderMapImpl request_headers{{":path", "/"}}; diff --git a/test/extensions/filters/network/client_ssl_auth/client_ssl_auth_test.cc b/test/extensions/filters/network/client_ssl_auth/client_ssl_auth_test.cc index 5321d370a1894..23b7f9acf6d89 100644 --- a/test/extensions/filters/network/client_ssl_auth/client_ssl_auth_test.cc +++ b/test/extensions/filters/network/client_ssl_auth/client_ssl_auth_test.cc @@ -221,7 +221,7 @@ TEST_F(ClientSslAuthFilterTest, Ssl) { // Interval timer fires. setupRequest(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Error response. EXPECT_CALL(*interval_timer_, enableTimer(_)); @@ -231,7 +231,7 @@ TEST_F(ClientSslAuthFilterTest, Ssl) { // Interval timer fires. setupRequest(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Parsing error EXPECT_CALL(*interval_timer_, enableTimer(_)); @@ -242,7 +242,7 @@ TEST_F(ClientSslAuthFilterTest, Ssl) { // Interval timer fires. setupRequest(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // No response failure. EXPECT_CALL(*interval_timer_, enableTimer(_)); @@ -259,7 +259,7 @@ TEST_F(ClientSslAuthFilterTest, Ssl) { return nullptr; })); EXPECT_CALL(*interval_timer_, enableTimer(_)); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); EXPECT_EQ(4U, stats_store_.counter("auth.clientssl.vpn.update_failure").value()); } diff --git a/test/extensions/filters/network/common/redis/client_impl_test.cc b/test/extensions/filters/network/common/redis/client_impl_test.cc index 064c740dacc62..e9d28235610db 100644 --- a/test/extensions/filters/network/common/redis/client_impl_test.cc +++ b/test/extensions/filters/network/common/redis/client_impl_test.cc @@ -1,7 +1,6 @@ #include #include "common/buffer/buffer_impl.h" -#include "common/common/assert.h" #include "common/network/utility.h" #include "common/upstream/upstream_impl.h" @@ -10,9 +9,7 @@ #include "test/extensions/filters/network/common/redis/mocks.h" #include "test/extensions/filters/network/common/redis/test_utils.h" #include "test/mocks/network/mocks.h" -#include "test/mocks/thread_local/mocks.h" #include "test/mocks/upstream/mocks.h" -#include "test/test_common/printers.h" #include "gmock/gmock.h" #include "gtest/gtest.h" @@ -158,6 +155,7 @@ class ConfigBufferSizeGTSingleRequest : public Config { return std::chrono::milliseconds(1); } uint32_t maxUpstreamUnknownConnections() const override { return 0; } + ReadPolicy readPolicy() const override { return ReadPolicy::Master; } }; TEST_F(RedisClientImplTest, BatchWithTimerFiring) { @@ -469,6 +467,7 @@ class ConfigOutlierDisabled : public Config { std::chrono::milliseconds bufferFlushTimeoutInMs() const override { return std::chrono::milliseconds(0); } + ReadPolicy readPolicy() const override { return ReadPolicy::Master; } uint32_t maxUpstreamUnknownConnections() const override { return 0; } }; @@ -510,7 +509,7 @@ TEST_F(RedisClientImplTest, ConnectTimeout) { EXPECT_CALL(*upstream_connection_, close(Network::ConnectionCloseType::NoFlush)); EXPECT_CALL(callbacks1, onFailure()); EXPECT_CALL(*connect_or_op_timer_, disableTimer()); - connect_or_op_timer_->callback_(); + connect_or_op_timer_->invokeCallback(); EXPECT_EQ(1UL, host_->cluster_.stats_.upstream_cx_connect_timeout_.value()); EXPECT_EQ(1UL, host_->stats_.cx_connect_fail_.value()); @@ -553,7 +552,7 @@ TEST_F(RedisClientImplTest, OpTimeout) { EXPECT_CALL(*upstream_connection_, close(Network::ConnectionCloseType::NoFlush)); EXPECT_CALL(callbacks1, onFailure()); EXPECT_CALL(*connect_or_op_timer_, disableTimer()); - connect_or_op_timer_->callback_(); + connect_or_op_timer_->invokeCallback(); EXPECT_EQ(1UL, host_->cluster_.stats_.upstream_rq_timeout_.value()); EXPECT_EQ(1UL, host_->stats_.rq_timeout_.value()); diff --git a/test/extensions/filters/network/common/redis/test_utils.h b/test/extensions/filters/network/common/redis/test_utils.h index e720394b83f26..bc26dfbf02102 100644 --- a/test/extensions/filters/network/common/redis/test_utils.h +++ b/test/extensions/filters/network/common/redis/test_utils.h @@ -8,6 +8,8 @@ #include "common/protobuf/utility.h" +#include "external/envoy_api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.pb.h" + namespace Envoy { namespace Extensions { namespace NetworkFilters { @@ -16,13 +18,18 @@ namespace Redis { namespace Client { inline envoy::config::filter::network::redis_proxy::v2::RedisProxy::ConnPoolSettings -createConnPoolSettings(int64_t millis = 20, bool hashtagging = true, - bool redirection_support = true, uint32_t max_unknown_conns = 100) { +createConnPoolSettings( + int64_t millis = 20, bool hashtagging = true, bool redirection_support = true, + uint32_t max_unknown_conns = 100, + envoy::config::filter::network::redis_proxy::v2::RedisProxy::ConnPoolSettings::ReadPolicy + read_policy = envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_MASTER) { envoy::config::filter::network::redis_proxy::v2::RedisProxy::ConnPoolSettings setting{}; setting.mutable_op_timeout()->CopyFrom(Protobuf::util::TimeUtil::MillisecondsToDuration(millis)); setting.set_enable_hashtagging(hashtagging); setting.set_enable_redirection(redirection_support); setting.mutable_max_upstream_unknown_connections()->set_value(max_unknown_conns); + setting.set_read_policy(read_policy); return setting; } diff --git a/test/extensions/filters/network/dubbo_proxy/config_test.cc b/test/extensions/filters/network/dubbo_proxy/config_test.cc index a3c4abb57fdcb..ecac967862721 100644 --- a/test/extensions/filters/network/dubbo_proxy/config_test.cc +++ b/test/extensions/filters/network/dubbo_proxy/config_test.cc @@ -62,6 +62,7 @@ TEST_F(DubboFilterConfigTest, ValidProtoConfiguration) { NiceMock context; DubboProxyFilterConfigFactory factory; Network::FilterFactoryCb cb = factory.createFilterFactoryFromProto(config, context); + EXPECT_TRUE(factory.isTerminalFilter()); Network::MockConnection connection; EXPECT_CALL(connection, addReadFilter(_)); cb(connection); diff --git a/test/extensions/filters/network/http_connection_manager/config_test.cc b/test/extensions/filters/network/http_connection_manager/config_test.cc index d197b9b7fa94d..e4fe4d0d53458 100644 --- a/test/extensions/filters/network/http_connection_manager/config_test.cc +++ b/test/extensions/filters/network/http_connection_manager/config_test.cc @@ -146,6 +146,65 @@ stat_prefix: router EnvoyException, "Didn't find a registered implementation for name: 'foo'"); } +TEST_F(HttpConnectionManagerConfigTest, RouterInverted) { + const std::string yaml_string = R"EOF( +codec_type: http1 +server_name: foo +stat_prefix: router +route_config: + virtual_hosts: + - name: service + domains: + - "*" + routes: + - match: + prefix: "/" + route: + cluster: cluster +http_filters: +- name: envoy.router + config: {} +- name: envoy.health_check + config: + pass_through_mode: false + )EOF"; + + EXPECT_THROW_WITH_MESSAGE( + HttpConnectionManagerConfig(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_), + EnvoyException, "Error: envoy.router must be the terminal http filter."); +} + +TEST_F(HttpConnectionManagerConfigTest, NonTerminalFilter) { + const std::string yaml_string = R"EOF( +codec_type: http1 +server_name: foo +stat_prefix: router +route_config: + virtual_hosts: + - name: service + domains: + - "*" + routes: + - match: + prefix: "/" + route: + cluster: cluster +http_filters: +- name: envoy.health_check + config: + pass_through_mode: false + )EOF"; + + EXPECT_THROW_WITH_MESSAGE( + HttpConnectionManagerConfig(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_), + EnvoyException, + "Error: non-terminal filter envoy.health_check is the last filter in a http filter chain."); +} + TEST_F(HttpConnectionManagerConfigTest, MiscConfig) { const std::string yaml_string = R"EOF( codec_type: http1 @@ -235,7 +294,7 @@ TEST_F(HttpConnectionManagerConfigTest, SamplingConfigured) { EXPECT_EQ(1, config.tracingConfig()->client_sampling_.numerator()); EXPECT_EQ(envoy::type::FractionalPercent::HUNDRED, config.tracingConfig()->client_sampling_.denominator()); - EXPECT_EQ(2, config.tracingConfig()->random_sampling_.numerator()); + EXPECT_EQ(200, config.tracingConfig()->random_sampling_.numerator()); EXPECT_EQ(envoy::type::FractionalPercent::TEN_THOUSAND, config.tracingConfig()->random_sampling_.denominator()); EXPECT_EQ(3, config.tracingConfig()->overall_sampling_.numerator()); @@ -243,6 +302,40 @@ TEST_F(HttpConnectionManagerConfigTest, SamplingConfigured) { config.tracingConfig()->overall_sampling_.denominator()); } +TEST_F(HttpConnectionManagerConfigTest, FractionalSamplingConfigured) { + const std::string yaml_string = R"EOF( + stat_prefix: ingress_http + internal_address_config: + unix_sockets: true + route_config: + name: local_route + tracing: + operation_name: ingress + client_sampling: + value: 0.1 + random_sampling: + value: 0.2 + overall_sampling: + value: 0.3 + http_filters: + - name: envoy.router + )EOF"; + + HttpConnectionManagerConfig config(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_); + + EXPECT_EQ(0, config.tracingConfig()->client_sampling_.numerator()); + EXPECT_EQ(envoy::type::FractionalPercent::HUNDRED, + config.tracingConfig()->client_sampling_.denominator()); + EXPECT_EQ(20, config.tracingConfig()->random_sampling_.numerator()); + EXPECT_EQ(envoy::type::FractionalPercent::TEN_THOUSAND, + config.tracingConfig()->random_sampling_.denominator()); + EXPECT_EQ(0, config.tracingConfig()->overall_sampling_.numerator()); + EXPECT_EQ(envoy::type::FractionalPercent::HUNDRED, + config.tracingConfig()->overall_sampling_.denominator()); +} + TEST_F(HttpConnectionManagerConfigTest, UnixSocketInternalAddress) { const std::string yaml_string = R"EOF( stat_prefix: ingress_http @@ -329,6 +422,75 @@ TEST_F(HttpConnectionManagerConfigTest, DisabledStreamIdleTimeout) { EXPECT_EQ(0, config.streamIdleTimeout().count()); } +// Validate that deprecated idle_timeout is still ingested. +TEST_F(HttpConnectionManagerConfigTest, DeprecatedIdleTimeout) { + const std::string yaml_string = R"EOF( + stat_prefix: ingress_http + idle_timeout: 1s + route_config: + name: local_route + http_filters: + - name: envoy.router + )EOF"; + + HttpConnectionManagerConfig config(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_); + EXPECT_EQ(1000, config.idleTimeout().value().count()); +} + +// Validate that idle_timeout set in common_http_protocol_options is used. +TEST_F(HttpConnectionManagerConfigTest, CommonHttpProtocolIdleTimeout) { + const std::string yaml_string = R"EOF( + stat_prefix: ingress_http + common_http_protocol_options: + idle_timeout: 1s + route_config: + name: local_route + http_filters: + - name: envoy.router + )EOF"; + + HttpConnectionManagerConfig config(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_); + EXPECT_EQ(1000, config.idleTimeout().value().count()); +} + +// Check that the default max request header count is 100. +TEST_F(HttpConnectionManagerConfigTest, DefaultMaxRequestHeaderCount) { + const std::string yaml_string = R"EOF( + stat_prefix: ingress_http + route_config: + name: local_route + http_filters: + - name: envoy.router + )EOF"; + + HttpConnectionManagerConfig config(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_); + EXPECT_EQ(100, config.maxRequestHeadersCount()); +} + +// Check that max request header count is configured. +TEST_F(HttpConnectionManagerConfigTest, MaxRequestHeaderCountConfigurable) { + const std::string yaml_string = R"EOF( + stat_prefix: ingress_http + common_http_protocol_options: + max_headers_count: 200 + route_config: + name: local_route + http_filters: + - name: envoy.router + )EOF"; + + HttpConnectionManagerConfig config(parseHttpConnectionManagerFromV2Yaml(yaml_string), context_, + date_provider_, route_config_provider_manager_, + scoped_routes_config_provider_manager_); + EXPECT_EQ(200, config.maxRequestHeadersCount()); +} + // Validated that by default we don't normalize paths // unless set build flag path_normalization_by_default=true TEST_F(HttpConnectionManagerConfigTest, NormalizePathDefault) { @@ -526,7 +688,7 @@ stat_prefix: router http_filters: - name: envoy.http_dynamo_filter config: {} - +- name: envoy.router )EOF"; auto proto_config = parseHttpConnectionManagerFromV2Yaml(yaml_string); @@ -535,6 +697,7 @@ stat_prefix: router EXPECT_CALL(context_.thread_local_, allocateSlot()); Network::FilterFactoryCb cb1 = factory.createFilterFactoryFromProto(proto_config, context_); Network::FilterFactoryCb cb2 = factory.createFilterFactoryFromProto(proto_config, context_); + EXPECT_TRUE(factory.isTerminalFilter()); } TEST_F(HttpConnectionManagerConfigTest, BadHttpConnectionMangerConfig) { @@ -785,13 +948,13 @@ TEST_F(FilterChainTest, createCustomUpgradeFilterChain) { auto foo_config = hcm_config.add_upgrade_configs(); foo_config->set_upgrade_type("foo"); - foo_config->add_filters()->ParseFromString("\n\fenvoy.router"); foo_config->add_filters()->ParseFromString("\n" "\x18" "envoy.http_dynamo_filter"); foo_config->add_filters()->ParseFromString("\n" "\x18" "envoy.http_dynamo_filter"); + foo_config->add_filters()->ParseFromString("\n\fenvoy.router"); HttpConnectionManagerConfig config(hcm_config, context_, date_provider_, route_config_provider_manager_, @@ -818,6 +981,27 @@ TEST_F(FilterChainTest, createCustomUpgradeFilterChain) { } } +TEST_F(FilterChainTest, createCustomUpgradeFilterChainWithRouterNotLast) { + auto hcm_config = parseHttpConnectionManagerFromV2Yaml(basic_config_); + auto websocket_config = hcm_config.add_upgrade_configs(); + websocket_config->set_upgrade_type("websocket"); + + ASSERT_TRUE(websocket_config->add_filters()->ParseFromString("\n\fenvoy.router")); + + auto foo_config = hcm_config.add_upgrade_configs(); + foo_config->set_upgrade_type("foo"); + foo_config->add_filters()->ParseFromString("\n\fenvoy.router"); + foo_config->add_filters()->ParseFromString("\n" + "\x18" + "envoy.http_dynamo_filter"); + + EXPECT_THROW_WITH_MESSAGE(HttpConnectionManagerConfig(hcm_config, context_, date_provider_, + route_config_provider_manager_, + scoped_routes_config_provider_manager_), + EnvoyException, + "Error: envoy.router must be the terminal http upgrade filter."); +} + TEST_F(FilterChainTest, invalidConfig) { auto hcm_config = parseHttpConnectionManagerFromV2Yaml(basic_config_); hcm_config.add_upgrade_configs()->set_upgrade_type("WEBSOCKET"); diff --git a/test/extensions/filters/network/mongo_proxy/proxy_test.cc b/test/extensions/filters/network/mongo_proxy/proxy_test.cc index 60860f9748456..2fb9b66221db1 100644 --- a/test/extensions/filters/network/mongo_proxy/proxy_test.cc +++ b/test/extensions/filters/network/mongo_proxy/proxy_test.cc @@ -178,7 +178,7 @@ TEST_F(MongoProxyFilterTest, DelayFaults) { EXPECT_EQ(1U, store_.counter("test.op_kill_cursors").value()); EXPECT_CALL(read_filter_callbacks_, continueReading()); - delay_timer->callback_(); + delay_timer->invokeCallback(); EXPECT_EQ(1U, store_.counter("test.delays_injected").value()); } @@ -558,7 +558,7 @@ TEST_F(MongoProxyFilterTest, ConcurrentQueryWithDrainClose) { EXPECT_CALL(read_filter_callbacks_.connection_, close(Network::ConnectionCloseType::FlushWrite)); EXPECT_CALL(*drain_timer, disableTimer()); - drain_timer->callback_(); + drain_timer->invokeCallback(); EXPECT_EQ(0U, store_.gauge("test.op_query_active", Stats::Gauge::ImportMode::Accumulate).value()); EXPECT_EQ(1U, store_.counter("test.cx_drain_close").value()); diff --git a/test/extensions/filters/network/rbac/BUILD b/test/extensions/filters/network/rbac/BUILD index 1990f3f3a2ce5..eb3f0b1584b7b 100644 --- a/test/extensions/filters/network/rbac/BUILD +++ b/test/extensions/filters/network/rbac/BUILD @@ -38,6 +38,7 @@ envoy_extension_cc_test( srcs = ["integration_test.cc"], extension_name = "envoy.filters.network.rbac", deps = [ + "//source/extensions/filters/network/echo:config", "//source/extensions/filters/network/rbac:config", "//test/integration:integration_lib", "//test/test_common:environment_lib", diff --git a/test/extensions/filters/network/rbac/integration_test.cc b/test/extensions/filters/network/rbac/integration_test.cc index b36c9bed10387..076099e67f42f 100644 --- a/test/extensions/filters/network/rbac/integration_test.cc +++ b/test/extensions/filters/network/rbac/integration_test.cc @@ -37,6 +37,8 @@ class RoleBasedAccessControlNetworkFilterIntegrationTest principals: - not_id: any: true + - name: envoy.echo + config: )EOF"; } diff --git a/test/extensions/filters/network/redis_proxy/config_test.cc b/test/extensions/filters/network/redis_proxy/config_test.cc index 3f2b45bc7ac42..ff348c9c1a06a 100644 --- a/test/extensions/filters/network/redis_proxy/config_test.cc +++ b/test/extensions/filters/network/redis_proxy/config_test.cc @@ -74,6 +74,7 @@ stat_prefix: foo NiceMock context; RedisProxyFilterConfigFactory factory; Network::FilterFactoryCb cb = factory.createFilterFactoryFromProto(proto_config, context); + EXPECT_TRUE(factory.isTerminalFilter()); Network::MockConnection connection; EXPECT_CALL(connection, addReadFilter(_)); cb(connection); diff --git a/test/extensions/filters/network/redis_proxy/conn_pool_impl_test.cc b/test/extensions/filters/network/redis_proxy/conn_pool_impl_test.cc index ee16cfaa50155..22161d0e00fb6 100644 --- a/test/extensions/filters/network/redis_proxy/conn_pool_impl_test.cc +++ b/test/extensions/filters/network/redis_proxy/conn_pool_impl_test.cc @@ -9,13 +9,8 @@ #include "test/extensions/clusters/redis/mocks.h" #include "test/extensions/filters/network/common/redis/mocks.h" #include "test/extensions/filters/network/common/redis/test_utils.h" -#include "test/extensions/filters/network/redis_proxy/mocks.h" #include "test/mocks/api/mocks.h" -#include "test/mocks/network/mocks.h" #include "test/mocks/thread_local/mocks.h" -#include "test/mocks/upstream/mocks.h" -#include "test/test_common/global.h" -#include "test/test_common/printers.h" #include "gmock/gmock.h" #include "gtest/gtest.h" @@ -71,10 +66,11 @@ class RedisConnPoolImplTest : public testing::Test, public Common::Redis::Client max_upstream_unknown_connections_reached_.value_++; })); - std::unique_ptr conn_pool_impl = std::make_unique( - cluster_name_, cm_, *this, tls_, - Common::Redis::Client::createConnPoolSettings(20, hashtagging, true, max_unknown_conns), - api_, std::move(store)); + std::unique_ptr conn_pool_impl = + std::make_unique(cluster_name_, cm_, *this, tls_, + Common::Redis::Client::createConnPoolSettings( + 20, hashtagging, true, max_unknown_conns, read_policy_), + api_, std::move(store)); // Set the authentication password for this connection pool. conn_pool_impl->tls_->getTyped().auth_password_ = auth_password_; conn_pool_ = std::move(conn_pool_impl); @@ -163,6 +159,43 @@ class RedisConnPoolImplTest : public testing::Test, public Common::Redis::Client return Common::Redis::Client::ClientPtr{create_(host)}; } + void testReadPolicy( + envoy::config::filter::network::redis_proxy::v2::RedisProxy::ConnPoolSettings::ReadPolicy + read_policy) { + InSequence s; + + read_policy_ = read_policy; + setup(); + + Common::Redis::RespValue value; + Common::Redis::Client::MockPoolRequest auth_request, active_request, readonly_request; + Common::Redis::Client::MockPoolCallbacks callbacks; + Common::Redis::Client::MockClient* client = new NiceMock(); + + EXPECT_CALL(cm_.thread_local_cluster_.lb_, chooseHost(_)) + .WillOnce( + Invoke([&](Upstream::LoadBalancerContext* context) -> Upstream::HostConstSharedPtr { + EXPECT_EQ(context->computeHashKey().value(), MurmurHash::murmurHash2_64("hash_key")); + EXPECT_EQ(context->metadataMatchCriteria(), nullptr); + EXPECT_EQ(context->downstreamConnection(), nullptr); + return cm_.thread_local_cluster_.lb_.host_; + })); + EXPECT_CALL(*this, create_(_)).WillOnce(Return(client)); + EXPECT_CALL( + *client, + makeRequest(Eq(NetworkFilters::Common::Redis::Utility::ReadOnlyRequest::instance()), _)) + .WillOnce(Return(&readonly_request)); + EXPECT_CALL(*cm_.thread_local_cluster_.lb_.host_, address()) + .WillRepeatedly(Return(test_address_)); + EXPECT_CALL(*client, makeRequest(Ref(value), Ref(callbacks))).WillOnce(Return(&active_request)); + Common::Redis::Client::PoolRequest* request = + conn_pool_->makeRequest("hash_key", value, callbacks); + EXPECT_EQ(&active_request, request); + + EXPECT_CALL(*client, close()); + tls_.shutdownThread(); + } + MOCK_METHOD1(create_, Common::Redis::Client::Client*(Upstream::HostConstSharedPtr host)); const std::string cluster_name_{"fake_cluster"}; @@ -174,6 +207,9 @@ class RedisConnPoolImplTest : public testing::Test, public Common::Redis::Client Network::Address::InstanceConstSharedPtr test_address_; std::string auth_password_; NiceMock api_; + envoy::config::filter::network::redis_proxy::v2::RedisProxy::ConnPoolSettings::ReadPolicy + read_policy_ = envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_MASTER; NiceMock upstream_cx_drained_; NiceMock max_upstream_unknown_connections_reached_; }; @@ -241,6 +277,17 @@ TEST_F(RedisConnPoolImplTest, BasicWithAuthPassword) { tls_.shutdownThread(); }; +TEST_F(RedisConnPoolImplTest, BasicWithReadPolicy) { + testReadPolicy(envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_PREFER_MASTER); + testReadPolicy(envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_REPLICA); + testReadPolicy(envoy::config::filter::network::redis_proxy::v2:: + RedisProxy_ConnPoolSettings_ReadPolicy_PREFER_REPLICA); + testReadPolicy( + envoy::config::filter::network::redis_proxy::v2::RedisProxy_ConnPoolSettings_ReadPolicy_ANY); +}; + TEST_F(RedisConnPoolImplTest, Hashtagging) { InSequence s; diff --git a/test/extensions/filters/network/tcp_proxy/config_test.cc b/test/extensions/filters/network/tcp_proxy/config_test.cc index 0de55a8acdb00..1adc0feac2b23 100644 --- a/test/extensions/filters/network/tcp_proxy/config_test.cc +++ b/test/extensions/filters/network/tcp_proxy/config_test.cc @@ -81,6 +81,7 @@ TEST(ConfigTest, ConfigTest) { config.set_stat_prefix("prefix"); config.set_cluster("cluster"); + EXPECT_TRUE(factory.isTerminalFilter()); Network::FilterFactoryCb cb = factory.createFilterFactoryFromProto(config, context); Network::MockConnection connection; EXPECT_CALL(connection, addReadFilter(_)); diff --git a/test/extensions/filters/network/thrift_proxy/config_test.cc b/test/extensions/filters/network/thrift_proxy/config_test.cc index 973461877a2bb..d555bd6a1fac2 100644 --- a/test/extensions/filters/network/thrift_proxy/config_test.cc +++ b/test/extensions/filters/network/thrift_proxy/config_test.cc @@ -56,6 +56,7 @@ class ThriftFilterConfigTestBase { void testConfig(envoy::config::filter::network::thrift_proxy::v2alpha1::ThriftProxy& config) { Network::FilterFactoryCb cb; EXPECT_NO_THROW({ cb = factory_.createFilterFactoryFromProto(config, context_); }); + EXPECT_TRUE(factory_.isTerminalFilter()); Network::MockConnection connection; EXPECT_CALL(connection, addReadFilter(_)); diff --git a/test/extensions/filters/network/thrift_proxy/driver/client.py b/test/extensions/filters/network/thrift_proxy/driver/client.py index d9092a54a25f4..f323cd7f3a49c 100755 --- a/test/extensions/filters/network/thrift_proxy/driver/client.py +++ b/test/extensions/filters/network/thrift_proxy/driver/client.py @@ -126,26 +126,25 @@ def main(cfg, reqhandle, resphandle): v = client.add(a, b) print("client: added {0} + {1} = {2}".format(a, b, v)) elif cfg.method == "execute": - param = Param( - return_fields=cfg.params, - the_works=TheWorks( - field_1=True, - field_2=0x7f, - field_3=0x7fff, - field_4=0x7fffffff, - field_5=0x7fffffffffffffff, - field_6=-1.5, - field_7=u"string is UTF-8: \U0001f60e", - field_8=b"binary is bytes: \x80\x7f\x00\x01", - field_9={ - 1: "one", - 2: "two", - 3: "three" - }, - field_10=[1, 2, 4, 8], - field_11=set(["a", "b", "c"]), - field_12=False, - )) + param = Param(return_fields=cfg.params, + the_works=TheWorks( + field_1=True, + field_2=0x7f, + field_3=0x7fff, + field_4=0x7fffffff, + field_5=0x7fffffffffffffff, + field_6=-1.5, + field_7=u"string is UTF-8: \U0001f60e", + field_8=b"binary is bytes: \x80\x7f\x00\x01", + field_9={ + 1: "one", + 2: "two", + 3: "three" + }, + field_10=[1, 2, 4, 8], + field_11=set(["a", "b", "c"]), + field_12=False, + )) try: result = client.execute(param) @@ -234,7 +233,7 @@ def main(cfg, reqhandle, resphandle): "--headers", dest="headers", metavar="KEY=VALUE[,KEY=VALUE]", - help="list of comma-delimited, key value pairs to include as tranport headers.", + help="list of comma-delimited, key value pairs to include as transport headers.", ) cfg = parser.parse_args() diff --git a/test/extensions/filters/network/thrift_proxy/driver/fbthrift/THeaderTransport.py b/test/extensions/filters/network/thrift_proxy/driver/fbthrift/THeaderTransport.py index 774c37b46a92c..66d7af97b22bc 100644 --- a/test/extensions/filters/network/thrift_proxy/driver/fbthrift/THeaderTransport.py +++ b/test/extensions/filters/network/thrift_proxy/driver/fbthrift/THeaderTransport.py @@ -521,8 +521,9 @@ def flushImpl(self, oneway): # We don't include the framing bytes as part of the frame size check frame_size = buf.tell() - (4 if wsz < MAX_FRAME_SIZE else 12) - _frame_size_check( - frame_size, self.__max_frame_size, header=self.__client_type == CLIENT_TYPE.HEADER) + _frame_size_check(frame_size, + self.__max_frame_size, + header=self.__client_type == CLIENT_TYPE.HEADER) self.getTransport().write(buf.getvalue()) if oneway: self.getTransport().onewayFlush() diff --git a/test/extensions/health_checkers/redis/redis_test.cc b/test/extensions/health_checkers/redis/redis_test.cc index d5741a158eb4d..f8be7912d1295 100644 --- a/test/extensions/health_checkers/redis/redis_test.cc +++ b/test/extensions/health_checkers/redis/redis_test.cc @@ -212,7 +212,7 @@ TEST_F(RedisHealthCheckerTest, PingAndVariousFailures) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Failure EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); @@ -222,7 +222,7 @@ TEST_F(RedisHealthCheckerTest, PingAndVariousFailures) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Redis failure via disconnect EXPECT_CALL(*timeout_timer_, disableTimer()); @@ -232,18 +232,18 @@ TEST_F(RedisHealthCheckerTest, PingAndVariousFailures) { expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Timeout EXPECT_CALL(pool_request_, cancel()); EXPECT_CALL(*client_, close()); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Shutdown with active request. EXPECT_CALL(pool_request_, cancel()); @@ -280,7 +280,7 @@ TEST_F(RedisHealthCheckerTest, FailuresLogging) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Failure EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); @@ -291,7 +291,7 @@ TEST_F(RedisHealthCheckerTest, FailuresLogging) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Fail again EXPECT_CALL(*event_logger_, logUnhealthy(_, _, _, false)); @@ -301,7 +301,7 @@ TEST_F(RedisHealthCheckerTest, FailuresLogging) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Shutdown with active request. EXPECT_CALL(pool_request_, cancel()); @@ -338,7 +338,7 @@ TEST_F(RedisHealthCheckerTest, LogInitialFailure) { expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Success EXPECT_CALL(*event_logger_, logAddHealthy(_, _, false)); @@ -351,7 +351,7 @@ TEST_F(RedisHealthCheckerTest, LogInitialFailure) { pool_callbacks_->onResponse(std::move(response)); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Shutdown with active request. EXPECT_CALL(pool_request_, cancel()); @@ -388,7 +388,7 @@ TEST_F(RedisHealthCheckerTest, Exists) { pool_callbacks_->onResponse(std::move(response)); expectExistsRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Failure, exists EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); @@ -400,7 +400,7 @@ TEST_F(RedisHealthCheckerTest, Exists) { pool_callbacks_->onResponse(std::move(response)); expectExistsRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Failure, no value EXPECT_CALL(*timeout_timer_, disableTimer()); @@ -439,7 +439,7 @@ TEST_F(RedisHealthCheckerTest, ExistsRedirected) { pool_callbacks_->onRedirection(moved_response); expectExistsRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Success with ask redirection EXPECT_CALL(*timeout_timer_, disableTimer()); @@ -481,7 +481,7 @@ TEST_F(RedisHealthCheckerTest, NoConnectionReuse) { expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // The connection will close on failure. EXPECT_CALL(*event_logger_, logEjectUnhealthy(_, _, _)); @@ -493,7 +493,7 @@ TEST_F(RedisHealthCheckerTest, NoConnectionReuse) { expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Redis failure via disconnect, the connection was closed by the other end. EXPECT_CALL(*timeout_timer_, disableTimer()); @@ -503,18 +503,18 @@ TEST_F(RedisHealthCheckerTest, NoConnectionReuse) { expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Timeout, the connection will be closed. EXPECT_CALL(pool_request_, cancel()); EXPECT_CALL(*client_, close()); EXPECT_CALL(*timeout_timer_, disableTimer()); EXPECT_CALL(*interval_timer_, enableTimer(_)); - timeout_timer_->callback_(); + timeout_timer_->invokeCallback(); expectClientCreate(); expectPingRequestCreate(); - interval_timer_->callback_(); + interval_timer_->invokeCallback(); // Shutdown with active request. EXPECT_CALL(pool_request_, cancel()); diff --git a/test/extensions/tracers/datadog/datadog_tracer_impl_test.cc b/test/extensions/tracers/datadog/datadog_tracer_impl_test.cc index 1870d31c4a122..50e2722f7cfc7 100644 --- a/test/extensions/tracers/datadog/datadog_tracer_impl_test.cc +++ b/test/extensions/tracers/datadog/datadog_tracer_impl_test.cc @@ -148,7 +148,7 @@ TEST_F(DatadogDriverTest, FlushSpansTimer) { // Timer should be re-enabled. EXPECT_CALL(*timer_, enableTimer(std::chrono::milliseconds(900))); - timer_->callback_(); + timer_->invokeCallback(); EXPECT_EQ(1U, stats_.counter("tracing.datadog.timer_flushed").value()); EXPECT_EQ(1U, stats_.counter("tracing.datadog.traces_sent").value()); diff --git a/test/extensions/tracers/lightstep/lightstep_tracer_impl_test.cc b/test/extensions/tracers/lightstep/lightstep_tracer_impl_test.cc index c6c2b72f753ad..046bd9596c4be 100644 --- a/test/extensions/tracers/lightstep/lightstep_tracer_impl_test.cc +++ b/test/extensions/tracers/lightstep/lightstep_tracer_impl_test.cc @@ -342,7 +342,7 @@ TEST_F(LightStepDriverTest, FlushSpansTimer) { EXPECT_CALL(runtime_.snapshot_, getInteger("tracing.lightstep.flush_interval_ms", 1000U)) .WillOnce(Return(1000U)); - timer_->callback_(); + timer_->invokeCallback(); EXPECT_EQ(1U, stats_.counter("tracing.lightstep.timer_flushed").value()); EXPECT_EQ(1U, stats_.counter("tracing.lightstep.spans_sent").value()); diff --git a/test/extensions/tracers/zipkin/zipkin_tracer_impl_test.cc b/test/extensions/tracers/zipkin/zipkin_tracer_impl_test.cc index 69f46e25cf757..eceef5245fee5 100644 --- a/test/extensions/tracers/zipkin/zipkin_tracer_impl_test.cc +++ b/test/extensions/tracers/zipkin/zipkin_tracer_impl_test.cc @@ -246,7 +246,7 @@ TEST_F(ZipkinDriverTest, FlushSpansTimer) { EXPECT_CALL(runtime_.snapshot_, getInteger("tracing.zipkin.flush_interval_ms", 5000U)) .WillOnce(Return(5000U)); - timer_->callback_(); + timer_->invokeCallback(); EXPECT_EQ(1U, stats_.counter("tracing.zipkin.timer_flushed").value()); EXPECT_EQ(1U, stats_.counter("tracing.zipkin.spans_sent").value()); diff --git a/test/extensions/transport_sockets/tls/integration/BUILD b/test/extensions/transport_sockets/tls/integration/BUILD index 685bc87ae57aa..6a311970bf26e 100644 --- a/test/extensions/transport_sockets/tls/integration/BUILD +++ b/test/extensions/transport_sockets/tls/integration/BUILD @@ -10,6 +10,7 @@ envoy_package() envoy_cc_test( name = "ssl_integration_test", + size = "large", srcs = [ "ssl_integration_test.cc", "ssl_integration_test.h", diff --git a/test/extensions/wasm/config_test.cc b/test/extensions/wasm/config_test.cc index bd85c280754fc..8dbfd64745699 100644 --- a/test/extensions/wasm/config_test.cc +++ b/test/extensions/wasm/config_test.cc @@ -57,28 +57,6 @@ TEST_P(WasmFactoryTest, CreateWasmFromWASM) { auto wasm = factory->createWasm(config, context); EXPECT_NE(wasm, nullptr); } -TEST_P(WasmFactoryTest, CreateWasmFromPrecompiledWASM) { - auto factory = - Registry::FactoryRegistry::getFactory("envoy.wasm"); - ASSERT_NE(factory, nullptr); - envoy::config::wasm::v2::WasmConfig config; - config.mutable_vm_config()->set_vm(absl::StrCat("envoy.wasm.vm.", GetParam())); - config.mutable_vm_config()->mutable_code()->set_filename(TestEnvironment::substitute( - "{{ test_rundir }}/test/extensions/wasm/test_data/logging_cpp.wasm")); - config.mutable_vm_config()->set_allow_precompiled(true); - config.set_singleton(true); - Upstream::MockClusterManager cluster_manager; - Event::MockDispatcher dispatcher; - ThreadLocal::MockInstance tls; - Stats::IsolatedStoreImpl stats_store; - NiceMock local_info; - Api::ApiPtr api = Api::createApiForTest(stats_store); - auto scope = Stats::ScopeSharedPtr(stats_store.createScope("wasm.")); - Server::Configuration::WasmFactoryContextImpl context(cluster_manager, dispatcher, tls, *api, - *scope, scope, local_info); - auto wasm = factory->createWasm(config, context); - EXPECT_NE(wasm, nullptr); -} TEST_P(WasmFactoryTest, CreateWasmFromWASMPerThread) { auto factory = diff --git a/test/extensions/wasm/test_data/Makefile b/test/extensions/wasm/test_data/Makefile index 1cd7106113be9..a0ab53432d0c8 100644 --- a/test/extensions/wasm/test_data/Makefile +++ b/test/extensions/wasm/test_data/Makefile @@ -8,6 +8,5 @@ include ../../../../api/wasm/rust/Makefile.base missing_cpp.wasm missing_cpp.wat: missing_cpp.cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_intrinsics.js em++ -s WASM=1 -s BINARYEN_TRAP_MODE='clamp' -s ERROR_ON_UNDEFINED_SYMBOLS=0 -s LEGALIZE_JS_FFI=0 -s EMIT_EMSCRIPTEN_METADATA=1 --std=c++17 -O3 -g3 -DEMSCRIPTEN_PROTOBUF_LITE=1 -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include --js-library ${CPP_API}/proxy_wasm_intrinsics.js missing_cpp.cc ${CPP_API}/proxy_wasm_intrinsics_lite.pb.cc ${CPP_API}/struct_lite.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf-lite.bc -o missing_cpp.js wavm-disas missing_cpp.wasm missing_cpp.wat - wavm-compile missing_cpp.wasm missing_cpp.wasm rm -f missing_cpp.js missing_cpp.wast chmod 644 missing_cpp.wat diff --git a/test/extensions/wasm/test_data/asm2wasm_cpp.wasm b/test/extensions/wasm/test_data/asm2wasm_cpp.wasm index b7611a4a56900..b8f6835cb95f9 100644 Binary files a/test/extensions/wasm/test_data/asm2wasm_cpp.wasm and b/test/extensions/wasm/test_data/asm2wasm_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/asm2wasm_cpp.wat b/test/extensions/wasm/test_data/asm2wasm_cpp.wat index aa80e732352b0..0f0c6f1514d0a 100644 --- a/test/extensions/wasm/test_data/asm2wasm_cpp.wat +++ b/test/extensions/wasm/test_data/asm2wasm_cpp.wat @@ -10,21 +10,21 @@ (type $8 (func (result i32))) (type $9 (func (param i32) (result i32))) (type $10 (func (param i32 i32 i32))) - (type $11 (func (param i32 i32) (result i32))) - (type $12 (func (param i32 i32 i32 i32) (result i32))) - (type $13 (func (param i64 i32 i32) (result i32))) - (type $14 (func (param i64 i32) (result i32))) - (type $15 (func (param f64 i32) (result f64))) + (type $11 (func (param f64 i32) (result f64))) + (type $12 (func (param i32 i32) (result i32))) + (type $13 (func (param i32 i32 i32 i32) (result i32))) + (type $14 (func (param i64 i32 i32) (result i32))) + (type $15 (func (param i64 i32) (result i32))) (type $16 (func (param i32 i32 i32 i32 i32 i32 i32))) (type $17 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "__table_base" (global $20 i32)) (import "env" "DYNAMICTOP_PTR" (global $21 i32)) @@ -95,8 +95,8 @@ (data $41 $19 (i32.const 1579) "\ff\ff\ff\ff\ff") (data $42 $19 (i32.const 1648) - "\ec\07\00\00\9a\08\00\00\80\06\00\00\00\00\00\00\ec\07\00\00G\08\00\00\90\06\00\00\00\00\00\00\c4\07\00\00h\08\00\00\ec\07\00\00u\08\00\00p\06\00\00\00\00\00\00\ec\07\00\00\e0\08\00\00" - "\80\06\00\00\00\00\00\00\ec\07\00\00\bc\08\00\00\a8\06") + "\ec\07\00\00\9a\08\00\00\80\06\00\00\00\00\00\00\ec\07\00\00G\08\00\00\90\06\00\00\00\00\00\00\c4\07\00\00h\08\00\00\ec\07\00\00u\08\00\00p\06\00\00\00\00\00\00\ec\07\00\00\bc\08\00\00" + "\80\06\00\00\00\00\00\00\ec\07\00\00\de\08\00\00\a8\06") (data $43 $19 (i32.const 1924) "h\09") (data $44 $19 (i32.const 1984) @@ -104,7 +104,7 @@ "\02\00\00\00\02\00\00\00\02\00\00\00 \00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NA" "N\00.\00%d\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabi" "v120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00N10_" - "_cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_info" + "_cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_info" "E") (func $stackAlloc (type $9) @@ -165,11 +165,11 @@ i32.add global.set $22 local.get $0 - i32.const 96 + i32.const 84 i32.add local.set $1 local.get $0 - i32.const 84 + i32.const 96 i32.add local.set $7 local.get $0 @@ -386,6 +386,7 @@ local.get $6 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -490,7 +491,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 2936 + i32.const 2932 i32.store local.get $0 i32.const 0 @@ -507,7 +508,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 2936 + i32.const 2932 i32.store local.get $0 i32.const 0 @@ -694,7 +695,184 @@ i32.const 2432 ) - (func $_memchr (type $11) + (func $_strlen (type $8) + (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 2060 + local.set $0 + block $block + loop $loop + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $2 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $2 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if + local.get $1 + local.set $0 + br $loop + end ;; $if + end ;; $loop + local.get $2 + i32.const 255 + i32.and + if $if_0 + loop $loop_0 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_0 + end ;; $loop_0 + end ;; $if_0 + end ;; $block + local.get $0 + i32.const 2060 + i32.sub + ) + + (func $_frexp (type $11) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + + (func $_memchr (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -816,6 +994,31 @@ local.get $0 ) + (func $_snprintf (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $22 + local.set $3 + global.get $22 + i32.const 16 + i32.add + global.set $22 + local.get $3 + local.get $2 + i32.store + local.get $0 + local.get $1 + local.get $3 + call $_vsnprintf + local.set $0 + local.get $3 + global.set $22 + local.get $0 + ) + (func $_vsnprintf (type $0) (param $0 i32) (param $1 i32) @@ -1041,15 +1244,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -1057,7 +1260,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -1315,11 +1518,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -1327,14 +1530,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -1347,11 +1550,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -1359,7 +1562,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -2266,11 +2469,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -2278,7 +2481,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -2347,7 +2550,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -2373,7 +2576,7 @@ local.get $0 i32.const 2114 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -2420,7 +2623,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -2450,7 +2653,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -2518,7 +2721,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -2532,7 +2735,7 @@ local.get $0 i32.const 2114 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -2569,7 +2772,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -2593,13 +2796,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -2608,7 +2811,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 @@ -2647,7 +2850,7 @@ f64.store ) - (func $___vfprintf_internal (type $11) + (func $___vfprintf_internal (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -2818,7 +3021,7 @@ local.get $0 ) - (func $_printf_core (type $12) + (func $_printf_core (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -2988,7 +3191,7 @@ local.get $0 local.get $12 local.get $4 - call $_out_279 + call $_out end ;; $if_2 local.get $4 br_if $loop_0 @@ -3201,7 +3404,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -3237,7 +3440,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $4 local.get $11 i32.load @@ -3425,7 +3628,7 @@ local.get $10 local.get $8 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -3739,7 +3942,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $4 br $block_13 @@ -3862,7 +4065,7 @@ local.get $16 local.get $4 local.get $7 - call $_pad_285 + call $_pad_524 local.get $4 if $if_28 i32.const 0 @@ -3893,7 +4096,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $4 i32.lt_u @@ -3956,7 +4159,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $4 local.get $16 @@ -3989,11 +4192,11 @@ local.tee $4 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $4 @@ -4001,17 +4204,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $4 @@ -4019,7 +4222,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -4051,7 +4254,7 @@ i32.add local.get $4 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -4096,7 +4299,7 @@ local.get $9 ) - (func $_out_279 (type $10) + (func $_out (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4113,7 +4316,7 @@ end ;; $if ) - (func $_getint_280 (type $9) + (func $_getint (type $9) (param $0 i32) (result i32) (local $1 i32) @@ -4155,7 +4358,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $10) + (func $_pop_arg (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4385,7 +4588,7 @@ end ;; $if ) - (func $_fmt_x (type $13) + (func $_fmt_x (type $14) (param $0 i64) (param $1 i32) (param $2 i32) @@ -4421,7 +4624,7 @@ local.get $1 ) - (func $_fmt_o (type $14) + (func $_fmt_o (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4453,7 +4656,7 @@ local.get $1 ) - (func $_fmt_u (type $14) + (func $_fmt_u (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4526,7 +4729,7 @@ local.get $1 ) - (func $_pad_285 (type $6) + (func $_pad_524 (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4577,7 +4780,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -4594,13 +4797,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 global.set $22 ) - (func $_wctomb (type $11) + (func $_wctomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4614,7 +4817,7 @@ end ;; $if ) - (func $_wcrtomb (type $11) + (func $_wcrtomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4933,189 +5136,44 @@ end ;; $if ) - (func $_frexp (type $15) - (param $0 f64) + (func $_sn_write (type $0) + (param $0 i32) (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - - (func $_sn_write (type $0) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - local.get $2 - local.get $0 - i32.load offset=16 - local.get $0 - i32.load offset=20 - local.tee $4 - i32.sub - local.tee $3 - local.get $3 - local.get $2 - i32.gt_u - select - local.set $3 - local.get $4 - local.get $1 - local.get $3 - call $_memcpy - drop - local.get $0 - local.get $0 - i32.load offset=20 - local.get $3 - i32.add - i32.store offset=20 - local.get $2 - ) - - (func $_strlen (type $8) - (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 2060 - local.set $0 - block $block - loop $loop - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $2 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $2 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if - local.get $1 - local.set $0 - br $loop - end ;; $if - end ;; $loop - local.get $2 - i32.const 255 - i32.and - if $if_0 - loop $loop_0 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_0 - end ;; $loop_0 - end ;; $if_0 - end ;; $block - local.get $0 - i32.const 2060 - i32.sub - ) - - (func $_snprintf (type $0) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - global.get $22 - local.set $3 - global.get $22 - i32.const 16 - i32.add - global.set $22 - local.get $3 - local.get $2 - i32.store - local.get $0 - local.get $1 - local.get $3 - call $_vsnprintf - local.set $0 - local.get $3 - global.set $22 - local.get $0 - ) - - (func $_malloc (type $9) - (param $0 i32) - (result i32) - (local $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + local.get $2 + local.get $0 + i32.load offset=16 + local.get $0 + i32.load offset=20 + local.tee $4 + i32.sub + local.tee $3 + local.get $3 + local.get $2 + i32.gt_u + select + local.set $3 + local.get $4 + local.get $1 + local.get $3 + call $_memcpy + drop + local.get $0 + local.get $0 + i32.load offset=20 + local.get $3 + i32.add + i32.store offset=20 + local.get $2 + ) + + (func $_malloc (type $9) + (param $0 i32) + (result i32) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10159,9 +10217,7 @@ (func $__ZSt18uncaught_exceptionv (type $8) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -10183,36 +10239,19 @@ (func $__Znwm (type $9) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 2932 - i32.const 2932 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 6 - call_indirect $18 (type $3) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $16) @@ -10349,192 +10388,35 @@ global.set $22 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) + global.get $22 + local.set $2 + global.get $22 + i32.const 16 + i32.add + global.set $22 local.get $0 i32.load8_s offset=11 - local.tee $6 + local.tee $3 i32.const 0 i32.lt_s - local.tee $7 + local.tee $4 if $if (result i32) local.get $0 i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add else - local.get $6 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if - local.set $1 - local.get $3 - i32.const 0 - local.get $3 - i32.const 0 - i32.gt_u - select - local.tee $2 - i32.const 11 - i32.lt_u - local.set $4 - i32.const 10 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add - local.get $4 - select - local.tee $8 + local.tee $3 local.get $1 - i32.ne - if $if_0 - block $block - block $block_0 - block $block_1 - local.get $4 - if $if_1 - local.get $0 - i32.load - local.set $1 - local.get $7 - if $if_2 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $1 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - br $block_0 - end ;; $if_2 - local.set $5 - else - local.get $8 - i32.const 1 - i32.add - local.tee $2 - call $__Znwm - local.set $5 - local.get $7 - if $if_3 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $5 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 - br $block_1 - end ;; $if_3 - local.set $1 - end ;; $if_1 - local.get $5 - local.get $1 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 - end ;; $block_1 - local.get $0 - local.get $2 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $3 - i32.store - local.get $0 - local.get $5 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $3 - i32.store8 offset=11 - end ;; $block - end ;; $if_0 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $22 - local.set $2 - global.get $22 - i32.const 16 - i32.add - global.set $22 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 - local.get $1 - i32.lt_u + i32.lt_u if $if_0 local.get $0 local.get $1 @@ -10784,6 +10666,148 @@ i32.store offset=8 ) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $1 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $1 + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $5 + i32.const 0 + local.get $5 + i32.const 0 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $2 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $2 + select + local.tee $4 + local.get $1 + i32.ne + if $if_0 + block $block + block $block_0 + block $block_1 + local.get $2 + if $if_1 + local.get $0 + i32.load + local.set $1 + local.get $6 + if $if_2 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + br $block_0 + end ;; $if_2 + local.set $2 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $2 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_3 + local.set $1 + end ;; $if_1 + local.get $2 + local.get $1 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_0 + ) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $0) (param $0 i32) (param $1 i32) @@ -10919,6 +10943,9 @@ i32.const 0 i32.lt_s if $if + local.get $2 + i32.load offset=8 + drop local.get $2 i32.load call $_free @@ -11111,7 +11138,8 @@ global.set $22 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -11123,46 +11151,51 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 17 @@ -11201,10 +11234,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11220,10 +11254,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11241,10 +11276,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -11308,10 +11344,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11320,6 +11357,26 @@ end ;; $if ) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $10) (param $0 i32) (param $1 i32) @@ -11462,7 +11519,7 @@ end ;; $if ) - (func $___dynamic_cast (type $11) + (func $___dynamic_cast (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -11522,9 +11579,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -11638,10 +11696,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11677,10 +11736,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11702,7 +11762,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -11739,93 +11801,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 25 + i32.add + call_indirect $18 (type $5) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 25 i32.add - call_indirect $18 (type $5) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -11836,10 +11889,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -12383,7 +12437,7 @@ call_indirect $18 (type $1) ) - (func $dynCall_iiii (type $12) + (func $dynCall_iiii (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -12563,5 +12617,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\1d\80\08\d0\a0\c0\02\b0 \c0 " + ;; "\00\02\00\04\00\80\02\1d\80\08\d0\a0\c0\02\b0 \c0 " ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/bad_signature_cpp.wasm b/test/extensions/wasm/test_data/bad_signature_cpp.wasm index 83dbcdea58bc0..2326f4f57a646 100644 Binary files a/test/extensions/wasm/test_data/bad_signature_cpp.wasm and b/test/extensions/wasm/test_data/bad_signature_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/bad_signature_cpp.wat b/test/extensions/wasm/test_data/bad_signature_cpp.wat index 372e9d157b8fb..2069313f1af57 100644 --- a/test/extensions/wasm/test_data/bad_signature_cpp.wat +++ b/test/extensions/wasm/test_data/bad_signature_cpp.wat @@ -7,19 +7,19 @@ (type $5 (func (param i32))) (type $6 (func (result i32))) (type $7 (func (param i32) (result i32))) - (type $8 (func (param i32 i32 i32))) - (type $9 (func (param i32 i32))) - (type $10 (func (param i32 i32 i32 i32 i32 i32 i32))) - (type $11 (func (param i32 i32) (result i32))) + (type $8 (func (param i32 i32))) + (type $9 (func (param i32 i32 i32))) + (type $10 (func (param i32 i32) (result i32))) + (type $11 (func (param i32 i32 i32 i32 i32 i32 i32))) (type $12 (func (param i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "__table_base" (global $15 i32)) (import "env" "DYNAMICTOP_PTR" (global $16 i32)) @@ -49,21 +49,21 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $17 (mut i32) (i32.const 3232)) - (global $18 (mut i32) (i32.const 5246112)) + (global $17 (mut i32) (i32.const 3216)) + (global $18 (mut i32) (i32.const 5246096)) (elem $19 $13 (global.get $15) $b0 $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $b1 $b2 $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $b2 $b2 $b3 $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b3 $b4 $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b4 $b5 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b5) (data $20 $14 (i32.const 1024) - "\88\04\00\00)\05\00\00\10\04\00\00\00\00\00\00\88\04\00\00\d6\04\00\00 \04\00\00\00\00\00\00`\04\00\00\f7\04\00\00\88\04\00\00\04\05\00\00\00\04\00\00\00\00\00\00\88\04\00\00o\05\00\00" - "\10\04\00\00\00\00\00\00\88\04\00\00K\05\00\008\04") + "\88\04\00\00)\05\00\00\10\04\00\00\00\00\00\00\88\04\00\00\d6\04\00\00 \04\00\00\00\00\00\00`\04\00\00\f7\04\00\00\88\04\00\00\04\05\00\00\00\04\00\00\00\00\00\00\88\04\00\00K\05\00\00" + "\10\04\00\00\00\00\00\00\88\04\00\00m\05\00\008\04") (data $21 $14 (i32.const 1117) "\04\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00(\04\00\00\01\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\02" "\00\00\00\02\00\00\00\02\00\00\00warn \00test debug\00 logging\00test info\00test tick\00N10__cx" "xabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv120__si_class" - "_type_infoE\00N10__cxxabiv117__class_type_infoE\00N10__cxxabiv119__p" - "ointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE") + "_type_infoE\00N10__cxxabiv117__class_type_infoE\00N10__cxxabiv117__p" + "base_type_infoE\00N10__cxxabiv119__pointer_type_infoE") (func $stackAlloc (type $7) (param $0 i32) @@ -95,7 +95,7 @@ global.set $17 ) - (func $establishStackSpace (type $9) + (func $establishStackSpace (type $8) (param $0 i32) (param $1 i32) local.get $0 @@ -111,18 +111,19 @@ (param $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $17 - local.set $5 + local.set $4 global.get $17 i32.const 32 i32.add global.set $17 - local.get $5 - local.tee $0 + local.get $4 + i32.const 12 + i32.add + local.tee $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 local.get $3 @@ -131,78 +132,74 @@ if $if call $_abort end ;; $if - local.get $5 - i32.const 12 - i32.add - local.set $4 block $block block $block_0 local.get $3 i32.const 11 i32.lt_u if $if_0 (result i32) - local.get $0 + local.get $1 local.get $3 i32.store8 offset=11 local.get $3 if $if_1 (result i32) - local.get $0 - local.set $1 + local.get $1 + local.set $0 br $block_0 else - local.get $0 + local.get $1 end ;; $if_1 else - local.get $0 + local.get $1 local.get $3 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 + local.tee $5 call $__Znwm - local.tee $1 + local.tee $0 i32.store - local.get $0 - local.get $6 + local.get $1 + local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $0 + local.get $1 local.get $3 i32.store offset=4 br $block_0 end ;; $if_0 - local.set $1 + local.set $0 br $block end ;; $block_0 - local.get $1 + local.get $0 local.get $2 local.get $3 call $_memcpy drop end ;; $block - local.get $1 + local.get $0 local.get $3 i32.add i32.const 0 i32.store8 local.get $4 - local.get $0 + local.get $1 i32.const 1192 call $_strlen call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm - local.tee $1 + local.tee $0 i64.load align=4 i64.store align=4 local.get $4 - local.get $1 + local.get $0 i32.load offset=8 i32.store offset=8 - local.get $1 + local.get $0 i64.const 0 i64.store align=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 3 @@ -211,19 +208,20 @@ local.get $4 local.get $4 i32.load8_s offset=11 - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s local.tee $2 select local.get $4 i32.load offset=4 - local.get $1 + local.get $0 i32.const 255 i32.and local.get $2 select call $_proxy_log + drop local.get $4 i32.load8_s offset=11 i32.const 0 @@ -233,19 +231,19 @@ i32.load call $_free end ;; $if_2 - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s if $if_3 - local.get $5 + local.get $4 global.set $17 return end ;; $if_3 - local.get $0 + local.get $1 i32.load call $_free - local.get $5 + local.get $4 global.set $17 ) @@ -258,106 +256,110 @@ global.get $17 local.set $0 global.get $17 - i32.const 32 + i32.const 48 i32.add global.set $17 local.get $0 + i32.const 24 + i32.add + local.tee $1 i32.const 10 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1198 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1206 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=10 local.get $0 i32.const 12 i32.add - local.tee $1 - local.get $0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc + local.tee $3 i64.load align=4 i64.store align=4 - local.get $1 local.get $2 + local.get $3 i32.load offset=8 i32.store offset=8 - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 i32.const 1 - local.get $1 + local.get $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load8_s offset=11 - local.tee $2 + local.tee $3 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 select - local.get $1 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 255 i32.and - local.get $3 + local.get $4 select call $_proxy_log - local.get $1 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $2 i32.load call $_free end ;; $if - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $0 + local.get $1 i32.load call $_free end ;; $if_0 - local.get $0 + local.get $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1218 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1226 i32.load8_s i32.store8 offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=9 - local.get $1 local.get $0 + local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $2 i64.load align=4 i64.store align=4 - local.get $1 + local.get $0 local.get $2 i32.load offset=8 i32.store offset=8 @@ -368,17 +370,17 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $1 + local.get $0 i32.load - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $3 select - local.get $1 + local.get $0 i32.load offset=4 local.get $2 i32.const 255 @@ -386,16 +388,17 @@ local.get $3 select call $_proxy_log - local.get $1 + drop + local.get $0 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $1 + local.get $0 i32.load call $_free end ;; $if_1 - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s @@ -404,7 +407,7 @@ global.set $17 return end ;; $if_2 - local.get $0 + local.get $1 i32.load call $_free local.get $0 @@ -423,35 +426,35 @@ i32.add global.set $17 local.get $0 + i32.const 12 + i32.add + local.tee $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1228 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1236 i32.load8_s i32.store8 offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=9 local.get $0 - i32.const 12 - i32.add - local.tee $1 - local.get $0 + local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $2 i64.load align=4 i64.store align=4 - local.get $1 + local.get $0 local.get $2 i32.load offset=8 i32.store offset=8 @@ -462,17 +465,17 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $1 + local.get $0 i32.load - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $3 select - local.get $1 + local.get $0 i32.load offset=4 local.get $2 i32.const 255 @@ -480,16 +483,17 @@ local.get $3 select call $_proxy_log - local.get $1 + drop + local.get $0 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $0 i32.load call $_free end ;; $if - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s @@ -498,7 +502,7 @@ global.set $17 return end ;; $if_0 - local.get $0 + local.get $1 i32.load call $_free local.get $0 @@ -521,7 +525,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 1984 + i32.const 1980 i32.store local.get $0 i32.const 0 @@ -538,7 +542,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 1984 + i32.const 1980 i32.store local.get $0 i32.const 0 @@ -555,7 +559,7 @@ global.set $17 ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $8) + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -806,6 +810,63 @@ i32.sub ) + (func $_strcmp (type $10) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_malloc (type $7) (param $0 i32) (result i32) @@ -5853,14 +5914,12 @@ (func $__ZSt18uncaught_exceptionv (type $6) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $8) + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -5877,45 +5936,28 @@ (func $__Znwm (type $7) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 1980 - i32.const 1980 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 2 - call_indirect $13 (type $0) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop - ) - - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $8) - (param $0 i32) - (param $1 i32) - (param $2 i32) - local.get $2 - if $if - local.get $0 + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $9) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 local.get $1 local.get $2 call $_memmove @@ -5923,7 +5965,7 @@ end ;; $if ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $10) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6065,73 +6107,70 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) local.get $0 i32.load8_s offset=11 - local.tee $6 + local.tee $3 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 local.get $0 i32.load offset=8 i32.const 2147483647 i32.and i32.const -1 i32.add + local.set $1 + local.get $0 + i32.load offset=4 else - local.get $6 + i32.const 10 + local.set $1 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if - local.set $1 - local.get $3 + local.tee $5 i32.const 0 - local.get $3 + local.get $5 i32.const 0 i32.gt_u select - local.tee $2 + local.tee $4 i32.const 11 i32.lt_u - local.set $4 + local.set $2 i32.const 10 - local.get $2 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and i32.const -1 i32.add - local.get $4 + local.get $2 select - local.tee $8 + local.tee $4 local.get $1 i32.ne if $if_0 block $block block $block_0 block $block_1 - local.get $4 + local.get $2 if $if_1 local.get $0 i32.load local.set $1 - local.get $7 + local.get $6 if $if_2 (result i32) i32.const 0 - local.set $4 + local.set $3 local.get $0 else local.get $0 local.get $1 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 @@ -6141,80 +6180,68 @@ call $_free br $block_0 end ;; $if_2 - local.set $5 + local.set $2 else - local.get $8 + local.get $4 i32.const 1 i32.add - local.tee $2 call $__Znwm - local.set $5 - local.get $7 + local.set $2 + local.get $6 if $if_3 (result i32) i32.const 1 - local.set $4 + local.set $3 local.get $0 i32.load else - local.get $5 + local.get $2 local.get $0 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 br $block_1 end ;; $if_3 local.set $1 end ;; $if_1 - local.get $5 + local.get $2 local.get $1 local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load + i32.load offset=4 i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm local.get $1 call $_free - local.get $4 + local.get $3 i32.eqz br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 end ;; $block_1 local.get $0 - local.get $2 + local.get $4 + i32.const 1 + i32.add i32.const -2147483648 i32.or i32.store offset=8 - local.get $1 - local.get $3 - i32.store local.get $0 local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 i32.store br $block end ;; $block_0 local.get $0 - local.get $3 + local.get $5 i32.store8 offset=11 end ;; $block end ;; $if_0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $11) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6327,7 +6354,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $11) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6491,7 +6518,8 @@ global.set $17 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -6503,46 +6531,51 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 11 @@ -6581,10 +6614,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -6600,10 +6634,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -6621,10 +6656,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -6688,10 +6724,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -6700,7 +6737,27 @@ end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $8) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $4) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6842,7 +6899,7 @@ end ;; $if ) - (func $___dynamic_cast (type $11) + (func $___dynamic_cast (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6902,9 +6959,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -7018,10 +7076,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -7057,10 +7116,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -7082,7 +7142,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -7119,93 +7181,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 19 + i32.add + call_indirect $13 (type $2) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 19 i32.add - call_indirect $13 (type $2) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -7216,10 +7269,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -7820,7 +7874,7 @@ call_indirect $13 (type $0) ) - (func $dynCall_vi (type $9) + (func $dynCall_vi (type $8) (param $0 i32) (param $1 i32) local.get $1 @@ -7870,7 +7924,7 @@ call_indirect $13 (type $3) ) - (func $dynCall_viiiiii (type $10) + (func $dynCall_viiiiii (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -7943,5 +7997,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\17\80\08\a0\99\c0\02\80\19\90\19" + ;; "\00\02\00\04\00\80\02\17\80\08\90\99\c0\02\f0\18\80\19" ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/emscripten_cpp.cc b/test/extensions/wasm/test_data/emscripten_cpp.cc index 7f45b2678f45b..76c3fa15e3013 100644 --- a/test/extensions/wasm/test_data/emscripten_cpp.cc +++ b/test/extensions/wasm/test_data/emscripten_cpp.cc @@ -11,8 +11,7 @@ float gInfinity = INFINITY; extern "C" EMSCRIPTEN_KEEPALIVE void proxy_onStart(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) { logInfo(std::string("NaN ") + std::to_string(gNan)); - // For some reason these return "inf nan": - // logWarn("inf " + std::to_string(gInfinity)); - // logInfo("inf " + std::to_string(1.0/0.0)); + logWarn("inf " + std::to_string(gInfinity)); + logWarn("inf " + std::to_string(1.0 / 0.0)); logWarn(std::string("inf ") + (std::isinf(gInfinity) ? "inf" : "nan")); } diff --git a/test/extensions/wasm/test_data/emscripten_cpp.wasm b/test/extensions/wasm/test_data/emscripten_cpp.wasm index 72ca5f667fb5d..d1a0f54ad6445 100644 Binary files a/test/extensions/wasm/test_data/emscripten_cpp.wasm and b/test/extensions/wasm/test_data/emscripten_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/emscripten_cpp.wat b/test/extensions/wasm/test_data/emscripten_cpp.wat index 6d917b57817a2..80241df8e1af3 100644 --- a/test/extensions/wasm/test_data/emscripten_cpp.wat +++ b/test/extensions/wasm/test_data/emscripten_cpp.wat @@ -10,29 +10,32 @@ (type $8 (func (result i32))) (type $9 (func (param i32) (result i32))) (type $10 (func (param i32 i32 i32))) - (type $11 (func (param i32 i32) (result i32))) - (type $12 (func (param i32 i32 i32 i32) (result i32))) - (type $13 (func (param i64 i32 i32) (result i32))) - (type $14 (func (param i64 i32) (result i32))) - (type $15 (func (param f64 i32) (result f64))) + (type $11 (func (param f64 i32) (result f64))) + (type $12 (func (param i32 i32) (result i32))) + (type $13 (func (param i32 i32 i32 i32) (result i32))) + (type $14 (func (param i64 i32 i32) (result i32))) + (type $15 (func (param i64 i32) (result i32))) (type $16 (func (param i32 i32 i32 i32 i32 i32 i32))) (type $17 (func (param i32 f32))) (type $18 (func (param i32 i32 f32))) - (type $19 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) + (type $19 (func (param i32 f64))) + (type $20 (func (param i32 i32 f64))) + (type $21 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) - (import "env" "__table_base" (global $22 i32)) - (import "env" "DYNAMICTOP_PTR" (global $23 i32)) - (import "global" "NaN" (global $24 f64)) - (import "env" "memory" (memory $21 256 256)) - (import "env" "table" (table $20 29 29 funcref)) + (import "env" "__table_base" (global $24 i32)) + (import "env" "DYNAMICTOP_PTR" (global $25 i32)) + (import "global" "NaN" (global $26 f64)) + (import "global" "Infinity" (global $27 f64)) + (import "env" "memory" (memory $23 256 256)) + (import "env" "table" (table $22 29 29 funcref)) (export "__GLOBAL__sub_I_status_cc" (func $__GLOBAL__sub_I_status_cc)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) @@ -41,6 +44,7 @@ (export "_free" (func $_free)) (export "_malloc" (func $_malloc)) (export "_memcpy" (func $_memcpy)) + (export "_memmove" (func $_memmove)) (export "_memset" (func $_memset)) (export "_proxy_onStart" (func $_proxy_onStart)) (export "_sbrk" (func $_sbrk)) @@ -56,98 +60,99 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $25 (mut i32) (i32.const 4176)) - (global $26 (mut i32) (i32.const 5247056)) - (elem $27 $20 (global.get $22) + (global $28 (mut i32) (i32.const 4176)) + (global $29 (mut i32) (i32.const 5247056)) + (elem $30 $22 (global.get $24) $b0 $_fmt_fp $b1 $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $b1 $b2 $b3 $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $b3 $b3 $b4 $_pop_arg_long_double $b5 $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b5 $b6 $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b6 $b7 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b7) - (data $28 $21 (i32.const 1024) + (data $31 $23 (i32.const 1024) "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $29 $21 (i32.const 1056) + (data $32 $23 (i32.const 1056) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $30 $21 (i32.const 1105) + (data $33 $23 (i32.const 1105) "\0b") - (data $31 $21 (i32.const 1114) + (data $34 $23 (i32.const 1114) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $32 $21 (i32.const 1163) + (data $35 $23 (i32.const 1163) "\0c") - (data $33 $21 (i32.const 1175) + (data $36 $23 (i32.const 1175) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $34 $21 (i32.const 1221) + (data $37 $23 (i32.const 1221) "\0e") - (data $35 $21 (i32.const 1233) + (data $38 $23 (i32.const 1233) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $36 $21 (i32.const 1279) + (data $39 $23 (i32.const 1279) "\10") - (data $37 $21 (i32.const 1291) + (data $40 $23 (i32.const 1291) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $38 $21 (i32.const 1346) + (data $41 $23 (i32.const 1346) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $39 $21 (i32.const 1395) + (data $42 $23 (i32.const 1395) "\0b") - (data $40 $21 (i32.const 1407) + (data $43 $23 (i32.const 1407) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $41 $21 (i32.const 1453) + (data $44 $23 (i32.const 1453) "\0c") - (data $42 $21 (i32.const 1465) + (data $45 $23 (i32.const 1465) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF") - (data $43 $21 (i32.const 1540) + (data $46 $23 (i32.const 1540) "\01") - (data $44 $21 (i32.const 1579) + (data $47 $23 (i32.const 1579) "\ff\ff\ff\ff\ff") - (data $45 $21 (i32.const 1648) - "\f0\07\00\00\9c\08\00\00\80\06\00\00\00\00\00\00\f0\07\00\00I\08\00\00\90\06\00\00\00\00\00\00\c8\07\00\00j\08\00\00\f0\07\00\00w\08\00\00p\06\00\00\00\00\00\00\f0\07\00\00\e2\08\00\00" - "\80\06\00\00\00\00\00\00\f0\07\00\00\be\08\00\00\a8\06") - (data $46 $21 (i32.const 1738) + (data $48 $23 (i32.const 1648) + "\f0\07\00\00\a1\08\00\00\80\06\00\00\00\00\00\00\f0\07\00\00N\08\00\00\90\06\00\00\00\00\00\00\c8\07\00\00o\08\00\00\f0\07\00\00|\08\00\00p\06\00\00\00\00\00\00\f0\07\00\00\c3\08\00\00" + "\80\06\00\00\00\00\00\00\f0\07\00\00\e5\08\00\00\a8\06") + (data $49 $23 (i32.const 1738) "\80\7f") - (data $47 $21 (i32.const 1928) + (data $50 $23 (i32.const 1928) "h\09") - (data $48 $21 (i32.const 1988) + (data $51 $23 (i32.const 1988) "p\06\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\02\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\98\06\00\00\01\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\02\00\00\00" - "\02\00\00\00\02\00\00\00\02\00\00\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00" - ".\00%f\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv1" - "20__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00N10__c" - "xxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE") + "\02\00\00\00\02\00\00\00\02\00\00\00inf \00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan" + "\00NAN\00.\00%f\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxx" + "abiv120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00N" + "10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_i" + "nfoE") (func $stackAlloc (type $9) (param $0 i32) (result i32) (local $1 i32) - global.get $25 + global.get $28 local.set $1 local.get $0 - global.get $25 + global.get $28 i32.add - global.set $25 - global.get $25 + global.set $28 + global.get $28 i32.const 15 i32.add i32.const -16 i32.and - global.set $25 + global.set $28 local.get $1 ) (func $stackSave (type $8) (result i32) - global.get $25 + global.get $28 ) (func $stackRestore (type $7) (param $0 i32) local.get $0 - global.set $25 + global.set $28 ) (func $establishStackSpace (type $2) (param $0 i32) (param $1 i32) local.get $0 - global.set $25 + global.set $28 local.get $1 - global.set $26 + global.set $29 ) (func $_proxy_onStart (type $6) @@ -156,136 +161,266 @@ (param $2 i32) (param $3 i32) (param $4 i32) - global.get $25 + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $28 local.set $0 - global.get $25 + global.get $28 + i32.const 80 + i32.add + global.set $28 + local.get $0 i32.const 48 i32.add - global.set $25 + local.set $2 local.get $0 i32.const 24 i32.add - local.set $1 + local.set $3 local.get $0 i32.const 12 i32.add - local.tee $2 + local.set $4 + local.get $0 + i32.const 60 + i32.add + local.tee $1 i64.const 0 i64.store align=4 - local.get $2 + local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $1 i32.const 4 i32.store8 offset=11 - local.get $2 + local.get $1 i32.const 542007630 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=4 local.get $0 - global.get $24 + i32.const 36 + i32.add + local.tee $5 + global.get $26 f32.demote_f64 call $__ZNSt3__29to_stringEf - local.get $1 local.get $2 - local.get $0 + local.get $1 + local.get $5 i32.load - local.get $0 - local.get $0 + local.get $5 + local.get $5 i32.load8_s offset=11 - local.tee $3 + local.tee $6 i32.const 0 i32.lt_s - local.tee $4 + local.tee $7 select - local.get $0 + local.get $5 i32.load offset=4 - local.get $3 + local.get $6 i32.const 255 i32.and - local.get $4 + local.get $7 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $6 i64.load align=4 i64.store align=4 - local.get $1 - local.get $3 + local.get $2 + local.get $6 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $6 i64.const 0 i64.store align=4 - local.get $3 + local.get $6 i32.const 0 i32.store offset=8 i32.const 2 - local.get $1 + local.get $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load8_s offset=11 - local.tee $3 + local.tee $6 i32.const 0 i32.lt_s - local.tee $4 + local.tee $7 select - local.get $1 + local.get $2 i32.load offset=4 - local.get $3 + local.get $6 i32.const 255 i32.and - local.get $4 + local.get $7 select call $_proxy_log - local.get $1 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $2 i32.load call $_free end ;; $if - local.get $0 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $0 + local.get $5 i32.load call $_free end ;; $if_0 - local.get $2 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $2 + local.get $1 i32.load call $_free end ;; $if_1 + local.get $1 + global.get $27 + f32.demote_f64 + call $__ZNSt3__29to_stringEf + local.get $3 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $3 + local.get $2 + i32.load offset=8 + i32.store offset=8 + local.get $2 + i64.const 0 + i64.store align=4 + local.get $2 + i32.const 0 + i32.store offset=8 + i32.const 3 + local.get $3 + i32.load + local.get $3 + local.get $3 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $5 + select + local.get $3 + i32.load offset=4 + local.get $2 + i32.const 255 + i32.and + local.get $5 + select + call $_proxy_log + drop + local.get $3 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_2 + local.get $3 + i32.load + call $_free + end ;; $if_2 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $1 + i32.load + call $_free + end ;; $if_3 + local.get $1 + global.get $27 + call $__ZNSt3__29to_stringEd + local.get $4 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc + local.tee $2 + i64.load align=4 + i64.store align=4 + local.get $4 + local.get $2 + i32.load offset=8 + i32.store offset=8 local.get $2 i64.const 0 i64.store align=4 local.get $2 i32.const 0 i32.store offset=8 + i32.const 3 + local.get $4 + i32.load + local.get $4 + local.get $4 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $3 + select + local.get $4 + i32.load offset=4 local.get $2 + i32.const 255 + i32.and + local.get $3 + select + call $_proxy_log + drop + local.get $4 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_4 + local.get $4 + i32.load + call $_free + end ;; $if_4 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $1 + i32.load + call $_free + end ;; $if_5 + local.get $1 + i64.const 0 + i64.store align=4 + local.get $1 + i32.const 0 + i32.store offset=8 + local.get $1 i32.const 4 i32.store8 offset=11 - local.get $2 + local.get $1 i32.const 543583849 i32.store - local.get $2 + local.get $1 i32.const 0 i32.store8 offset=4 + local.get $0 local.get $1 - local.get $2 - i32.const 2100 - i32.const 2108 + i32.const 2105 + i32.const 2113 i32.const 1736 i32.load i32.const 2147483647 @@ -293,76 +428,77 @@ i32.const 2139095040 i32.eq select - local.tee $3 - local.get $3 + local.tee $2 + local.get $2 call $_strlen call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $2 i64.load align=4 i64.store align=4 - local.get $1 - local.get $3 + local.get $0 + local.get $2 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $2 i64.const 0 i64.store align=4 - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 i32.const 3 - local.get $1 + local.get $0 i32.load - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load8_s offset=11 - local.tee $3 + local.tee $2 i32.const 0 i32.lt_s - local.tee $4 + local.tee $3 select - local.get $1 + local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 255 i32.and - local.get $4 + local.get $3 select call $_proxy_log - local.get $1 + drop + local.get $0 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_2 - local.get $1 + if $if_6 + local.get $0 i32.load call $_free - end ;; $if_2 - local.get $2 + end ;; $if_6 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_3 + if $if_7 local.get $0 - global.set $25 + global.set $28 return - end ;; $if_3 - local.get $2 + end ;; $if_7 + local.get $1 i32.load call $_free local.get $0 - global.set $25 + global.set $28 ) (func $__GLOBAL__sub_I_status_cc (type $3) (local $0 i32) (local $1 i32) - global.get $25 + global.get $28 local.set $0 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 i32.const 2320 i64.const 0 i64.store align=4 @@ -370,7 +506,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 2936 + i32.const 2932 i32.store local.get $0 i32.const 0 @@ -387,7 +523,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 2936 + i32.const 2932 i32.store local.get $0 i32.const 0 @@ -401,7 +537,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - global.set $25 + global.set $28 ) (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $10) @@ -413,12 +549,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $25 + global.get $28 local.set $5 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 local.get $0 local.get $1 i32.store @@ -435,7 +571,7 @@ i32.eqz if $if local.get $5 - global.set $25 + global.set $28 return end ;; $if local.get $5 @@ -566,7 +702,7 @@ i32.load offset=8 i32.store offset=8 local.get $5 - global.set $25 + global.set $28 ) (func $___errno_location (type $8) @@ -574,14 +710,222 @@ i32.const 2432 ) - (func $_memchr (type $11) + (func $_strlen (type $9) (param $0 i32) - (param $1 i32) (result i32) + (local $1 i32) (local $2 i32) + (local $3 i32) block $block block $block_0 - block $block_1 + local.get $0 + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block + local.get $0 + local.get $2 + i32.sub + ) + + (func $_frexp (type $11) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + + (func $_memchr (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + block $block + block $block_0 + block $block_1 local.get $1 i32.const 0 i32.ne @@ -696,6 +1040,31 @@ local.get $0 ) + (func $_snprintf (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $28 + local.set $3 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $3 + local.get $2 + i32.store + local.get $0 + local.get $1 + local.get $3 + call $_vsnprintf + local.set $0 + local.get $3 + global.set $28 + local.get $0 + ) + (func $_vsnprintf (type $0) (param $0 i32) (param $1 i32) @@ -703,12 +1072,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $25 + global.get $28 local.set $3 - global.get $25 + global.get $28 i32.const 160 i32.add - global.set $25 + global.set $28 local.get $3 i32.const 144 i32.add @@ -792,7 +1161,7 @@ end ;; $if_0 end ;; $block local.get $3 - global.set $25 + global.set $28 local.get $0 ) @@ -827,12 +1196,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $25 + global.get $28 local.set $21 - global.get $25 + global.get $28 i32.const 560 i32.add - global.set $25 + global.set $28 local.get $21 i32.const 32 i32.add @@ -864,13 +1233,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 2081 + i32.const 2086 local.set $18 i32.const 1 else - i32.const 2084 + i32.const 2089 + i32.const 2092 i32.const 2087 - i32.const 2082 local.get $4 i32.const 1 i32.and @@ -893,8 +1262,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 2108 - i32.const 2112 + i32.const 2113 + i32.const 2117 local.get $5 i32.const 32 i32.and @@ -902,8 +1271,8 @@ i32.ne local.tee $3 select - i32.const 2100 - i32.const 2104 + i32.const 2105 + i32.const 2109 local.get $3 select local.get $1 @@ -921,15 +1290,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -937,7 +1306,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -1195,11 +1564,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -1207,14 +1576,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -1227,11 +1596,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -1239,7 +1608,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -2146,11 +2515,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -2158,7 +2527,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -2227,7 +2596,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -2251,9 +2620,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 2116 + i32.const 2121 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -2300,7 +2669,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -2330,7 +2699,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -2398,7 +2767,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -2410,9 +2779,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 2116 + i32.const 2121 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -2449,7 +2818,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -2473,13 +2842,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -2488,13 +2857,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $25 + global.set $28 local.get $2 local.get $0 local.get $0 @@ -2527,7 +2896,7 @@ f64.store ) - (func $___vfprintf_internal (type $11) + (func $___vfprintf_internal (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -2536,12 +2905,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $25 + global.get $28 local.set $2 - global.get $25 + global.get $28 i32.const 224 i32.add - global.set $25 + global.set $28 local.get $2 i32.const 160 i32.add @@ -2651,7 +3020,7 @@ i32.and i32.const 2 i32.add - call_indirect $20 (type $0) + call_indirect $22 (type $0) drop local.get $1 i32.const -1 @@ -2694,11 +3063,11 @@ end ;; $if local.set $0 local.get $2 - global.set $25 + global.set $28 local.get $0 ) - (func $_printf_core (type $12) + (func $_printf_core (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -2726,12 +3095,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $25 + global.get $28 local.set $15 - global.get $25 + global.get $28 i32.const -64 i32.sub - global.set $25 + global.set $28 local.get $15 i32.const 40 i32.add @@ -2748,7 +3117,7 @@ i32.const 56 i32.add local.tee $11 - i32.const 2118 + i32.const 2123 i32.store local.get $0 i32.const 0 @@ -2868,7 +3237,7 @@ local.get $0 local.get $12 local.get $4 - call $_out_279 + call $_out end ;; $if_2 local.get $4 br_if $loop_0 @@ -3081,7 +3450,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -3117,7 +3486,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $4 local.get $11 i32.load @@ -3305,7 +3674,7 @@ local.get $10 local.get $8 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -3492,7 +3861,7 @@ local.set $4 i32.const 0 local.set $12 - i32.const 2064 + i32.const 2069 local.set $8 br $block_14 end ;; $block_25 @@ -3508,13 +3877,13 @@ i64.sub local.tee $25 i64.store - i32.const 2064 + i32.const 2069 local.set $8 i32.const 1 else - i32.const 2065 - i32.const 2066 - i32.const 2064 + i32.const 2070 + i32.const 2071 + i32.const 2069 local.get $7 i32.const 1 i32.and @@ -3538,7 +3907,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 2064 + i32.const 2069 local.set $8 br $block_16 end ;; $block_23 @@ -3554,7 +3923,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 2064 + i32.const 2069 local.set $8 local.get $18 local.set $4 @@ -3563,7 +3932,7 @@ local.get $10 i32.load local.tee $5 - i32.const 2074 + i32.const 2079 local.get $5 select local.tee $6 @@ -3583,7 +3952,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 2064 + i32.const 2069 local.set $8 local.get $4 local.get $6 @@ -3619,7 +3988,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $4 br $block_13 @@ -3634,7 +4003,7 @@ local.get $7 local.get $6 i32.const 1 - call_indirect $20 (type $1) + call_indirect $22 (type $1) local.set $4 br $block_9 end ;; $block_18 @@ -3644,7 +4013,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 2064 + i32.const 2069 local.set $8 local.get $18 local.set $4 @@ -3672,11 +4041,11 @@ local.tee $8 select local.set $12 - i32.const 2064 + i32.const 2069 local.get $6 i32.const 4 i32.shr_u - i32.const 2064 + i32.const 2069 i32.add local.get $8 select @@ -3742,7 +4111,7 @@ local.get $16 local.get $4 local.get $7 - call $_pad_285 + call $_pad_524 local.get $4 if $if_28 i32.const 0 @@ -3773,7 +4142,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $4 i32.lt_u @@ -3836,7 +4205,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $4 local.get $16 @@ -3869,11 +4238,11 @@ local.tee $4 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $4 @@ -3881,17 +4250,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $4 @@ -3899,7 +4268,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -3931,7 +4300,7 @@ i32.add local.get $4 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -3972,11 +4341,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $25 + global.set $28 local.get $9 ) - (func $_out_279 (type $10) + (func $_out (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -3993,7 +4362,7 @@ end ;; $if ) - (func $_getint_280 (type $9) + (func $_getint (type $9) (param $0 i32) (result i32) (local $1 i32) @@ -4035,7 +4404,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $10) + (func $_pop_arg (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4260,12 +4629,12 @@ local.get $0 local.get $2 i32.const 16 - call_indirect $20 (type $2) + call_indirect $22 (type $2) end ;; $block end ;; $if ) - (func $_fmt_x (type $13) + (func $_fmt_x (type $14) (param $0 i64) (param $1 i32) (param $2 i32) @@ -4301,7 +4670,7 @@ local.get $1 ) - (func $_fmt_o (type $14) + (func $_fmt_o (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4333,7 +4702,7 @@ local.get $1 ) - (func $_fmt_u (type $14) + (func $_fmt_u (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4406,19 +4775,19 @@ local.get $1 ) - (func $_pad_285 (type $6) + (func $_pad_524 (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $25 + global.get $28 local.set $5 - global.get $25 + global.get $28 i32.const 256 i32.add - global.set $25 + global.set $28 local.get $4 i32.const 73728 i32.and @@ -4457,7 +4826,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -4474,13 +4843,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $25 + global.set $28 ) - (func $_wctomb (type $11) + (func $_wctomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4494,7 +4863,7 @@ end ;; $if ) - (func $_wcrtomb (type $11) + (func $_wcrtomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4685,7 +5054,7 @@ i32.and i32.const 2 i32.add - call_indirect $20 (type $0) + call_indirect $22 (type $0) drop br $block end ;; $if_0 @@ -4732,7 +5101,7 @@ i32.and i32.const 2 i32.add - call_indirect $20 (type $0) + call_indirect $22 (type $0) local.get $3 i32.lt_u br_if $block @@ -4813,78 +5182,8 @@ end ;; $if ) - (func $_frexp (type $15) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - - (func $_sn_write (type $0) - (param $0 i32) + (func $_sn_write (type $0) + (param $0 i32) (param $1 i32) (param $2 i32) (result i32) @@ -4917,112 +5216,6 @@ local.get $2 ) - (func $_strlen (type $9) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - local.get $2 - i32.sub - ) - - (func $_snprintf (type $0) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - global.get $25 - local.set $3 - global.get $25 - i32.const 16 - i32.add - global.set $25 - local.get $3 - local.get $2 - i32.store - local.get $0 - local.get $1 - local.get $3 - call $_vsnprintf - local.set $0 - local.get $3 - global.set $25 - local.get $0 - ) - (func $_malloc (type $9) (param $0 i32) (result i32) @@ -5048,12 +5241,12 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $25 + global.get $28 local.set $17 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 local.get $0 i32.const 245 i32.lt_u @@ -5153,7 +5346,7 @@ i32.or i32.store offset=4 local.get $17 - global.set $25 + global.set $28 local.get $1 return end ;; $if_0 @@ -5380,7 +5573,7 @@ local.get $3 i32.store local.get $17 - global.set $25 + global.set $28 local.get $9 return end ;; $if_5 @@ -5830,7 +6023,7 @@ i32.store end ;; $if_32 local.get $17 - global.set $25 + global.set $28 local.get $9 i32.const 8 i32.add @@ -6739,7 +6932,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $25 + global.set $28 local.get $2 i32.const 8 i32.add @@ -8069,7 +8262,7 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $25 + global.set $28 local.get $12 i32.const 8 i32.add @@ -8837,14 +9030,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $25 + global.set $28 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $25 + global.set $28 i32.const 0 ) @@ -10070,9 +10263,7 @@ (func $__ZSt18uncaught_exceptionv (type $8) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -10094,36 +10285,49 @@ (func $__Znwm (type $9) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev (type $7) + (param $0 i32) + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $0 + i32.load offset=8 + drop + local.get $0 + i32.load + call $_free + end ;; $if + ) + + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $10) + (param $0 i32) + (param $1 i32) + (param $2 i32) + local.get $2 + if $if + local.get $0 local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 2932 - i32.const 2932 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 6 - call_indirect $20 (type $3) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + local.get $2 + call $_memmove + drop + end ;; $if ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $16) @@ -10137,12 +10341,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $25 + global.get $28 local.set $7 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 i32.const -18 local.get $1 i32.sub @@ -10257,194 +10461,37 @@ i32.load8_s i32.store8 local.get $7 - global.set $25 + global.set $28 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) (param $0 i32) - (local $1 i32) + (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) + global.get $28 + local.set $2 + global.get $28 + i32.const 16 + i32.add + global.set $28 local.get $0 i32.load8_s offset=11 - local.tee $6 + local.tee $3 i32.const 0 i32.lt_s - local.tee $7 + local.tee $4 if $if (result i32) local.get $0 i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add else - local.get $6 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if - local.set $1 - local.get $3 - i32.const 0 - local.get $3 - i32.const 0 - i32.gt_u - select - local.tee $2 - i32.const 11 - i32.lt_u - local.set $4 - i32.const 10 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add - local.get $4 - select - local.tee $8 - local.get $1 - i32.ne - if $if_0 - block $block - block $block_0 - block $block_1 - local.get $4 - if $if_1 - local.get $0 - i32.load - local.set $1 - local.get $7 - if $if_2 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $1 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - br $block_0 - end ;; $if_2 - local.set $5 - else - local.get $8 - i32.const 1 - i32.add - local.tee $2 - call $__Znwm - local.set $5 - local.get $7 - if $if_3 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $5 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 - br $block_1 - end ;; $if_3 - local.set $1 - end ;; $if_1 - local.get $5 - local.get $1 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 - end ;; $block_1 - local.get $0 - local.get $2 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $3 - i32.store - local.get $0 - local.get $5 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $3 - i32.store8 offset=11 - end ;; $block - end ;; $if_0 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $25 - local.set $2 - global.get $25 - i32.const 16 - i32.add - global.set $25 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - if $if (result i32) - local.get $0 - i32.load offset=4 - else - local.get $3 - i32.const 255 - i32.and - end ;; $if - local.tee $3 - local.get $1 + local.tee $3 + local.get $1 i32.lt_u if $if_0 local.get $0 @@ -10486,7 +10533,7 @@ end ;; $if_1 end ;; $if_0 local.get $2 - global.set $25 + global.set $28 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $2) @@ -10496,12 +10543,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $25 + global.get $28 local.set $5 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 local.get $1 if $if local.get $0 @@ -10595,7 +10642,7 @@ i32.store8 end ;; $if local.get $5 - global.set $25 + global.set $28 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $6) @@ -10695,138 +10742,421 @@ i32.store offset=8 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $0) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) + (local $1 i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) - global.get $25 - local.set $5 - global.get $25 - i32.const 16 - i32.add - global.set $25 local.get $0 i32.load8_s offset=11 - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s local.tee $6 if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 local.get $0 i32.load offset=8 i32.const 2147483647 i32.and i32.const -1 i32.add + local.set $1 + local.get $0 + i32.load offset=4 else - local.get $4 + i32.const 10 + local.set $1 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if + local.tee $5 + i32.const 0 + local.get $5 + i32.const 0 + i32.gt_u + select local.tee $4 - local.get $3 - i32.sub - local.get $2 + i32.const 11 i32.lt_u - if $if_0 - local.get $0 - local.get $4 - local.get $2 - local.get $3 - i32.add - local.get $4 - i32.sub - local.get $3 - local.get $3 - local.get $2 - local.get $1 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc - else - local.get $2 - if $if_1 - local.get $3 - local.get $6 - if $if_2 (result i32) - local.get $0 - i32.load - else - local.get $0 - end ;; $if_2 - local.tee $4 - i32.add - local.get $1 - local.get $2 - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - local.get $3 - i32.add - local.set $1 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_3 - local.get $0 - local.get $1 - i32.store offset=4 - else - local.get $0 - local.get $1 - i32.store8 offset=11 - end ;; $if_3 - local.get $5 - i32.const 0 - i32.store8 - local.get $1 - local.get $4 - i32.add - local.get $5 - i32.load8_s - i32.store8 - end ;; $if_1 - end ;; $if_0 - local.get $5 - global.set $25 - local.get $0 - ) - - (func $__ZNSt3__29to_stringEf (type $17) - (param $0 i32) - (param $1 f32) - (local $2 i32) - global.get $25 local.set $2 - global.get $25 + i32.const 10 + local.get $4 i32.const 16 i32.add - global.set $25 - local.get $2 - call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEfLb1EEclEv - local.get $0 + i32.const -16 + i32.and + i32.const -1 + i32.add local.get $2 + select + local.tee $4 local.get $1 - call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEfEET_T0_SD_PKNSD_10value_typeET1_ - local.get $2 - i32.load8_s offset=11 + i32.ne + if $if_0 + block $block + block $block_0 + block $block_1 + local.get $2 + if $if_1 + local.get $0 + i32.load + local.set $1 + local.get $6 + if $if_2 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + br $block_0 + end ;; $if_2 + local.set $2 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $2 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_3 + local.set $1 + end ;; $if_1 + local.get $2 + local.get $1 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $28 + local.set $5 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $0 + i32.load8_s offset=11 + local.tee $4 i32.const 0 i32.lt_s - if $if + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.set $3 + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + local.get $4 + i32.const 255 + i32.and + local.set $3 + i32.const 10 + end ;; $if + local.tee $4 + local.get $3 + i32.sub + local.get $2 + i32.lt_u + if $if_0 + local.get $0 + local.get $4 local.get $2 - i32.load - call $_free + local.get $3 + i32.add + local.get $4 + i32.sub + local.get $3 + local.get $3 + local.get $2 + local.get $1 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $2 + if $if_1 + local.get $3 + local.get $6 + if $if_2 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_2 + local.tee $4 + i32.add + local.get $1 + local.get $2 + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + local.get $3 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_3 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_3 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_1 + end ;; $if_0 + local.get $5 + global.set $28 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 2064 + local.set $6 + global.get $28 + local.set $5 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $0 + i32.load8_s offset=11 + local.tee $2 + i32.const 0 + i32.lt_s + local.tee $4 + if $if (result i32) + local.get $0 + i32.load offset=4 + else + local.get $2 + i32.const 255 + i32.and end ;; $if + local.tee $2 + i32.const 0 + i32.lt_u + if $if_0 + call $_abort + end ;; $if_0 + local.get $4 + if $if_1 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + else + i32.const 10 + end ;; $if_1 + local.tee $3 + local.get $2 + i32.sub + local.get $1 + i32.lt_u + if $if_2 + local.get $0 + local.get $3 + local.get $1 + local.get $2 + i32.add + local.get $3 + i32.sub + local.get $2 + i32.const 0 + local.get $1 + i32.const 2064 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc + else + local.get $1 + if $if_3 + local.get $4 + if $if_4 (result i32) + local.get $0 + i32.load + else + local.get $0 + end ;; $if_4 + local.tee $4 + local.set $3 + local.get $2 + if $if_5 + local.get $1 + i32.const 2064 + i32.add + i32.const 2064 + local.get $3 + i32.const 2064 + i32.le_u + local.get $2 + local.get $4 + i32.add + i32.const 2064 + i32.gt_u + i32.and + select + local.set $6 + local.get $1 + local.get $3 + i32.add + local.get $3 + local.get $2 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + end ;; $if_5 + local.get $3 + local.get $6 + local.get $1 + call $__ZNSt3__211char_traitsIcE4moveEPcPKcm + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_6 + local.get $0 + local.get $1 + i32.store offset=4 + else + local.get $0 + local.get $1 + i32.store8 offset=11 + end ;; $if_6 + local.get $5 + i32.const 0 + i32.store8 + local.get $1 + local.get $4 + i32.add + local.get $5 + i32.load8_s + i32.store8 + end ;; $if_3 + end ;; $if_2 + local.get $5 + global.set $28 + local.get $0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKc (type $9) + (param $0 i32) + (result i32) + local.get $0 + i32.const 2064 + call $_strlen + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm + ) + + (func $__ZNSt3__29to_stringEf (type $17) + (param $0 i32) + (param $1 f32) + (local $2 i32) + global.get $28 + local.set $2 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEfLb1EEclEv + local.get $0 local.get $2 - global.set $25 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEfEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + local.get $2 + global.set $28 ) (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEfLb1EEclEv (type $7) @@ -10883,12 +11213,12 @@ (local $4 i32) (local $5 i32) (local $6 f64) - global.get $25 + global.get $28 local.set $5 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -10923,7 +11253,142 @@ end ;; $if_0 local.set $3 local.get $5 - local.get $6 + local.get $6 + f64.store + local.get $1 + local.get $3 + local.get $4 + i32.const 1 + i32.add + local.get $5 + call $_snprintf + local.tee $3 + i32.const -1 + i32.gt_s + if $if_1 (result i32) + local.get $3 + local.get $4 + i32.le_u + br_if $block + local.get $3 + else + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + i32.or + end ;; $if_1 + local.tee $4 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $1 + i32.load8_s offset=11 + local.set $3 + br $loop + end ;; $block + end ;; $loop + local.get $1 + local.get $3 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc + local.get $0 + local.get $1 + i64.load align=4 + i64.store align=4 + local.get $0 + local.get $1 + i32.load offset=8 + i32.store offset=8 + i32.const 0 + local.set $0 + loop $loop_0 + local.get $0 + i32.const 3 + i32.ne + if $if_2 + local.get $0 + i32.const 2 + i32.shl + local.get $1 + i32.add + i32.const 0 + i32.store + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop_0 + end ;; $if_2 + end ;; $loop_0 + local.get $5 + global.set $28 + ) + + (func $__ZNSt3__29to_stringEd (type $19) + (param $0 i32) + (param $1 f64) + (local $2 i32) + global.get $28 + local.set $2 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $2 + call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEfLb1EEclEv + local.get $0 + local.get $2 + local.get $1 + call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEdEET_T0_SD_PKNSD_10value_typeET1_ + local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + local.get $2 + global.set $28 + ) + + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEdEET_T0_SD_PKNSD_10value_typeET1_ (type $20) + (param $0 i32) + (param $1 i32) + (param $2 f64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $28 + local.set $5 + global.get $28 + i32.const 16 + i32.add + global.set $28 + local.get $1 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + if $if (result i32) + local.get $1 + i32.load offset=4 + else + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.set $4 + loop $loop + block $block + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + if $if_0 (result i32) + local.get $1 + i32.load + else + local.get $1 + end ;; $if_0 + local.set $3 + local.get $5 + local.get $2 f64.store local.get $1 local.get $3 @@ -10989,7 +11454,7 @@ end ;; $if_2 end ;; $loop_0 local.get $5 - global.set $25 + global.set $28 ) (func $__ZN10__cxxabiv116__shim_type_infoD2Ev (type $7) @@ -11009,15 +11474,16 @@ (param $2 i32) (result i32) (local $3 i32) - global.get $25 + global.get $28 local.set $3 - global.get $25 + global.get $28 i32.const -64 i32.sub - global.set $25 + global.set $28 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -11029,51 +11495,56 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 17 i32.add - call_indirect $20 (type $4) + call_indirect $22 (type $4) local.get $3 i32.load offset=24 i32.const 1 @@ -11096,7 +11567,7 @@ end ;; $if local.set $0 local.get $3 - global.set $25 + global.set $28 local.get $0 ) @@ -11107,10 +11578,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11126,10 +11598,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11147,10 +11620,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -11214,10 +11688,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11226,6 +11701,26 @@ end ;; $if ) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $10) (param $0 i32) (param $1 i32) @@ -11368,19 +11863,19 @@ end ;; $if ) - (func $___dynamic_cast (type $11) + (func $___dynamic_cast (type $12) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $25 + global.get $28 local.set $2 - global.get $25 + global.get $28 i32.const -64 i32.sub - global.set $25 + global.set $28 local.get $0 local.get $0 i32.load @@ -11428,9 +11923,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -11448,7 +11944,7 @@ i32.and i32.const 25 i32.add - call_indirect $20 (type $5) + call_indirect $22 (type $5) local.get $4 i32.const 0 local.get $2 @@ -11470,7 +11966,7 @@ i32.and i32.const 21 i32.add - call_indirect $20 (type $6) + call_indirect $22 (type $6) block $block_0 block $block_1 block $block_2 @@ -11532,7 +12028,7 @@ end ;; $if local.set $0 local.get $2 - global.set $25 + global.set $28 local.get $0 ) @@ -11544,10 +12040,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11572,7 +12069,7 @@ i32.and i32.const 25 i32.add - call_indirect $20 (type $5) + call_indirect $22 (type $5) end ;; $if ) @@ -11583,10 +12080,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11608,7 +12106,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -11626,7 +12126,7 @@ i32.and i32.const 21 i32.add - call_indirect $20 (type $6) + call_indirect $22 (type $6) br $block end ;; $if_2 local.get $1 @@ -11645,93 +12145,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 25 + i32.add + call_indirect $22 (type $5) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 25 i32.add - call_indirect $20 (type $5) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -11742,10 +12233,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11767,7 +12259,7 @@ i32.and i32.const 17 i32.add - call_indirect $20 (type $4) + call_indirect $22 (type $4) end ;; $if ) @@ -11778,12 +12270,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $25 + global.get $28 local.set $3 - global.get $25 + global.get $28 i32.const 16 i32.add - global.set $25 + global.set $28 local.get $3 local.get $2 i32.load @@ -11800,7 +12292,7 @@ i32.and i32.const 2 i32.add - call_indirect $20 (type $0) + call_indirect $22 (type $0) local.tee $0 if $if local.get $2 @@ -11809,7 +12301,7 @@ i32.store end ;; $if local.get $3 - global.set $25 + global.set $28 local.get $0 i32.const 1 i32.and @@ -12062,6 +12554,65 @@ local.get $4 ) + (func $_memmove (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + local.get $1 + local.get $0 + i32.lt_s + local.get $0 + local.get $1 + local.get $2 + i32.add + i32.lt_s + i32.and + if $if + local.get $1 + local.get $2 + i32.add + local.set $1 + local.get $0 + local.tee $3 + local.get $2 + i32.add + local.set $0 + loop $loop + local.get $2 + i32.const 0 + i32.gt_s + if $if_0 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + local.get $0 + i32.const 1 + i32.sub + local.tee $0 + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.load8_s + i32.store8 + br $loop + end ;; $if_0 + end ;; $loop + local.get $3 + local.set $0 + else + local.get $0 + local.get $1 + local.get $2 + call $_memcpy + drop + end ;; $if + local.get $0 + ) + (func $_memset (type $0) (param $0 i32) (param $1 i32) @@ -12224,7 +12775,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $23 + global.get $25 i32.load local.tee $2 i32.add @@ -12262,13 +12813,13 @@ return end ;; $if_1 end ;; $if_0 - global.get $23 + global.get $25 local.get $1 i32.store local.get $2 ) - (func $dynCall_iidiiii (type $19) + (func $dynCall_iidiiii (type $21) (param $0 i32) (param $1 i32) (param $2 f64) @@ -12286,10 +12837,10 @@ local.get $0 i32.const 1 i32.and - call_indirect $20 (type $1) + call_indirect $22 (type $1) ) - (func $dynCall_iiii (type $12) + (func $dynCall_iiii (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -12303,13 +12854,13 @@ i32.and i32.const 2 i32.add - call_indirect $20 (type $0) + call_indirect $22 (type $0) ) (func $dynCall_v (type $7) (param $0 i32) i32.const 6 - call_indirect $20 (type $3) + call_indirect $22 (type $3) ) (func $dynCall_vi (type $2) @@ -12321,7 +12872,7 @@ i32.and i32.const 7 i32.add - call_indirect $20 (type $7) + call_indirect $22 (type $7) ) (func $dynCall_vii (type $10) @@ -12335,7 +12886,7 @@ i32.and i32.const 15 i32.add - call_indirect $20 (type $2) + call_indirect $22 (type $2) ) (func $dynCall_viiii (type $6) @@ -12353,7 +12904,7 @@ i32.and i32.const 17 i32.add - call_indirect $20 (type $4) + call_indirect $22 (type $4) ) (func $dynCall_viiiii (type $5) @@ -12373,7 +12924,7 @@ i32.and i32.const 21 i32.add - call_indirect $20 (type $6) + call_indirect $22 (type $6) ) (func $dynCall_viiiiii (type $16) @@ -12395,7 +12946,7 @@ i32.and i32.const 25 i32.add - call_indirect $20 (type $5) + call_indirect $22 (type $5) ) (func $b0 (type $1) @@ -12469,5 +13020,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\1d\80\08\d0\a0\c0\02\b0 \c0 " + ;; "\00\02\00\04\00\80\02\1d\80\08\d0\a0\c0\02\b0 \c0 " ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/logging_cpp.wasm b/test/extensions/wasm/test_data/logging_cpp.wasm index 5ba0798111dc2..bfa2a230603bb 100644 Binary files a/test/extensions/wasm/test_data/logging_cpp.wasm and b/test/extensions/wasm/test_data/logging_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/logging_cpp.wat b/test/extensions/wasm/test_data/logging_cpp.wat index 939cddd282025..e89a854746957 100644 --- a/test/extensions/wasm/test_data/logging_cpp.wat +++ b/test/extensions/wasm/test_data/logging_cpp.wat @@ -7,19 +7,19 @@ (type $5 (func (param i32))) (type $6 (func (result i32))) (type $7 (func (param i32) (result i32))) - (type $8 (func (param i32 i32 i32))) - (type $9 (func (param i32 i32))) - (type $10 (func (param i32 i32 i32 i32 i32 i32 i32))) - (type $11 (func (param i32 i32) (result i32))) + (type $8 (func (param i32 i32))) + (type $9 (func (param i32 i32 i32))) + (type $10 (func (param i32 i32) (result i32))) + (type $11 (func (param i32 i32 i32 i32 i32 i32 i32))) (type $12 (func (param i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "__table_base" (global $15 i32)) (import "env" "DYNAMICTOP_PTR" (global $16 i32)) @@ -56,14 +56,14 @@ $__ZN10__cxxabiv117__class_type_infoD0Ev $b2 $b2 $b3 $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b3 $b4 $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b4 $b5 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b5) (data $20 $14 (i32.const 1024) - "\88\04\00\005\05\00\00\10\04\00\00\00\00\00\00\88\04\00\00\e2\04\00\00 \04\00\00\00\00\00\00`\04\00\00\03\05\00\00\88\04\00\00\10\05\00\00\00\04\00\00\00\00\00\00\88\04\00\00{\05\00\00" - "\10\04\00\00\00\00\00\00\88\04\00\00W\05\00\008\04") + "\88\04\00\005\05\00\00\10\04\00\00\00\00\00\00\88\04\00\00\e2\04\00\00 \04\00\00\00\00\00\00`\04\00\00\03\05\00\00\88\04\00\00\10\05\00\00\00\04\00\00\00\00\00\00\88\04\00\00W\05\00\00" + "\10\04\00\00\00\00\00\00\88\04\00\00y\05\00\008\04") (data $21 $14 (i32.const 1117) "\04\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00(\04\00\00\01\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\02" "\00\00\00\02\00\00\00\02\00\00\00warn \00test trace\00 logging\00test debug\00test error\00test " "tick\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv1" "20__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00N10__c" - "xxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_infoE") + "xxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_infoE") (func $stackAlloc (type $7) (param $0 i32) @@ -95,7 +95,7 @@ global.set $17 ) - (func $establishStackSpace (type $9) + (func $establishStackSpace (type $8) (param $0 i32) (param $1 i32) local.get $0 @@ -104,25 +104,26 @@ global.set $18 ) - (func $_proxy_onConfigure (type $8) + (func $_proxy_onConfigure (type $9) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) global.get $17 - local.set $4 + local.set $3 global.get $17 i32.const 32 i32.add global.set $17 - local.get $4 - local.tee $0 + local.get $3 + i32.const 12 + i32.add + local.tee $4 i64.const 0 i64.store align=4 - local.get $0 + local.get $4 i32.const 0 i32.store offset=8 local.get $2 @@ -131,78 +132,74 @@ if $if call $_abort end ;; $if - local.get $4 - i32.const 12 - i32.add - local.set $3 block $block block $block_0 local.get $2 i32.const 11 i32.lt_u if $if_0 (result i32) - local.get $0 + local.get $4 local.get $2 i32.store8 offset=11 local.get $2 if $if_1 (result i32) - local.get $0 - local.set $5 + local.get $4 + local.set $0 br $block_0 else - local.get $0 + local.get $4 end ;; $if_1 else - local.get $0 + local.get $4 local.get $2 i32.const 16 i32.add i32.const -16 i32.and - local.tee $6 - call $__Znwm local.tee $5 + call $__Znwm + local.tee $0 i32.store - local.get $0 - local.get $6 + local.get $4 + local.get $5 i32.const -2147483648 i32.or i32.store offset=8 - local.get $0 + local.get $4 local.get $2 i32.store offset=4 br $block_0 end ;; $if_0 - local.set $5 + local.set $0 br $block end ;; $block_0 - local.get $5 + local.get $0 local.get $1 local.get $2 call $_memcpy drop end ;; $block + local.get $0 local.get $2 - local.get $5 i32.add i32.const 0 i32.store8 local.get $3 - local.get $0 + local.get $4 i32.const 1192 call $_strlen call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm - local.tee $1 + local.tee $0 i64.load align=4 i64.store align=4 local.get $3 - local.get $1 + local.get $0 i32.load offset=8 i32.store offset=8 - local.get $1 + local.get $0 i64.const 0 i64.store align=4 - local.get $1 + local.get $0 i32.const 0 i32.store offset=8 i32.const 3 @@ -211,19 +208,20 @@ local.get $3 local.get $3 i32.load8_s offset=11 - local.tee $1 + local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $1 select local.get $3 i32.load offset=4 - local.get $1 + local.get $0 i32.const 255 i32.and - local.get $2 + local.get $1 select call $_proxy_log + drop local.get $3 i32.load8_s offset=11 i32.const 0 @@ -233,19 +231,19 @@ i32.load call $_free end ;; $if_2 - local.get $0 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.ge_s if $if_3 - local.get $4 + local.get $3 global.set $17 return end ;; $if_3 - local.get $0 + local.get $4 i32.load call $_free - local.get $4 + local.get $3 global.set $17 ) @@ -255,170 +253,180 @@ (param $2 i32) (param $3 i32) (param $4 i32) + (local $5 i32) global.get $17 local.set $0 global.get $17 - i32.const 32 + i32.const 48 i32.add global.set $17 local.get $0 + i32.const 12 + i32.add + local.set $2 + local.get $0 + i32.const 36 + i32.add + local.tee $1 i32.const 10 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1198 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1206 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=10 local.get $0 - i32.const 12 + i32.const 24 i32.add - local.tee $1 - local.get $0 + local.tee $3 + local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.tee $2 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $1 - local.get $2 + local.get $3 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $2 + local.get $4 i64.const 0 i64.store align=4 - local.get $2 + local.get $4 i32.const 0 i32.store offset=8 i32.const 0 - local.get $1 + local.get $3 i32.load - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $2 + local.tee $4 i32.const 0 i32.lt_s - local.tee $3 + local.tee $5 select - local.get $1 + local.get $3 i32.load offset=4 - local.get $2 + local.get $4 i32.const 255 i32.and - local.get $3 + local.get $5 select call $_proxy_log - local.get $1 + drop + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $3 i32.load call $_free end ;; $if - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $0 + local.get $1 i32.load call $_free end ;; $if_0 - local.get $0 + local.get $1 i32.const 10 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1218 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1226 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=10 + local.get $2 local.get $1 - local.get $0 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc - local.tee $2 + local.tee $3 i64.load align=4 i64.store align=4 - local.get $1 local.get $2 + local.get $3 i32.load offset=8 i32.store offset=8 - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 i32.const 1 - local.get $1 + local.get $2 i32.load - local.get $1 - local.get $1 + local.get $2 + local.get $2 i32.load8_s offset=11 - local.tee $2 + local.tee $3 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 select - local.get $1 - i32.load offset=4 local.get $2 + i32.load offset=4 + local.get $3 i32.const 255 i32.and - local.get $3 + local.get $4 select call $_proxy_log - local.get $1 + drop + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $1 + local.get $2 i32.load call $_free end ;; $if_1 - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_2 - local.get $0 + local.get $1 i32.load call $_free end ;; $if_2 - local.get $0 + local.get $1 i32.const 10 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1229 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1237 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=10 - local.get $1 local.get $0 + local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $2 i64.load align=4 i64.store align=4 - local.get $1 + local.get $0 local.get $2 i32.load offset=8 i32.store offset=8 @@ -429,17 +437,17 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $1 + local.get $0 i32.load - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $3 select - local.get $1 + local.get $0 i32.load offset=4 local.get $2 i32.const 255 @@ -447,16 +455,17 @@ local.get $3 select call $_proxy_log - local.get $1 + drop + local.get $0 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_3 - local.get $1 + local.get $0 i32.load call $_free end ;; $if_3 - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s @@ -465,7 +474,7 @@ global.set $17 return end ;; $if_4 - local.get $0 + local.get $1 i32.load call $_free local.get $0 @@ -484,35 +493,35 @@ i32.add global.set $17 local.get $0 + i32.const 12 + i32.add + local.tee $1 i64.const 0 i64.store align=4 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 9 i32.store8 offset=11 - local.get $0 + local.get $1 i32.const 1240 i64.load align=1 i64.store align=1 - local.get $0 + local.get $1 i32.const 1248 i32.load8_s i32.store8 offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=9 local.get $0 - i32.const 12 - i32.add - local.tee $1 - local.get $0 + local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc local.tee $2 i64.load align=4 i64.store align=4 - local.get $1 + local.get $0 local.get $2 i32.load offset=8 i32.store offset=8 @@ -523,17 +532,17 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $1 + local.get $0 i32.load - local.get $1 - local.get $1 + local.get $0 + local.get $0 i32.load8_s offset=11 local.tee $2 i32.const 0 i32.lt_s local.tee $3 select - local.get $1 + local.get $0 i32.load offset=4 local.get $2 i32.const 255 @@ -541,16 +550,17 @@ local.get $3 select call $_proxy_log - local.get $1 + drop + local.get $0 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $1 + local.get $0 i32.load call $_free end ;; $if - local.get $0 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.ge_s @@ -559,7 +569,7 @@ global.set $17 return end ;; $if_0 - local.get $0 + local.get $1 i32.load call $_free local.get $0 @@ -582,7 +592,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 1992 + i32.const 1988 i32.store local.get $0 i32.const 0 @@ -599,7 +609,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 1992 + i32.const 1988 i32.store local.get $0 i32.const 0 @@ -616,7 +626,7 @@ global.set $17 ) - (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $8) + (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -867,6 +877,63 @@ i32.sub ) + (func $_strcmp (type $10) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_malloc (type $7) (param $0 i32) (result i32) @@ -5914,14 +5981,12 @@ (func $__ZSt18uncaught_exceptionv (type $6) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) - (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $8) + (func $__ZNSt3__211char_traitsIcE4copyEPcPKcm (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -5938,39 +6003,22 @@ (func $__Znwm (type $7) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 1988 - i32.const 1988 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 2 - call_indirect $13 (type $0) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if ) - (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $8) + (func $__ZNSt3__211char_traitsIcE4moveEPcPKcm (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -5984,7 +6032,7 @@ end ;; $if ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $10) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6126,73 +6174,70 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) local.get $0 i32.load8_s offset=11 - local.tee $6 + local.tee $3 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 local.get $0 i32.load offset=8 i32.const 2147483647 i32.and i32.const -1 i32.add + local.set $1 + local.get $0 + i32.load offset=4 else - local.get $6 + i32.const 10 + local.set $1 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if - local.set $1 - local.get $3 + local.tee $5 i32.const 0 - local.get $3 + local.get $5 i32.const 0 i32.gt_u select - local.tee $2 + local.tee $4 i32.const 11 i32.lt_u - local.set $4 + local.set $2 i32.const 10 - local.get $2 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and i32.const -1 i32.add - local.get $4 + local.get $2 select - local.tee $8 + local.tee $4 local.get $1 i32.ne if $if_0 block $block block $block_0 block $block_1 - local.get $4 + local.get $2 if $if_1 local.get $0 i32.load local.set $1 - local.get $7 + local.get $6 if $if_2 (result i32) i32.const 0 - local.set $4 + local.set $3 local.get $0 else local.get $0 local.get $1 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 @@ -6202,80 +6247,68 @@ call $_free br $block_0 end ;; $if_2 - local.set $5 + local.set $2 else - local.get $8 + local.get $4 i32.const 1 i32.add - local.tee $2 call $__Znwm - local.set $5 - local.get $7 + local.set $2 + local.get $6 if $if_3 (result i32) i32.const 1 - local.set $4 + local.set $3 local.get $0 i32.load else - local.get $5 + local.get $2 local.get $0 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 br $block_1 end ;; $if_3 local.set $1 end ;; $if_1 - local.get $5 + local.get $2 local.get $1 local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load + i32.load offset=4 i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm local.get $1 call $_free - local.get $4 + local.get $3 i32.eqz br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 end ;; $block_1 local.get $0 - local.get $2 + local.get $4 + i32.const 1 + i32.add i32.const -2147483648 i32.or i32.store offset=8 - local.get $1 - local.get $3 - i32.store local.get $0 local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 i32.store br $block end ;; $block_0 local.get $0 - local.get $3 + local.get $5 i32.store8 offset=11 end ;; $block end ;; $if_0 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $11) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6388,7 +6421,7 @@ call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $11) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6552,7 +6585,8 @@ global.set $17 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -6564,46 +6598,51 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 11 @@ -6642,10 +6681,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -6661,10 +6701,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -6682,10 +6723,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -6749,10 +6791,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -6761,7 +6804,27 @@ end ;; $if ) - (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $8) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $4) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6903,7 +6966,7 @@ end ;; $if ) - (func $___dynamic_cast (type $11) + (func $___dynamic_cast (type $10) (param $0 i32) (param $1 i32) (result i32) @@ -6963,9 +7026,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -7079,10 +7143,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -7118,10 +7183,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -7143,7 +7209,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -7180,93 +7248,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 19 + i32.add + call_indirect $13 (type $2) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 19 i32.add - call_indirect $13 (type $2) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -7277,10 +7336,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -7881,7 +7941,7 @@ call_indirect $13 (type $0) ) - (func $dynCall_vi (type $9) + (func $dynCall_vi (type $8) (param $0 i32) (param $1 i32) local.get $1 @@ -7931,7 +7991,7 @@ call_indirect $13 (type $3) ) - (func $dynCall_viiiiii (type $10) + (func $dynCall_viiiiii (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -8004,5 +8064,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\17\80\08\a0\99\c0\02\80\19\90\19" + ;; "\00\02\00\04\00\80\02\17\80\08\a0\99\c0\02\80\19\90\19" ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/logging_rust.wasm b/test/extensions/wasm/test_data/logging_rust.wasm index ac5d23ea5e2eb..c39eeee071c85 100755 Binary files a/test/extensions/wasm/test_data/logging_rust.wasm and b/test/extensions/wasm/test_data/logging_rust.wasm differ diff --git a/test/extensions/wasm/test_data/logging_rust.wat b/test/extensions/wasm/test_data/logging_rust.wat index e4ce5a806a422..c94e8e67f5ba1 100644 --- a/test/extensions/wasm/test_data/logging_rust.wat +++ b/test/extensions/wasm/test_data/logging_rust.wat @@ -3,19 +3,19 @@ (type $1 (func (param i32 i32 i32) (result i32))) (type $2 (func (param i32 i32) (result i32))) (type $3 (func (param i32 i32 i32))) - (type $4 (func)) - (type $5 (func (param i32 i32 i32 i32 i32))) - (type $6 (func (param i32))) - (type $7 (func (param i32) (result i32))) - (type $8 (func (param i64 i32) (result i32))) - (type $9 (func (param i32) (result i64))) - (type $10 (func (param i32 i32 i32 i32 i32) (result i32))) - (type $11 (func (param i32 i32 i32 i32) (result i32))) - (type $12 (func (param i32 i32 i32 i32))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (type $4 (func (param i32 i32 i32 i32 i32))) + (type $5 (func (param i32))) + (type $6 (func)) + (type $7 (func (param i32 i32 i32 i32))) + (type $8 (func (param i32) (result i32))) + (type $9 (func (param i64 i32) (result i32))) + (type $10 (func (param i32) (result i64))) + (type $11 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $12 (func (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (export "memory" (memory $14)) - (export "__heap_base" (global $16)) - (export "__data_end" (global $17)) + (export "__data_end" (global $16)) + (export "__heap_base" (global $17)) (export "_proxy_onConfigure" (func $_proxy_onConfigure)) (export "_proxy_onStart" (func $_proxy_onStart)) (export "_proxy_onTick" (func $_proxy_onTick)) @@ -23,121 +23,123 @@ (export "_malloc" (func $_malloc)) (export "_free" (func $_free)) (memory $14 17) - (table $13 27 27 funcref) + (table $13 29 29 funcref) (global $15 (mut i32) (i32.const 1048576)) - (global $16 i32 (i32.const 1055076)) - (global $17 i32 (i32.const 1055076)) + (global $16 i32 (i32.const 1055168)) + (global $17 i32 (i32.const 1055168)) (elem $18 $13 (i32.const 1) - $<&T_as_core::fmt::Display>::fmt::h7b31b334e7b8b382 $core::fmt::ArgumentV1::show_usize::hf8ebfbd77fa8a93d $::fmt::hab9915d856568df0 $::fmt::h886976dffb9dde73 $<&T_as_core::fmt::Display>::fmt::hdf3341d54242ca4a $core::fmt::num::imp::::fmt::h4f3293445fab7cb7 $_as_core::fmt::Debug>::fmt::h6105e754ea0aeafb $::fmt::h7a420490f85a5bf3 - $core::ptr::real_drop_in_place::h0013f08692be52e6 $<&mut_W_as_core::fmt::Write>::write_str::hf2482d9015e58e57 $<&mut_W_as_core::fmt::Write>::write_char::h16378c8711c26c01 $<&mut_W_as_core::fmt::Write>::write_fmt::h8b5befc9d6ef0a73 $core::ptr::real_drop_in_place::h5a9a7fbf25605767 $::enabled::h8a7702bb390b0ea2 $::log::h0a6214a4920b004c $::flush::h5e0800c275585e5e - $::enabled::h498b43c893826962 $::log::h2ca6f3fe5cf690d4 $::type_id::h5fb1d47f0acdabcc $core::ptr::real_drop_in_place::h23040579a46f15a6 $::write_str::h7d69c319e62567ea $core::fmt::Write::write_char::he6255f3eabfceb48 $core::fmt::Write::write_fmt::hd43133c0fc77f05d $<&mut_W_as_core::fmt::Write>::write_str::h0573ddc37a895899 - $<&mut_W_as_core::fmt::Write>::write_char::hc454648cbae23e1c $<&mut_W_as_core::fmt::Write>::write_fmt::hc0aee806cb052974) + $<&T_as_core::fmt::Display>::fmt::h22df08b82f0869b0 $std::alloc::default_alloc_error_hook::ha6a42c7acd012d48 $core::fmt::ArgumentV1::show_usize::h42d8eed9ea762fba $<&T_as_core::fmt::Display>::fmt::h678bffb9cdc14530 $<&T_as_core::fmt::Debug>::fmt::h71574e0037640cf9 $core::fmt::num::imp::::fmt::h0a73e93540d1767b $_as_core::fmt::Debug>::fmt::haf7bc23b95386435 $::fmt::h27b79e1831e51870 + $core::ptr::real_drop_in_place::hb47e74d3b71496e8 $<&mut_W_as_core::fmt::Write>::write_str::h78ef2081843123b8 $<&mut_W_as_core::fmt::Write>::write_char::h4363fca537798ae0 $<&mut_W_as_core::fmt::Write>::write_fmt::hf8f3c5f5f4aa3d77 $core::ptr::real_drop_in_place::h38d0d042ad615819 $::enabled::hd59b56d376e99849 $::log::h69caf1c35822af17 $::flush::hf78c792c6fe83c70 + $::fmt::h99349d0cc7fe11e2 $::fmt::h323d5f06fc0398c5 $::enabled::h4d0d6b60212bce89 $::log::hab97ea506f147727 $::type_id::h0651535bade0637a $core::ptr::real_drop_in_place::h4acead9551505031 $::write_str::h3cfa2330727f68d0 $core::fmt::Write::write_char::hddeb2d341a4f7c8e + $core::fmt::Write::write_fmt::hdcf4af1ee4f15333 $<&mut_W_as_core::fmt::Write>::write_str::heb9faa6c9b7a53d6 $<&mut_W_as_core::fmt::Write>::write_char::h66c6e1685ede49cb $<&mut_W_as_core::fmt::Write>::write_fmt::hf64f7e3f726250ce) (data $19 $14 (i32.const 1048576) "warn \00\00\00\00\00\10\00\05\00\00\00logging_rustsrc/lib.rstest trace logging&\00\10\00\12\00\00\00" "test debug logging\00\00@\00\10\00\12\00\00\00test error logging\00\00\\\00\10\00\12\00\00\00test tic" - "k logging\00\00\00x\00\10\00\11\00\00\00\09\00\00\00\04\00\00\00\04\00\00\00\n\00\00\00\0b\00\00\00\0c\00\00\00 \02\10\00\00\00\00\00\e1\00\10\00\02\00\00\00\cc\00\10\00" - "\15\00\00\00\e7\03\00\00\05\00\00\00src/libcore/result.rs: \00\0d\00\00\00\00\00\00\00\01\00\00\00\0e\00\00\00\0f\00\00\00\10\00\00\00 \02\10\00" - "\00\00\00\00a Display implementation returned an error unexpectedlycalle" - "d `Result::unwrap()` on an `Err` value\00\00\80\01\10\00$\00\00\00\f9\01\10\00\17\00\00\00@\02\00\00\09\00\00\00" - "Tried to shrink to a larger capacity()\00\00\0d\00\00\00\00\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\10\00\00\00" - "SetLoggerError\00\00\e8\01\10\00\11\00\00\00\f9\01\10\00\17\00\00\00\ea\02\00\00\05\00\00\00capacity overflowsrc/lib" - "alloc/raw_vec.rs0\02\10\00 \00\00\00P\02\10\00\12\00\00\00\0d\00\00\00\00\00\00\00\01\00\00\00\13\00\00\00index out of bou" - "nds: the len is but the index is 000102030405060708091011121314" - "1516171819202122232425262728293031323334353637383940414243444546" - "4748495051525354555657585960616263646566676869707172737475767778" - "798081828384858687888990919293949596979899\00\00d\03\10\00\06\00\00\00j\03\10\00\"\00\00\00L\03\10\00" - "\18\00\00\00\09\n\00\00\05\00\00\00src/libcore/slice/mod.rsindex out of range for slic" - "e of length \ac\03\10\00\16\00\00\00\c2\03\10\00\0d\00\00\00L\03\10\00\18\00\00\00\0f\n\00\00\05\00\00\00slice index starts a" - "t but ends at `0x[...]\00\96\04\10\00\0b\00\00\00\n\17\10\00\16\00\00\00\cf\03\10\00\01\00\00\00\80\04\10\00\16\00\00\00\e1\07\00\00\09\00\00\00" - "\e8\16\10\00\0e\00\00\00\f6\16\10\00\04\00\00\00\fa\16\10\00\10\00\00\00\cf\03\10\00\01\00\00\00\80\04\10\00\16\00\00\00\e5\07\00\00\05\00\00\00\a8\16\10\00+\00\00\00\d3\16\10\00\15\00\00\00" - "[\01\00\00\15\00\00\00\96\04\10\00\0b\00\00\00\a1\04\10\00&\00\00\00\c7\04\10\00\08\00\00\00\cf\04\10\00\06\00\00\00\cf\03\10\00\01\00\00\00\80\04\10\00\16\00\00\00\f2\07\00\00\05\00\00\00" - "src/libcore/str/mod.rsbyte index is not a char boundary; it is " - "inside (bytes ) of `\00\00\00\16\05\10\00\02\00\00\00\00\05\10\00\16\00\00\00T\04\00\00\11\00\00\00\00\05\10\00\16\00\00\00H\04\00\00(\00\00\00" - "src/libcore/fmt/mod.rs..\00\01\03\05\05\06\06\03\07\06\08\08\09\11\n\1c\0b\19\0c\14\0d\12\0e\16\0f\04\10\03\12\12\13\09\16\01\17\05\18\02\19\03" - "\1a\07\1c\02\1d\01\1f\16 \03+\06,\02-\0b.\010\031\022\02\a9\02\aa\04\ab\08\fa\02\fb\05\fd\04\fe\03\ff\09\adxy\8b\8d\a20WX\8b\8c\90\1c\1d\dd\0e\0fKL\fb\fc./?" - "\\]_\b5\e2\84\8d\8e\91\92\a9\b1\ba\bb\c5\c6\c9\ca\de\e4\e5\ff\00\04\11\12)147:;=IJ]\84\8e\92\a9\b1\b4\ba\bb\c6\ca\ce\cf\e4\e5\00\04\0d\0e\11\12)14:;EFI" - "J^de\84\91\9b\9d\c9\ce\cf\0d\11)EIWde\8d\91\a9\b4\ba\bb\c5\c9\df\e4\e5\f0\04\0d\11EIde\80\81\84\b2\bc\be\bf\d5\d7\f0\f1\83\85\86\89\8b\8c\98\a0\a4\a6\a8\a9\ac\ba\be" - "\bf\c5\c7\ce\cf\da\dbH\98\bd\cd\c6\ce\cfINOWY^_\89\8e\8f\b1\b6\b7\bf\c1\c6\c7\d7\11\16\17[\\\f6\f7\fe\ff\80\0dmq\de\df\0e\0f\1fno\1c\1d_}~\ae\af\bb\bc\fa\16\17" - "\1e\1fFGNOXZ\\^~\7f\b5\c5\d4\d5\dc\f0\f1\f5rs\8ftu\96\97\c9\ff/_&./\a7\af\b7\bf\c7\cf\d7\df\9a@\97\980\8f\1f\ff\ce\ffNOZ[\07\08\0f\10'/\ee\ef" - "no7=?BE\90\91\fe\ffSgu\c8\c9\d0\d1\d8\d9\e7\fe\ff\00 _\"\82\df\04\82D\08\1b\04\06\11\81\ac\0e\80\ab5\1e\15\80\e0\03\19\08\01\04/\044\04\07\03\01\07\06\07\11\n" - "P\0f\12\07U\08\02\04\1c\n\09\03\08\03\07\03\02\03\03\03\0c\04\05\03\0b\06\01\0e\15\05:\03\11\07\06\05\10\08V\07\02\07\15\0dP\04C\03-\03\01\04\11\06\0f\0c:\04\1d%\0d\06L " - "m\04j%\80\c8\05\82\b0\03\1a\06\82\fd\03Y\07\15\0b\17\09\14\0c\14\0cj\06\n\06\1a\06Y\07+\05F\n,\04\0c\04\01\031\0b,\04\1a\06\0b\03\80\ac\06\n\06\1fAL\04-\03t\08" - "<\03\0f\03<\078\08*\06\82\ff\11\18\08/\11-\03 \10!\0f\80\8c\04\82\97\19\0b\15\88\94\05/\05;\07\02\0e\18\09\80\af1t\0c\80\d6\1a\0c\05\80\ff\05\80\b6\05$\0c\9b\c6\n\d2" - "0\10\84\8d\037\09\81\\\14\80\b8\08\80\ba=5\04\n\068\08F\08\0c\06t\0b\1e\03Z\04Y\09\80\83\18\1c\n\16\09F\n\80\8a\06\ab\a4\0c\17\041\a1\04\81\da&\07\0c\05\05\80\a5\11" - "\81m\10x(*\06L\04\80\8d\04\80\be\03\1b\03\0f\0d\00\06\01\01\03\01\04\02\08\08\09\02\n\05\0b\02\10\01\11\04\12\05\13\11\14\02\15\02\17\02\1a\02\1c\05\1d\08$\01j\03k\02\bc\02\d1" - "\02\d4\0c\d5\09\d6\02\d7\02\da\01\e0\05\e8\02\ee \f0\04\f9\04\0c';>NO\8f\9e\9e\9f\06\07\096=>V\f3\d0\d1\04\14\1867VW\bd5\ce\cf\e0\12\87\89\8e\9e\04\0d\0e\11\12)" - "14:EFIJNOdeZ\\\b6\b7\1b\1c\84\85\097\90\91\a8\07\n;>fi\8f\92o_\ee\efZb\9a\9b'(U\9d\a0\a1\a3\a4\a7\a8\ad\ba\bc\c4\06\0b\0c\15\1d:?EQ\a6" - "\a7\cc\cd\a0\07\19\1a\"%\c5\c6\04 #%&(38:HJLPSUVXZ\\^`cefksx}\7f\8a\a4\aa\af\b0\c0\d0?qr{^\"{\05\03\04-\03e\04\01/." - "\80\82\1d\031\0f\1c\04$\09\1e\05+\05D\04\0e*\80\aa\06$\04$\04(\084\0b\01\80\90\817\09\16\n\08\80\989\03c\08\090\16\05!\03\1b\05\01@8\04K\05/\04\n\07\09\07" - "@ '\04\0c\096\03:\05\1a\07\04\0c\07PI73\0d3\07.\08\n\81&\1f\80\81(\08*\80\a6N\04\1e\0fC\0e\19\07\n\06G\09'\09u\0b?A*\06;\05\n\06Q\06\01\05\10" - "\03\05\80\8b_!H\08\n\80\a6^\"E\0b\n\06\0d\138\08\n6,\04\10\80\c0?@ABCDEF\02\02\02G\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" + "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02:;<\02\02\02\02=\02\02>?@ABCDEF\02\02\02G" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" - "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02H\02\02\02\02\02\02\02\02\02\02\02I\02\02\02\02\02;\02\00\01\02\02\02\02\03\02\02\02\02\04\02\05\06\02\02\02\02\02\02\02\02\02" + "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02H\02\02\02" + "\02\02\02\02\02\02\02\02I\02\02\02\02\02;\02\00\01\02\02\02\02\03\02\02\02\02\04\02\05\06\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" - "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\07\02\02\02\02\02\02\02" - "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\80\10\10\00 \00\00\00'\00\00\00\19\00\00\00\80\10\10\00 \00\00\00" - "(\00\00\00 \00\00\00\80\10\10\00 \00\00\00*\00\00\00\19\00\00\00\80\10\10\00 \00\00\00+\00\00\00\18\00\00\00\80\10\10\00 \00\00\00,\00\00\00 \00\00\00\00\00\00\00\00\00\00\00" - "src/libcore/unicode/bool_trie.rs\00\00\c0\fb\ef>\00\00\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f8\ff\fb\ff\ff\ff" - "\07\00\00\00\00\00\00\14\fe!\fe\00\0c\00\00\00\02\00\00\00\00\00\00P\1e \80\00\0c\00\00@\06\00\00\00\00\00\00\10\869\02\00\00\00#\00\be!\00\00\0c\00\00\fc\02\00\00\00\00\00\00\d0" - "\1e \c0\00\0c\00\00\00\04\00\00\00\00\00\00@\01 \80\00\00\00\00\00\11\00\00\00\00\00\00\c0\c1=`\00\0c\00\00\00\02\00\00\00\00\00\00\90D0`\00\0c\00\00\00\03\00\00\00\00\00\00X" - "\1e \80\00\0c\00\00\00\00\84\\\80\00\00\00\00\00\00\00\00\00\00\f2\07\80\7f\00\00\00\00\00\00\00\00\00\00\00\00\f2\1b\00?\00\00\00\00\00\00\00\00\00\03\00\00\a0\02\00\00\00\00\00\00\fe\7f" - "\df\e0\ff\fe\ff\ff\ff\1f@\00\00\00\00\00\00\00\00\00\00\00\00\e0\fdf\00\00\00\c3\01\00\1e\00d \00 \00\00\00\00\00\00\00\e0\00\00\00\00\00\00\1c\00\00\00\1c\00\00\00\0c\00\00\00\0c\00" - "\00\00\00\00\00\00\b0?@\fe\0f \00\00\00\00\008\00\00\00\00\00\00`\00\00\00\00\02\00\00\00\00\00\00\87\01\04\0e\00\00\80\09\00\00\00\00\00\00@\7f\e5\1f\f8\9f\00\00\00\00\00\00\ff\7f" - "\0f\00\00\00\00\00\d0\17\04\00\00\00\00\f8\0f\00\03\00\00\00<;\00\00\00\00\00\00@\a3\03\00\00\00\00\00\00\f0\cf\00\00\00\f7\ff\fd!\10\03\ff\ff\ff\ff\ff\ff\ff\fb\00\10\00\00\00\00\00\00" - "\00\00\ff\ff\ff\ff\01\00\00\00\00\00\00\80\03\00\00\00\00\00\00\00\00\80\00\00\00\00\ff\ff\ff\ff\00\00\00\00\00\fc\00\00\00\00\00\06\00\00\00\00\00\00\00\00\00\80\f7?\00\00\00\c0\00\00\00\00" - "\00\00\00\00\00\00\03\00D\08\00\00`\00\00\000\00\00\00\ff\ff\03\80\00\00\00\00\c0?\00\00\80\ff\03\00\00\00\00\00\07\00\00\00\00\00\c8\13\00\00\00\00 \00\00\00\00\00\00\00\00~f\00" - "\08\10\00\00\00\00\00\10\00\00\00\00\00\00\9d\c1\02\00\00\00\000@\00\00\00\00\00 !\00\00\00\00\00@\00\00\00\00\ff\ff\00\00\ff\ff\00\00\00\00\00\00\00\00\00\01\00\00\00\02\00\03\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\00\00\05\00\00\00\00\00\00\00\00\06\00\00\00\00\00\00\00\00\07\00\00\08\09\n\00\0b\0c\0d\0e\0f\00\00\10\11\12\00\00" - "\13\14\15\16\00\00\17\18\19\1a\1b\00\1c\00\00\00\1d\00\00\00\00\00\00\00\1e\1f \00\00\00\00\00!\00\"\00#$%\00\00\00\00&\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" + "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\07\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02" + "\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\00\01\03\05\05\06\06\03\07\06\08\08\09\11\n\1c\0b\19\0c\14\0d\12\0e\0d\0f\04\10\03\12\12\13\09\16\01\17\05\18\02\19\03\1a\07\1c\02\1d\01\1f\16" + " \03+\04,\02-\0b.\010\031\022\01\a7\02\a9\02\aa\04\ab\08\fa\02\fb\05\fd\04\fe\03\ff\09\adxy\8b\8d\a20WX\8b\8c\90\1c\1d\dd\0e\0fKL\fb\fc./?\\]_\b5\e2\84" + "\8d\8e\91\92\a9\b1\ba\bb\c5\c6\c9\ca\de\e4\e5\ff\00\04\11\12)147:;=IJ]\84\8e\92\a9\b1\b4\ba\bb\c6\ca\ce\cf\e4\e5\00\04\0d\0e\11\12)14:;EFIJ^de\84\91" + "\9b\9d\c9\ce\cf\0d\11)EIWde\8d\91\a9\b4\ba\bb\c5\c9\df\e4\e5\f0\04\0d\11EIde\80\81\84\b2\bc\be\bf\d5\d7\f0\f1\83\85\8b\a4\a6\be\bf\c5\c7\ce\cf\da\dbH\98\bd\cd\c6\ce\cfI" + "NOWY^_\89\8e\8f\b1\b6\b7\bf\c1\c6\c7\d7\11\16\17[\\\f6\f7\fe\ff\80\0dmq\de\df\0e\0f\1fno\1c\1d_}~\ae\af\bb\bc\fa\16\17\1e\1fFGNOXZ\\^~\7f\b5\c5\d4" + "\d5\dc\f0\f1\f5rs\8ftu\96\97/_&./\a7\af\b7\bf\c7\cf\d7\df\9a@\97\980\8f\1f\c0\c1\ce\ffNOZ[\07\08\0f\10'/\ee\efno7=?BE\90\91\fe\ffSgu\c8\c9" + "\d0\d1\d8\d9\e7\fe\ff\00 _\"\82\df\04\82D\08\1b\04\06\11\81\ac\0e\80\ab5\1e\15\80\e0\03\19\08\01\04/\044\04\07\03\01\07\06\07\11\nP\0f\12\07U\08\02\04\1c\n\09\03\08\03\07\03" + "\02\03\03\03\0c\04\05\03\0b\06\01\0e\15\05:\03\11\07\06\05\10\07W\07\02\07\15\0dP\04C\03-\03\01\04\11\06\0f\0c:\04\1d%_ m\04j%\80\c8\05\82\b0\03\1a\06\82\fd\03Y\07\15" + "\0b\17\09\14\0c\14\0cj\06\n\06\1a\06Y\07+\05F\n,\04\0c\04\01\031\0b,\04\1a\06\0b\03\80\ac\06\n\06\1fAL\04-\03t\08<\03\0f\03<\078\08+\05\82\ff\11\18\08/\11-" + "\03 \10!\0f\80\8c\04\82\97\19\0b\15\88\94\05/\05;\07\02\0e\18\09\80\b00t\0c\80\d6\1a\0c\05\80\ff\05\80\b6\05$\0c\9b\c6\n\d20\10\84\8d\037\09\81\\\14\80\b8\08\80\c705\04" + "\n\068\08F\08\0c\06t\0b\1e\03Z\04Y\09\80\83\18\1c\n\16\09H\08\80\8a\06\ab\a4\0c\17\041\a1\04\81\da&\07\0c\05\05\80\a5\11\81m\10x(*\06L\04\80\8d\04\80\be\03\1b\03\0f" + "\0d\00\06\01\01\03\01\04\02\08\08\09\02\n\05\0b\02\10\01\11\04\12\05\13\11\14\02\15\02\17\02\19\04\1c\05\1d\08$\01j\03k\02\bc\02\d1\02\d4\0c\d5\09\d6\02\d7\02\da\01\e0\05\e1\02\e8\02\ee" + " \f0\04\f9\06\fa\02\0c';>NO\8f\9e\9e\9f\06\07\096=>V\f3\d0\d1\04\14\1867VW\bd5\ce\cf\e0\12\87\89\8e\9e\04\0d\0e\11\12)14:EFIJNOdeZ\\\b6" + "\b7\1b\1c\a8\a9\d8\d9\097\90\91\a8\07\n;>fi\8f\92o_\ee\efZb\9a\9b'(U\9d\a0\a1\a3\a4\a7\a8\ad\ba\bc\c4\06\0b\0c\15\1d:?EQ\a6\a7\cc\cd\a0\07\19\1a\"%>?\c5" + "\c6\04 #%&(38:HJLPSUVXZ\\^`cefksx}\7f\8a\a4\aa\af\b0\c0\d0\0cr\a3\a4\cb\ccno^\"{\05\03\04-\03e\04\01/.\80\82\1d\031\0f" + "\1c\04$\09\1e\05+\05D\04\0e*\80\aa\06$\04$\04(\084\0b\01\80\90\817\09\16\n\08\80\989\03c\08\090\16\05!\03\1b\05\01@8\04K\05/\04\n\07\09\07@ '\04\0c\09" + "6\03:\05\1a\07\04\0c\07PI73\0d3\07.\08\n\81&\1f\80\81(\08*\80\86\17\09N\04\1e\0fC\0e\19\07\n\06G\09'\09u\0b?A*\06;\05\n\06Q\06\01\05\10\03\05\80\8b" + "` H\08\n\80\a6^\"E\0b\n\06\0d\139\07\n6,\04\10\80\c0\00\00\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f8\ff\fb\ff\ff\ff\07\00\00\00\00\00\00\14\fe!\fe\00\0c\00\00\00\02\00\00\00\00\00\00P\1e \80\00\0c\00\00@" + "\06\00\00\00\00\00\00\10\869\02\00\00\00#\00\be!\00\00\0c\00\00\fc\02\00\00\00\00\00\00\d0\1e \c0\00\0c\00\00\00\04\00\00\00\00\00\00@\01 \80\00\00\00\00\00\11\00\00\00\00\00\00\c0" + "\c1=`\00\0c\00\00\00\02\00\00\00\00\00\00\90D0`\00\0c\00\00\00\03\00\00\00\00\00\00X\1e \80\00\0c\00\00\00\00\84\\\80\00\00\00\00\00\00\00\00\00\00\f2\07\80\7f\00\00\00\00\00\00" + "\00\00\00\00\00\00\f2\1f\00?\00\00\00\00\00\00\00\00\00\03\00\00\a0\02\00\00\00\00\00\00\fe\7f\df\e0\ff\fe\ff\ff\ff\1f@\00\00\00\00\00\00\00\00\00\00\00\00\e0\fdf\00\00\00\c3\01\00\1e\00" + "d \00 \00\00\00\00\00\00\00\e0\00\00\00\00\00\00\1c\00\00\00\1c\00\00\00\0c\00\00\00\0c\00\00\00\00\00\00\00\b0?@\fe\0f \00\00\00\00\008\00\00\00\00\00\00`\00\00\00\00\02\00\00" + "\00\00\00\00\87\01\04\0e\00\00\80\09\00\00\00\00\00\00@\7f\e5\1f\f8\9f\00\00\00\00\00\00\ff\7f\0f\00\00\00\00\00\f0\17\04\00\00\00\00\f8\0f\00\03\00\00\00<;\00\00\00\00\00\00@\a3\03\00" + "\00\00\00\00\00\f0\cf\00\00\00\f7\ff\fd!\10\03\ff\ff\ff\ff\ff\ff\ff\fb\00\10\00\00\00\00\00\00\00\00\ff\ff\ff\ff\01\00\00\00\00\00\00\80\03\00\00\00\00\00\00\00\00\80\00\00\00\00\ff\ff\ff\ff" + "\00\00\00\00\00\fc\00\00\00\00\00\06\00\00\00\00\00\00\00\00\00\80\f7?\00\00\00\c0\00\00\00\00\00\00\00\00\00\00\03\00D\08\00\00`\00\00\000\00\00\00\ff\ff\03\80\00\00\00\00\c0?\00\00" + "\80\ff\03\00\00\00\00\00\07\00\00\00\00\00\c83\00\00\00\00 \00\00\00\00\00\00\00\00~f\00\08\10\00\00\00\00\00\10\00\00\00\00\00\00\9d\c1\02\00\00\00\000@\00\00\00\00\00 !\00\00" + "\00\00\00@\00\00\00\00\ff\ff\00\00\ff\ff\00\00\00\00\00\00\00\00\00\01\00\00\00\02\00\03\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\00\00\05\00\00\00\00" + "\00\00\00\00\06\00\00\00\00\00\00\00\00\07\00\00\08\09\n\00\0b\0c\0d\0e\0f\00\00\10\11\12\00\00\13\14\15\16\00\00\17\18\19\1a\1b\00\1c\00\00\00\1d\00\00\00\00\00\00\1e\1f !\00\00\00\00\00" + "\"\00#\00$%&\00\00\00\00'\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" + "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00()\00\00\00" + "\00\00\00\00\00\00\00\00\00\00\00\00\00*+\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" + "\00\00,\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00-.\00\00/\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00012\00\00\00\00\00" + "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\003\00\00\00)\00\00\00\00\00\004\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\005\006\00\00\00\00\00\00\00\00\00\00" + "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0078\00\008889\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" + "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00 \00\00\00\00\01\00\00\00\00\00\00\00\00\00\c0\07n\f0\00\00\00\00\00\87\00\00\00\00`\00\00\00" + "\00\00\00\00\f0\00\00\00\c0\ff\01\00\00\00\00\00\02\00\00\00\00\00\00\ff\7f\00\00\00\00\00\00\80\03\00\00\00\00\00x\06\07\00\00\00\80\ef\1f\00\00\00\00\00\00\00\08\00\03\00\00\00\00\00\c0\7f" + "\00\1e\00\00\00\00\00\00\00\00\00\00\00\80\d3@\00\00\00\80\f8\07\00\00\03\00\00\00\00\00\00X\01\00\80\00\c0\1f\1f\00\00\00\00\00\00\00\00\ff\\\00\00@\00\00\00\00\00\00\00\00\00\00\f9\a5" + "\0d\00\00\00\00\00\00\00\00\00\00\00\00\80<\b0\01\00\000\00\00\00\00\00\00\00\00\00\00\f8\a7\01\00\00\00\00\00\00\00\00\00\00\00\00(\bf\00\00\00\00\e0\bc\0f\00\00\00\00\00\00\00\80\ff\06" + "\00\00\f0\0c\01\00\00\00\fe\07\00\00\00\00\f8y\80\00~\0e\00\00\00\00\00\fc\7f\03\00\00\00\00\00\00\00\00\00\00\7f\bf\00\00\fc\ff\ff\fcm\00\00\00\00\00\00\00~\b4\bf\00\00\00\00\00\00\00" + "\00\00\a3\00\00\00\00\00\00\00\00\00\00\00\18\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\7f\00\00\80\00\00\00\00\00\00\00\80\07\00\00\00\00\00\00\00\00`\00\00\00\00\00\00\00\00\a0\c3\07\f8" + "\e7\0f\00\00\00<\00\00\1c\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\7f\f8\ff\ff\ff\ff\ff\1f \00\10\00\00\f8\fe\ff\00\00\7f\ff\ff\f9\db\07\00\00\00\00\00\00\00\f0\00\00\00\00\7f\00\00\00\00\00" + "\f0\07\00\00\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\00\00called `Option::unwrap()` on a `" + "None` valuesrc/libcore/option.rsbegin <= end ( <= ) when slicing" + " ` is out of bounds of `\1c\02\10\00\00\00\00\00h\17\10\00\02\00\00\00: \00\00|\17\10\00\15\00\00\00<\04\00\00\05\00\00\00src/" + "libcore/result.rs)\00\00\16\00\00\00\0c\00\00\00\04\00\00\00\17\00\00\00\18\00\00\00\19\00\00\00,\n\00\00\09\00\00\00\04\00\00\00\04\00\00\00\1a\00\00\00" + "\1b\00\00\00\1c\00\00\00 ((\nError") + (data $20 $14 (i32.const 1054680) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00'(\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00)\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00*\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00+,\00\00-\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00./0\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\001\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\002\003\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0045\00\005556\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00 " - "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\c0\07n\f0\00\00\00\00\00\87\00\00\00\00`\00\00\00\00\00\00\00\f0\00\00\00\c0\ff\01\00\00\00\00\00\02\00\00\00\00\00\00\ff\7f\00\00\00\00\00\00\80" - "\03\00\00\00\00\00x\06\07\00\00\00\80\ef\1f\00\00\00\00\00\00\00\08\00\03\00\00\00\00\00\c0\7f\00\1e\00\00\00\00\00\00\00\00\00\00\00\80\d3@\00\00\00\80\f8\07\00\00\03\00\00\00\00\00\00X" - "\01\00\80\00\c0\1f\1f\00\00\00\00\00\00\00\00\ff\\\00\00@\00\00\00\00\00\00\00\00\00\00\f9\a5\0d\00\00\00\00\00\00\00\00\00\00\00\00\80<\b0\01\00\000\00\00\00\00\00\00\00\00\00\00\f8\a7" - "\01\00\00\00\00\00\00\00\00\00\00\00\00(\bf\00\00\00\00\e0\bc\0f\00\00\00\00\00\00\00\80\ff\06\fe\07\00\00\00\00\f8y\80\00~\0e\00\00\00\00\00\fc\7f\03\00\00\00\00\00\00\00\00\00\00\7f\bf" - "\00\00\fc\ff\ff\fcm\00\00\00\00\00\00\00~\b4\bf\00\00\00\00\00\00\00\00\00\a3\00\00\00\00\00\00\00\00\00\00\00\18\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\7f\00\00\80\07\00\00\00\00\00" - "\00\00\00`\00\00\00\00\00\00\00\00\a0\c3\07\f8\e7\0f\00\00\00<\00\00\1c\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\7f\f8\ff\ff\ff\ff\ff\1f \00\10\00\00\f8\fe\ff\00\00\7f\ff\ff\f9\db\07\00\00" - "\00\00\7f\00\00\00\00\00\f0\07\00\00\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\00\00called `Option::unwrap()" - "` on a `None` valuesrc/libcore/option.rsbegin <= end ( <= ) when" - " slicing ` is out of bounds of ` \14\00\00\00\0c\00\00\00\04\00\00\00\15\00\00\00\16\00\00\00\17\00\00\00,\n\00\00" - "\09\00\00\00\04\00\00\00\04\00\00\00\18\00\00\00\19\00\00\00\1a\00\00\00(\n()Error") - (data $20 $14 (i32.const 1054568) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" - "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data $21 $14 (i32.const 1055044) - "p\17\10\00L\19\10\00\0d\00\00\00\00\00\00\00\01\00\00\00\11\00\00\00\12\00\00\00\10\00\00\00") + "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data $21 $14 (i32.const 1055160) + "\e0\17\10\00\8c\01\10\00") (func $_proxy_onConfigure (type $3) (param $0 i32) @@ -158,7 +160,7 @@ i32.store block $block i32.const 0 - i32.load offset=1054568 + i32.load offset=1054680 i32.const 2 i32.lt_u br_if $block @@ -169,13 +171,13 @@ local.get $3 i32.store offset=8 i32.const 0 - i32.load offset=1055048 + i32.load offset=1055164 local.set $1 i32.const 0 - i32.load offset=1055044 + i32.load offset=1055160 local.set $2 i32.const 0 - i32.load offset=1054572 + i32.load offset=1054684 local.set $4 local.get $3 i32.const 72 @@ -230,7 +232,7 @@ i32.const 2 i32.store offset=16 local.get $2 - i32.const 1049000 + i32.const 1048972 local.get $4 i32.const 2 i32.eq @@ -240,7 +242,7 @@ i32.const 16 i32.add local.get $1 - i32.const 1049000 + i32.const 1048996 local.get $4 select i32.load offset=16 @@ -252,7 +254,7 @@ global.set $15 ) - (func $<&T_as_core::fmt::Display>::fmt::h7b31b334e7b8b382 (type $2) + (func $<&T_as_core::fmt::Display>::fmt::h22df08b82f0869b0 (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -261,10 +263,10 @@ i32.load local.get $0 i32.load offset=4 - call $core::fmt::Formatter::pad::hacaebd5abd28adf1 + call $core::fmt::Formatter::pad::h65a2184638dd238f ) - (func $_proxy_onStart (type $5) + (func $_proxy_onStart (type $4) (param $0 i32) (param $1 i32) (param $2 i32) @@ -274,212 +276,30 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) global.get $15 i32.const 64 i32.sub local.tee $5 global.set $15 block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - i32.const 0 - i32.load offset=1054568 - i32.const 5 - i32.ge_u - br_if $block_3 - i32.const 4 - local.set $6 - i32.const 0 - i32.load offset=1054568 - i32.const 4 - i32.ge_u - br_if $block_2 - br $block_1 - end ;; $block_3 - i32.const 0 - i32.load offset=1055048 - local.set $6 - i32.const 0 - i32.load offset=1055044 - local.set $7 - i32.const 0 - i32.load offset=1054572 - local.set $8 - local.get $5 - i32.const 56 - i32.add - i32.const 16 - i32.store - local.get $5 - i32.const 48 - i32.add - i64.const 4294967306 - i64.store - local.get $5 - i32.const 40 - i32.add - i32.const 12 - i32.store - local.get $5 - i32.const 32 - i32.add - i32.const 0 - i32.store - local.get $5 - i32.const 28 - i32.add - i32.const 1049120 - i32.store - local.get $5 - i32.const 16 - i32.add - i64.const 1 - i64.store - local.get $5 - i32.const 8 - i32.add - i32.const 12 - i32.store - local.get $5 - i32.const 1048604 - i32.store offset=44 - local.get $5 - i32.const 1048592 - i32.store offset=36 - local.get $5 - i32.const 1048632 - i32.store offset=12 - local.get $5 - i32.const 1048592 - i32.store offset=4 - local.get $5 - i32.const 5 - i32.store - local.get $7 - i32.const 1049000 - local.get $8 - i32.const 2 - i32.eq - local.tee $8 - select - local.get $5 - local.get $6 - i32.const 1049000 - local.get $8 - select - i32.load offset=16 - call_indirect $13 (type $0) - i32.const 4 - local.set $6 - i32.const 0 - i32.load offset=1054568 - i32.const 4 - i32.lt_u - br_if $block_1 - end ;; $block_2 - i32.const 0 - i32.load offset=1055048 - local.set $7 - i32.const 0 - i32.load offset=1055044 - local.set $8 - i32.const 0 - i32.load offset=1054572 - local.set $9 - local.get $5 - i32.const 56 - i32.add - i32.const 17 - i32.store - local.get $5 - i32.const 48 - i32.add - i64.const 4294967306 - i64.store - local.get $5 - i32.const 40 - i32.add - i32.const 12 - i32.store - local.get $5 - i32.const 32 - i32.add - i32.const 0 - i32.store - local.get $5 - i32.const 28 - i32.add - i32.const 1049120 - i32.store - local.get $5 - i32.const 16 - i32.add - i64.const 1 - i64.store - local.get $5 - i32.const 8 - i32.add - i32.const 12 - i32.store - local.get $5 - i32.const 1048604 - i32.store offset=44 - local.get $5 - i32.const 1048592 - i32.store offset=36 - local.get $5 - i32.const 1048660 - i32.store offset=12 - local.get $5 - i32.const 1048592 - i32.store offset=4 - local.get $5 - local.get $6 - i32.store - local.get $8 - i32.const 1049000 - local.get $9 - i32.const 2 - i32.eq - local.tee $6 - select - local.get $5 - local.get $7 - i32.const 1049000 - local.get $6 - select - i32.load offset=16 - call_indirect $13 (type $0) - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054568 - br_if $block_0 - br $block - end ;; $block_1 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054568 - i32.eqz - br_if $block - end ;; $block_0 - local.get $6 - i32.load offset=1055048 + i32.const 0 + i32.load offset=1054680 + i32.const 5 + i32.lt_u + br_if $block + i32.const 0 + i32.load offset=1055164 + local.set $6 + i32.const 0 + i32.load offset=1055160 local.set $7 - local.get $6 - i32.load offset=1055044 + i32.const 0 + i32.load offset=1054684 local.set $8 - local.get $6 - i32.load offset=1054572 - local.set $9 local.get $5 i32.const 56 i32.add - i32.const 18 + i32.const 16 i32.store local.get $5 i32.const 48 @@ -494,12 +314,12 @@ local.get $5 i32.const 32 i32.add - local.get $6 + i32.const 0 i32.store local.get $5 i32.const 28 i32.add - i32.const 1049120 + i32.const 1049116 i32.store local.get $5 i32.const 16 @@ -518,6081 +338,5814 @@ i32.const 1048592 i32.store offset=36 local.get $5 - i32.const 1048688 + i32.const 1048632 i32.store offset=12 local.get $5 i32.const 1048592 i32.store offset=4 local.get $5 - i32.const 1 + i32.const 5 i32.store + local.get $7 + i32.const 1048972 local.get $8 - i32.const 1049000 - local.get $9 i32.const 2 i32.eq - local.tee $6 + local.tee $8 select local.get $5 - local.get $7 - i32.const 1049000 local.get $6 + i32.const 1048996 + local.get $8 select i32.load offset=16 call_indirect $13 (type $0) end ;; $block - local.get $5 - i32.const 64 - i32.add - global.set $15 - ) - - (func $_proxy_onTick (type $6) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $15 - i32.const 64 - i32.sub - local.tee $1 - global.set $15 - block $block + block $block_0 i32.const 0 - i32.load offset=1054568 - i32.const 3 + i32.load offset=1054680 + i32.const 4 i32.lt_u - br_if $block + br_if $block_0 i32.const 0 - i32.load offset=1055048 - local.set $2 + i32.load offset=1055164 + local.set $6 i32.const 0 - i32.load offset=1055044 - local.set $3 + i32.load offset=1055160 + local.set $7 i32.const 0 - i32.load offset=1054572 - local.set $4 - local.get $1 + i32.load offset=1054684 + local.set $8 + local.get $5 i32.const 56 i32.add - i32.const 24 + i32.const 17 i32.store - local.get $1 + local.get $5 i32.const 48 i32.add i64.const 4294967306 i64.store - local.get $1 + local.get $5 i32.const 40 i32.add i32.const 12 i32.store - local.get $1 + local.get $5 i32.const 32 i32.add i32.const 0 i32.store - local.get $1 + local.get $5 i32.const 28 i32.add - i32.const 1049120 + i32.const 1049116 i32.store - local.get $1 + local.get $5 i32.const 16 i32.add i64.const 1 i64.store - local.get $1 + local.get $5 i32.const 8 i32.add i32.const 12 i32.store - local.get $1 + local.get $5 i32.const 1048604 i32.store offset=44 - local.get $1 + local.get $5 i32.const 1048592 i32.store offset=36 - local.get $1 - i32.const 1048716 + local.get $5 + i32.const 1048660 i32.store offset=12 - local.get $1 + local.get $5 i32.const 1048592 i32.store offset=4 - local.get $1 - i32.const 3 + local.get $5 + i32.const 4 i32.store - local.get $3 - i32.const 1049000 - local.get $4 + local.get $7 + i32.const 1048972 + local.get $8 i32.const 2 i32.eq - local.tee $4 + local.tee $8 select - local.get $1 - local.get $2 - i32.const 1049000 - local.get $4 + local.get $5 + local.get $6 + i32.const 1048996 + local.get $8 select i32.load offset=16 call_indirect $13 (type $0) - end ;; $block - local.get $1 - i32.const 64 - i32.add - global.set $15 - ) - - (func $<&mut_W_as_core::fmt::Write>::write_str::hf2482d9015e58e57 (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - local.get $0 - i32.load - local.tee $0 - i32.const 4 - i32.add - i32.load - local.tee $3 - local.get $0 - i32.const 8 - i32.add - i32.load - local.tee $4 - i32.sub - local.get $2 - i32.ge_u - br_if $block_4 - local.get $4 - local.get $2 - i32.add - local.tee $5 - local.get $4 - i32.lt_u - br_if $block_1 - local.get $3 - i32.const 1 - i32.shl - local.tee $4 - local.get $5 - local.get $5 - local.get $4 - i32.lt_u - select - local.tee $4 - i32.const 0 - i32.lt_s - br_if $block_1 - local.get $3 - i32.eqz - br_if $block_3 - local.get $0 - i32.load - local.get $4 - call $__rust_realloc - local.tee $3 - i32.eqz - br_if $block_2 - br $block_0 - end ;; $block_4 - local.get $0 - i32.load - local.set $3 - br $block - end ;; $block_3 - local.get $4 - i32.const 1 - call $__rust_alloc - local.tee $3 - br_if $block_0 - end ;; $block_2 - unreachable - unreachable - end ;; $block_1 - call $alloc::raw_vec::capacity_overflow::hd685e916963b651d - unreachable - end ;; $block_0 - local.get $0 - local.get $3 + end ;; $block_0 + block $block_1 + i32.const 0 + i32.load offset=1054680 + i32.eqz + br_if $block_1 + i32.const 0 + i32.load offset=1055164 + local.set $6 + i32.const 0 + i32.load offset=1055160 + local.set $7 + i32.const 0 + i32.load offset=1054684 + local.set $8 + local.get $5 + i32.const 56 + i32.add + i32.const 18 i32.store - local.get $0 - i32.const 4 + local.get $5 + i32.const 48 i32.add - local.get $4 + i64.const 4294967306 + i64.store + local.get $5 + i32.const 40 + i32.add + i32.const 12 i32.store - local.get $0 + local.get $5 + i32.const 32 + i32.add + i32.const 0 + i32.store + local.get $5 + i32.const 28 + i32.add + i32.const 1049116 + i32.store + local.get $5 + i32.const 16 + i32.add + i64.const 1 + i64.store + local.get $5 i32.const 8 i32.add - i32.load - local.set $4 - end ;; $block - local.get $0 - i32.const 8 - i32.add - local.get $4 - local.get $2 - i32.add - i32.store - local.get $3 - local.get $4 + i32.const 12 + i32.store + local.get $5 + i32.const 1048604 + i32.store offset=44 + local.get $5 + i32.const 1048592 + i32.store offset=36 + local.get $5 + i32.const 1048688 + i32.store offset=12 + local.get $5 + i32.const 1048592 + i32.store offset=4 + local.get $5 + i32.const 1 + i32.store + local.get $7 + i32.const 1048972 + local.get $8 + i32.const 2 + i32.eq + local.tee $8 + select + local.get $5 + local.get $6 + i32.const 1048996 + local.get $8 + select + i32.load offset=16 + call_indirect $13 (type $0) + end ;; $block_1 + local.get $5 + i32.const 64 i32.add - local.get $1 - local.get $2 - call $memcpy - drop - i32.const 0 + global.set $15 ) - (func $__rust_realloc (type $2) + (func $_proxy_onTick (type $5) (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $15 + i32.const 64 + i32.sub + local.tee $1 + global.set $15 + block $block + i32.const 0 + i32.load offset=1054680 + i32.const 3 + i32.lt_u + br_if $block + i32.const 0 + i32.load offset=1055164 + local.set $2 + i32.const 0 + i32.load offset=1055160 + local.set $3 + i32.const 0 + i32.load offset=1054684 + local.set $4 + local.get $1 + i32.const 56 + i32.add + i32.const 24 + i32.store + local.get $1 + i32.const 48 + i32.add + i64.const 4294967306 + i64.store + local.get $1 + i32.const 40 + i32.add + i32.const 12 + i32.store + local.get $1 + i32.const 32 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 28 + i32.add + i32.const 1049116 + i32.store + local.get $1 + i32.const 16 + i32.add + i64.const 1 + i64.store + local.get $1 + i32.const 8 + i32.add + i32.const 12 + i32.store + local.get $1 + i32.const 1048604 + i32.store offset=44 + local.get $1 + i32.const 1048592 + i32.store offset=36 + local.get $1 + i32.const 1048716 + i32.store offset=12 + local.get $1 + i32.const 1048592 + i32.store offset=4 + local.get $1 + i32.const 3 + i32.store + local.get $3 + i32.const 1048972 + local.get $4 + i32.const 2 + i32.eq + local.tee $4 + select + local.get $1 + local.get $2 + i32.const 1048996 + local.get $4 + select + i32.load offset=16 + call_indirect $13 (type $0) + end ;; $block local.get $1 - call $__rdl_realloc + i32.const 64 + i32.add + global.set $15 ) - (func $__rust_alloc (type $2) + (func $core::ptr::real_drop_in_place::hb47e74d3b71496e8 (type $5) (param $0 i32) - (param $1 i32) - (result i32) - local.get $0 - local.get $1 - call $__rdl_alloc - ) - - (func $alloc::raw_vec::capacity_overflow::hd685e916963b651d (type $4) - i32.const 1049040 - call $core::panicking::panic::h62fdcfa056e70982 - unreachable ) - (func $<&mut_W_as_core::fmt::Write>::write_char::h16378c8711c26c01 (type $2) + (func $<&mut_W_as_core::fmt::Write>::write_str::h78ef2081843123b8 (type $1) (param $0 i32) (param $1 i32) + (param $2 i32) (result i32) - (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $15 - i32.const 16 - i32.sub - local.tee $2 - global.set $15 - local.get $0 - i32.load - local.set $0 block $block block $block_0 block $block_1 block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - local.get $1 - i32.const 128 - i32.ge_u - br_if $block_11 - local.get $0 - i32.load offset=8 - local.tee $3 - local.get $0 - i32.const 4 - i32.add - i32.load - i32.ne - br_if $block_10 - local.get $3 - i32.const 1 - i32.add - local.tee $4 - local.get $3 - i32.lt_u - br_if $block_0 - local.get $3 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $4 - local.get $5 - i32.lt_u - select - local.tee $5 - i32.const 0 - i32.lt_s - br_if $block_0 - local.get $3 - i32.eqz - br_if $block_7 - local.get $0 - i32.load - local.get $5 - call $__rust_realloc - local.tee $4 - br_if $block_6 - br $block - end ;; $block_11 - local.get $2 - i32.const 0 - i32.store offset=12 - local.get $1 - i32.const 2048 - i32.ge_u - br_if $block_9 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 31 - i32.and - i32.const 192 - i32.or - i32.store8 offset=12 - i32.const 2 - local.set $1 - br $block_8 - end ;; $block_10 - local.get $0 - i32.load - local.set $4 - br $block_5 - end ;; $block_9 - block $block_12 - local.get $1 - i32.const 65535 - i32.gt_u - br_if $block_12 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - local.get $2 - local.get $1 - i32.const 12 - i32.shr_u - i32.const 15 - i32.and - i32.const 224 - i32.or - i32.store8 offset=12 - i32.const 3 - local.set $1 - br $block_8 - end ;; $block_12 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=15 - local.get $2 - local.get $1 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.store8 offset=12 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 12 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - i32.const 4 - local.set $1 - end ;; $block_8 - block $block_13 - local.get $0 - i32.const 4 - i32.add - i32.load - local.tee $4 - local.get $0 - i32.const 8 - i32.add - i32.load - local.tee $3 - i32.sub - local.get $1 - i32.ge_u - br_if $block_13 - local.get $3 - local.get $1 - i32.add - local.tee $5 - local.get $3 - i32.lt_u - br_if $block_0 - local.get $4 - i32.const 1 - i32.shl - local.tee $3 - local.get $5 - local.get $5 - local.get $3 - i32.lt_u - select - local.tee $3 - i32.const 0 - i32.lt_s - br_if $block_0 - local.get $4 - i32.eqz - br_if $block_4 - local.get $0 - i32.load - local.get $3 - call $__rust_realloc - local.tee $4 - br_if $block_3 - br $block - end ;; $block_13 - local.get $0 - i32.load - local.set $4 - br $block_2 - end ;; $block_7 - local.get $5 - i32.const 1 - call $__rust_alloc - local.tee $4 - i32.eqz - br_if $block - end ;; $block_6 - local.get $0 - local.get $4 - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $5 - i32.store - local.get $0 - i32.const 8 - i32.add - i32.load - local.set $3 - end ;; $block_5 - local.get $4 - local.get $3 - i32.add - local.get $1 - i32.store8 - local.get $0 - i32.const 8 - i32.add - local.tee $0 - local.get $0 - i32.load - i32.const 1 - i32.add - i32.store - br $block_1 - end ;; $block_4 - local.get $3 - i32.const 1 - call $__rust_alloc - local.tee $4 - i32.eqz - br_if $block - end ;; $block_3 - local.get $0 - local.get $4 - i32.store local.get $0 + i32.load + local.tee $0 i32.const 4 i32.add - local.get $3 - i32.store + i32.load + local.tee $3 local.get $0 i32.const 8 i32.add i32.load + local.tee $4 + i32.sub + local.get $2 + i32.lt_u + br_if $block_2 + local.get $0 + i32.load local.set $3 + br $block_1 end ;; $block_2 - local.get $0 - i32.const 8 + local.get $4 + local.get $2 i32.add + local.tee $5 + local.get $4 + i32.lt_u + br_if $block local.get $3 - local.get $1 - i32.add - i32.store + i32.const 1 + i32.shl + local.tee $4 + local.get $5 + local.get $5 local.get $4 + i32.lt_u + select + local.tee $4 + i32.const 0 + i32.lt_s + br_if $block + block $block_3 + block $block_4 + local.get $3 + br_if $block_4 + local.get $4 + i32.const 1 + call $__rust_alloc + local.set $3 + br $block_3 + end ;; $block_4 + local.get $0 + i32.load + local.get $4 + call $__rust_realloc + local.set $3 + end ;; $block_3 + local.get $3 + i32.eqz + br_if $block_0 + local.get $0 local.get $3 + i32.store + local.get $0 + i32.const 4 i32.add - local.get $2 - i32.const 12 + local.get $4 + i32.store + local.get $0 + i32.const 8 i32.add - local.get $1 - call $memcpy - drop + i32.load + local.set $4 end ;; $block_1 + local.get $0 + i32.const 8 + i32.add + local.get $4 local.get $2 - i32.const 16 i32.add - global.set $15 + i32.store + local.get $3 + local.get $4 + i32.add + local.get $1 + local.get $2 + call $memcpy + drop i32.const 0 return end ;; $block_0 - call $alloc::raw_vec::capacity_overflow::hd685e916963b651d + local.get $4 + i32.const 1 + i32.const 0 + i32.load offset=1055156 + local.tee $0 + i32.const 2 + local.get $0 + select + call_indirect $13 (type $0) + unreachable unreachable end ;; $block - unreachable + call $alloc::raw_vec::capacity_overflow::h8b890ddaa46c20bf unreachable ) - (func $<&mut_W_as_core::fmt::Write>::write_fmt::h8b5befc9d6ef0a73 (type $2) + (func $__rust_alloc (type $2) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - global.get $15 - i32.const 32 - i32.sub - local.tee $2 - global.set $15 - local.get $2 local.get $0 - i32.load - i32.store offset=4 - local.get $2 - i32.const 8 - i32.add - i32.const 16 - i32.add - local.get $1 - i32.const 16 - i32.add - i64.load align=4 - i64.store - local.get $2 - i32.const 8 - i32.add - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i64.load align=4 - i64.store - local.get $2 local.get $1 - i64.load align=4 - i64.store offset=8 - local.get $2 - i32.const 4 - i32.add - i32.const 1048724 - local.get $2 - i32.const 8 - i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 - local.set $1 - local.get $2 - i32.const 32 - i32.add - global.set $15 + call $__rdl_alloc + ) + + (func $__rust_realloc (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $0 local.get $1 + call $__rdl_realloc ) - (func $core::fmt::write::h8cfd01c67a4a46c9 (type $1) + (func $std::alloc::default_alloc_error_hook::ha6a42c7acd012d48 (type $0) + (param $0 i32) + (param $1 i32) + ) + + (func $alloc::raw_vec::capacity_overflow::h8b890ddaa46c20bf (type $6) + i32.const 1049036 + call $core::panicking::panic::h540eb5ee6ff533c2 + unreachable + ) + + (func $<&mut_W_as_core::fmt::Write>::write_char::h4363fca537798ae0 (type $2) (param $0 i32) (param $1 i32) - (param $2 i32) (result i32) + (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) global.get $15 - i32.const 64 + i32.const 16 i32.sub - local.tee $3 + local.tee $2 global.set $15 - local.get $3 - i32.const 36 - i32.add - local.get $1 - i32.store - local.get $3 - i32.const 52 - i32.add - local.get $2 - i32.const 20 - i32.add - i32.load - local.tee $4 - i32.store - local.get $3 - i32.const 3 - i32.store8 offset=56 - local.get $3 - i32.const 44 - i32.add - local.get $2 - i32.load offset=16 - local.tee $5 - local.get $4 - i32.const 3 - i32.shl - i32.add - i32.store - local.get $3 - i64.const 137438953472 - i64.store offset=8 - local.get $3 local.get $0 - i32.store offset=32 - i32.const 0 - local.set $6 - local.get $3 - i32.const 0 - i32.store offset=24 - local.get $3 - i32.const 0 - i32.store offset=16 - local.get $3 - local.get $5 - i32.store offset=48 - local.get $3 - local.get $5 - i32.store offset=40 + i32.load + local.set $0 block $block block $block_0 block $block_1 block $block_2 - local.get $2 - i32.load offset=8 - local.tee $7 - i32.eqz - br_if $block_2 - local.get $2 - i32.load - local.set $8 - local.get $2 - i32.load offset=4 - local.tee $9 - local.get $2 - i32.const 12 - i32.add - i32.load - local.tee $5 - local.get $5 - local.get $9 - i32.gt_u - select - local.tee $10 - i32.eqz - br_if $block_1 - local.get $0 - local.get $8 - i32.load - local.get $8 - i32.load offset=4 - local.get $1 - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block_0 - local.get $8 - i32.const 8 - i32.add - local.set $5 - local.get $3 - i32.const 56 - i32.add - local.set $1 - local.get $3 - i32.const 52 - i32.add - local.set $11 - local.get $3 - i32.const 48 - i32.add - local.set $12 - i32.const 1 - local.set $6 block $block_3 - loop $loop + local.get $1 + i32.const 128 + i32.lt_u + br_if $block_3 + local.get $2 + i32.const 0 + i32.store offset=12 + block $block_4 + block $block_5 + local.get $1 + i32.const 2047 + i32.gt_u + br_if $block_5 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 31 + i32.and + i32.const 192 + i32.or + i32.store8 offset=12 + i32.const 2 + local.set $1 + br $block_4 + end ;; $block_5 + block $block_6 + local.get $1 + i32.const 65535 + i32.gt_u + br_if $block_6 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + local.get $2 + local.get $1 + i32.const 12 + i32.shr_u + i32.const 15 + i32.and + i32.const 224 + i32.or + i32.store8 offset=12 + i32.const 3 + local.set $1 + br $block_4 + end ;; $block_6 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=15 + local.get $2 + local.get $1 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.store8 offset=12 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 local.get $1 - local.get $7 - i32.const 32 - i32.add - i32.load8_u - i32.store8 - local.get $3 - local.get $7 - i32.const 8 - i32.add - i32.load - i32.store offset=12 - local.get $3 - local.get $7 i32.const 12 - i32.add - i32.load - i32.store offset=8 - i32.const 0 - local.set $2 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - local.get $7 - i32.const 24 - i32.add - i32.load - local.tee $0 - i32.const 1 - i32.eq - br_if $block_8 - block $block_9 - local.get $0 - i32.const 2 - i32.eq - br_if $block_9 - local.get $0 - i32.const 3 - i32.eq - br_if $block_4 - local.get $7 - i32.const 28 - i32.add - i32.load - local.set $4 - br $block_7 - end ;; $block_9 - local.get $3 - i32.const 8 - i32.add - i32.const 32 - i32.add - local.tee $4 - i32.load - local.tee $0 - local.get $3 - i32.const 8 - i32.add - i32.const 36 - i32.add - i32.load - i32.eq - br_if $block_6 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - br_if $block_4 - local.get $0 - i32.load - i32.load - local.set $4 - br $block_7 - end ;; $block_8 - local.get $7 - i32.const 28 - i32.add - i32.load - local.tee $0 - local.get $11 - i32.load - local.tee $4 - i32.ge_u - br_if $block_5 - local.get $12 - i32.load - local.get $0 - i32.const 3 - i32.shl - i32.add - local.tee $0 - i32.load offset=4 - i32.const 2 - i32.ne - br_if $block_4 - local.get $0 - i32.load - i32.load - local.set $4 - end ;; $block_7 - i32.const 1 - local.set $2 - br $block_4 - end ;; $block_6 - br $block_4 - end ;; $block_5 - i32.const 1049824 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + i32.const 4 + local.set $1 + end ;; $block_4 + block $block_7 + block $block_8 local.get $0 - local.get $4 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 - unreachable - end ;; $block_4 - local.get $3 - i32.const 8 - i32.add - i32.const 12 + i32.const 4 + i32.add + i32.load + local.tee $3 + local.get $0 + i32.const 8 + i32.add + i32.load + local.tee $4 + i32.sub + local.get $1 + i32.lt_u + br_if $block_8 + local.get $0 + i32.load + local.set $3 + br $block_7 + end ;; $block_8 + local.get $4 + local.get $1 i32.add + local.tee $5 local.get $4 - i32.store + i32.lt_u + br_if $block local.get $3 - i32.const 8 - i32.add - i32.const 8 - i32.add - local.get $2 - i32.store + i32.const 1 + i32.shl + local.tee $4 + local.get $5 + local.get $5 + local.get $4 + i32.lt_u + select + local.tee $4 i32.const 0 - local.set $2 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - local.get $7 - i32.const 16 - i32.add - i32.load - local.tee $0 - i32.const 1 - i32.eq - br_if $block_14 - block $block_15 - local.get $0 - i32.const 2 - i32.eq - br_if $block_15 - local.get $0 - i32.const 3 - i32.eq - br_if $block_10 - local.get $7 - i32.const 20 - i32.add - i32.load - local.set $4 - br $block_13 - end ;; $block_15 - local.get $3 - i32.const 8 - i32.add - i32.const 32 - i32.add - local.tee $4 - i32.load - local.tee $0 - local.get $3 - i32.const 8 - i32.add - i32.const 36 - i32.add - i32.load - i32.eq - br_if $block_12 - local.get $4 - local.get $0 - i32.const 8 - i32.add - i32.store - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - br_if $block_10 - local.get $0 - i32.load - i32.load - local.set $4 - br $block_13 - end ;; $block_14 - local.get $7 - i32.const 20 - i32.add - i32.load - local.tee $0 - local.get $11 - i32.load - local.tee $4 - i32.ge_u - br_if $block_11 - local.get $12 - i32.load - local.get $0 - i32.const 3 - i32.shl - i32.add - local.tee $0 - i32.load offset=4 - i32.const 2 - i32.ne - br_if $block_10 - local.get $0 - i32.load - i32.load - local.set $4 - end ;; $block_13 - i32.const 1 - local.set $2 - br $block_10 - end ;; $block_12 - br $block_10 - end ;; $block_11 - i32.const 1049824 + i32.lt_s + br_if $block + block $block_9 + block $block_10 + local.get $3 + br_if $block_10 + local.get $4 + i32.const 1 + call $__rust_alloc + local.set $3 + br $block_9 + end ;; $block_10 local.get $0 + i32.load local.get $4 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 - unreachable - end ;; $block_10 + call $__rust_realloc + local.set $3 + end ;; $block_9 local.get $3 - i32.const 8 - i32.add - i32.const 20 + i32.eqz + br_if $block_1 + local.get $0 + local.get $3 + i32.store + local.get $0 + i32.const 4 i32.add local.get $4 i32.store - local.get $3 + local.get $0 i32.const 8 i32.add - i32.const 16 - i32.add - local.get $2 - i32.store - block $block_16 - block $block_17 - block $block_18 - local.get $7 - i32.load - i32.const 1 - i32.ne - br_if $block_18 - local.get $7 - i32.const 4 - i32.add - i32.load - local.tee $2 - local.get $11 - i32.load - local.tee $4 - i32.ge_u - br_if $block_16 - local.get $12 - i32.load - local.get $2 - i32.const 3 - i32.shl - i32.add - local.set $2 - br $block_17 - end ;; $block_18 - local.get $3 - i32.const 8 - i32.add - i32.const 32 - i32.add - local.tee $4 - i32.load - local.tee $2 - local.get $3 - i32.const 8 - i32.add - i32.const 36 - i32.add - i32.load - i32.eq - br_if $block_3 - local.get $4 - local.get $2 - i32.const 8 - i32.add - i32.store - end ;; $block_17 - local.get $2 - i32.load - local.get $3 - i32.const 8 - i32.add - local.get $2 - i32.const 4 - i32.add - i32.load - call_indirect $13 (type $2) - br_if $block_0 - local.get $6 - local.get $10 - i32.ge_u - br_if $block_1 - local.get $5 - i32.const 4 - i32.add - local.set $2 - local.get $5 - i32.load - local.set $4 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $7 - i32.const 36 - i32.add - local.set $7 - local.get $6 - i32.const 1 - i32.add - local.set $6 - local.get $3 - i32.const 8 - i32.add - i32.const 24 - i32.add - i32.load + i32.load + local.set $4 + end ;; $block_7 + local.get $0 + i32.const 8 + i32.add + local.get $4 + local.get $1 + i32.add + i32.store + local.get $3 + local.get $4 + i32.add + local.get $2 + i32.const 12 + i32.add + local.get $1 + call $memcpy + drop + br $block_2 + end ;; $block_3 + block $block_11 + local.get $0 + i32.load offset=8 + local.tee $4 + local.get $0 + i32.const 4 + i32.add + i32.load + i32.ne + br_if $block_11 + local.get $4 + i32.const 1 + i32.add + local.tee $3 + local.get $4 + i32.lt_u + br_if $block + local.get $4 + i32.const 1 + i32.shl + local.tee $5 + local.get $3 + local.get $3 + local.get $5 + i32.lt_u + select + local.tee $3 + i32.const 0 + i32.lt_s + br_if $block + block $block_12 + block $block_13 local.get $4 - local.get $2 - i32.load + br_if $block_13 local.get $3 - i32.const 8 - i32.add - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - i32.eqz - br_if $loop - br $block_0 - end ;; $block_16 - end ;; $loop - i32.const 1049840 - local.get $2 + i32.const 1 + call $__rust_alloc + local.set $4 + br $block_12 + end ;; $block_13 + local.get $0 + i32.load + local.get $3 + call $__rust_realloc + local.set $4 + end ;; $block_12 local.get $4 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 - unreachable - end ;; $block_3 - i32.const 1049648 - call $core::panicking::panic::h62fdcfa056e70982 - unreachable - end ;; $block_2 - local.get $2 - i32.load - local.set $8 - local.get $2 - i32.load offset=4 - local.tee $9 - local.get $4 - local.get $4 - local.get $9 - i32.gt_u - select - local.tee $10 - i32.eqz - br_if $block_1 - local.get $0 - local.get $8 - i32.load - local.get $8 - i32.load offset=4 - local.get $1 - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block_0 - local.get $8 - i32.const 8 - i32.add - local.set $7 - local.get $3 - i32.const 32 - i32.add - local.set $0 - local.get $3 - i32.const 36 - i32.add - local.set $1 - i32.const 1 - local.set $6 - loop $loop_0 - local.get $5 - i32.load - local.get $3 - i32.const 8 - i32.add - local.get $5 - i32.const 4 - i32.add - i32.load - call_indirect $13 (type $2) - br_if $block_0 - local.get $6 - local.get $10 - i32.ge_u - br_if $block_1 - local.get $7 - i32.const 4 - i32.add - local.set $2 - local.get $7 - i32.load - local.set $4 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $7 - i32.const 8 - i32.add - local.set $7 - local.get $6 - i32.const 1 - i32.add - local.set $6 + i32.eqz + br_if $block_0 + local.get $0 + local.get $4 + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $3 + i32.store + local.get $0 + i32.load offset=8 + local.set $4 + end ;; $block_11 local.get $0 i32.load local.get $4 - local.get $2 - i32.load + i32.add local.get $1 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - i32.eqz - br_if $loop_0 - br $block_0 - end ;; $loop_0 + i32.store8 + local.get $0 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.add + i32.store offset=8 + end ;; $block_2 + local.get $2 + i32.const 16 + i32.add + global.set $15 + i32.const 0 + return end ;; $block_1 - local.get $9 - local.get $6 - i32.le_u - br_if $block - local.get $3 - i32.const 32 - i32.add - i32.load - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - local.tee $7 - i32.load - local.get $7 - i32.load offset=4 - local.get $3 - i32.const 36 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - i32.eqz - br_if $block + local.get $4 + i32.const 1 + i32.const 0 + i32.load offset=1055156 + local.tee $0 + i32.const 2 + local.get $0 + select + call_indirect $13 (type $0) + unreachable + unreachable end ;; $block_0 local.get $3 - i32.const 64 - i32.add - global.set $15 i32.const 1 - return + i32.const 0 + i32.load offset=1055156 + local.tee $0 + i32.const 2 + local.get $0 + select + call_indirect $13 (type $0) + unreachable + unreachable end ;; $block - local.get $3 - i32.const 64 - i32.add - global.set $15 - i32.const 0 + call $alloc::raw_vec::capacity_overflow::h8b890ddaa46c20bf + unreachable ) - (func $core::result::unwrap_failed::h7b72eb0c479e1bd5 (type $4) - (local $0 i32) + (func $<&mut_W_as_core::fmt::Write>::write_fmt::hf8f3c5f5f4aa3d77 (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) global.get $15 - i32.const 64 + i32.const 32 i32.sub - local.tee $0 + local.tee $2 global.set $15 + local.get $2 local.get $0 - i32.const 43 - i32.store offset=12 - local.get $0 - i32.const 1048891 - i32.store offset=8 - local.get $0 - i32.const 52 + i32.load + i32.store offset=4 + local.get $2 + i32.const 8 i32.add - i32.const 3 - i32.store - local.get $0 - i32.const 36 + i32.const 16 i32.add - i32.const 2 - i32.store - local.get $0 - i32.const 1 - i32.store offset=44 - local.get $0 - i64.const 2 - i64.store offset=20 align=4 - local.get $0 - i32.const 1048748 - i32.store offset=16 - local.get $0 - local.get $0 - i32.const 56 + local.get $1 + i32.const 16 i32.add - i32.store offset=48 - local.get $0 - local.get $0 + i64.load align=4 + i64.store + local.get $2 i32.const 8 i32.add - i32.store offset=40 - local.get $0 - local.get $0 - i32.const 40 + i32.const 8 i32.add - i32.store offset=32 - local.get $0 - i32.const 16 + local.get $1 + i32.const 8 i32.add - i32.const 1048764 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd - unreachable + i64.load align=4 + i64.store + local.get $2 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $2 + i32.const 4 + i32.add + i32.const 1048724 + local.get $2 + i32.const 8 + i32.add + call $core::fmt::write::h9ffb25a5a03fc281 + local.set $1 + local.get $2 + i32.const 32 + i32.add + global.set $15 + local.get $1 ) - (func $::fmt::hab9915d856568df0 (type $2) + (func $core::fmt::write::h9ffb25a5a03fc281 (type $1) (param $0 i32) (param $1 i32) + (param $2 i32) (result i32) - (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) global.get $15 - i32.const 80 + i32.const 64 i32.sub - local.tee $2 - global.set $15 - i32.const 1 - local.set $3 - block $block - local.get $1 - i32.load offset=24 - i32.const 1049024 - i32.const 14 - local.get $1 - i32.const 28 - i32.add - local.tee $4 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block - local.get $1 - i32.const 24 - i32.add - i32.load - local.set $5 - local.get $4 - i32.load - i32.load offset=12 - local.set $4 - block $block_0 - block $block_1 - local.get $1 - i32.load8_u - i32.const 4 - i32.and - br_if $block_1 - i32.const 1 - local.set $3 - local.get $5 - i32.const 1054554 - i32.const 1 - local.get $4 - call_indirect $13 (type $1) - br_if $block - local.get $1 - i32.const 1048996 - i32.const 2 - call $core::fmt::Formatter::pad::hacaebd5abd28adf1 - i32.eqz - br_if $block_0 - br $block - end ;; $block_1 - local.get $5 - i32.const 1054552 - i32.const 2 - local.get $4 - call_indirect $13 (type $1) - br_if $block - local.get $1 - i32.load - local.set $4 - local.get $2 - i32.const 52 - i32.add - i32.const 1054500 - i32.store - i32.const 1 - local.set $3 - local.get $2 - i32.const 1 - i32.store8 offset=16 - local.get $2 - local.get $4 - i32.store offset=24 - local.get $2 - local.get $1 - i32.const 24 - i32.add - i64.load align=4 - i64.store offset=8 - local.get $2 - local.get $1 - i32.load8_u offset=48 - i32.store8 offset=72 - local.get $2 - local.get $1 - i32.load offset=4 - i32.store offset=28 - local.get $2 - local.get $1 - i64.load offset=8 align=4 - i64.store offset=32 - local.get $2 - local.get $1 - i64.load offset=40 align=4 - i64.store offset=64 - local.get $2 - local.get $1 - i64.load offset=32 align=4 - i64.store offset=56 - local.get $2 - local.get $1 - i64.load offset=16 align=4 - i64.store offset=40 - local.get $2 - local.get $2 - i32.const 8 - i32.add - i32.store offset=48 - local.get $2 - i32.const 24 - i32.add - i32.const 1048996 - i32.const 2 - call $core::fmt::Formatter::pad::hacaebd5abd28adf1 - br_if $block - local.get $2 - i32.const 8 - i32.add - i32.const 1054524 - i32.const 2 - call $::write_str::h7d69c319e62567ea - br_if $block - end ;; $block_0 - local.get $1 - i32.const 24 - i32.add - i32.load - i32.const 1054555 - i32.const 1 - local.get $1 - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - local.set $3 - end ;; $block - local.get $2 - i32.const 80 - i32.add + local.tee $3 global.set $15 local.get $3 - ) - - (func $core::panicking::panic_fmt::hc4f83bfed80aeabd (type $0) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i64) - global.get $15 - i32.const 32 - i32.sub - local.tee $2 - global.set $15 + i32.const 36 + i32.add local.get $1 - i64.load align=4 - local.set $3 + i32.store + local.get $3 + i32.const 52 + i32.add local.get $2 i32.const 20 i32.add - local.get $1 - i64.load offset=8 align=4 - i64.store align=4 - local.get $2 + i32.load + local.tee $4 + i32.store local.get $3 - i64.store offset=12 align=4 - local.get $2 - local.get $0 - i32.store offset=8 - local.get $2 - i32.const 1049120 - i32.store offset=4 + i32.const 3 + i32.store8 offset=56 + local.get $3 + i32.const 44 + i32.add local.get $2 - i32.const 1049120 + i32.load offset=16 + local.tee $5 + local.get $4 + i32.const 3 + i32.shl + i32.add i32.store - local.get $2 - call $rust_begin_unwind - unreachable - ) - - (func $core::result::unwrap_failed::hc7f92e904dbe4728 (type $4) - (local $0 i32) - global.get $15 - i32.const 64 - i32.sub - local.tee $0 - global.set $15 - local.get $0 - i32.const 55 - i32.store offset=12 - local.get $0 - i32.const 1048836 - i32.store offset=8 - local.get $0 - i32.const 52 - i32.add - i32.const 4 - i32.store - local.get $0 - i32.const 36 - i32.add - i32.const 2 - i32.store - local.get $0 - i32.const 1 - i32.store offset=44 - local.get $0 - i64.const 2 - i64.store offset=20 align=4 + local.get $3 + i64.const 137438953472 + i64.store offset=8 + local.get $3 local.get $0 - i32.const 1048748 + i32.store offset=32 + i32.const 0 + local.set $6 + local.get $3 + i32.const 0 + i32.store offset=24 + local.get $3 + i32.const 0 i32.store offset=16 - local.get $0 - local.get $0 - i32.const 56 - i32.add + local.get $3 + local.get $5 i32.store offset=48 - local.get $0 - local.get $0 - i32.const 8 - i32.add + local.get $3 + local.get $5 i32.store offset=40 - local.get $0 - local.get $0 - i32.const 40 - i32.add - i32.store offset=32 - local.get $0 - i32.const 16 - i32.add - i32.const 1048764 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd - unreachable - ) - - (func $::fmt::h886976dffb9dde73 (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - local.get $1 - i32.load offset=24 - i32.const 1054556 - i32.const 5 - local.get $1 - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - ) - - (func $core::fmt::Formatter::pad::hacaebd5abd28adf1 (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - i32.load offset=16 - local.set $3 block $block block $block_0 block $block_1 block $block_2 block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - local.get $0 - i32.load offset=8 - local.tee $4 - i32.const 1 - i32.ne - br_if $block_8 - local.get $3 - br_if $block_7 - br $block_6 - end ;; $block_8 - local.get $3 - i32.eqz - br_if $block_0 - end ;; $block_7 - block $block_9 - local.get $2 - i32.eqz - br_if $block_9 - local.get $1 - local.get $2 - i32.add - local.set $5 - local.get $0 - i32.const 20 - i32.add - i32.load - i32.const -1 - i32.xor - local.set $6 - i32.const 0 - local.set $7 - local.get $1 - local.set $3 - local.get $1 - local.set $8 - block $block_10 - block $block_11 - loop $loop - local.get $3 - i32.const 1 - i32.add - local.set $9 - block $block_12 - block $block_13 - local.get $3 - i32.load8_s - local.tee $10 - i32.const 0 - i32.lt_s - br_if $block_13 - local.get $10 - i32.const 255 - i32.and - local.set $10 - local.get $9 - local.set $3 - local.get $6 - i32.const 1 - i32.add - local.tee $6 - br_if $block_12 - br $block_11 - end ;; $block_13 - block $block_14 - block $block_15 - block $block_16 - local.get $9 - local.get $5 - i32.eq - br_if $block_16 - local.get $9 - i32.load8_u - i32.const 63 - i32.and - local.set $11 - local.get $3 - i32.const 2 - i32.add - local.tee $3 - local.set $9 - local.get $10 - i32.const 31 - i32.and - local.set $12 - local.get $10 - i32.const 255 - i32.and - local.tee $10 - i32.const 224 - i32.lt_u - br_if $block_15 - br $block_14 - end ;; $block_16 - i32.const 0 - local.set $11 - local.get $5 - local.set $3 - local.get $10 - i32.const 31 - i32.and - local.set $12 - local.get $10 - i32.const 255 - i32.and - local.tee $10 - i32.const 224 - i32.ge_u - br_if $block_14 - end ;; $block_15 - local.get $11 - local.get $12 - i32.const 6 - i32.shl - i32.or - local.set $10 - local.get $9 - local.set $3 - local.get $6 - i32.const 1 - i32.add - local.tee $6 - br_if $block_12 - br $block_11 - end ;; $block_14 - block $block_17 - block $block_18 - block $block_19 - local.get $3 - local.get $5 - i32.eq - br_if $block_19 - local.get $3 - i32.const 1 - i32.add - local.tee $9 - local.set $13 - local.get $3 - i32.load8_u - i32.const 63 - i32.and - local.get $11 - i32.const 6 - i32.shl - i32.or - local.set $11 - local.get $10 - i32.const 240 - i32.lt_u - br_if $block_18 - br $block_17 - end ;; $block_19 - local.get $5 - local.set $13 - i32.const 0 - local.get $11 - i32.const 6 - i32.shl - i32.or - local.set $11 - local.get $10 - i32.const 240 - i32.ge_u - br_if $block_17 - end ;; $block_18 - local.get $11 - local.get $12 - i32.const 12 - i32.shl - i32.or - local.set $10 - local.get $9 - local.set $3 - local.get $6 - i32.const 1 - i32.add - local.tee $6 - br_if $block_12 - br $block_11 - end ;; $block_17 - block $block_20 - block $block_21 - local.get $13 - local.get $5 - i32.eq - br_if $block_21 - local.get $13 - i32.const 1 - i32.add - local.set $3 - local.get $13 - i32.load8_u - i32.const 63 - i32.and - local.set $10 - br $block_20 - end ;; $block_21 - i32.const 0 - local.set $10 - local.get $9 - local.set $3 - end ;; $block_20 - local.get $11 - i32.const 6 - i32.shl - local.get $12 - i32.const 18 - i32.shl - i32.const 1835008 - i32.and - i32.or - local.get $10 - i32.or - local.tee $10 - i32.const 1114112 - i32.eq - br_if $block_10 - local.get $6 - i32.const 1 - i32.add - local.tee $6 - i32.eqz - br_if $block_11 - end ;; $block_12 - local.get $7 - local.get $8 - i32.sub - local.get $3 - i32.add - local.set $7 - local.get $3 - local.set $8 - local.get $5 - local.get $3 - i32.ne - br_if $loop - br $block_10 - end ;; $loop - end ;; $block_11 - local.get $10 - i32.const 1114112 - i32.eq - br_if $block_10 - block $block_22 - block $block_23 - local.get $7 - i32.eqz - br_if $block_23 - local.get $7 - local.get $2 - i32.eq - br_if $block_23 - i32.const 0 - local.set $3 - local.get $7 - local.get $2 - i32.ge_u - br_if $block_22 - local.get $1 - local.get $7 - i32.add - i32.load8_s - i32.const -64 - i32.lt_s - br_if $block_22 - end ;; $block_23 - local.get $1 - local.set $3 - end ;; $block_22 - local.get $7 - local.get $2 - local.get $3 - select - local.set $2 - local.get $3 - local.get $1 - local.get $3 - select - local.set $1 - end ;; $block_10 - local.get $4 - i32.eqz - br_if $block_5 - br $block_6 - end ;; $block_9 - i32.const 0 - local.set $2 - local.get $4 - i32.eqz - br_if $block_5 - end ;; $block_6 - i32.const 0 - local.set $9 - block $block_24 - local.get $2 - i32.eqz - br_if $block_24 - local.get $2 - local.set $10 - local.get $1 - local.set $3 - loop $loop_0 - local.get $9 - local.get $3 - i32.load8_u - i32.const 192 - i32.and - i32.const 128 - i32.eq - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $10 - i32.const -1 - i32.add - local.tee $10 - br_if $loop_0 - end ;; $loop_0 - end ;; $block_24 - local.get $2 - local.get $9 - i32.sub - local.get $0 - i32.const 12 - i32.add - i32.load - local.tee $6 - i32.ge_u - br_if $block_4 - i32.const 0 - local.set $9 - block $block_25 - local.get $2 - i32.eqz - br_if $block_25 - i32.const 0 - local.set $9 - local.get $2 - local.set $10 - local.get $1 - local.set $3 - loop $loop_1 - local.get $9 - local.get $3 - i32.load8_u - i32.const 192 - i32.and - i32.const 128 - i32.eq - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $10 - i32.const -1 - i32.add - local.tee $10 - br_if $loop_1 - end ;; $loop_1 - end ;; $block_25 - local.get $9 - local.get $2 - i32.sub - local.get $6 - i32.add - local.set $9 - i32.const 0 - local.get $0 - i32.load8_u offset=48 - local.tee $3 + local.get $2 + i32.load offset=8 + local.tee $7 + br_if $block_3 + local.get $2 + i32.load + local.set $8 + local.get $2 + i32.load offset=4 + local.tee $9 + local.get $4 + local.get $4 + local.get $9 + i32.gt_u + select + local.tee $10 + i32.eqz + br_if $block_2 + i32.const 1 + local.set $4 + local.get $0 + local.get $8 + i32.load + local.get $8 + i32.load offset=4 + local.get $1 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block + local.get $8 + i32.const 8 + i32.add + local.set $2 + i32.const 1 + local.set $6 + loop $loop + block $block_4 + local.get $5 + i32.load local.get $3 - i32.const 3 - i32.eq - select - local.tee $3 - i32.const 3 - i32.and + i32.const 8 + i32.add + local.get $5 + i32.const 4 + i32.add + i32.load + call_indirect $13 (type $2) i32.eqz - br_if $block_3 - local.get $3 - i32.const 2 - i32.eq - br_if $block_2 - i32.const 0 - local.set $8 - br $block_1 - end ;; $block_5 - local.get $0 - i32.load offset=24 - local.get $1 + br_if $block_4 + i32.const 1 + local.set $4 + br $block + end ;; $block_4 + local.get $6 + local.get $10 + i32.ge_u + br_if $block_2 local.get $2 - local.get $0 - i32.const 28 + i32.const 4 + i32.add + local.set $0 + local.get $2 + i32.load + local.set $1 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $2 + i32.const 1 + local.set $4 + local.get $6 + i32.const 1 i32.add + local.set $6 + local.get $3 + i32.load offset=32 + local.get $1 + local.get $0 i32.load + local.get $3 + i32.load offset=36 i32.load offset=12 call_indirect $13 (type $1) - return - end ;; $block_4 - local.get $0 - i32.load offset=24 - local.get $1 - local.get $2 - local.get $0 - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - return + i32.eqz + br_if $loop + br $block + end ;; $loop end ;; $block_3 - local.get $9 + local.get $2 + i32.load local.set $8 - i32.const 0 - local.set $9 - br $block_1 - end ;; $block_2 - local.get $9 - i32.const 1 - i32.add - i32.const 1 - i32.shr_u - local.set $8 - local.get $9 - i32.const 1 - i32.shr_u - local.set $9 - end ;; $block_1 - i32.const -1 - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.set $10 - local.get $0 - i32.const 24 - i32.add - local.set $6 - local.get $0 - i32.const 28 - i32.add - local.set $7 - block $block_26 - loop $loop_2 - local.get $3 - i32.const 1 + local.get $2 + i32.load offset=4 + local.tee $9 + local.get $2 + i32.const 12 i32.add - local.tee $3 - local.get $9 - i32.ge_u - br_if $block_26 - local.get $6 i32.load - local.get $10 - i32.load - local.get $7 - i32.load - i32.load offset=16 - call_indirect $13 (type $2) + local.tee $5 + local.get $5 + local.get $9 + i32.gt_u + select + local.tee $10 i32.eqz - br_if $loop_2 - end ;; $loop_2 - i32.const 1 - return - end ;; $block_26 - local.get $0 - i32.const 4 - i32.add - i32.load - local.set $9 - i32.const 1 - local.set $3 - local.get $0 - i32.const 24 - i32.add - local.tee $10 - i32.load - local.get $1 - local.get $2 - local.get $0 - i32.const 28 - i32.add - local.tee $6 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block - local.get $10 - i32.load - local.set $10 - i32.const -1 - local.set $3 - local.get $6 - i32.load - i32.const 16 - i32.add - local.set $6 - block $block_27 - loop $loop_3 - local.get $3 + br_if $block_2 i32.const 1 - i32.add - local.tee $3 + local.set $4 + local.get $0 local.get $8 - i32.ge_u - br_if $block_27 - local.get $10 - local.get $9 - local.get $6 i32.load - call_indirect $13 (type $2) - i32.eqz - br_if $loop_3 - end ;; $loop_3 - i32.const 1 - return - end ;; $block_27 - i32.const 0 - return - end ;; $block_0 - local.get $0 - i32.load offset=24 - local.get $1 - local.get $2 - local.get $0 - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - local.set $3 - end ;; $block - local.get $3 - ) - - (func $<&T_as_core::fmt::Display>::fmt::hdf3341d54242ca4a (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $15 - i32.const 32 - i32.sub - local.tee $2 - global.set $15 - local.get $1 - i32.const 28 - i32.add - i32.load - local.set $3 - local.get $1 - i32.load offset=24 - local.set $4 - local.get $2 - i32.const 8 - i32.add - i32.const 16 - i32.add - local.get $0 - i32.load - local.tee $1 - i32.const 16 - i32.add - i64.load align=4 - i64.store - local.get $2 - i32.const 8 - i32.add - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i64.load align=4 - i64.store - local.get $2 - local.get $1 - i64.load align=4 - i64.store offset=8 - local.get $4 - local.get $3 - local.get $2 - i32.const 8 - i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 - local.set $1 - local.get $2 - i32.const 32 - i32.add - global.set $15 - local.get $1 - ) - - (func $::enabled::h8a7702bb390b0ea2 (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - i32.const 1 - ) - - (func $::log::h0a6214a4920b004c (type $0) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $15 - i32.const 64 - i32.sub - local.tee $2 - global.set $15 - local.get $1 - i32.load - local.set $3 - local.get $2 - local.get $1 - i32.const 12 - i32.add - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=16 - local.get $2 - i64.const 1 - i64.store offset=8 - local.get $2 - i32.const 5 - i32.store offset=28 - local.get $2 - local.get $2 - i32.const 4 - i32.add - i32.store offset=24 - local.get $2 - local.get $2 - i32.const 8 - i32.add - i32.store offset=36 - local.get $2 - i32.const 60 - i32.add - i32.const 1 - i32.store - local.get $2 - i64.const 1 - i64.store offset=44 align=4 - local.get $2 - i32.const 1048828 - i32.store offset=40 - local.get $2 - local.get $2 - i32.const 24 - i32.add - i32.store offset=56 - block $block - block $block_0 - block $block_1 - local.get $2 - i32.const 36 - i32.add - i32.const 1048724 - local.get $2 - i32.const 40 - i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 - br_if $block_1 - block $block_2 - block $block_3 - local.get $2 - i32.load offset=12 - local.tee $1 - local.get $2 - i32.const 16 + local.get $8 + i32.load offset=4 + local.get $1 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block + local.get $7 + i32.const 16 + i32.add + local.set $5 + local.get $8 + i32.const 8 + i32.add + local.set $2 + i32.const 1 + local.set $6 + loop $loop_0 + local.get $3 + local.get $5 + i32.const -8 i32.add i32.load - local.tee $4 - i32.ne - br_if $block_3 - local.get $2 - i32.load offset=8 - local.set $5 - br $block_2 - end ;; $block_3 - local.get $1 - local.get $4 - i32.lt_u - br_if $block_0 - block $block_4 - local.get $4 - i32.eqz - br_if $block_4 - local.get $2 - i32.load offset=8 - local.get $4 - call $__rust_realloc - local.tee $5 - i32.eqz - br_if $block - local.get $2 - local.get $4 i32.store offset=12 - local.get $2 + local.get $3 + local.get $5 + i32.const 16 + i32.add + i32.load8_u + i32.store8 offset=56 + local.get $3 local.get $5 + i32.const -4 + i32.add + i32.load i32.store offset=8 - local.get $4 + i32.const 0 local.set $1 - br $block_2 - end ;; $block_4 - block $block_5 - local.get $1 - i32.eqz - br_if $block_5 - local.get $2 - i32.load offset=8 - call $__rust_dealloc - end ;; $block_5 - local.get $2 - i64.const 1 - i64.store offset=8 - i32.const 1 - local.set $5 - i32.const 0 - local.set $1 - end ;; $block_2 - i32.const 5 - local.get $3 - i32.sub - local.get $5 - local.get $2 - i32.const 16 - i32.add - i32.load - call $_proxy_log - block $block_6 - local.get $1 - i32.eqz - br_if $block_6 - local.get $5 - call $__rust_dealloc - end ;; $block_6 - local.get $2 - i32.const 64 - i32.add - global.set $15 - return - end ;; $block_1 - call $core::result::unwrap_failed::hc7f92e904dbe4728 - unreachable - end ;; $block_0 - i32.const 1048936 - call $core::panicking::panic::h62fdcfa056e70982 - unreachable - end ;; $block - unreachable - unreachable - ) - - (func $__rust_dealloc (type $6) - (param $0 i32) - local.get $0 - call $__rdl_dealloc - ) - - (func $core::panicking::panic::h62fdcfa056e70982 (type $6) - (param $0 i32) - (local $1 i32) - (local $2 i64) - (local $3 i64) - (local $4 i64) - global.get $15 - i32.const 48 - i32.sub - local.tee $1 - global.set $15 - local.get $0 - i64.load offset=8 align=4 - local.set $2 - local.get $0 - i64.load offset=16 align=4 - local.set $3 - local.get $0 - i64.load align=4 - local.set $4 - local.get $1 - i32.const 20 - i32.add - i32.const 0 - i32.store - local.get $1 - local.get $4 - i64.store offset=24 - local.get $1 - i32.const 1049120 - i32.store offset=16 - local.get $1 - i64.const 1 - i64.store offset=4 align=4 - local.get $1 - local.get $1 - i32.const 24 - i32.add - i32.store - local.get $1 - local.get $3 - i64.store offset=40 - local.get $1 - local.get $2 - i64.store offset=32 - local.get $1 - local.get $1 - i32.const 32 - i32.add - call $core::panicking::panic_fmt::hc4f83bfed80aeabd - unreachable - ) - - (func $__post_instantiate (type $4) - (local $0 i32) - i32.const 0 - i32.const 0 - i32.load offset=1054572 - local.tee $0 - i32.const 1 - local.get $0 - select - i32.store offset=1054572 - block $block - local.get $0 - i32.eqz - br_if $block - block $block_0 - local.get $0 - i32.const 1 - i32.ne - br_if $block_0 - loop $loop - i32.const 0 - i32.load offset=1054572 - i32.const 1 - i32.eq - br_if $loop - end ;; $loop - end ;; $block_0 - call $core::result::unwrap_failed::h7b72eb0c479e1bd5 - unreachable - end ;; $block - i32.const 0 - i32.const 1048804 - i32.store offset=1055048 - i32.const 0 - i32.const 1049120 - i32.store offset=1055044 - i32.const 0 - i32.const 2 - i32.store offset=1054572 - i32.const 0 - i32.const 5 - i32.store offset=1054568 - ) - - (func $_malloc (type $7) - (param $0 i32) - (result i32) - block $block - block $block_0 - local.get $0 - i32.const -1 - i32.le_s - br_if $block_0 - block $block_1 - local.get $0 - i32.eqz - br_if $block_1 - local.get $0 - i32.const 1 - call $__rust_alloc - local.tee $0 - i32.eqz - br_if $block - local.get $0 - return - end ;; $block_1 - i32.const 1 - return - end ;; $block_0 - call $alloc::raw_vec::RawVec::allocate_in::_7b__7b_closure_7d__7d_::h87cd55fc2e1e6651 - unreachable - end ;; $block - unreachable - unreachable - ) - - (func $alloc::raw_vec::RawVec::allocate_in::_7b__7b_closure_7d__7d_::h87cd55fc2e1e6651 (type $4) - call $alloc::raw_vec::capacity_overflow::hd685e916963b651d - unreachable - ) - - (func $_free (type $6) - (param $0 i32) - block $block - local.get $0 - i32.eqz - br_if $block - local.get $0 - call $__rust_dealloc - end ;; $block - ) - - (func $::enabled::h498b43c893826962 (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - i32.const 0 - ) - - (func $::log::h2ca6f3fe5cf690d4 (type $0) - (param $0 i32) - (param $1 i32) - ) - - (func $::flush::h5e0800c275585e5e (type $6) - (param $0 i32) - ) - - (func $::write_str::h7d69c319e62567ea (type $1) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - global.get $15 - i32.const 48 - i32.sub - local.tee $3 - global.set $15 - block $block - local.get $2 - i32.eqz - br_if $block - local.get $3 - i32.const 40 - i32.add - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.set $5 - local.get $3 - i32.const 32 - i32.add - local.set $6 - local.get $3 - i32.const 28 - i32.add - local.set $7 - local.get $3 - i32.const 36 - i32.add - local.set $8 - local.get $0 - i32.const 4 - i32.add - local.set $9 - block $block_0 - block $block_1 - block $block_2 - block $block_3 - loop $loop - block $block_4 - local.get $5 - i32.load8_u - i32.eqz - br_if $block_4 - local.get $0 - i32.load - i32.const 1054496 - i32.const 4 - local.get $9 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block_3 - end ;; $block_4 - local.get $4 - i32.const 10 - i32.store - local.get $6 - i64.const 4294967306 - i64.store - local.get $7 - local.get $2 - i32.store - local.get $3 - i32.const 16 - i32.add - i32.const 8 - i32.add - local.tee $10 + i32.const 0 + local.set $4 + block $block_5 + block $block_6 + block $block_7 + block $block_8 + local.get $5 + i32.const 8 + i32.add + i32.load + br_table + $block_8 $block_7 $block_6 $block_5 + $block_8 ;; default + end ;; $block_8 + local.get $5 + i32.const 12 + i32.add + i32.load + local.set $0 + i32.const 1 + local.set $4 + br $block_5 + end ;; $block_7 + block $block_9 + local.get $5 + i32.const 12 + i32.add + i32.load + local.tee $7 + local.get $3 + i32.load offset=52 + local.tee $4 + i32.ge_u + br_if $block_9 + i32.const 0 + local.set $4 + local.get $3 + i32.load offset=48 + local.get $7 + i32.const 3 + i32.shl + i32.add + local.tee $7 + i32.load offset=4 + i32.const 3 + i32.ne + br_if $block_5 + local.get $7 + i32.load + i32.load + local.set $0 + i32.const 1 + local.set $4 + br $block_5 + end ;; $block_9 + i32.const 1049820 + local.get $7 + local.get $4 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 + unreachable + end ;; $block_6 i32.const 0 - i32.store + local.set $4 local.get $3 - local.get $2 - i32.store offset=20 + i32.load offset=40 + local.tee $7 local.get $3 - local.get $1 - i32.store offset=16 + i32.load offset=44 + i32.eq + br_if $block_5 local.get $3 + local.get $7 i32.const 8 i32.add - i32.const 10 - local.get $1 - local.get $2 - call $core::slice::memchr::memchr::h6bde110ce4c09380 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - local.get $3 - i32.load offset=8 - i32.const 1 - i32.ne - br_if $block_9 - local.get $3 - i32.load offset=12 - local.set $11 - loop $loop_0 - local.get $10 - local.get $11 - local.get $10 - i32.load - i32.add - i32.const 1 - i32.add - local.tee $11 - i32.store - block $block_10 - block $block_11 - local.get $11 - local.get $8 - i32.load - local.tee $12 - i32.ge_u - br_if $block_11 - local.get $3 - i32.load offset=20 - local.set $13 - local.get $7 - i32.load - local.tee $14 - local.get $11 - i32.ge_u - br_if $block_10 - br $block_8 - end ;; $block_11 - block $block_12 - local.get $3 - i32.load offset=20 - local.tee $13 - local.get $11 - i32.lt_u - br_if $block_12 - local.get $12 - i32.const 5 - i32.ge_u - br_if $block_6 - local.get $3 - i32.load offset=16 - local.get $11 - local.get $12 - i32.sub - local.tee $15 - i32.add - local.tee $14 - local.get $4 - i32.eq - br_if $block_7 - local.get $14 - local.get $4 - local.get $12 - call $memcmp - i32.eqz - br_if $block_7 - end ;; $block_12 - local.get $7 - i32.load - local.tee $14 - local.get $11 - i32.lt_u - br_if $block_8 - end ;; $block_10 - local.get $13 - local.get $14 - i32.lt_u - br_if $block_8 - local.get $3 - local.get $3 - i32.const 16 - i32.add - local.get $12 - i32.add - i32.const 23 - i32.add - i32.load8_u - local.get $3 - i32.load offset=16 - local.get $11 - i32.add - local.get $14 - local.get $11 - i32.sub - call $core::slice::memchr::memchr::h6bde110ce4c09380 - local.get $3 - i32.load offset=4 - local.set $11 - local.get $3 + i32.store offset=40 + i32.const 0 + local.set $4 + local.get $7 + i32.load offset=4 + i32.const 3 + i32.ne + br_if $block_5 + local.get $7 + i32.load + i32.load + local.set $0 + i32.const 1 + local.set $4 + end ;; $block_5 + local.get $3 + local.get $0 + i32.store offset=20 + local.get $3 + local.get $4 + i32.store offset=16 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 + block $block_15 + block $block_16 + local.get $5 i32.load - i32.const 1 - i32.eq - br_if $loop_0 - end ;; $loop_0 - end ;; $block_9 - local.get $10 - local.get $7 + br_table + $block_12 $block_15 $block_16 $block_10 + $block_12 ;; default + end ;; $block_16 + local.get $3 + i32.load offset=40 + local.tee $0 + local.get $3 + i32.load offset=44 + i32.ne + br_if $block_14 + br $block_10 + end ;; $block_15 + local.get $5 + i32.const 4 + i32.add i32.load - i32.store - end ;; $block_8 - local.get $5 - i32.const 0 - i32.store8 - local.get $2 - local.set $11 - br $block_5 - end ;; $block_7 - local.get $5 - i32.const 1 - i32.store8 - local.get $15 - i32.const 1 - i32.add - local.set $11 - br $block_5 - end ;; $block_6 - local.get $12 + local.tee $0 + local.get $3 + i32.load offset=52 + local.tee $4 + i32.ge_u + br_if $block_13 + local.get $3 + i32.load offset=48 + local.get $0 + i32.const 3 + i32.shl + i32.add + local.tee $0 + i32.load offset=4 + i32.const 3 + i32.ne + br_if $block_10 + local.get $0 + i32.load + i32.load + local.set $4 + br $block_11 + end ;; $block_14 + local.get $3 + local.get $0 + i32.const 8 + i32.add + i32.store offset=40 + local.get $0 + i32.load offset=4 + i32.const 3 + i32.ne + br_if $block_10 + local.get $0 + i32.load + i32.load + local.set $4 + br $block_11 + end ;; $block_13 + i32.const 1049820 + local.get $0 + local.get $4 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 + unreachable + end ;; $block_12 + local.get $5 i32.const 4 - call $core::slice::slice_index_len_fail::hb115deb2b20f49d8 - unreachable - end ;; $block_5 - local.get $9 - i32.load - local.set $14 - local.get $0 - i32.load - local.set $12 - block $block_13 - local.get $11 - i32.eqz - local.get $2 - local.get $11 - i32.eq - i32.or - local.tee $10 - br_if $block_13 - local.get $2 - local.get $11 - i32.le_u - br_if $block_1 - local.get $1 - local.get $11 i32.add - i32.load8_s - i32.const -65 - i32.le_s + i32.load + local.set $4 + end ;; $block_11 + i32.const 1 + local.set $1 + end ;; $block_10 + local.get $3 + local.get $4 + i32.store offset=28 + local.get $3 + local.get $1 + i32.store offset=24 + block $block_17 + block $block_18 + local.get $5 + i32.const -16 + i32.add + i32.load + i32.const 1 + i32.eq + br_if $block_18 + local.get $3 + i32.load offset=40 + local.tee $4 + local.get $3 + i32.load offset=44 + i32.eq br_if $block_1 - end ;; $block_13 - local.get $12 - local.get $1 - local.get $11 - local.get $14 - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block_3 - block $block_14 - local.get $10 - br_if $block_14 - local.get $2 - local.get $11 - i32.le_u - br_if $block_0 - local.get $1 - local.get $11 + local.get $3 + local.get $4 + i32.const 8 i32.add - i32.load8_s - i32.const -65 - i32.le_s - br_if $block_0 - end ;; $block_14 - local.get $1 - local.get $11 + i32.store offset=40 + br $block_17 + end ;; $block_18 + local.get $5 + i32.const -12 i32.add - local.set $1 - local.get $2 - local.get $11 - i32.sub - local.tee $2 - br_if $loop - br $block_2 - end ;; $loop - end ;; $block_3 + i32.load + local.tee $4 + local.get $3 + i32.load offset=52 + local.tee $0 + i32.ge_u + br_if $block_0 + local.get $3 + i32.load offset=48 + local.get $4 + i32.const 3 + i32.shl + i32.add + local.set $4 + end ;; $block_17 + block $block_19 + local.get $4 + i32.load + local.get $3 + i32.const 8 + i32.add + local.get $4 + i32.const 4 + i32.add + i32.load + call_indirect $13 (type $2) + i32.eqz + br_if $block_19 + i32.const 1 + local.set $4 + br $block + end ;; $block_19 + local.get $6 + local.get $10 + i32.ge_u + br_if $block_2 + local.get $2 + i32.const 4 + i32.add + local.set $0 + local.get $2 + i32.load + local.set $1 + local.get $5 + i32.const 36 + i32.add + local.set $5 + local.get $2 + i32.const 8 + i32.add + local.set $2 + i32.const 1 + local.set $4 + local.get $6 + i32.const 1 + i32.add + local.set $6 + local.get $3 + i32.load offset=32 + local.get $1 + local.get $0 + i32.load + local.get $3 + i32.load offset=36 + i32.load offset=12 + call_indirect $13 (type $1) + i32.eqz + br_if $loop_0 + br $block + end ;; $loop_0 + end ;; $block_2 + block $block_20 + local.get $9 + local.get $6 + i32.le_u + br_if $block_20 + i32.const 1 + local.set $4 local.get $3 - i32.const 48 + i32.load offset=32 + local.get $8 + local.get $6 + i32.const 3 + i32.shl i32.add - global.set $15 - i32.const 1 - return - end ;; $block_2 - local.get $3 - i32.const 48 - i32.add - global.set $15 + local.tee $5 + i32.load + local.get $5 + i32.load offset=4 + local.get $3 + i32.load offset=36 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block + end ;; $block_20 i32.const 0 - return + local.set $4 + br $block end ;; $block_1 - local.get $1 - local.get $2 - i32.const 0 - local.get $11 - call $core::str::slice_error_fail::h3704ce74b976be71 + i32.const 1049644 + call $core::panicking::panic::h540eb5ee6ff533c2 unreachable end ;; $block_0 - local.get $1 - local.get $2 - local.get $11 - local.get $2 - call $core::str::slice_error_fail::h3704ce74b976be71 + i32.const 1049836 + local.get $4 + local.get $0 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 unreachable end ;; $block local.get $3 - i32.const 48 + i32.const 64 i32.add global.set $15 - i32.const 0 + local.get $4 ) - (func $std::panicking::rust_panic_with_hook::h3f88564dfeb012eb (type $6) + (func $<&T_as_core::fmt::Display>::fmt::h678bffb9cdc14530 (type $2) (param $0 i32) - (local $1 i32) + (param $1 i32) + (result i32) (local $2 i32) - i32.const 1 - local.set $1 - block $block - block $block_0 - block $block_1 - block $block_2 - i32.const 0 - i32.load offset=1055032 - i32.const 1 - i32.ne - br_if $block_2 - i32.const 0 - i32.const 0 - i32.load offset=1055036 - i32.const 1 - i32.add - local.tee $1 - i32.store offset=1055036 - local.get $1 - i32.const 3 - i32.lt_u - br_if $block_1 - br $block_0 - end ;; $block_2 - i32.const 0 - i64.const 4294967297 - i64.store offset=1055032 - end ;; $block_1 - i32.const 0 - i32.load offset=1055040 - local.tee $2 - i32.const -1 - i32.le_s - br_if $block_0 - i32.const 0 - local.get $2 - i32.store offset=1055040 - local.get $1 - i32.const 2 - i32.lt_u - br_if $block - end ;; $block_0 - unreachable - unreachable - end ;; $block - call $rust_panic - unreachable - ) - - (func $rust_panic (type $4) - unreachable - unreachable - ) - - (func $std::panicking::continue_panic_fmt::he2d0fc2a935878af (type $6) - (param $0 i32) - (local $1 i32) + (local $3 i32) + (local $4 i32) global.get $15 - i32.const 16 + i32.const 32 i32.sub - local.tee $1 + local.tee $2 global.set $15 - local.get $0 - i32.load offset=8 - call $core::option::Option::unwrap::hcab2ea581bad05cd - drop local.get $1 + i32.const 28 + i32.add + i32.load + local.set $3 + local.get $1 + i32.load offset=24 + local.set $4 + local.get $2 + i32.const 8 + i32.add + i32.const 16 + i32.add local.get $0 - i32.const 20 + i32.load + local.tee $1 + i32.const 16 i32.add i64.load align=4 - i64.store offset=8 + i64.store + local.get $2 + i32.const 8 + i32.add + i32.const 8 + i32.add local.get $1 - local.get $0 - i64.load offset=12 align=4 + i32.const 8 + i32.add + i64.load align=4 i64.store + local.get $2 + local.get $1 + i64.load align=4 + i64.store offset=8 + local.get $4 + local.get $3 + local.get $2 + i32.const 8 + i32.add + call $core::fmt::write::h9ffb25a5a03fc281 + local.set $1 + local.get $2 + i32.const 32 + i32.add + global.set $15 local.get $1 - call $std::panicking::rust_panic_with_hook::h3f88564dfeb012eb + ) + + (func $alloc::raw_vec::RawVec::allocate_in::_7b__7b_closure_7d__7d_::ha9193fd2beb4c622 (type $6) + call $alloc::raw_vec::capacity_overflow::h8b890ddaa46c20bf unreachable ) - (func $core::option::Option::unwrap::hcab2ea581bad05cd (type $7) + (func $::enabled::hd59b56d376e99849 (type $2) (param $0 i32) + (param $1 i32) (result i32) - block $block - local.get $0 - i32.eqz - br_if $block - local.get $0 - return - end ;; $block - i32.const 1049648 - call $core::panicking::panic::h62fdcfa056e70982 - unreachable + i32.const 1 ) - (func $__rdl_alloc (type $2) + (func $::log::h69caf1c35822af17 (type $0) (param $0 i32) (param $1 i32) - (result i32) (local $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) + global.get $15 + i32.const 64 + i32.sub + local.tee $2 + global.set $15 + local.get $1 + i32.load + local.set $3 + local.get $2 + local.get $1 + i32.const 12 + i32.add + i32.store offset=4 + local.get $2 + i32.const 0 + i32.store offset=16 + local.get $2 + i64.const 1 + i64.store offset=8 + local.get $2 + i32.const 4 + i32.store offset=28 + local.get $2 + local.get $2 + i32.const 4 + i32.add + i32.store offset=24 + local.get $2 + local.get $2 + i32.const 8 + i32.add + i32.store offset=36 + local.get $2 + i32.const 60 + i32.add + i32.const 1 + i32.store + local.get $2 + i64.const 1 + i64.store offset=44 align=4 + local.get $2 + i32.const 1048832 + i32.store offset=40 + local.get $2 + local.get $2 + i32.const 24 + i32.add + i32.store offset=56 block $block block $block_0 block $block_1 + local.get $2 + i32.const 36 + i32.add + i32.const 1048724 + local.get $2 + i32.const 40 + i32.add + call $core::fmt::write::h9ffb25a5a03fc281 + br_if $block_1 block $block_2 block $block_3 - block $block_4 - local.get $1 - i32.const 8 - i32.le_u - br_if $block_4 - i32.const 0 - local.set $2 - i32.const -65587 - local.get $1 - i32.const 16 - local.get $1 - i32.const 16 - i32.gt_u - select - local.tee $1 - i32.sub - local.get $0 - i32.le_u - br_if $block - local.get $1 - i32.const 16 - local.get $0 - i32.const 11 - i32.add - i32.const -8 - i32.and - local.get $0 - i32.const 11 - i32.lt_u - select - local.tee $3 - i32.add - i32.const 12 - i32.add - call $dlmalloc::dlmalloc::Dlmalloc::malloc::h7ef7d8a98d4afe8d - local.tee $0 - i32.eqz - br_if $block - local.get $0 - i32.const -8 - i32.add - local.set $2 + local.get $2 + i32.load offset=12 + local.tee $1 + local.get $2 + i32.load offset=16 + local.tee $4 + i32.ne + br_if $block_3 + local.get $2 + i32.load offset=8 + local.set $5 + br $block_2 + end ;; $block_3 + local.get $1 + local.get $4 + i32.lt_u + br_if $block_0 + block $block_4 + local.get $4 + br_if $block_4 + block $block_5 local.get $1 - i32.const -1 - i32.add - local.tee $4 - local.get $0 - i32.and i32.eqz - br_if $block_3 - local.get $0 - i32.const -4 - i32.add - local.tee $5 - i32.load - local.tee $6 - i32.const -8 - i32.and - local.get $4 - local.get $0 - i32.add - i32.const 0 - local.get $1 - i32.sub - i32.and - i32.const -8 - i32.add - local.tee $0 - local.get $0 - local.get $1 - i32.add - local.get $0 - local.get $2 - i32.sub - i32.const 16 - i32.gt_u - select - local.tee $1 - local.get $2 - i32.sub - local.tee $0 - i32.sub - local.set $4 - local.get $6 - i32.const 3 - i32.and - i32.eqz - br_if $block_2 - local.get $1 - local.get $4 - local.get $1 - i32.load offset=4 - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store offset=4 - local.get $1 - local.get $4 - i32.add - local.tee $4 - local.get $4 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $5 - local.get $0 - local.get $5 - i32.load - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $1 - local.get $1 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 + br_if $block_5 local.get $2 - local.get $0 - call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h08c63a089677cf87 - local.get $1 - i32.load offset=4 - local.tee $0 - i32.const 3 - i32.and - br_if $block_1 - br $block_0 - end ;; $block_4 - local.get $0 - call $dlmalloc::dlmalloc::Dlmalloc::malloc::h7ef7d8a98d4afe8d - return - end ;; $block_3 + i32.load offset=8 + call $__rust_dealloc + end ;; $block_5 + local.get $2 + i64.const 1 + i64.store offset=8 + i32.const 1 + local.set $5 + i32.const 0 + local.set $1 + br $block_2 + end ;; $block_4 local.get $2 - local.tee $1 - i32.load offset=4 - local.tee $0 - i32.const 3 - i32.and - br_if $block_1 - br $block_0 + i32.load offset=8 + local.get $4 + call $__rust_realloc + local.tee $5 + i32.eqz + br_if $block + local.get $2 + local.get $4 + i32.store offset=12 + local.get $2 + local.get $5 + i32.store offset=8 + local.get $4 + local.set $1 end ;; $block_2 + i32.const 5 + local.get $3 + i32.sub + local.get $5 local.get $2 - i32.load - local.set $2 - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 + i32.load offset=16 + call $_proxy_log + drop + block $block_6 + local.get $1 + i32.eqz + br_if $block_6 + local.get $5 + call $__rust_dealloc + end ;; $block_6 local.get $2 - local.get $0 + i32.const 64 i32.add - i32.store - local.get $1 - i32.load offset=4 - local.tee $0 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 + global.set $15 + return end ;; $block_1 - local.get $0 - i32.const -8 - i32.and - local.tee $2 - local.get $3 - i32.const 16 - i32.add - i32.le_u - br_if $block_0 - local.get $1 - i32.const 4 - i32.add - local.get $3 - local.get $0 - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $1 - local.get $3 - i32.add - local.tee $0 - local.get $2 - local.get $3 - i32.sub - local.tee $3 - i32.const 3 - i32.or - i32.store offset=4 - local.get $1 + i32.const 1048840 + i32.const 55 local.get $2 + i32.const 40 i32.add - local.tee $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $3 - call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h08c63a089677cf87 + i32.const 1048896 + call $core::result::unwrap_failed::h00271bebc73f1849 + unreachable end ;; $block_0 - local.get $1 - i32.const 8 - i32.add - local.set $2 + i32.const 1048748 + call $core::panicking::panic::h540eb5ee6ff533c2 + unreachable end ;; $block + local.get $4 + i32.const 1 + i32.const 0 + i32.load offset=1055156 + local.tee $2 + i32.const 2 local.get $2 + select + call_indirect $13 (type $0) + unreachable + unreachable ) - (func $dlmalloc::dlmalloc::Dlmalloc::malloc::h7ef7d8a98d4afe8d (type $7) + (func $__rust_dealloc (type $5) (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) + local.get $0 + call $__rdl_dealloc + ) + + (func $core::result::unwrap_failed::h00271bebc73f1849 (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i64) - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - block $block_16 - block $block_17 - block $block_18 - block $block_19 - block $block_20 - block $block_21 - block $block_22 - block $block_23 - block $block_24 - block $block_25 - block $block_26 - block $block_27 - block $block_28 - block $block_29 - block $block_30 - local.get $0 - i32.const 244 - i32.gt_u - br_if $block_30 - i32.const 0 - i32.load offset=1054576 - local.tee $1 - i32.const 16 - local.get $0 - i32.const 11 - i32.add - i32.const -8 - i32.and - local.get $0 - i32.const 11 - i32.lt_u - select - local.tee $2 - i32.const 3 - i32.shr_u - local.tee $3 - i32.const 31 - i32.and - local.tee $4 - i32.shr_u - local.tee $0 - i32.const 3 - i32.and - i32.eqz - br_if $block_29 - local.get $0 - i32.const -1 - i32.xor - i32.const 1 - i32.and - local.get $3 - i32.add - local.tee $2 - i32.const 3 - i32.shl - local.tee $5 - i32.const 1054592 - i32.add - i32.load - local.tee $0 - i32.const 8 - i32.add - local.set $6 - local.get $0 - i32.load offset=8 - local.tee $7 - local.get $5 - i32.const 1054584 - i32.add - local.tee $5 - i32.eq - br_if $block_28 - local.get $7 - local.get $5 - i32.store offset=12 - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - br $block_27 - end ;; $block_30 - i32.const 0 - local.set $6 - local.get $0 - i32.const -65588 - i32.gt_u - br_if $block - local.get $0 - i32.const 11 - i32.add - local.tee $0 - i32.const -8 - i32.and - local.set $2 - i32.const 0 - i32.load offset=1054580 - local.tee $1 - i32.eqz - br_if $block_20 - i32.const 0 - local.set $8 - block $block_31 - local.get $0 - i32.const 8 - i32.shr_u - local.tee $0 - i32.eqz - br_if $block_31 - i32.const 31 - local.set $8 - local.get $2 - i32.const 16777215 - i32.gt_u - br_if $block_31 - local.get $2 - i32.const 38 - local.get $0 - i32.clz - local.tee $0 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.const 31 - local.get $0 - i32.sub - i32.const 1 - i32.shl - i32.or - local.set $8 - end ;; $block_31 - i32.const 0 - local.get $2 - i32.sub - local.set $6 - local.get $8 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_23 - i32.const 0 - local.set $7 - local.get $2 - i32.const 0 - i32.const 25 - local.get $8 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $8 - i32.const 31 - i32.eq - select - i32.shl - local.set $9 - i32.const 0 - local.set $5 - loop $loop - block $block_32 - local.get $0 - i32.load offset=4 - i32.const -8 - i32.and - local.tee $3 - local.get $2 - i32.lt_u - br_if $block_32 - local.get $3 - local.get $2 - i32.sub - local.tee $3 - local.get $6 - i32.ge_u - br_if $block_32 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $3 - i32.eqz - br_if $block_25 - end ;; $block_32 - local.get $0 - i32.const 20 - i32.add - i32.load - local.tee $3 - local.get $7 - local.get $3 - local.get $0 - local.get $9 - i32.const 29 - i32.shr_u - i32.const 4 - i32.and - i32.add - i32.const 16 - i32.add - i32.load - local.tee $0 - i32.ne - select - local.get $7 - local.get $3 - select - local.set $7 - local.get $9 - i32.const 1 - i32.shl - local.set $9 - local.get $0 - br_if $loop - end ;; $loop - local.get $7 - i32.eqz - br_if $block_24 - local.get $7 - local.set $0 - br $block_22 - end ;; $block_29 - local.get $2 - i32.const 0 - i32.load offset=1054976 - i32.le_u - br_if $block_20 - local.get $0 - i32.eqz - br_if $block_26 - local.get $0 - local.get $4 - i32.shl - i32.const 2 - local.get $4 - i32.shl - local.tee $0 - i32.const 0 - local.get $0 - i32.sub - i32.or - i32.and - local.tee $0 - i32.const 0 - local.get $0 - i32.sub - i32.and - i32.ctz - local.tee $6 - i32.const 3 - i32.shl - local.tee $5 - i32.const 1054592 - i32.add - i32.load - local.tee $0 - i32.load offset=8 - local.tee $7 - local.get $5 - i32.const 1054584 - i32.add - local.tee $5 - i32.eq - br_if $block_18 - local.get $7 - local.get $5 - i32.store offset=12 - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - br $block_17 - end ;; $block_28 - i32.const 0 - local.get $1 - i32.const -2 - local.get $2 - i32.rotl - i32.and - i32.store offset=1054576 - end ;; $block_27 - local.get $0 - local.get $2 - i32.const 3 - i32.shl - local.tee $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 - i32.add - local.tee $0 - local.get $0 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - br $block - end ;; $block_26 - i32.const 0 - i32.load offset=1054580 - local.tee $0 - i32.eqz - br_if $block_20 - i32.const -8 - local.set $10 - local.get $0 - i32.const 0 - local.get $0 - i32.sub - i32.and - i32.ctz - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - i32.load - local.tee $11 - i32.load offset=4 - i32.const -8 - i32.and - local.get $2 - i32.sub - local.set $12 - i32.const 20 - local.set $13 - local.get $11 - local.set $14 - local.get $11 - i32.load offset=16 - local.tee $15 - i32.eqz - br_if $block_3 - i32.const 3 - local.set $0 - br $block_1 - end ;; $block_25 - i32.const 0 - local.set $6 - local.get $0 - local.set $5 - br $block_22 - end ;; $block_24 - local.get $5 - br_if $block_21 - end ;; $block_23 - i32.const 0 - local.set $5 - i32.const 2 - local.get $8 - i32.const 31 - i32.and - i32.shl - local.tee $0 - i32.const 0 - local.get $0 - i32.sub - i32.or - local.get $1 - i32.and - local.tee $0 - i32.eqz - br_if $block_20 - local.get $0 - i32.const 0 - local.get $0 - i32.sub - i32.and - i32.ctz - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_20 - end ;; $block_22 - block $block_33 - loop $loop_0 - local.get $0 - i32.load offset=4 - i32.const -8 - i32.and - local.tee $7 - local.get $2 - i32.ge_u - local.get $7 - local.get $2 - i32.sub - local.tee $3 - local.get $6 - i32.lt_u - i32.and - local.set $7 - block $block_34 - local.get $0 - i32.load offset=16 - local.tee $9 - i32.eqz - br_if $block_34 - local.get $0 - local.get $5 - local.get $7 - select - local.set $5 - local.get $3 - local.get $6 - local.get $7 - select - local.set $6 - local.get $9 - local.set $0 - local.get $9 - br_if $loop_0 - br $block_33 - end ;; $block_34 - local.get $0 - local.get $5 - local.get $7 - select - local.set $5 - local.get $3 - local.get $6 - local.get $7 - select - local.set $6 - local.get $0 - i32.const 20 - i32.add - i32.load - local.tee $7 - local.set $0 - local.get $7 - br_if $loop_0 - end ;; $loop_0 - end ;; $block_33 - local.get $5 - i32.eqz - br_if $block_20 - end ;; $block_21 - i32.const 0 - i32.load offset=1054976 - local.tee $0 - local.get $2 - i32.lt_u - br_if $block_19 - local.get $6 - local.get $0 - local.get $2 - i32.sub - i32.lt_u - br_if $block_19 - end ;; $block_20 - block $block_35 - block $block_36 - block $block_37 - i32.const 0 - i32.load offset=1054976 - local.tee $0 - local.get $2 - i32.ge_u - br_if $block_37 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block_36 - i32.const 0 - local.get $0 - local.get $2 - i32.sub - local.tee $6 - i32.store offset=1054980 - i32.const 0 - i32.const 0 - i32.load offset=1054988 - local.tee $0 - local.get $2 - i32.add - local.tee $7 - i32.store offset=1054988 - local.get $7 - local.get $6 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $0 - i32.const 8 - i32.add - return - end ;; $block_37 - i32.const 0 - i32.load offset=1054984 - local.set $6 - local.get $0 - local.get $2 - i32.sub - local.tee $7 - i32.const 16 - i32.ge_u - br_if $block_35 - i32.const 0 - i32.const 0 - i32.store offset=1054984 - i32.const 0 - i32.const 0 - i32.store offset=1054976 - local.get $6 - local.get $0 - i32.const 3 - i32.or - i32.store offset=4 - local.get $6 - local.get $0 - i32.add - local.tee $0 - i32.const 4 - i32.add - local.get $0 - i32.load offset=4 - i32.const 1 - i32.or - i32.store - local.get $6 - i32.const 8 - i32.add - return - end ;; $block_36 - i32.const 0 - local.set $6 - local.get $2 - i32.const 65583 - i32.add - local.tee $7 - i32.const 16 - i32.shr_u - memory.grow - local.tee $0 - i32.const -1 - i32.eq - br_if $block - local.get $0 - i32.const 16 - i32.shl - local.tee $9 - i32.eqz - br_if $block - i32.const 0 - i32.const 0 - i32.load offset=1054992 - local.get $7 - i32.const -65536 - i32.and - local.tee $8 - i32.add - local.tee $0 - i32.store offset=1054992 - i32.const 0 - i32.const 0 - i32.load offset=1054996 - local.tee $6 - local.get $0 - local.get $0 - local.get $6 - i32.lt_u - select - i32.store offset=1054996 - i32.const 0 - i32.load offset=1054988 - local.tee $7 - i32.eqz - br_if $block_12 - i32.const 1055000 - local.set $0 - loop $loop_1 - local.get $0 - i32.load - local.tee $6 - local.get $0 - i32.load offset=4 - local.tee $5 - i32.add - local.get $9 - i32.eq - br_if $block_11 - local.get $0 - i32.load offset=8 - local.tee $0 - br_if $loop_1 - br $block_2 - end ;; $loop_1 - end ;; $block_35 - i32.const 0 - local.get $7 - i32.store offset=1054976 - i32.const 0 - local.get $6 - local.get $2 - i32.add - local.tee $5 - i32.store offset=1054984 - local.get $5 - local.get $7 - i32.const 1 - i32.or - i32.store offset=4 - local.get $6 - local.get $0 - i32.add - local.get $7 - i32.store - local.get $6 - i32.const 4 - i32.add - local.get $2 - i32.const 3 - i32.or - i32.store - local.get $6 - i32.const 8 - i32.add - return - end ;; $block_19 - local.get $5 - i32.load offset=24 - local.set $15 - local.get $5 - i32.load offset=12 - local.tee $7 - local.get $5 - i32.eq - br_if $block_16 - local.get $5 - i32.load offset=8 - local.tee $0 - local.get $7 - i32.store offset=12 - local.get $7 - local.get $0 - i32.store offset=8 - local.get $15 - br_if $block_9 - br $block_6 - end ;; $block_18 - i32.const 0 - local.get $1 - i32.const -2 - local.get $6 - i32.rotl - i32.and - i32.store offset=1054576 - end ;; $block_17 - local.get $0 - i32.const 8 - i32.add - local.set $7 - local.get $0 - local.get $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 - i32.add - local.tee $5 - local.get $6 - i32.const 3 - i32.shl - local.tee $6 - local.get $2 - i32.sub - local.tee $2 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $6 - i32.add - local.get $2 - i32.store - i32.const 0 - i32.load offset=1054976 - local.tee $0 - i32.eqz - br_if $block_13 - local.get $0 - i32.const 3 - i32.shr_u - local.tee $9 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $6 - i32.const 0 - i32.load offset=1054984 - local.set $0 - i32.const 0 - i32.load offset=1054576 - local.tee $3 - i32.const 1 - local.get $9 - i32.const 31 - i32.and - i32.shl - local.tee $9 - i32.and - i32.eqz - br_if $block_15 - local.get $6 - i32.load offset=8 - local.set $9 - br $block_14 - end ;; $block_16 - local.get $5 - i32.const 20 - i32.const 16 - local.get $5 - i32.const 20 - i32.add - local.tee $7 - i32.load - local.tee $9 - select - i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_10 - local.get $7 - local.get $5 - i32.const 16 - i32.add - local.get $9 - select - local.set $9 - block $block_38 - loop $loop_2 - local.get $9 - local.set $3 - block $block_39 - local.get $0 - local.tee $7 - i32.const 20 - i32.add - local.tee $9 - i32.load - local.tee $0 - i32.eqz - br_if $block_39 - local.get $0 - br_if $loop_2 - br $block_38 - end ;; $block_39 - local.get $7 - i32.const 16 - i32.add - local.set $9 - local.get $7 - i32.load offset=16 - local.tee $0 - br_if $loop_2 - end ;; $loop_2 - end ;; $block_38 - local.get $3 - i32.const 0 - i32.store - local.get $15 - br_if $block_9 - br $block_6 - end ;; $block_15 - i32.const 0 - local.get $3 - local.get $9 - i32.or - i32.store offset=1054576 - local.get $6 - local.set $9 - end ;; $block_14 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $9 - local.get $0 - i32.store offset=12 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $0 - local.get $9 - i32.store offset=8 - end ;; $block_13 - i32.const 0 - local.get $5 - i32.store offset=1054984 - i32.const 0 - local.get $2 - i32.store offset=1054976 - local.get $7 - return - end ;; $block_12 - block $block_40 - block $block_41 - i32.const 0 - i32.load offset=1055020 - local.tee $0 - i32.eqz - br_if $block_41 - local.get $0 - local.get $9 - i32.le_u - br_if $block_40 - end ;; $block_41 - i32.const 0 - local.get $9 - i32.store offset=1055020 - end ;; $block_40 - i32.const 0 - i32.const 4095 - i32.store offset=1055024 - i32.const 0 - local.get $8 - i32.store offset=1055004 - i32.const 0 - local.get $9 - i32.store offset=1055000 - i32.const 0 - i32.const 1054584 - i32.store offset=1054596 - i32.const 0 - i32.const 1054592 - i32.store offset=1054604 - i32.const 0 - i32.const 1054584 - i32.store offset=1054592 - i32.const 0 - i32.const 1054600 - i32.store offset=1054612 - i32.const 0 - i32.const 1054592 - i32.store offset=1054600 - i32.const 0 - i32.const 1054608 - i32.store offset=1054620 - i32.const 0 - i32.const 1054600 - i32.store offset=1054608 - i32.const 0 - i32.const 1054616 - i32.store offset=1054628 - i32.const 0 - i32.const 1054608 - i32.store offset=1054616 - i32.const 0 - i32.const 1054624 - i32.store offset=1054636 - i32.const 0 - i32.const 1054616 - i32.store offset=1054624 - i32.const 0 - i32.const 1054632 - i32.store offset=1054644 - i32.const 0 - i32.const 1054624 - i32.store offset=1054632 - i32.const 0 - i32.const 1054640 - i32.store offset=1054652 - i32.const 0 - i32.const 1054632 - i32.store offset=1054640 - i32.const 0 - i32.const 0 - i32.store offset=1055012 - i32.const 0 - i32.const 1054648 - i32.store offset=1054660 - i32.const 0 - i32.const 1054640 - i32.store offset=1054648 - i32.const 0 - i32.const 1054656 - i32.store offset=1054668 - i32.const 0 - i32.const 1054648 - i32.store offset=1054656 - i32.const 0 - i32.const 1054664 - i32.store offset=1054676 - i32.const 0 - i32.const 1054656 - i32.store offset=1054664 - i32.const 0 - i32.const 1054672 - i32.store offset=1054684 - i32.const 0 - i32.const 1054664 - i32.store offset=1054672 - i32.const 0 - i32.const 1054680 - i32.store offset=1054692 - i32.const 0 - i32.const 1054672 - i32.store offset=1054680 - i32.const 0 - i32.const 1054688 - i32.store offset=1054700 - i32.const 0 - i32.const 1054680 - i32.store offset=1054688 - i32.const 0 - i32.const 1054696 - i32.store offset=1054708 - i32.const 0 - i32.const 1054688 - i32.store offset=1054696 - i32.const 0 - i32.const 1054704 - i32.store offset=1054716 - i32.const 0 - i32.const 1054696 - i32.store offset=1054704 - i32.const 0 - i32.const 1054712 - i32.store offset=1054724 - i32.const 0 - i32.const 1054704 - i32.store offset=1054712 - i32.const 0 - i32.const 1054720 - i32.store offset=1054732 - i32.const 0 - i32.const 1054712 - i32.store offset=1054720 - i32.const 0 - i32.const 1054728 - i32.store offset=1054740 - i32.const 0 - i32.const 1054720 - i32.store offset=1054728 - i32.const 0 - i32.const 1054736 - i32.store offset=1054748 - i32.const 0 - i32.const 1054728 - i32.store offset=1054736 - i32.const 0 - i32.const 1054744 - i32.store offset=1054756 - i32.const 0 - i32.const 1054736 - i32.store offset=1054744 - i32.const 0 - i32.const 1054752 - i32.store offset=1054764 - i32.const 0 - i32.const 1054744 - i32.store offset=1054752 - i32.const 0 - i32.const 1054760 - i32.store offset=1054772 - i32.const 0 - i32.const 1054752 - i32.store offset=1054760 - i32.const 0 - i32.const 1054768 - i32.store offset=1054780 - i32.const 0 - i32.const 1054760 - i32.store offset=1054768 - i32.const 0 - i32.const 1054776 - i32.store offset=1054788 - i32.const 0 - i32.const 1054768 - i32.store offset=1054776 - i32.const 0 - i32.const 1054784 - i32.store offset=1054796 - i32.const 0 - i32.const 1054776 - i32.store offset=1054784 - i32.const 0 - i32.const 1054792 - i32.store offset=1054804 - i32.const 0 - i32.const 1054784 - i32.store offset=1054792 - i32.const 0 - i32.const 1054800 - i32.store offset=1054812 - i32.const 0 - i32.const 1054792 - i32.store offset=1054800 - i32.const 0 - i32.const 1054808 - i32.store offset=1054820 - i32.const 0 - i32.const 1054800 - i32.store offset=1054808 - i32.const 0 - i32.const 1054816 - i32.store offset=1054828 - i32.const 0 - i32.const 1054808 - i32.store offset=1054816 - i32.const 0 - i32.const 1054824 - i32.store offset=1054836 - i32.const 0 - i32.const 1054816 - i32.store offset=1054824 - i32.const 0 - i32.const 1054832 - i32.store offset=1054844 - i32.const 0 - i32.const 1054824 - i32.store offset=1054832 - i32.const 0 - local.get $9 - i32.store offset=1054988 - i32.const 0 - i32.const 1054832 - i32.store offset=1054840 - i32.const 0 - local.get $8 - i32.const -40 - i32.add - local.tee $0 - i32.store offset=1054980 - local.get $9 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $9 - local.get $0 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 0 - i32.const 2097152 - i32.store offset=1055016 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block - br $block_0 + global.get $15 + i32.const 64 + i32.sub + local.tee $4 + global.set $15 + local.get $4 + local.get $1 + i32.store offset=12 + local.get $4 + local.get $0 + i32.store offset=8 + local.get $4 + local.get $3 + i32.store offset=20 + local.get $4 + local.get $2 + i32.store offset=16 + local.get $4 + i32.const 44 + i32.add + i32.const 2 + i32.store + local.get $4 + i32.const 60 + i32.add + i32.const 5 + i32.store + local.get $4 + i64.const 2 + i64.store offset=28 align=4 + local.get $4 + i32.const 1054552 + i32.store offset=24 + local.get $4 + i32.const 1 + i32.store offset=52 + local.get $4 + local.get $4 + i32.const 48 + i32.add + i32.store offset=40 + local.get $4 + local.get $4 + i32.const 16 + i32.add + i32.store offset=56 + local.get $4 + local.get $4 + i32.const 8 + i32.add + i32.store offset=48 + local.get $4 + i32.const 24 + i32.add + i32.const 1054572 + call $core::panicking::panic_fmt::h772cfe55da576359 + unreachable + ) + + (func $core::panicking::panic::h540eb5ee6ff533c2 (type $5) + (param $0 i32) + (local $1 i32) + (local $2 i64) + (local $3 i64) + (local $4 i64) + global.get $15 + i32.const 48 + i32.sub + local.tee $1 + global.set $15 + local.get $0 + i64.load offset=8 align=4 + local.set $2 + local.get $0 + i64.load offset=16 align=4 + local.set $3 + local.get $0 + i64.load align=4 + local.set $4 + local.get $1 + i32.const 20 + i32.add + i32.const 0 + i32.store + local.get $1 + i32.const 1049116 + i32.store offset=16 + local.get $1 + i64.const 1 + i64.store offset=4 align=4 + local.get $1 + local.get $4 + i64.store offset=24 + local.get $1 + local.get $1 + i32.const 24 + i32.add + i32.store + local.get $1 + local.get $3 + i64.store offset=40 + local.get $1 + local.get $2 + i64.store offset=32 + local.get $1 + local.get $1 + i32.const 32 + i32.add + call $core::panicking::panic_fmt::h772cfe55da576359 + unreachable + ) + + (func $__post_instantiate (type $6) + (local $0 i32) + (local $1 i32) + global.get $15 + i32.const 16 + i32.sub + local.tee $0 + global.set $15 + i32.const 0 + i32.const 0 + i32.load offset=1054684 + local.tee $1 + i32.const 1 + local.get $1 + select + i32.store offset=1054684 + block $block + block $block_0 + local.get $1 + i32.const 1 + i32.gt_u + br_if $block_0 + block $block_1 + local.get $1 + br_table + $block $block_1 + $block ;; default + end ;; $block_1 + loop $loop + i32.const 0 + i32.load offset=1054684 + i32.const 1 + i32.eq + br_if $loop + end ;; $loop + end ;; $block_0 + i32.const 1048912 + i32.const 43 + local.get $0 + i32.const 8 + i32.add + i32.const 1048956 + call $core::result::unwrap_failed::h00271bebc73f1849 + unreachable + end ;; $block + i32.const 0 + i32.const 1048808 + i32.store offset=1055164 + i32.const 0 + i32.const 1049116 + i32.store offset=1055160 + i32.const 0 + i32.const 2 + i32.store offset=1054684 + i32.const 0 + i32.const 5 + i32.store offset=1054680 + local.get $0 + i32.const 16 + i32.add + global.set $15 + ) + + (func $_malloc (type $8) + (param $0 i32) + (result i32) + (local $1 i32) + block $block + block $block_0 + local.get $0 + i32.const -1 + i32.le_s + br_if $block_0 + block $block_1 + local.get $0 + br_if $block_1 + i32.const 1 + return + end ;; $block_1 + local.get $0 + i32.const 1 + call $__rust_alloc + local.tee $1 + i32.eqz + br_if $block + local.get $1 + return + end ;; $block_0 + call $alloc::raw_vec::RawVec::allocate_in::_7b__7b_closure_7d__7d_::ha9193fd2beb4c622 + unreachable + end ;; $block + local.get $0 + i32.const 1 + i32.const 0 + i32.load offset=1055156 + local.tee $1 + i32.const 2 + local.get $1 + select + call_indirect $13 (type $0) + unreachable + unreachable + ) + + (func $_free (type $5) + (param $0 i32) + block $block + local.get $0 + i32.eqz + br_if $block + local.get $0 + call $__rust_dealloc + end ;; $block + ) + + (func $::enabled::h4d0d6b60212bce89 (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + i32.const 0 + ) + + (func $::log::hab97ea506f147727 (type $0) + (param $0 i32) + (param $1 i32) + ) + + (func $::flush::hf78c792c6fe83c70 (type $5) + (param $0 i32) + ) + + (func $core::ptr::real_drop_in_place::h38d0d042ad615819 (type $5) + (param $0 i32) + ) + + (func $::fmt::h323d5f06fc0398c5 (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $15 + i32.const 80 + i32.sub + local.tee $2 + global.set $15 + i32.const 1 + local.set $3 + block $block + local.get $1 + i32.load offset=24 + i32.const 1049020 + i32.const 14 + local.get $1 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block + local.get $1 + i32.load offset=24 + local.set $4 + local.get $1 + i32.load offset=28 + i32.load offset=12 + local.set $5 + block $block_0 + block $block_1 + local.get $1 + i32.load8_u + i32.const 4 + i32.and + br_if $block_1 + i32.const 1 + local.set $3 + local.get $4 + i32.const 1054668 + i32.const 1 + local.get $5 + call_indirect $13 (type $1) + br_if $block + local.get $1 + i32.const 1049034 + i32.const 2 + call $core::fmt::Formatter::pad::h65a2184638dd238f + i32.eqz + br_if $block_0 + br $block + end ;; $block_1 + local.get $4 + i32.const 1054669 + i32.const 2 + local.get $5 + call_indirect $13 (type $1) + br_if $block + local.get $1 + i32.load + local.set $4 + i32.const 1 + local.set $3 + local.get $2 + i32.const 1 + i32.store8 offset=23 + local.get $2 + i32.const 52 + i32.add + i32.const 1054612 + i32.store + local.get $2 + local.get $4 + i32.store offset=24 + local.get $2 + local.get $1 + i64.load offset=24 align=4 + i64.store offset=8 + local.get $2 + local.get $1 + i32.load8_u offset=48 + i32.store8 offset=72 + local.get $2 + local.get $1 + i32.load offset=4 + i32.store offset=28 + local.get $2 + local.get $1 + i64.load offset=40 align=4 + i64.store offset=64 + local.get $2 + local.get $1 + i64.load offset=32 align=4 + i64.store offset=56 + local.get $2 + local.get $1 + i64.load offset=16 align=4 + i64.store offset=40 + local.get $2 + local.get $1 + i64.load offset=8 align=4 + i64.store offset=32 + local.get $2 + local.get $2 + i32.const 23 + i32.add + i32.store offset=16 + local.get $2 + local.get $2 + i32.const 8 + i32.add + i32.store offset=48 + local.get $2 + i32.const 24 + i32.add + i32.const 1049034 + i32.const 2 + call $core::fmt::Formatter::pad::h65a2184638dd238f + br_if $block + local.get $2 + i32.const 8 + i32.add + i32.const 1054636 + i32.const 2 + call $::write_str::h3cfa2330727f68d0 + br_if $block + end ;; $block_0 + local.get $1 + i32.load offset=24 + i32.const 1054609 + i32.const 1 + local.get $1 + i32.load offset=28 + i32.load offset=12 + call_indirect $13 (type $1) + local.set $3 + end ;; $block + local.get $2 + i32.const 80 + i32.add + global.set $15 + local.get $3 + ) + + (func $core::fmt::Formatter::pad::h65a2184638dd238f (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + local.get $0 + i32.load offset=16 + local.set $3 + block $block + block $block_0 + block $block_1 + block $block_2 + local.get $0 + i32.load offset=8 + local.tee $4 + i32.const 1 + i32.eq + br_if $block_2 + local.get $3 + br_if $block_1 + local.get $0 + i32.load offset=24 + local.get $1 + local.get $2 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + local.set $3 + br $block + end ;; $block_2 + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + block $block_3 + block $block_4 + local.get $2 + br_if $block_4 + i32.const 0 + local.set $2 + br $block_3 + end ;; $block_4 + local.get $1 + local.get $2 + i32.add + local.set $5 + local.get $0 + i32.const 20 + i32.add + i32.load + i32.const 1 + i32.add + local.set $6 + i32.const 0 + local.set $7 + local.get $1 + local.set $3 + local.get $1 + local.set $8 + loop $loop + local.get $3 + i32.const 1 + i32.add + local.set $9 + block $block_5 + block $block_6 + block $block_7 + local.get $3 + i32.load8_s + local.tee $10 + i32.const -1 + i32.gt_s + br_if $block_7 + block $block_8 + block $block_9 + local.get $9 + local.get $5 + i32.ne + br_if $block_9 + i32.const 0 + local.set $11 + local.get $5 + local.set $3 + br $block_8 + end ;; $block_9 + local.get $3 + i32.load8_u offset=1 + i32.const 63 + i32.and + local.set $11 + local.get $3 + i32.const 2 + i32.add + local.tee $9 + local.set $3 + end ;; $block_8 + local.get $10 + i32.const 31 + i32.and + local.set $12 + block $block_10 + local.get $10 + i32.const 255 + i32.and + local.tee $10 + i32.const 223 + i32.gt_u + br_if $block_10 + local.get $11 + local.get $12 + i32.const 6 + i32.shl + i32.or + local.set $10 + br $block_6 + end ;; $block_10 + block $block_11 + block $block_12 + local.get $3 + local.get $5 + i32.ne + br_if $block_12 + i32.const 0 + local.set $13 + local.get $5 + local.set $14 + br $block_11 + end ;; $block_12 + local.get $3 + i32.load8_u + i32.const 63 + i32.and + local.set $13 + local.get $3 + i32.const 1 + i32.add + local.tee $9 + local.set $14 + end ;; $block_11 + local.get $13 + local.get $11 + i32.const 6 + i32.shl + i32.or + local.set $11 + block $block_13 + local.get $10 + i32.const 240 + i32.ge_u + br_if $block_13 + local.get $11 + local.get $12 + i32.const 12 + i32.shl + i32.or + local.set $10 + br $block_6 + end ;; $block_13 + block $block_14 + block $block_15 + local.get $14 + local.get $5 + i32.ne + br_if $block_15 + i32.const 0 + local.set $10 + local.get $9 + local.set $3 + br $block_14 + end ;; $block_15 + local.get $14 + i32.const 1 + i32.add + local.set $3 + local.get $14 + i32.load8_u + i32.const 63 + i32.and + local.set $10 + end ;; $block_14 + local.get $11 + i32.const 6 + i32.shl + local.get $12 + i32.const 18 + i32.shl + i32.const 1835008 + i32.and + i32.or + local.get $10 + i32.or + local.tee $10 + i32.const 1114112 + i32.ne + br_if $block_5 + br $block_3 + end ;; $block_7 + local.get $10 + i32.const 255 + i32.and + local.set $10 + end ;; $block_6 + local.get $9 + local.set $3 + end ;; $block_5 + block $block_16 + local.get $6 + i32.const -1 + i32.add + local.tee $6 + i32.eqz + br_if $block_16 + local.get $7 + local.get $8 + i32.sub + local.get $3 + i32.add + local.set $7 + local.get $3 + local.set $8 + local.get $5 + local.get $3 + i32.ne + br_if $loop + br $block_3 + end ;; $block_16 + end ;; $loop + local.get $10 + i32.const 1114112 + i32.eq + br_if $block_3 + block $block_17 + block $block_18 + local.get $7 + i32.eqz + br_if $block_18 + local.get $7 + local.get $2 + i32.eq + br_if $block_18 + i32.const 0 + local.set $3 + local.get $7 + local.get $2 + i32.ge_u + br_if $block_17 + local.get $1 + local.get $7 + i32.add + i32.load8_s + i32.const -64 + i32.lt_s + br_if $block_17 + end ;; $block_18 + local.get $1 + local.set $3 + end ;; $block_17 + local.get $7 + local.get $2 + local.get $3 + select + local.set $2 + local.get $3 + local.get $1 + local.get $3 + select + local.set $1 + end ;; $block_3 + local.get $4 + br_if $block_0 + local.get $0 + i32.load offset=24 + local.get $1 + local.get $2 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + return + end ;; $block_0 + i32.const 0 + local.set $9 + block $block_19 + local.get $2 + i32.eqz + br_if $block_19 + local.get $2 + local.set $10 + local.get $1 + local.set $3 + loop $loop_0 + local.get $9 + local.get $3 + i32.load8_u + i32.const 192 + i32.and + i32.const 128 + i32.eq + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $10 + i32.const -1 + i32.add + local.tee $10 + br_if $loop_0 + end ;; $loop_0 + end ;; $block_19 + block $block_20 + local.get $2 + local.get $9 + i32.sub + local.get $0 + i32.load offset=12 + local.tee $6 + i32.lt_u + br_if $block_20 + local.get $0 + i32.load offset=24 + local.get $1 + local.get $2 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + return + end ;; $block_20 + i32.const 0 + local.set $7 + i32.const 0 + local.set $9 + block $block_21 + local.get $2 + i32.eqz + br_if $block_21 + i32.const 0 + local.set $9 + local.get $2 + local.set $10 + local.get $1 + local.set $3 + loop $loop_1 + local.get $9 + local.get $3 + i32.load8_u + i32.const 192 + i32.and + i32.const 128 + i32.eq + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $10 + i32.const -1 + i32.add + local.tee $10 + br_if $loop_1 + end ;; $loop_1 + end ;; $block_21 + local.get $9 + local.get $2 + i32.sub + local.get $6 + i32.add + local.set $10 + block $block_22 + block $block_23 + block $block_24 + i32.const 0 + local.get $0 + i32.load8_u offset=48 + local.tee $3 + local.get $3 + i32.const 3 + i32.eq + select + br_table + $block_22 $block_24 $block_23 $block_24 + $block_22 ;; default + end ;; $block_24 + local.get $10 + local.set $7 + i32.const 0 + local.set $10 + br $block_22 + end ;; $block_23 + local.get $10 + i32.const 1 + i32.shr_u + local.set $7 + local.get $10 + i32.const 1 + i32.add + i32.const 1 + i32.shr_u + local.set $10 + end ;; $block_22 + local.get $7 + i32.const 1 + i32.add + local.set $3 + block $block_25 + loop $loop_2 + local.get $3 + i32.const -1 + i32.add + local.tee $3 + i32.eqz + br_if $block_25 + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load offset=28 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_2 + end ;; $loop_2 + i32.const 1 + return + end ;; $block_25 + local.get $0 + i32.load offset=4 + local.set $9 + i32.const 1 + local.set $3 + local.get $0 + i32.load offset=24 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=28 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block + local.get $10 + i32.const 1 + i32.add + local.set $3 + local.get $0 + i32.load offset=28 + local.set $10 + local.get $0 + i32.load offset=24 + local.set $0 + loop $loop_3 + block $block_26 + local.get $3 + i32.const -1 + i32.add + local.tee $3 + br_if $block_26 + i32.const 0 + return + end ;; $block_26 + local.get $0 + local.get $9 + local.get $10 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_3 + end ;; $loop_3 + i32.const 1 + return + end ;; $block + local.get $3 + ) + + (func $::write_str::h3cfa2330727f68d0 (type $1) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $15 + i32.const 48 + i32.sub + local.tee $3 + global.set $15 + block $block + block $block_0 + local.get $2 + br_if $block_0 + i32.const 0 + local.set $4 + br $block + end ;; $block_0 + local.get $3 + i32.const 40 + i32.add + local.set $5 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + loop $loop + block $block_5 + local.get $0 + i32.load offset=8 + i32.load8_u + i32.eqz + br_if $block_5 + local.get $0 + i32.load + i32.const 1054664 + i32.const 4 + local.get $0 + i32.load offset=4 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block_1 + end ;; $block_5 + local.get $3 + i32.const 10 + i32.store offset=40 + local.get $3 + i64.const 4294967306 + i64.store offset=32 + local.get $3 + local.get $2 + i32.store offset=28 + local.get $3 + i32.const 0 + i32.store offset=24 + local.get $3 + local.get $2 + i32.store offset=20 + local.get $3 + local.get $1 + i32.store offset=16 + local.get $3 + i32.const 8 + i32.add + i32.const 10 + local.get $1 + local.get $2 + call $core::slice::memchr::memchr::h9a5a49faa1649096 + block $block_6 + block $block_7 + block $block_8 + block $block_9 + local.get $3 + i32.load offset=8 + i32.const 1 + i32.ne + br_if $block_9 + local.get $3 + i32.load offset=12 + local.set $4 + loop $loop_0 + local.get $3 + local.get $4 + local.get $3 + i32.load offset=24 + i32.add + i32.const 1 + i32.add + local.tee $4 + i32.store offset=24 + block $block_10 + block $block_11 + local.get $4 + local.get $3 + i32.load offset=36 + local.tee $6 + i32.ge_u + br_if $block_11 + local.get $3 + i32.load offset=20 + local.set $7 + br $block_10 end ;; $block_11 - local.get $0 + local.get $3 + i32.load offset=20 + local.tee $7 + local.get $4 + i32.lt_u + br_if $block_10 + local.get $6 + i32.const 5 + i32.ge_u + br_if $block_4 + local.get $3 + i32.load offset=16 + local.get $4 + local.get $6 + i32.sub + local.tee $8 + i32.add + local.tee $9 + local.get $5 + i32.eq + br_if $block_7 + local.get $9 + local.get $5 + local.get $6 + call $memcmp + i32.eqz + br_if $block_7 + end ;; $block_10 + local.get $3 + i32.load offset=28 + local.tee $9 + local.get $4 + i32.lt_u + br_if $block_8 + local.get $7 + local.get $9 + i32.lt_u + br_if $block_8 + local.get $3 + local.get $6 + local.get $3 + i32.const 16 + i32.add + i32.add + i32.const 23 + i32.add + i32.load8_u + local.get $3 + i32.load offset=16 + local.get $4 + i32.add + local.get $9 + local.get $4 + i32.sub + call $core::slice::memchr::memchr::h9a5a49faa1649096 + local.get $3 + i32.load offset=4 + local.set $4 + local.get $3 + i32.load + i32.const 1 + i32.eq + br_if $loop_0 + end ;; $loop_0 + end ;; $block_9 + local.get $3 + local.get $3 + i32.load offset=28 + i32.store offset=24 + end ;; $block_8 + local.get $0 + i32.load offset=8 + i32.const 0 + i32.store8 + local.get $2 + local.set $4 + br $block_6 + end ;; $block_7 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.store8 + local.get $8 + i32.const 1 + i32.add + local.set $4 + end ;; $block_6 + local.get $0 + i32.load offset=4 + local.set $9 + local.get $0 + i32.load + local.set $6 + block $block_12 + local.get $4 + i32.eqz + local.get $2 + local.get $4 + i32.eq + i32.or + local.tee $7 + br_if $block_12 + local.get $2 + local.get $4 + i32.le_u + br_if $block_3 + local.get $1 + local.get $4 + i32.add + i32.load8_s + i32.const -65 + i32.le_s + br_if $block_3 + end ;; $block_12 + local.get $6 + local.get $1 + local.get $4 + local.get $9 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block_1 + block $block_13 + local.get $7 + br_if $block_13 + local.get $2 + local.get $4 + i32.le_u + br_if $block_2 + local.get $1 + local.get $4 + i32.add + i32.load8_s + i32.const -65 + i32.le_s + br_if $block_2 + end ;; $block_13 + local.get $1 + local.get $4 + i32.add + local.set $1 + local.get $2 + local.get $4 + i32.sub + local.tee $2 + br_if $loop + end ;; $loop + i32.const 0 + local.set $4 + br $block + end ;; $block_4 + local.get $6 + i32.const 4 + call $core::slice::slice_index_len_fail::h7c242876dcc4f7b2 + unreachable + end ;; $block_3 + local.get $1 + local.get $2 + i32.const 0 + local.get $4 + call $core::str::slice_error_fail::he0fc563abf615243 + unreachable + end ;; $block_2 + local.get $1 + local.get $2 + local.get $4 + local.get $2 + call $core::str::slice_error_fail::he0fc563abf615243 + unreachable + end ;; $block_1 + i32.const 1 + local.set $4 + end ;; $block + local.get $3 + i32.const 48 + i32.add + global.set $15 + local.get $4 + ) + + (func $std::panicking::rust_panic_with_hook::hd01e7017ef618665 (type $5) + (param $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 1 + local.set $1 + block $block + block $block_0 + block $block_1 + i32.const 0 + i32.load offset=1055144 + i32.const 1 + i32.eq + br_if $block_1 + i32.const 0 + i64.const 4294967297 + i64.store offset=1055144 + br $block_0 + end ;; $block_1 + i32.const 0 + i32.const 0 + i32.load offset=1055148 + i32.const 1 + i32.add + local.tee $1 + i32.store offset=1055148 + local.get $1 + i32.const 2 + i32.gt_u + br_if $block + end ;; $block_0 + i32.const 0 + i32.load offset=1055152 + local.tee $2 + i32.const -1 + i32.le_s + br_if $block + i32.const 0 + local.get $2 + i32.store offset=1055152 + local.get $1 + i32.const 1 + i32.gt_u + br_if $block + call $rust_panic + unreachable + end ;; $block + unreachable + unreachable + ) + + (func $rust_panic (type $6) + unreachable + unreachable + ) + + (func $std::panicking::continue_panic_fmt::he42d474e4cddb3a9 (type $5) + (param $0 i32) + (local $1 i32) + global.get $15 + i32.const 16 + i32.sub + local.tee $1 + global.set $15 + local.get $0 + i32.load offset=8 + call $core::option::Option::unwrap::h129a791fa84208d0 + drop + local.get $1 + local.get $0 + i32.const 20 + i32.add + i64.load align=4 + i64.store offset=8 + local.get $1 + local.get $0 + i64.load offset=12 align=4 + i64.store + local.get $1 + call $std::panicking::rust_panic_with_hook::hd01e7017ef618665 + unreachable + ) + + (func $core::option::Option::unwrap::h129a791fa84208d0 (type $8) + (param $0 i32) + (result i32) + block $block + local.get $0 + br_if $block + i32.const 1049644 + call $core::panicking::panic::h540eb5ee6ff533c2 + unreachable + end ;; $block + local.get $0 + ) + + (func $__rdl_alloc (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $block + block $block_0 + local.get $1 + i32.const 9 + i32.lt_u + br_if $block_0 + i32.const 0 + local.set $2 + i32.const -65587 + local.get $1 + i32.const 16 + local.get $1 + i32.const 16 + i32.gt_u + select + local.tee $1 + i32.sub + local.get $0 + i32.le_u + br_if $block + local.get $1 + i32.const 16 + local.get $0 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $0 + i32.const 11 + i32.lt_u + select + local.tee $3 + i32.add + i32.const 12 + i32.add + call $dlmalloc::dlmalloc::Dlmalloc::malloc::hec92e476cdfbbd60 + local.tee $0 + i32.eqz + br_if $block + local.get $0 + i32.const -8 + i32.add + local.set $2 + block $block_1 + block $block_2 + local.get $1 + i32.const -1 + i32.add + local.tee $4 + local.get $0 + i32.and + br_if $block_2 + local.get $2 + local.set $1 + br $block_1 + end ;; $block_2 + local.get $0 + i32.const -4 + i32.add + local.tee $5 + i32.load + local.tee $6 + i32.const -8 + i32.and + local.get $4 + local.get $0 + i32.add + i32.const 0 + local.get $1 + i32.sub + i32.and + i32.const -8 + i32.add + local.tee $0 + local.get $0 + local.get $1 + i32.add + local.get $0 + local.get $2 + i32.sub + i32.const 16 + i32.gt_u + select + local.tee $1 + local.get $2 + i32.sub + local.tee $0 + i32.sub + local.set $4 + block $block_3 + local.get $6 + i32.const 3 + i32.and + i32.eqz + br_if $block_3 + local.get $1 + local.get $4 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $1 + local.get $4 + i32.add + local.tee $4 + local.get $4 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $5 + local.get $0 + local.get $5 + i32.load + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store + local.get $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $0 + call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h1effa892c850b7b3 + br $block_1 + end ;; $block_3 + local.get $2 + i32.load + local.set $2 + local.get $1 + local.get $4 + i32.store offset=4 + local.get $1 + local.get $2 + local.get $0 + i32.add + i32.store + end ;; $block_1 + block $block_4 + local.get $1 + i32.load offset=4 + local.tee $0 + i32.const 3 + i32.and + i32.eqz + br_if $block_4 + local.get $0 + i32.const -8 + i32.and + local.tee $2 + local.get $3 + i32.const 16 + i32.add + i32.le_u + br_if $block_4 + local.get $1 + local.get $3 + local.get $0 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store offset=4 + local.get $1 + local.get $3 + i32.add + local.tee $0 + local.get $2 + local.get $3 + i32.sub + local.tee $3 + i32.const 3 + i32.or + i32.store offset=4 + local.get $1 + local.get $2 + i32.add + local.tee $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $3 + call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h1effa892c850b7b3 + end ;; $block_4 + local.get $1 + i32.const 8 + i32.add + return + end ;; $block_0 + local.get $0 + call $dlmalloc::dlmalloc::Dlmalloc::malloc::hec92e476cdfbbd60 + local.set $2 + end ;; $block + local.get $2 + ) + + (func $dlmalloc::dlmalloc::Dlmalloc::malloc::hec92e476cdfbbd60 (type $8) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + block $block + block $block_0 + block $block_1 + local.get $0 + i32.const 245 + i32.lt_u + br_if $block_1 + i32.const 0 + local.set $1 + local.get $0 + i32.const -65587 + i32.ge_u + br_if $block + local.get $0 + i32.const 11 + i32.add + local.tee $0 + i32.const -8 + i32.and + local.set $2 + i32.const 0 + i32.load offset=1054692 + local.tee $3 + i32.eqz + br_if $block_0 + i32.const 0 + local.set $4 + block $block_2 + local.get $0 + i32.const 8 + i32.shr_u + local.tee $0 + i32.eqz + br_if $block_2 + i32.const 31 + local.set $4 + local.get $2 + i32.const 16777215 + i32.gt_u + br_if $block_2 + local.get $2 + i32.const 6 + local.get $0 + i32.clz + local.tee $0 + i32.sub + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.sub + i32.const 62 + i32.add + local.set $4 + end ;; $block_2 + i32.const 0 + local.get $2 + i32.sub + local.set $1 + block $block_3 + block $block_4 + block $block_5 + local.get $4 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + i32.load + local.tee $0 + i32.eqz + br_if $block_5 + i32.const 0 + local.set $5 + local.get $2 + i32.const 0 + i32.const 25 + local.get $4 + i32.const 1 + i32.shr_u + i32.sub + i32.const 31 + i32.and + local.get $4 + i32.const 31 + i32.eq + select + i32.shl + local.set $6 + i32.const 0 + local.set $7 + loop $loop + block $block_6 + local.get $0 + i32.load offset=4 + i32.const -8 + i32.and + local.tee $8 + local.get $2 + i32.lt_u + br_if $block_6 + local.get $8 + local.get $2 + i32.sub + local.tee $8 + local.get $1 + i32.ge_u + br_if $block_6 + local.get $8 + local.set $1 + local.get $0 + local.set $7 + local.get $8 + br_if $block_6 + i32.const 0 + local.set $1 + local.get $0 + local.set $7 + br $block_4 + end ;; $block_6 + local.get $0 + i32.const 20 + i32.add + i32.load + local.tee $8 + local.get $5 + local.get $8 + local.get $0 + local.get $6 + i32.const 29 + i32.shr_u + i32.const 4 + i32.and + i32.add + i32.const 16 + i32.add + i32.load + local.tee $0 + i32.ne + select + local.get $5 + local.get $8 + select + local.set $5 + local.get $6 + i32.const 1 + i32.shl + local.set $6 + local.get $0 + br_if $loop + end ;; $loop + block $block_7 + local.get $5 + i32.eqz + br_if $block_7 + local.get $5 + local.set $0 + br $block_4 + end ;; $block_7 + local.get $7 + br_if $block_3 + end ;; $block_5 + i32.const 0 + local.set $7 + i32.const 2 + local.get $4 + i32.const 31 + i32.and + i32.shl + local.tee $0 + i32.const 0 + local.get $0 + i32.sub + i32.or + local.get $3 + i32.and + local.tee $0 + i32.eqz + br_if $block_0 + local.get $0 + i32.const 0 + local.get $0 + i32.sub + i32.and + i32.ctz + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + i32.load + local.tee $0 + i32.eqz + br_if $block_0 + end ;; $block_4 + loop $loop_0 + local.get $0 + i32.load offset=4 + i32.const -8 + i32.and + local.tee $5 + local.get $2 + i32.ge_u + local.get $5 + local.get $2 + i32.sub + local.tee $8 + local.get $1 + i32.lt_u + i32.and + local.set $6 + block $block_8 + local.get $0 + i32.load offset=16 + local.tee $5 + br_if $block_8 + local.get $0 + i32.const 20 + i32.add + i32.load + local.set $5 + end ;; $block_8 + local.get $0 + local.get $7 + local.get $6 + select + local.set $7 + local.get $8 + local.get $1 + local.get $6 + select + local.set $1 + local.get $5 + local.set $0 + local.get $5 + br_if $loop_0 + end ;; $loop_0 + local.get $7 + i32.eqz + br_if $block_0 + end ;; $block_3 + block $block_9 + i32.const 0 + i32.load offset=1055088 + local.tee $0 + local.get $2 + i32.lt_u + br_if $block_9 + local.get $1 + local.get $0 + local.get $2 + i32.sub + i32.ge_u + br_if $block_0 + end ;; $block_9 + local.get $7 + i32.load offset=24 + local.set $4 + block $block_10 + block $block_11 + block $block_12 + local.get $7 + i32.load offset=12 + local.tee $5 + local.get $7 + i32.ne + br_if $block_12 + local.get $7 + i32.const 20 + i32.const 16 + local.get $7 + i32.const 20 + i32.add + local.tee $5 + i32.load + local.tee $6 + select + i32.add + i32.load + local.tee $0 + br_if $block_11 + i32.const 0 + local.set $5 + br $block_10 + end ;; $block_12 + local.get $7 + i32.load offset=8 + local.tee $0 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $0 + i32.store offset=8 + br $block_10 + end ;; $block_11 + local.get $5 + local.get $7 + i32.const 16 + i32.add + local.get $6 + select + local.set $6 + loop $loop_1 + local.get $6 + local.set $8 + block $block_13 + local.get $0 + local.tee $5 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $0 + br_if $block_13 + local.get $5 + i32.const 16 + i32.add + local.set $6 + local.get $5 + i32.load offset=16 + local.set $0 + end ;; $block_13 + local.get $0 + br_if $loop_1 + end ;; $loop_1 + local.get $8 + i32.const 0 + i32.store + end ;; $block_10 + block $block_14 + local.get $4 + i32.eqz + br_if $block_14 + block $block_15 + block $block_16 + local.get $7 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $0 + i32.load + local.get $7 + i32.ne + br_if $block_16 + local.get $0 + local.get $5 + i32.store + local.get $5 + br_if $block_15 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $7 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_14 + end ;; $block_16 + local.get $4 + i32.const 16 + i32.const 20 + local.get $4 + i32.load offset=16 + local.get $7 + i32.eq + select + i32.add + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_14 + end ;; $block_15 + local.get $5 + local.get $4 + i32.store offset=24 + block $block_17 + local.get $7 + i32.load offset=16 + local.tee $0 + i32.eqz + br_if $block_17 + local.get $5 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $5 + i32.store offset=24 + end ;; $block_17 + local.get $7 + i32.const 20 + i32.add + i32.load + local.tee $0 + i32.eqz + br_if $block_14 + local.get $5 + i32.const 20 + i32.add + local.get $0 + i32.store + local.get $0 + local.get $5 + i32.store offset=24 + end ;; $block_14 + block $block_18 + block $block_19 + local.get $1 + i32.const 16 + i32.lt_u + br_if $block_19 + local.get $7 + local.get $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $7 + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $1 + i32.add + local.get $1 + i32.store + block $block_20 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block_20 + i32.const 0 + local.set $0 + block $block_21 + local.get $1 + i32.const 8 + i32.shr_u + local.tee $5 + i32.eqz + br_if $block_21 + i32.const 31 + local.set $0 + local.get $1 + i32.const 16777215 + i32.gt_u + br_if $block_21 + local.get $1 + i32.const 6 + local.get $5 + i32.clz + local.tee $0 + i32.sub + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + local.get $0 + i32.const 1 + i32.shl + i32.sub + i32.const 62 + i32.add + local.set $0 + end ;; $block_21 + local.get $2 + i64.const 0 + i64.store offset=16 align=4 + local.get $2 + local.get $0 + i32.store offset=28 + local.get $0 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.set $5 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + i32.const 0 + i32.load offset=1054692 + local.tee $6 + i32.const 1 + local.get $0 + i32.const 31 + i32.and + i32.shl + local.tee $8 + i32.and + i32.eqz + br_if $block_26 + local.get $5 + i32.load + local.tee $6 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.ne + br_if $block_25 + local.get $6 + local.set $0 + br $block_24 + end ;; $block_26 + i32.const 0 + local.get $6 + local.get $8 + i32.or + i32.store offset=1054692 + local.get $5 + local.get $2 + i32.store + local.get $2 + local.get $5 + i32.store offset=24 + br $block_22 + end ;; $block_25 + local.get $1 + i32.const 0 + i32.const 25 + local.get $0 + i32.const 1 + i32.shr_u + i32.sub + i32.const 31 + i32.and + local.get $0 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_2 + local.get $6 + local.get $5 + i32.const 29 + i32.shr_u + i32.const 4 + i32.and + i32.add + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $0 + i32.eqz + br_if $block_23 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $0 + local.set $6 + local.get $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $1 + i32.ne + br_if $loop_2 + end ;; $loop_2 + end ;; $block_24 + local.get $0 + i32.load offset=8 + local.tee $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $2 + i32.const 0 + i32.store offset=24 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + local.get $1 + i32.store offset=8 + br $block_18 + end ;; $block_23 + local.get $8 + local.get $2 + i32.store + local.get $2 + local.get $6 + i32.store offset=24 + end ;; $block_22 + local.get $2 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $2 + i32.store offset=8 + br $block_18 + end ;; $block_20 + local.get $1 + i32.const 3 + i32.shr_u + local.tee $1 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $0 + block $block_27 + block $block_28 + i32.const 0 + i32.load offset=1054688 + local.tee $5 + i32.const 1 + local.get $1 + i32.const 31 + i32.and + i32.shl + local.tee $1 + i32.and + i32.eqz + br_if $block_28 + local.get $0 + i32.load offset=8 + local.set $1 + br $block_27 + end ;; $block_28 + i32.const 0 + local.get $5 + local.get $1 + i32.or + i32.store offset=1054688 + local.get $0 + local.set $1 + end ;; $block_27 + local.get $0 + local.get $2 + i32.store offset=8 + local.get $1 + local.get $2 + i32.store offset=12 + local.get $2 + local.get $0 + i32.store offset=12 + local.get $2 + local.get $1 + i32.store offset=8 + br $block_18 + end ;; $block_19 + local.get $7 + local.get $1 + local.get $2 + i32.add + local.tee $0 + i32.const 3 + i32.or + i32.store offset=4 + local.get $7 + local.get $0 + i32.add + local.tee $0 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + end ;; $block_18 + local.get $7 + i32.const 8 + i32.add + return + end ;; $block_1 + block $block_29 + block $block_30 + block $block_31 + i32.const 0 + i32.load offset=1054688 + local.tee $7 + i32.const 16 + local.get $0 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $0 + i32.const 11 + i32.lt_u + select + local.tee $2 + i32.const 3 + i32.shr_u + local.tee $1 + i32.const 31 + i32.and + local.tee $5 + i32.shr_u + local.tee $0 + i32.const 3 + i32.and + br_if $block_31 + local.get $2 + i32.const 0 + i32.load offset=1055088 + i32.le_u + br_if $block_0 + local.get $0 + br_if $block_30 + i32.const 0 + i32.load offset=1054692 + local.tee $0 + i32.eqz + br_if $block_0 + local.get $0 + i32.const 0 + local.get $0 + i32.sub + i32.and + i32.ctz + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + i32.load + local.tee $5 + i32.load offset=4 + i32.const -8 + i32.and + local.get $2 + i32.sub + local.set $1 + local.get $5 + local.set $6 + loop $loop_3 + block $block_32 + local.get $5 + i32.load offset=16 + local.tee $0 + br_if $block_32 + local.get $5 + i32.const 20 + i32.add + i32.load + local.tee $0 + i32.eqz + br_if $block_29 + end ;; $block_32 + local.get $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $2 + i32.sub + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.lt_u + local.tee $5 + select + local.set $1 + local.get $0 + local.get $6 + local.get $5 + select + local.set $6 + local.get $0 + local.set $5 + br $loop_3 + end ;; $loop_3 + end ;; $block_31 + local.get $0 + i32.const -1 + i32.xor + i32.const 1 + i32.and + local.get $1 + i32.add + local.tee $2 + i32.const 3 + i32.shl + local.tee $6 + i32.const 1054704 + i32.add + i32.load + local.tee $0 + i32.const 8 + i32.add + local.set $1 + block $block_33 + block $block_34 + local.get $0 + i32.load offset=8 + local.tee $5 + local.get $6 + i32.const 1054696 + i32.add + local.tee $6 + i32.eq + br_if $block_34 + local.get $5 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $5 + i32.store offset=8 + br $block_33 + end ;; $block_34 + i32.const 0 + local.get $7 + i32.const -2 + local.get $2 + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_33 + local.get $0 + local.get $2 + i32.const 3 + i32.shl + local.tee $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $0 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + br $block + end ;; $block_30 + block $block_35 + block $block_36 + local.get $0 + local.get $5 + i32.shl + i32.const 2 + local.get $5 + i32.shl + local.tee $0 + i32.const 0 + local.get $0 + i32.sub + i32.or + i32.and + local.tee $0 + i32.const 0 + local.get $0 + i32.sub + i32.and + i32.ctz + local.tee $1 + i32.const 3 + i32.shl + local.tee $6 + i32.const 1054704 + i32.add + i32.load + local.tee $0 + i32.load offset=8 + local.tee $5 + local.get $6 + i32.const 1054696 + i32.add + local.tee $6 + i32.eq + br_if $block_36 + local.get $5 + local.get $6 + i32.store offset=12 + local.get $6 + local.get $5 + i32.store offset=8 + br $block_35 + end ;; $block_36 + i32.const 0 + local.get $7 + i32.const -2 + local.get $1 + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_35 + local.get $0 + i32.const 8 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.tee $6 + local.get $1 + i32.const 3 + i32.shl + local.tee $1 + local.get $2 + i32.sub + local.tee $2 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.get $2 + i32.store + block $block_37 + i32.const 0 + i32.load offset=1055088 + local.tee $0 + i32.eqz + br_if $block_37 + local.get $0 + i32.const 3 + i32.shr_u + local.tee $7 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $1 + i32.const 0 + i32.load offset=1055096 + local.set $0 + block $block_38 + block $block_39 + i32.const 0 + i32.load offset=1054688 + local.tee $8 + i32.const 1 + local.get $7 + i32.const 31 + i32.and + i32.shl + local.tee $7 + i32.and + i32.eqz + br_if $block_39 + local.get $1 + i32.load offset=8 + local.set $7 + br $block_38 + end ;; $block_39 + i32.const 0 + local.get $8 + local.get $7 + i32.or + i32.store offset=1054688 + local.get $1 + local.set $7 + end ;; $block_38 + local.get $1 + local.get $0 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $7 + i32.store offset=8 + end ;; $block_37 + i32.const 0 + local.get $6 + i32.store offset=1055096 + i32.const 0 + local.get $2 + i32.store offset=1055088 + local.get $5 + return + end ;; $block_29 + local.get $6 + i32.load offset=24 + local.set $4 + block $block_40 + block $block_41 + block $block_42 + local.get $6 + i32.load offset=12 + local.tee $5 + local.get $6 + i32.ne + br_if $block_42 + local.get $6 + i32.const 20 + i32.const 16 + local.get $6 + i32.const 20 + i32.add + local.tee $5 + i32.load + local.tee $7 + select + i32.add + i32.load + local.tee $0 + br_if $block_41 + i32.const 0 + local.set $5 + br $block_40 + end ;; $block_42 + local.get $6 + i32.load offset=8 + local.tee $0 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $0 + i32.store offset=8 + br $block_40 + end ;; $block_41 + local.get $5 + local.get $6 + i32.const 16 + i32.add + local.get $7 + select + local.set $7 + loop $loop_4 + local.get $7 + local.set $8 + block $block_43 + local.get $0 + local.tee $5 + i32.const 20 + i32.add + local.tee $7 + i32.load + local.tee $0 + br_if $block_43 + local.get $5 + i32.const 16 + i32.add + local.set $7 + local.get $5 + i32.load offset=16 + local.set $0 + end ;; $block_43 + local.get $0 + br_if $loop_4 + end ;; $loop_4 + local.get $8 + i32.const 0 + i32.store + end ;; $block_40 + block $block_44 + local.get $4 + i32.eqz + br_if $block_44 + block $block_45 + block $block_46 + local.get $6 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $0 + i32.load + local.get $6 + i32.ne + br_if $block_46 + local.get $0 + local.get $5 + i32.store + local.get $5 + br_if $block_45 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $6 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_44 + end ;; $block_46 + local.get $4 + i32.const 16 + i32.const 20 + local.get $4 + i32.load offset=16 + local.get $6 + i32.eq + select + i32.add + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_44 + end ;; $block_45 + local.get $5 + local.get $4 + i32.store offset=24 + block $block_47 + local.get $6 + i32.load offset=16 + local.tee $0 + i32.eqz + br_if $block_47 + local.get $5 + local.get $0 + i32.store offset=16 + local.get $0 + local.get $5 + i32.store offset=24 + end ;; $block_47 + local.get $6 + i32.const 20 + i32.add + i32.load + local.tee $0 + i32.eqz + br_if $block_44 + local.get $5 + i32.const 20 + i32.add + local.get $0 + i32.store + local.get $0 + local.get $5 + i32.store offset=24 + end ;; $block_44 + block $block_48 + block $block_49 + local.get $1 + i32.const 16 + i32.lt_u + br_if $block_49 + local.get $6 + local.get $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $6 + local.get $2 + i32.add + local.tee $2 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $1 + i32.add + local.get $1 + i32.store + block $block_50 + i32.const 0 + i32.load offset=1055088 + local.tee $0 + i32.eqz + br_if $block_50 + local.get $0 + i32.const 3 + i32.shr_u + local.tee $7 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $5 + i32.const 0 + i32.load offset=1055096 + local.set $0 + block $block_51 + block $block_52 + i32.const 0 + i32.load offset=1054688 + local.tee $8 + i32.const 1 + local.get $7 + i32.const 31 + i32.and + i32.shl + local.tee $7 + i32.and + i32.eqz + br_if $block_52 + local.get $5 + i32.load offset=8 + local.set $7 + br $block_51 + end ;; $block_52 + i32.const 0 + local.get $8 + local.get $7 + i32.or + i32.store offset=1054688 + local.get $5 + local.set $7 + end ;; $block_51 + local.get $5 + local.get $0 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $5 + i32.store offset=12 + local.get $0 + local.get $7 + i32.store offset=8 + end ;; $block_50 + i32.const 0 + local.get $2 + i32.store offset=1055096 + i32.const 0 + local.get $1 + i32.store offset=1055088 + br $block_48 + end ;; $block_49 + local.get $6 + local.get $1 + local.get $2 + i32.add + local.tee $0 + i32.const 3 + i32.or + i32.store offset=4 + local.get $6 + local.get $0 + i32.add + local.tee $0 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + end ;; $block_48 + local.get $6 + i32.const 8 + i32.add + return + end ;; $block_0 + block $block_53 + block $block_54 + block $block_55 + block $block_56 + block $block_57 + block $block_58 + i32.const 0 + i32.load offset=1055088 + local.tee $0 + local.get $2 + i32.ge_u + br_if $block_58 + i32.const 0 + i32.load offset=1055092 + local.tee $0 + local.get $2 + i32.gt_u + br_if $block_55 + i32.const 0 + local.set $1 + local.get $2 + i32.const 65583 + i32.add + local.tee $5 + i32.const 16 + i32.shr_u + memory.grow + local.tee $0 + i32.const -1 + i32.eq + br_if $block + local.get $0 + i32.const 16 + i32.shl + local.tee $6 + i32.eqz + br_if $block + i32.const 0 + i32.const 0 + i32.load offset=1055104 + local.get $5 + i32.const -65536 + i32.and + local.tee $8 + i32.add + local.tee $0 + i32.store offset=1055104 + i32.const 0 + i32.const 0 + i32.load offset=1055108 + local.tee $1 + local.get $0 + local.get $0 + local.get $1 + i32.lt_u + select + i32.store offset=1055108 + i32.const 0 + i32.load offset=1055100 + local.tee $1 + i32.eqz + br_if $block_57 + i32.const 1055112 + local.set $0 + loop $loop_5 + local.get $0 + i32.load + local.tee $5 + local.get $0 + i32.load offset=4 + local.tee $7 + i32.add + local.get $6 + i32.eq + br_if $block_56 + local.get $0 + i32.load offset=8 + local.tee $0 + br_if $loop_5 + br $block_54 + end ;; $loop_5 + end ;; $block_58 + i32.const 0 + i32.load offset=1055096 + local.set $1 + block $block_59 + block $block_60 + local.get $0 + local.get $2 + i32.sub + local.tee $5 + i32.const 15 + i32.gt_u + br_if $block_60 + i32.const 0 + i32.const 0 + i32.store offset=1055096 + i32.const 0 + i32.const 0 + i32.store offset=1055088 + local.get $1 + local.get $0 + i32.const 3 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.tee $2 + i32.const 4 + i32.add + local.set $0 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.or + local.set $2 + br $block_59 + end ;; $block_60 + i32.const 0 + local.get $5 + i32.store offset=1055088 + i32.const 0 + local.get $1 + local.get $2 + i32.add + local.tee $6 + i32.store offset=1055096 + local.get $6 + local.get $5 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.get $5 + i32.store + local.get $2 + i32.const 3 + i32.or + local.set $2 + local.get $1 + i32.const 4 + i32.add + local.set $0 + end ;; $block_59 + local.get $0 + local.get $2 + i32.store + local.get $1 + i32.const 8 + i32.add + return + end ;; $block_57 + block $block_61 + block $block_62 + i32.const 0 + i32.load offset=1055132 + local.tee $0 + i32.eqz + br_if $block_62 + local.get $0 + local.get $6 + i32.le_u + br_if $block_61 + end ;; $block_62 + i32.const 0 + local.get $6 + i32.store offset=1055132 + end ;; $block_61 + i32.const 0 + i32.const 4095 + i32.store offset=1055136 + i32.const 0 + local.get $8 + i32.store offset=1055116 + i32.const 0 + local.get $6 + i32.store offset=1055112 + i32.const 0 + i32.const 1054696 + i32.store offset=1054708 + i32.const 0 + i32.const 1054704 + i32.store offset=1054716 + i32.const 0 + i32.const 1054696 + i32.store offset=1054704 + i32.const 0 + i32.const 1054712 + i32.store offset=1054724 + i32.const 0 + i32.const 1054704 + i32.store offset=1054712 + i32.const 0 + i32.const 1054720 + i32.store offset=1054732 + i32.const 0 + i32.const 1054712 + i32.store offset=1054720 + i32.const 0 + i32.const 1054728 + i32.store offset=1054740 + i32.const 0 + i32.const 1054720 + i32.store offset=1054728 + i32.const 0 + i32.const 1054736 + i32.store offset=1054748 + i32.const 0 + i32.const 1054728 + i32.store offset=1054736 + i32.const 0 + i32.const 1054744 + i32.store offset=1054756 + i32.const 0 + i32.const 1054736 + i32.store offset=1054744 + i32.const 0 + i32.const 1054752 + i32.store offset=1054764 + i32.const 0 + i32.const 1054744 + i32.store offset=1054752 + i32.const 0 + i32.const 0 + i32.store offset=1055124 + i32.const 0 + i32.const 1054760 + i32.store offset=1054772 + i32.const 0 + i32.const 1054752 + i32.store offset=1054760 + i32.const 0 + i32.const 1054760 + i32.store offset=1054768 + i32.const 0 + i32.const 1054768 + i32.store offset=1054780 + i32.const 0 + i32.const 1054768 + i32.store offset=1054776 + i32.const 0 + i32.const 1054776 + i32.store offset=1054788 + i32.const 0 + i32.const 1054776 + i32.store offset=1054784 + i32.const 0 + i32.const 1054784 + i32.store offset=1054796 + i32.const 0 + i32.const 1054784 + i32.store offset=1054792 + i32.const 0 + i32.const 1054792 + i32.store offset=1054804 + i32.const 0 + i32.const 1054792 + i32.store offset=1054800 + i32.const 0 + i32.const 1054800 + i32.store offset=1054812 + i32.const 0 + i32.const 1054800 + i32.store offset=1054808 + i32.const 0 + i32.const 1054808 + i32.store offset=1054820 + i32.const 0 + i32.const 1054808 + i32.store offset=1054816 + i32.const 0 + i32.const 1054816 + i32.store offset=1054828 + i32.const 0 + i32.const 1054816 + i32.store offset=1054824 + i32.const 0 + i32.const 1054824 + i32.store offset=1054836 + i32.const 0 + i32.const 1054832 + i32.store offset=1054844 + i32.const 0 + i32.const 1054824 + i32.store offset=1054832 + i32.const 0 + i32.const 1054840 + i32.store offset=1054852 + i32.const 0 + i32.const 1054832 + i32.store offset=1054840 + i32.const 0 + i32.const 1054848 + i32.store offset=1054860 + i32.const 0 + i32.const 1054840 + i32.store offset=1054848 + i32.const 0 + i32.const 1054856 + i32.store offset=1054868 + i32.const 0 + i32.const 1054848 + i32.store offset=1054856 + i32.const 0 + i32.const 1054864 + i32.store offset=1054876 + i32.const 0 + i32.const 1054856 + i32.store offset=1054864 + i32.const 0 + i32.const 1054872 + i32.store offset=1054884 + i32.const 0 + i32.const 1054864 + i32.store offset=1054872 + i32.const 0 + i32.const 1054880 + i32.store offset=1054892 + i32.const 0 + i32.const 1054872 + i32.store offset=1054880 + i32.const 0 + i32.const 1054888 + i32.store offset=1054900 + i32.const 0 + i32.const 1054880 + i32.store offset=1054888 + i32.const 0 + i32.const 1054896 + i32.store offset=1054908 + i32.const 0 + i32.const 1054888 + i32.store offset=1054896 + i32.const 0 + i32.const 1054904 + i32.store offset=1054916 + i32.const 0 + i32.const 1054896 + i32.store offset=1054904 + i32.const 0 + i32.const 1054912 + i32.store offset=1054924 + i32.const 0 + i32.const 1054904 + i32.store offset=1054912 + i32.const 0 + i32.const 1054920 + i32.store offset=1054932 + i32.const 0 + i32.const 1054912 + i32.store offset=1054920 + i32.const 0 + i32.const 1054928 + i32.store offset=1054940 + i32.const 0 + i32.const 1054920 + i32.store offset=1054928 + i32.const 0 + i32.const 1054936 + i32.store offset=1054948 + i32.const 0 + i32.const 1054928 + i32.store offset=1054936 + i32.const 0 + i32.const 1054944 + i32.store offset=1054956 + i32.const 0 + i32.const 1054936 + i32.store offset=1054944 + i32.const 0 + local.get $6 + i32.store offset=1055100 + i32.const 0 + i32.const 1054944 + i32.store offset=1054952 + i32.const 0 + local.get $8 + i32.const -40 + i32.add + local.tee $0 + i32.store offset=1055092 + local.get $6 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $0 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 0 + i32.const 2097152 + i32.store offset=1055128 + br $block_53 + end ;; $block_56 + local.get $0 + i32.load offset=12 + br_if $block_54 + local.get $6 + local.get $1 + i32.le_u + br_if $block_54 + local.get $5 + local.get $1 + i32.gt_u + br_if $block_54 + local.get $0 + local.get $7 + local.get $8 + i32.add + i32.store offset=4 + i32.const 0 + i32.const 0 + i32.load offset=1055100 + local.tee $0 + i32.const 15 + i32.add + i32.const -8 + i32.and + local.tee $1 + i32.const -8 + i32.add + i32.store offset=1055100 + i32.const 0 + local.get $0 + local.get $1 + i32.sub + i32.const 0 + i32.load offset=1055092 + local.get $8 + i32.add + local.tee $5 + i32.add + i32.const 8 + i32.add + local.tee $6 + i32.store offset=1055092 + local.get $1 + i32.const -4 + i32.add + local.get $6 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 0 + i32.const 2097152 + i32.store offset=1055128 + br $block_53 + end ;; $block_55 + i32.const 0 + local.get $0 + local.get $2 + i32.sub + local.tee $1 + i32.store offset=1055092 + i32.const 0 + i32.const 0 + i32.load offset=1055100 + local.tee $0 + local.get $2 + i32.add + local.tee $5 + i32.store offset=1055100 + local.get $5 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $0 + i32.const 8 + i32.add + return + end ;; $block_54 + i32.const 0 + i32.const 0 + i32.load offset=1055132 + local.tee $0 + local.get $6 + local.get $0 + local.get $6 + i32.lt_u + select + i32.store offset=1055132 + local.get $6 + local.get $8 + i32.add + local.set $5 + i32.const 1055112 + local.set $0 + block $block_63 + block $block_64 + loop $loop_6 + local.get $0 + i32.load + local.get $5 + i32.eq + br_if $block_64 + local.get $0 + i32.load offset=8 + local.tee $0 + br_if $loop_6 + br $block_63 + end ;; $loop_6 + end ;; $block_64 + local.get $0 + i32.load offset=12 + br_if $block_63 + local.get $0 + local.get $6 + i32.store + local.get $0 + local.get $0 + i32.load offset=4 + local.get $8 + i32.add + i32.store offset=4 + local.get $6 + local.get $2 + i32.const 3 + i32.or + i32.store offset=4 + local.get $6 + local.get $2 + i32.add + local.set $0 + local.get $5 + local.get $6 + i32.sub + local.get $2 + i32.sub + local.set $2 + block $block_65 + block $block_66 + block $block_67 + i32.const 0 + i32.load offset=1055100 + local.get $5 + i32.eq + br_if $block_67 + i32.const 0 + i32.load offset=1055096 + local.get $5 + i32.eq + br_if $block_66 + block $block_68 + local.get $5 + i32.load offset=4 + local.tee $1 + i32.const 3 + i32.and + i32.const 1 + i32.ne + br_if $block_68 + block $block_69 + block $block_70 + local.get $1 + i32.const -8 + i32.and + local.tee $3 + i32.const 256 + i32.lt_u + br_if $block_70 + local.get $5 + i32.load offset=24 + local.set $9 + block $block_71 + block $block_72 + block $block_73 + local.get $5 i32.load offset=12 - i32.eqz - br_if $block_8 - br $block_2 - end ;; $block_10 - i32.const 0 - local.set $7 - local.get $15 - i32.eqz - br_if $block_6 - end ;; $block_9 - block $block_42 - block $block_43 + local.tee $7 local.get $5 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 + i32.ne + br_if $block_73 + local.get $5 + i32.const 20 + i32.const 16 + local.get $5 + i32.load offset=20 + local.tee $7 + select + i32.add + i32.load + local.tee $1 + br_if $block_72 + i32.const 0 + local.set $7 + br $block_71 + end ;; $block_73 + local.get $5 + i32.load offset=8 + local.tee $1 + local.get $7 + i32.store offset=12 + local.get $7 + local.get $1 + i32.store offset=8 + br $block_71 + end ;; $block_72 + local.get $5 + i32.const 20 + i32.add + local.get $5 + i32.const 16 + i32.add + local.get $7 + select + local.set $8 + loop $loop_7 + local.get $8 + local.set $4 + block $block_74 + local.get $1 + local.tee $7 + i32.const 20 i32.add - local.tee $0 + local.tee $8 i32.load - local.get $5 - i32.eq - br_if $block_43 - local.get $15 + local.tee $1 + br_if $block_74 + local.get $7 i32.const 16 - i32.const 20 - local.get $15 - i32.load offset=16 - local.get $5 - i32.eq - select i32.add + local.set $8 local.get $7 - i32.store - local.get $7 - br_if $block_42 - br $block_6 - end ;; $block_43 - local.get $0 + i32.load offset=16 + local.set $1 + end ;; $block_74 + local.get $1 + br_if $loop_7 + end ;; $loop_7 + local.get $4 + i32.const 0 + i32.store + end ;; $block_71 + local.get $9 + i32.eqz + br_if $block_69 + block $block_75 + block $block_76 + local.get $5 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $1 + i32.load + local.get $5 + i32.ne + br_if $block_76 + local.get $1 local.get $7 i32.store local.get $7 - i32.eqz - br_if $block_7 - end ;; $block_42 - local.get $7 - local.get $15 - i32.store offset=24 - block $block_44 + br_if $block_75 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 local.get $5 - i32.load offset=16 - local.tee $0 - i32.eqz - br_if $block_44 - local.get $7 - local.get $0 - i32.store offset=16 - local.get $0 - local.get $7 - i32.store offset=24 - end ;; $block_44 - local.get $5 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_69 + end ;; $block_76 + local.get $9 + i32.const 16 i32.const 20 + local.get $9 + i32.load offset=16 + local.get $5 + i32.eq + select i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_6 local.get $7 - i32.const 20 - i32.add - local.get $0 i32.store - local.get $0 local.get $7 - i32.store offset=24 - local.get $6 - i32.const 15 - i32.le_u - br_if $block_5 - br $block_4 - end ;; $block_8 - local.get $9 - local.get $7 - i32.le_u - br_if $block_2 - local.get $6 + i32.eqz + br_if $block_69 + end ;; $block_75 local.get $7 - i32.gt_u - br_if $block_2 - local.get $0 - i32.const 4 - i32.add + local.get $9 + i32.store offset=24 + block $block_77 + local.get $5 + i32.load offset=16 + local.tee $1 + i32.eqz + br_if $block_77 + local.get $7 + local.get $1 + i32.store offset=16 + local.get $1 + local.get $7 + i32.store offset=24 + end ;; $block_77 local.get $5 - local.get $8 + i32.load offset=20 + local.tee $1 + i32.eqz + br_if $block_69 + local.get $7 + i32.const 20 i32.add + local.get $1 i32.store - i32.const 0 - i32.const 0 - i32.load offset=1054988 - local.tee $0 - i32.const 15 - i32.add - i32.const -8 - i32.and - local.tee $6 - i32.const -8 - i32.add + local.get $1 + local.get $7 + i32.store offset=24 + br $block_69 + end ;; $block_70 + block $block_78 + local.get $5 + i32.load offset=12 local.tee $7 - i32.store offset=1054988 - i32.const 0 - i32.const 0 - i32.load offset=1054980 + local.get $5 + i32.load offset=8 + local.tee $8 + i32.eq + br_if $block_78 local.get $8 - i32.add - local.tee $5 - local.get $0 - i32.const 8 - i32.add - local.get $6 - i32.sub - i32.add - local.tee $6 - i32.store offset=1054980 local.get $7 - local.get $6 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $5 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 0 - i32.const 2097152 - i32.store offset=1055016 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block - br $block_0 - end ;; $block_7 + i32.store offset=12 + local.get $7 + local.get $8 + i32.store offset=8 + br $block_69 + end ;; $block_78 i32.const 0 i32.const 0 - i32.load offset=1054580 + i32.load offset=1054688 i32.const -2 - local.get $5 - i32.const 28 - i32.add - i32.load + local.get $1 + i32.const 3 + i32.shr_u i32.rotl i32.and - i32.store offset=1054580 - end ;; $block_6 - local.get $6 - i32.const 15 - i32.gt_u - br_if $block_4 - end ;; $block_5 + i32.store offset=1054688 + end ;; $block_69 + local.get $3 + local.get $2 + i32.add + local.set $2 + local.get $5 + local.get $3 + i32.add + local.set $5 + end ;; $block_68 local.get $5 - local.get $6 - local.get $2 - i32.add - local.tee $0 - i32.const 3 - i32.or - i32.store offset=4 local.get $5 - local.get $0 - i32.add - local.tee $0 - local.get $0 i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $2 i32.const 1 i32.or i32.store offset=4 - local.get $5 - i32.const 8 + local.get $0 + local.get $2 i32.add - return - end ;; $block_4 - local.get $5 - local.get $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $5 - local.get $2 - i32.add - local.tee $2 - local.get $6 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $6 - i32.add - local.get $6 - i32.store - block $block_45 - block $block_46 - block $block_47 - block $block_48 - block $block_49 - block $block_50 - block $block_51 - block $block_52 - local.get $6 - i32.const 255 - i32.gt_u - br_if $block_52 - local.get $6 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $0 - i32.const 0 - i32.load offset=1054576 - local.tee $7 - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - local.tee $6 - i32.and - i32.eqz - br_if $block_51 - local.get $0 - i32.load offset=8 - local.set $6 - br $block_50 - end ;; $block_52 - i32.const 0 - local.set $0 - block $block_53 - local.get $6 - i32.const 8 - i32.shr_u - local.tee $7 - i32.eqz - br_if $block_53 - i32.const 31 - local.set $0 - local.get $6 - i32.const 16777215 - i32.gt_u - br_if $block_53 - local.get $6 - i32.const 38 - local.get $7 - i32.clz - local.tee $0 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.const 31 - local.get $0 - i32.sub - i32.const 1 - i32.shl - i32.or - local.set $0 - end ;; $block_53 - local.get $2 - i64.const 0 - i64.store offset=16 align=4 - local.get $2 - local.get $0 - i32.store offset=28 - local.get $0 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.set $7 + local.get $2 + i32.store + block $block_79 + local.get $2 + i32.const 256 + i32.lt_u + br_if $block_79 + i32.const 0 + local.set $1 + block $block_80 + local.get $2 + i32.const 8 + i32.shr_u + local.tee $5 + i32.eqz + br_if $block_80 + i32.const 31 + local.set $1 + local.get $2 + i32.const 16777215 + i32.gt_u + br_if $block_80 + local.get $2 + i32.const 6 + local.get $5 + i32.clz + local.tee $1 + i32.sub + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + local.get $1 + i32.const 1 + i32.shl + i32.sub + i32.const 62 + i32.add + local.set $1 + end ;; $block_80 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + local.get $1 + i32.store offset=28 + local.get $1 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.set $5 + block $block_81 + block $block_82 + block $block_83 + block $block_84 + block $block_85 i32.const 0 - i32.load offset=1054580 - local.tee $9 + i32.load offset=1054692 + local.tee $7 i32.const 1 - local.get $0 + local.get $1 i32.const 31 i32.and i32.shl - local.tee $3 + local.tee $8 i32.and i32.eqz - br_if $block_49 - local.get $7 + br_if $block_85 + local.get $5 i32.load - local.tee $9 + local.tee $7 i32.load offset=4 i32.const -8 i32.and - local.get $6 + local.get $2 i32.ne - br_if $block_48 - local.get $9 - local.set $0 - br $block_47 - end ;; $block_51 + br_if $block_84 + local.get $7 + local.set $1 + br $block_83 + end ;; $block_85 i32.const 0 local.get $7 - local.get $6 + local.get $8 i32.or - i32.store offset=1054576 - local.get $0 - local.set $6 - end ;; $block_50 - local.get $0 - local.get $2 - i32.store offset=8 - local.get $6 - local.get $2 - i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=12 - local.get $2 - local.get $6 - i32.store offset=8 - local.get $5 - i32.const 8 - i32.add - return - end ;; $block_49 - i32.const 0 - local.get $9 - local.get $3 - i32.or - i32.store offset=1054580 - local.get $7 - local.get $2 - i32.store - local.get $2 - local.get $7 - i32.store offset=24 - br $block_45 - end ;; $block_48 - local.get $6 - i32.const 0 - i32.const 25 - local.get $0 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $0 - i32.const 31 - i32.eq - select - i32.shl - local.set $7 - loop $loop_3 - local.get $9 - local.get $7 - i32.const 29 - i32.shr_u - i32.const 4 - i32.and - i32.add - i32.const 16 - i32.add - local.tee $3 - i32.load - local.tee $0 - i32.eqz - br_if $block_46 - local.get $7 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - local.set $9 - local.get $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $6 - i32.ne - br_if $loop_3 - end ;; $loop_3 - end ;; $block_47 - local.get $0 - i32.load offset=8 - local.tee $6 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $2 - i32.store offset=8 - local.get $2 - i32.const 0 - i32.store offset=24 - local.get $2 - local.get $0 - i32.store offset=12 - local.get $2 - local.get $6 - i32.store offset=8 - local.get $5 - i32.const 8 - i32.add - return - end ;; $block_46 - local.get $3 - local.get $2 - i32.store - local.get $2 - local.get $9 - i32.store offset=24 - end ;; $block_45 - local.get $2 - local.get $2 - i32.store offset=12 - local.get $2 - local.get $2 - i32.store offset=8 - local.get $5 - i32.const 8 - i32.add - return - end ;; $block_3 - i32.const 0 - local.set $0 - br $block_1 - end ;; $block_2 - i32.const 0 - i32.const 0 - i32.load offset=1055020 - local.tee $0 - local.get $9 - local.get $0 - local.get $9 - i32.lt_u - select - i32.store offset=1055020 - local.get $9 - local.get $8 - i32.add - local.set $6 - i32.const 1055000 - local.set $0 - block $block_54 - block $block_55 - block $block_56 - block $block_57 - loop $loop_4 - local.get $0 - i32.load - local.get $6 - i32.eq - br_if $block_57 - local.get $0 - i32.load offset=8 - local.tee $0 - br_if $loop_4 - br $block_56 - end ;; $loop_4 - end ;; $block_57 - local.get $0 - i32.load offset=12 - i32.eqz - br_if $block_55 - end ;; $block_56 - i32.const 1055000 - local.set $6 - i32.const 1055000 - i32.load - local.tee $5 - local.get $7 - i32.le_u - br_if $block_54 - i32.const 2 - local.set $0 - br $block_1 - end ;; $block_55 - local.get $0 - local.get $9 - i32.store - local.get $0 - local.get $0 - i32.load offset=4 - local.get $8 - i32.add - i32.store offset=4 - local.get $9 - local.get $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $9 - local.get $2 - i32.add - local.set $0 - local.get $6 - local.get $9 - i32.sub - local.get $2 - i32.sub - local.set $2 - block $block_58 - block $block_59 - block $block_60 - block $block_61 - block $block_62 - block $block_63 - block $block_64 - block $block_65 - i32.const 0 - i32.load offset=1054988 - local.get $6 - i32.eq - br_if $block_65 - i32.const 0 - i32.load offset=1054984 - local.get $6 - i32.eq - br_if $block_64 - local.get $6 - i32.load offset=4 - local.tee $7 - i32.const 3 - i32.and - i32.const 1 - i32.ne - br_if $block_58 - local.get $7 - i32.const -8 - i32.and - local.tee $12 - i32.const 255 - i32.gt_u - br_if $block_63 - local.get $6 - i32.load offset=12 - local.tee $5 - local.get $6 - i32.load offset=8 - local.tee $3 - i32.eq - br_if $block_62 - local.get $3 - local.get $5 - i32.store offset=12 - local.get $5 - local.get $3 - i32.store offset=8 - br $block_59 - end ;; $block_65 - i32.const 0 + i32.store offset=1054692 + local.get $5 local.get $0 - i32.store offset=1054988 - i32.const 0 - i32.const 0 - i32.load offset=1054980 - local.get $2 - i32.add - local.tee $2 - i32.store offset=1054980 + i32.store local.get $0 - local.get $2 - i32.const 1 - i32.or - i32.store offset=4 - local.get $9 - i32.const 8 - i32.add - return - end ;; $block_64 - i32.const 0 - local.get $0 - i32.store offset=1054984 - i32.const 0 - i32.const 0 - i32.load offset=1054976 - local.get $2 - i32.add - local.tee $2 - i32.store offset=1054976 - local.get $0 + local.get $5 + i32.store offset=24 + br $block_81 + end ;; $block_84 local.get $2 + i32.const 0 + i32.const 25 + local.get $1 i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $2 - i32.add - local.get $2 - i32.store - local.get $9 - i32.const 8 - i32.add - return - end ;; $block_63 - local.get $6 - i32.load offset=24 - local.set $14 - local.get $6 - i32.load offset=12 - local.tee $5 - local.get $6 - i32.eq - br_if $block_61 - local.get $6 + i32.shr_u + i32.sub + i32.const 31 + i32.and + local.get $1 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_8 + local.get $7 + local.get $5 + i32.const 29 + i32.shr_u + i32.const 4 + i32.and + i32.add + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $1 + i32.eqz + br_if $block_82 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $1 + local.set $7 + local.get $1 + i32.load offset=4 + i32.const -8 + i32.and + local.get $2 + i32.ne + br_if $loop_8 + end ;; $loop_8 + end ;; $block_83 + local.get $1 i32.load offset=8 - local.tee $7 - local.get $5 + local.tee $2 + local.get $0 i32.store offset=12 - local.get $5 - local.get $7 + local.get $1 + local.get $0 i32.store offset=8 - local.get $14 - br_if $block_60 - br $block_59 - end ;; $block_62 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 + local.get $0 + i32.const 0 + i32.store offset=24 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=8 + br $block_65 + end ;; $block_82 + local.get $8 + local.get $0 + i32.store + local.get $0 local.get $7 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - br $block_59 - end ;; $block_61 - block $block_66 - local.get $6 - i32.const 20 - i32.const 16 - local.get $6 - i32.load offset=20 + i32.store offset=24 + end ;; $block_81 + local.get $0 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $0 + i32.store offset=8 + br $block_65 + end ;; $block_79 + local.get $2 + i32.const 3 + i32.shr_u + local.tee $1 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $2 + block $block_86 + block $block_87 + i32.const 0 + i32.load offset=1054688 local.tee $5 - select - i32.add - i32.load - local.tee $7 + i32.const 1 + local.get $1 + i32.const 31 + i32.and + i32.shl + local.tee $1 + i32.and i32.eqz - br_if $block_66 - local.get $6 - i32.const 20 - i32.add - local.get $6 - i32.const 16 - i32.add - local.get $5 - select - local.set $3 - loop $loop_5 - local.get $3 - local.set $15 - block $block_67 - local.get $7 - local.tee $5 - i32.const 20 - i32.add - local.tee $3 - i32.load - local.tee $7 - br_if $block_67 - local.get $5 - i32.const 16 - i32.add - local.set $3 - local.get $5 - i32.load offset=16 - local.set $7 - end ;; $block_67 - local.get $7 - br_if $loop_5 - end ;; $loop_5 - local.get $15 - i32.const 0 - i32.store - local.get $14 - br_if $block_60 - br $block_59 - end ;; $block_66 + br_if $block_87 + local.get $2 + i32.load offset=8 + local.set $1 + br $block_86 + end ;; $block_87 i32.const 0 - local.set $5 - local.get $14 - i32.eqz - br_if $block_59 - end ;; $block_60 - block $block_68 - block $block_69 - block $block_70 - local.get $6 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $7 - i32.load - local.get $6 - i32.eq - br_if $block_70 - local.get $14 - i32.const 16 - i32.const 20 - local.get $14 - i32.load offset=16 - local.get $6 - i32.eq - select - i32.add - local.get $5 - i32.store - local.get $5 - br_if $block_69 - br $block_59 - end ;; $block_70 - local.get $7 - local.get $5 - i32.store - local.get $5 - i32.eqz - br_if $block_68 - end ;; $block_69 - local.get $5 - local.get $14 - i32.store offset=24 - block $block_71 - local.get $6 - i32.load offset=16 - local.tee $7 - i32.eqz - br_if $block_71 - local.get $5 - local.get $7 - i32.store offset=16 - local.get $7 - local.get $5 - i32.store offset=24 - end ;; $block_71 - local.get $6 - i32.load offset=20 - local.tee $7 - i32.eqz - br_if $block_59 - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $7 local.get $5 - i32.store offset=24 - br $block_59 - end ;; $block_68 - i32.const 0 - i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $6 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - end ;; $block_59 - local.get $12 + local.get $1 + i32.or + i32.store offset=1054688 + local.get $2 + local.set $1 + end ;; $block_86 + local.get $2 + local.get $0 + i32.store offset=8 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=8 + br $block_65 + end ;; $block_67 + i32.const 0 + local.get $0 + i32.store offset=1055100 + i32.const 0 + i32.const 0 + i32.load offset=1055092 local.get $2 i32.add - local.set $2 - local.get $6 - local.get $12 + local.tee $2 + i32.store offset=1055092 + local.get $0 + local.get $2 + i32.const 1 + i32.or + i32.store offset=4 + br $block_65 + end ;; $block_66 + i32.const 0 + local.get $0 + i32.store offset=1055096 + i32.const 0 + i32.const 0 + i32.load offset=1055088 + local.get $2 + i32.add + local.tee $2 + i32.store offset=1055088 + local.get $0 + local.get $2 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $2 + i32.add + local.get $2 + i32.store + end ;; $block_65 + local.get $6 + i32.const 8 + i32.add + return + end ;; $block_63 + i32.const 1055112 + local.set $0 + block $block_88 + loop $loop_9 + block $block_89 + local.get $0 + i32.load + local.tee $5 + local.get $1 + i32.gt_u + br_if $block_89 + local.get $5 + local.get $0 + i32.load offset=4 i32.add - local.set $6 - end ;; $block_58 + local.tee $5 + local.get $1 + i32.gt_u + br_if $block_88 + end ;; $block_89 + local.get $0 + i32.load offset=8 + local.set $0 + br $loop_9 + end ;; $loop_9 + end ;; $block_88 + i32.const 0 + local.get $6 + i32.store offset=1055100 + i32.const 0 + local.get $8 + i32.const -40 + i32.add + local.tee $0 + i32.store offset=1055092 + local.get $6 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $6 + local.get $0 + i32.add + i32.const 40 + i32.store offset=4 + i32.const 0 + i32.const 2097152 + i32.store offset=1055128 + local.get $1 + local.get $5 + i32.const -32 + i32.add + i32.const -8 + i32.and + i32.const -8 + i32.add + local.tee $0 + local.get $0 + local.get $1 + i32.const 16 + i32.add + i32.lt_u + select + local.tee $7 + i32.const 27 + i32.store offset=4 + i32.const 0 + i64.load offset=1055112 align=4 + local.set $10 + local.get $7 + i32.const 16 + i32.add + i32.const 0 + i64.load offset=1055120 align=4 + i64.store align=4 + local.get $7 + local.get $10 + i64.store offset=8 align=4 + i32.const 0 + local.get $8 + i32.store offset=1055116 + i32.const 0 + local.get $6 + i32.store offset=1055112 + i32.const 0 + local.get $7 + i32.const 8 + i32.add + i32.store offset=1055120 + i32.const 0 + i32.const 0 + i32.store offset=1055124 + local.get $7 + i32.const 28 + i32.add + local.set $0 + loop $loop_10 + local.get $0 + i32.const 7 + i32.store + local.get $5 + local.get $0 + i32.const 4 + i32.add + local.tee $0 + i32.gt_u + br_if $loop_10 + end ;; $loop_10 + local.get $7 + local.get $1 + i32.eq + br_if $block_53 + local.get $7 + local.get $7 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $1 + local.get $7 + local.get $1 + i32.sub + local.tee $6 + i32.const 1 + i32.or + i32.store offset=4 + local.get $7 + local.get $6 + i32.store + block $block_90 + local.get $6 + i32.const 256 + i32.lt_u + br_if $block_90 + i32.const 0 + local.set $0 + block $block_91 local.get $6 + i32.const 8 + i32.shr_u + local.tee $5 + i32.eqz + br_if $block_91 + i32.const 31 + local.set $0 local.get $6 - i32.load offset=4 - i32.const -2 + i32.const 16777215 + i32.gt_u + br_if $block_91 + local.get $6 + i32.const 6 + local.get $5 + i32.clz + local.tee $0 + i32.sub + i32.const 31 i32.and - i32.store offset=4 - local.get $0 - local.get $2 + i32.shr_u i32.const 1 - i32.or - i32.store offset=4 + i32.and local.get $0 - local.get $2 + i32.const 1 + i32.shl + i32.sub + i32.const 62 i32.add - local.get $2 - i32.store - block $block_72 - block $block_73 - block $block_74 - block $block_75 - block $block_76 - block $block_77 - block $block_78 - block $block_79 - local.get $2 - i32.const 255 - i32.gt_u - br_if $block_79 - local.get $2 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $2 - i32.const 0 - i32.load offset=1054576 - local.tee $7 - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - local.tee $6 - i32.and - i32.eqz - br_if $block_78 - local.get $2 - i32.load offset=8 - local.set $6 - br $block_77 - end ;; $block_79 - i32.const 0 - local.set $6 - block $block_80 - local.get $2 - i32.const 8 - i32.shr_u - local.tee $7 - i32.eqz - br_if $block_80 - i32.const 31 - local.set $6 - local.get $2 - i32.const 16777215 - i32.gt_u - br_if $block_80 - local.get $2 - i32.const 38 - local.get $7 - i32.clz - local.tee $6 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.const 31 - local.get $6 - i32.sub - i32.const 1 - i32.shl - i32.or - local.set $6 - end ;; $block_80 - local.get $0 - i64.const 0 - i64.store offset=16 align=4 - local.get $0 - local.get $6 - i32.store offset=28 - local.get $6 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.set $7 - i32.const 0 - i32.load offset=1054580 - local.tee $5 - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - local.tee $3 - i32.and - i32.eqz - br_if $block_76 - local.get $7 - i32.load - local.tee $5 - i32.load offset=4 - i32.const -8 - i32.and - local.get $2 - i32.ne - br_if $block_75 - local.get $5 - local.set $6 - br $block_74 - end ;; $block_78 - i32.const 0 - local.get $7 - local.get $6 - i32.or - i32.store offset=1054576 - local.get $2 - local.set $6 - end ;; $block_77 - local.get $2 - local.get $0 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=12 - local.get $0 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $6 - i32.store offset=8 - local.get $9 - i32.const 8 - i32.add - return - end ;; $block_76 + local.set $0 + end ;; $block_91 + local.get $1 + i64.const 0 + i64.store offset=16 align=4 + local.get $1 + i32.const 28 + i32.add + local.get $0 + i32.store + local.get $0 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.set $5 + block $block_92 + block $block_93 + block $block_94 + block $block_95 + block $block_96 i32.const 0 - local.get $5 - local.get $3 - i32.or - i32.store offset=1054580 - local.get $7 - local.get $0 - i32.store + i32.load offset=1054692 + local.tee $7 + i32.const 1 local.get $0 - local.get $7 - i32.store offset=24 - br $block_72 - end ;; $block_75 - local.get $2 - i32.const 0 - i32.const 25 - local.get $6 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $6 - i32.const 31 - i32.eq - select - i32.shl - local.set $7 - loop $loop_6 - local.get $5 - local.get $7 - i32.const 29 - i32.shr_u - i32.const 4 + i32.const 31 i32.and - i32.add - i32.const 16 - i32.add - local.tee $3 - i32.load - local.tee $6 - i32.eqz - br_if $block_73 - local.get $7 - i32.const 1 i32.shl - local.set $7 - local.get $6 - local.set $5 - local.get $6 + local.tee $8 + i32.and + i32.eqz + br_if $block_96 + local.get $5 + i32.load + local.tee $7 i32.load offset=4 i32.const -8 i32.and - local.get $2 + local.get $6 i32.ne - br_if $loop_6 - end ;; $loop_6 - end ;; $block_74 - local.get $6 - i32.load offset=8 - local.tee $2 - local.get $0 - i32.store offset=12 + br_if $block_95 + local.get $7 + local.set $0 + br $block_94 + end ;; $block_96 + i32.const 0 + local.get $7 + local.get $8 + i32.or + i32.store offset=1054692 + local.get $5 + local.get $1 + i32.store + local.get $1 + i32.const 24 + i32.add + local.get $5 + i32.store + br $block_92 + end ;; $block_95 local.get $6 - local.get $0 - i32.store offset=8 - local.get $0 i32.const 0 - i32.store offset=24 + i32.const 25 local.get $0 - local.get $6 - i32.store offset=12 + i32.const 1 + i32.shr_u + i32.sub + i32.const 31 + i32.and local.get $0 - local.get $2 - i32.store offset=8 - local.get $9 - i32.const 8 - i32.add - return - end ;; $block_73 - local.get $3 + i32.const 31 + i32.eq + select + i32.shl + local.set $5 + loop $loop_11 + local.get $7 + local.get $5 + i32.const 29 + i32.shr_u + i32.const 4 + i32.and + i32.add + i32.const 16 + i32.add + local.tee $8 + i32.load + local.tee $0 + i32.eqz + br_if $block_93 + local.get $5 + i32.const 1 + i32.shl + local.set $5 + local.get $0 + local.set $7 + local.get $0 + i32.load offset=4 + i32.const -8 + i32.and + local.get $6 + i32.ne + br_if $loop_11 + end ;; $loop_11 + end ;; $block_94 + local.get $0 + i32.load offset=8 + local.tee $5 + local.get $1 + i32.store offset=12 local.get $0 + local.get $1 + i32.store offset=8 + local.get $1 + i32.const 24 + i32.add + i32.const 0 i32.store + local.get $1 local.get $0 + i32.store offset=12 + local.get $1 local.get $5 - i32.store offset=24 - end ;; $block_72 - local.get $0 - local.get $0 - i32.store offset=12 - local.get $0 - local.get $0 - i32.store offset=8 - local.get $9 - i32.const 8 + i32.store offset=8 + br $block_53 + end ;; $block_93 + local.get $8 + local.get $1 + i32.store + local.get $1 + i32.const 24 i32.add - return - end ;; $block_54 - i32.const 1 - local.set $0 - end ;; $block_1 - loop $loop_7 - block $block_81 - block $block_82 - block $block_83 - block $block_84 - block $block_85 - block $block_86 - block $block_87 - block $block_88 - block $block_89 - block $block_90 - block $block_91 - block $block_92 - block $block_93 - block $block_94 - block $block_95 - block $block_96 - block $block_97 - block $block_98 - block $block_99 - block $block_100 - block $block_101 - block $block_102 - block $block_103 - local.get $0 - br_table - $block_102 $block_100 $block_101 $block_103 - $block_103 ;; default - end ;; $block_103 - local.get $15 - i32.load offset=4 - local.get $10 - i32.and - local.get $2 - i32.sub - local.tee $0 - local.get $12 - local.get $0 - local.get $12 - i32.lt_u - local.tee $0 - select - local.set $12 - local.get $15 - local.get $14 - local.get $0 - select - local.set $14 - local.get $15 - local.tee $11 - i32.load offset=16 - local.tee $15 - br_if $block_84 - i32.const 0 - local.set $0 - br $loop_7 - end ;; $block_102 - local.get $11 - local.get $13 - i32.add - i32.load - local.tee $15 - br_if $block_81 - local.get $14 - i32.load offset=24 - local.set $9 - local.get $14 - i32.load offset=12 - local.tee $6 - local.get $14 - i32.eq - br_if $block_99 - local.get $14 - i32.load offset=8 - local.tee $0 - local.get $6 - i32.store offset=12 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $9 - br_if $block_96 - br $block_95 - end ;; $block_101 - local.get $6 - i32.load offset=8 - local.tee $6 - i32.load - local.tee $5 - local.get $7 - i32.gt_u - br_if $block_83 - i32.const 1 - local.set $0 - br $loop_7 - end ;; $block_100 - local.get $5 - local.get $6 - i32.load offset=4 - i32.add - local.tee $3 - local.get $7 - i32.le_u - br_if $block_82 - i32.const 0 - local.get $9 - i32.store offset=1054988 - i32.const 0 - local.get $8 - i32.const -40 - i32.add - local.tee $0 - i32.store offset=1054980 - local.get $9 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $9 - local.get $0 - i32.add - i32.const 40 - i32.store offset=4 - i32.const 0 - i32.const 2097152 - i32.store offset=1055016 - local.get $7 - local.get $3 - i32.const -32 - i32.add - i32.const -8 - i32.and - i32.const -8 - i32.add - local.tee $0 - local.get $0 - local.get $7 - i32.const 16 - i32.add - i32.lt_u - select - local.tee $6 - i32.const 27 - i32.store offset=4 - i32.const 0 - i64.load offset=1055000 align=4 - local.set $16 - local.get $6 - i32.const 16 - i32.add - i32.const 0 - i64.load offset=1055008 align=4 - i64.store align=4 - local.get $6 - local.get $16 - i64.store offset=8 align=4 - i32.const 0 - local.get $8 - i32.store offset=1055004 - i32.const 0 - local.get $9 - i32.store offset=1055000 - i32.const 0 - local.get $6 - i32.const 8 - i32.add - i32.store offset=1055008 - i32.const 0 - i32.const 0 - i32.store offset=1055012 - local.get $6 - i32.const 28 - i32.add - local.set $0 - loop $loop_8 - local.get $0 - i32.const 7 - i32.store - local.get $3 - local.get $0 - i32.const 4 - i32.add - local.tee $0 - i32.gt_u - br_if $loop_8 - end ;; $loop_8 - local.get $6 - local.get $7 - i32.eq - br_if $block_85 - local.get $6 - local.get $6 - i32.load offset=4 - i32.const -2 - i32.and - i32.store offset=4 - local.get $7 - local.get $6 - local.get $7 - i32.sub - local.tee $5 - i32.const 1 - i32.or - i32.store offset=4 - local.get $6 - local.get $5 - i32.store - local.get $5 - i32.const 255 - i32.gt_u - br_if $block_98 - local.get $5 - i32.const 3 - i32.shr_u - local.tee $6 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $0 - i32.const 0 - i32.load offset=1054576 - local.tee $5 - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - local.tee $6 - i32.and - i32.eqz - br_if $block_92 - local.get $0 - i32.load offset=8 - local.set $6 - br $block_91 - end ;; $block_99 - local.get $14 - i32.const 20 - i32.const 16 - local.get $14 - i32.const 20 - i32.add - local.tee $6 - i32.load - local.tee $7 - select - i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_97 - local.get $6 - local.get $14 - i32.const 16 - i32.add - local.get $7 - select - local.set $7 - block $block_104 - loop $loop_9 - local.get $7 - local.set $5 - block $block_105 - local.get $0 - local.tee $6 - i32.const 20 - i32.add - local.tee $7 - i32.load - local.tee $0 - i32.eqz - br_if $block_105 - local.get $0 - br_if $loop_9 - br $block_104 - end ;; $block_105 - local.get $6 - i32.const 16 - i32.add - local.set $7 - local.get $6 - i32.load offset=16 - local.tee $0 - br_if $loop_9 - end ;; $loop_9 - end ;; $block_104 - local.get $5 - i32.const 0 - i32.store - local.get $9 - br_if $block_96 - br $block_95 - end ;; $block_98 - i32.const 0 - local.set $0 - block $block_106 - local.get $5 - i32.const 8 - i32.shr_u - local.tee $6 - i32.eqz - br_if $block_106 - i32.const 31 - local.set $0 - local.get $5 - i32.const 16777215 - i32.gt_u - br_if $block_106 - local.get $5 - i32.const 38 - local.get $6 - i32.clz - local.tee $0 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.const 31 - local.get $0 - i32.sub - i32.const 1 - i32.shl - i32.or - local.set $0 - end ;; $block_106 - local.get $7 - i64.const 0 - i64.store offset=16 align=4 - local.get $7 - i32.const 28 - i32.add - local.get $0 - i32.store - local.get $0 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.set $6 - i32.const 0 - i32.load offset=1054580 - local.tee $9 - i32.const 1 - local.get $0 - i32.const 31 - i32.and - i32.shl - local.tee $3 - i32.and - i32.eqz - br_if $block_90 - local.get $6 - i32.load - local.tee $9 - i32.load offset=4 - i32.const -8 - i32.and - local.get $5 - i32.ne - br_if $block_89 - local.get $9 - local.set $0 - br $block_88 - end ;; $block_97 - i32.const 0 - local.set $6 - local.get $9 - i32.eqz - br_if $block_95 - end ;; $block_96 - block $block_107 - block $block_108 - block $block_109 - local.get $14 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $0 - i32.load - local.get $14 - i32.eq - br_if $block_109 - local.get $9 - i32.const 16 - i32.const 20 - local.get $9 - i32.load offset=16 - local.get $14 - i32.eq - select - i32.add - local.get $6 - i32.store - local.get $6 - br_if $block_108 - br $block_95 - end ;; $block_109 - local.get $0 - local.get $6 - i32.store - local.get $6 - i32.eqz - br_if $block_107 - end ;; $block_108 - local.get $6 - local.get $9 - i32.store offset=24 - block $block_110 - local.get $14 - i32.load offset=16 - local.tee $0 - i32.eqz - br_if $block_110 - local.get $6 - local.get $0 - i32.store offset=16 - local.get $0 - local.get $6 - i32.store offset=24 - end ;; $block_110 - local.get $14 - i32.const 20 - i32.add - i32.load - local.tee $0 - i32.eqz - br_if $block_95 - local.get $6 - i32.const 20 - i32.add - local.get $0 - i32.store - local.get $0 - local.get $6 - i32.store offset=24 - local.get $12 - i32.const 16 - i32.lt_u - br_if $block_94 - br $block_93 - end ;; $block_107 - i32.const 0 - i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $14 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - end ;; $block_95 - local.get $12 - i32.const 16 - i32.ge_u - br_if $block_93 - end ;; $block_94 - local.get $14 - local.get $12 - local.get $2 - i32.add - local.tee $0 - i32.const 3 - i32.or - i32.store offset=4 - local.get $14 - local.get $0 - i32.add - local.tee $0 - local.get $0 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $14 - i32.const 8 - i32.add - return - end ;; $block_93 - local.get $14 - local.get $2 - i32.const 3 - i32.or - i32.store offset=4 - local.get $14 - local.get $2 - i32.add - local.tee $2 - local.get $12 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $12 - i32.add - local.get $12 - i32.store - block $block_111 - i32.const 0 - i32.load offset=1054976 - local.tee $0 - i32.eqz - br_if $block_111 - local.get $0 - i32.const 3 - i32.shr_u - local.tee $7 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $6 - i32.const 0 - i32.load offset=1054984 - local.set $0 - block $block_112 - block $block_113 - i32.const 0 - i32.load offset=1054576 - local.tee $5 - i32.const 1 - local.get $7 - i32.const 31 - i32.and - i32.shl - local.tee $7 - i32.and - i32.eqz - br_if $block_113 - local.get $6 - i32.load offset=8 - local.set $7 - br $block_112 - end ;; $block_113 - i32.const 0 - local.get $5 - local.get $7 - i32.or - i32.store offset=1054576 - local.get $6 - local.set $7 - end ;; $block_112 - local.get $6 - local.get $0 - i32.store offset=8 - local.get $7 - local.get $0 - i32.store offset=12 - local.get $0 - local.get $6 - i32.store offset=12 - local.get $0 - local.get $7 - i32.store offset=8 - end ;; $block_111 - i32.const 0 - local.get $2 - i32.store offset=1054984 - i32.const 0 - local.get $12 - i32.store offset=1054976 - local.get $14 - i32.const 8 - i32.add - return - end ;; $block_92 - i32.const 0 - local.get $5 - local.get $6 - i32.or - i32.store offset=1054576 - local.get $0 - local.set $6 - end ;; $block_91 - local.get $0 - local.get $7 - i32.store offset=8 - local.get $6 - local.get $7 - i32.store offset=12 - local.get $7 - local.get $0 - i32.store offset=12 - local.get $7 - local.get $6 - i32.store offset=8 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block - br $block_0 - end ;; $block_90 - i32.const 0 - local.get $9 - local.get $3 - i32.or - i32.store offset=1054580 - local.get $6 - local.get $7 - i32.store - local.get $7 - i32.const 24 - i32.add - local.get $6 - i32.store - br $block_86 - end ;; $block_89 - local.get $5 - i32.const 0 - i32.const 25 - local.get $0 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $0 - i32.const 31 - i32.eq - select - i32.shl - local.set $6 - loop $loop_10 - local.get $9 - local.get $6 - i32.const 29 - i32.shr_u - i32.const 4 - i32.and - i32.add - i32.const 16 - i32.add - local.tee $3 - i32.load - local.tee $0 - i32.eqz - br_if $block_87 - local.get $6 - i32.const 1 - i32.shl - local.set $6 - local.get $0 - local.set $9 - local.get $0 - i32.load offset=4 - i32.const -8 - i32.and - local.get $5 - i32.ne - br_if $loop_10 - end ;; $loop_10 - end ;; $block_88 - local.get $0 - i32.load offset=8 - local.tee $6 - local.get $7 - i32.store offset=12 - local.get $0 - local.get $7 - i32.store offset=8 - local.get $7 - i32.const 24 - i32.add - i32.const 0 - i32.store - local.get $7 - local.get $0 - i32.store offset=12 - local.get $7 - local.get $6 - i32.store offset=8 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block - br $block_0 - end ;; $block_87 - local.get $3 - local.get $7 - i32.store - local.get $7 - i32.const 24 - i32.add - local.get $9 - i32.store - end ;; $block_86 - local.get $7 - local.get $7 - i32.store offset=12 - local.get $7 - local.get $7 - i32.store offset=8 - end ;; $block_85 - i32.const 0 - local.set $6 - i32.const 0 - i32.load offset=1054980 - local.tee $0 - local.get $2 - i32.le_u - br_if $block - br $block_0 - end ;; $block_84 - i32.const 3 - local.set $0 - br $loop_7 - end ;; $block_83 - i32.const 2 - local.set $0 - br $loop_7 - end ;; $block_82 - i32.const 2 - local.set $0 - br $loop_7 - end ;; $block_81 - i32.const 3 - local.set $0 - br $loop_7 - end ;; $loop_7 - end ;; $block_0 + local.get $7 + i32.store + end ;; $block_92 + local.get $1 + local.get $1 + i32.store offset=12 + local.get $1 + local.get $1 + i32.store offset=8 + br $block_53 + end ;; $block_90 + local.get $6 + i32.const 3 + i32.shr_u + local.tee $5 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $0 + block $block_97 + block $block_98 + i32.const 0 + i32.load offset=1054688 + local.tee $6 + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + local.tee $5 + i32.and + i32.eqz + br_if $block_98 + local.get $0 + i32.load offset=8 + local.set $5 + br $block_97 + end ;; $block_98 + i32.const 0 + local.get $6 + local.get $5 + i32.or + i32.store offset=1054688 + local.get $0 + local.set $5 + end ;; $block_97 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $5 + local.get $1 + i32.store offset=12 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $1 + local.get $5 + i32.store offset=8 + end ;; $block_53 + i32.const 0 + local.set $1 + i32.const 0 + i32.load offset=1055092 + local.tee $0 + local.get $2 + i32.le_u + br_if $block i32.const 0 local.get $0 local.get $2 i32.sub - local.tee $6 - i32.store offset=1054980 + local.tee $1 + i32.store offset=1055092 i32.const 0 i32.const 0 - i32.load offset=1054988 + i32.load offset=1055100 local.tee $0 local.get $2 i32.add - local.tee $7 - i32.store offset=1054988 - local.get $7 - local.get $6 + local.tee $5 + i32.store offset=1055100 + local.get $5 + local.get $1 i32.const 1 i32.or i32.store offset=4 @@ -6606,10 +6159,10 @@ i32.add return end ;; $block - local.get $6 + local.get $1 ) - (func $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h08c63a089677cf87 (type $0) + (func $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h1effa892c850b7b3 (type $0) (param $0 i32) (param $1 i32) (local $2 i32) @@ -6627,385 +6180,290 @@ block $block_1 block $block_2 block $block_3 + local.get $0 + i32.load offset=4 + local.tee $3 + i32.const 1 + i32.and + br_if $block_3 + local.get $3 + i32.const 3 + i32.and + i32.eqz + br_if $block_2 + local.get $0 + i32.load + local.tee $3 + local.get $1 + i32.add + local.set $1 block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - local.get $0 - i32.load offset=4 - local.tee $3 - i32.const 1 - i32.and - br_if $block_11 - local.get $3 - i32.const 3 - i32.and - i32.eqz - br_if $block_7 - local.get $0 - i32.load - local.tee $3 - local.get $1 - i32.add - local.set $1 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - block $block_16 - i32.const 0 - i32.load offset=1054984 - local.get $0 - local.get $3 - i32.sub - local.tee $0 - i32.eq - br_if $block_16 - local.get $3 - i32.const 255 - i32.gt_u - br_if $block_15 - local.get $0 - i32.load offset=12 - local.tee $4 - local.get $0 - i32.load offset=8 - local.tee $5 - i32.eq - br_if $block_14 - local.get $5 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $2 - i32.load offset=4 - local.tee $3 - i32.const 2 - i32.and - i32.eqz - br_if $block_8 - br $block_9 - end ;; $block_16 - local.get $2 - i32.load offset=4 - i32.const 3 - i32.and - i32.const 3 - i32.ne - br_if $block_11 - i32.const 0 - local.get $1 - i32.store offset=1054976 - local.get $2 - i32.const 4 - i32.add - local.tee $3 - local.get $3 - i32.load - i32.const -2 - i32.and - i32.store - local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $1 - i32.store - return - end ;; $block_15 - local.get $0 - i32.load offset=24 - local.set $6 - local.get $0 - i32.load offset=12 - local.tee $4 - local.get $0 - i32.eq - br_if $block_13 - local.get $0 - i32.load offset=8 - local.tee $3 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $3 - i32.store offset=8 - local.get $6 - br_if $block_12 - br $block_11 - end ;; $block_14 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 - local.get $3 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - local.get $2 - i32.load offset=4 - local.tee $3 - i32.const 2 - i32.and - i32.eqz - br_if $block_8 - br $block_9 - end ;; $block_13 - block $block_17 - local.get $0 - i32.const 20 - i32.const 16 - local.get $0 - i32.load offset=20 - local.tee $4 - select - i32.add - i32.load - local.tee $3 - i32.eqz - br_if $block_17 - local.get $0 - i32.const 20 - i32.add - local.get $0 - i32.const 16 - i32.add - local.get $4 - select - local.set $5 - block $block_18 - loop $loop - local.get $5 - local.set $7 - block $block_19 - local.get $3 - local.tee $4 - i32.const 20 - i32.add - local.tee $5 - i32.load - local.tee $3 - i32.eqz - br_if $block_19 - local.get $3 - br_if $loop - br $block_18 - end ;; $block_19 - local.get $4 - i32.const 16 - i32.add - local.set $5 - local.get $4 - i32.load offset=16 - local.tee $3 - br_if $loop - end ;; $loop - end ;; $block_18 - local.get $7 - i32.const 0 - i32.store - local.get $6 - br_if $block_12 - br $block_11 - end ;; $block_17 - i32.const 0 - local.set $4 - local.get $6 - i32.eqz - br_if $block_11 - end ;; $block_12 - block $block_20 - block $block_21 - local.get $0 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $3 - i32.load - local.get $0 - i32.eq - br_if $block_21 - local.get $6 - i32.const 16 - i32.const 20 - local.get $6 - i32.load offset=16 - local.get $0 - i32.eq - select - i32.add - local.get $4 - i32.store - local.get $4 - br_if $block_20 - br $block_11 - end ;; $block_21 - local.get $3 - local.get $4 - i32.store - local.get $4 - i32.eqz - br_if $block_10 - end ;; $block_20 - local.get $4 - local.get $6 - i32.store offset=24 - block $block_22 - local.get $0 - i32.load offset=16 - local.tee $3 - i32.eqz - br_if $block_22 - local.get $4 - local.get $3 - i32.store offset=16 - local.get $3 - local.get $4 - i32.store offset=24 - end ;; $block_22 - local.get $0 - i32.load offset=20 - local.tee $3 - i32.eqz - br_if $block_11 - local.get $4 - i32.const 20 - i32.add - local.get $3 - i32.store - local.get $3 - local.get $4 - i32.store offset=24 - end ;; $block_11 - local.get $2 - i32.load offset=4 - local.tee $3 - i32.const 2 - i32.and - br_if $block_9 - br $block_8 - end ;; $block_10 - i32.const 0 - i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $0 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - local.get $2 - i32.load offset=4 - local.tee $3 - i32.const 2 - i32.and - i32.eqz - br_if $block_8 - end ;; $block_9 - local.get $2 - i32.const 4 - i32.add - local.get $3 - i32.const -2 - i32.and - i32.store - local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.add - local.get $1 - i32.store - br $block - end ;; $block_8 - block $block_23 - i32.const 0 - i32.load offset=1054988 - local.get $2 - i32.eq - br_if $block_23 - i32.const 0 - i32.load offset=1054984 - local.get $2 - i32.eq - br_if $block_6 - local.get $3 - i32.const -8 - i32.and - local.tee $4 - local.get $1 - i32.add - local.set $1 - local.get $4 - i32.const 255 - i32.gt_u - br_if $block_5 - local.get $2 - i32.load offset=12 - local.tee $4 - local.get $2 - i32.load offset=8 - local.tee $2 - i32.eq - br_if $block_3 - local.get $2 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $2 - i32.store offset=8 - br $block_0 - end ;; $block_23 - i32.const 0 + i32.const 0 + i32.load offset=1055096 + local.get $0 + local.get $3 + i32.sub + local.tee $0 + i32.ne + br_if $block_4 + local.get $2 + i32.load offset=4 + i32.const 3 + i32.and + i32.const 3 + i32.ne + br_if $block_3 + i32.const 0 + local.get $1 + i32.store offset=1055088 + local.get $2 + local.get $2 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $1 + i32.store + return + end ;; $block_4 + block $block_5 + local.get $3 + i32.const 256 + i32.lt_u + br_if $block_5 + local.get $0 + i32.load offset=24 + local.set $4 + block $block_6 + block $block_7 + block $block_8 local.get $0 - i32.store offset=1054988 - i32.const 0 + i32.load offset=12 + local.tee $5 + local.get $0 + i32.ne + br_if $block_8 + local.get $0 + i32.const 20 + i32.const 16 + local.get $0 + i32.load offset=20 + local.tee $5 + select + i32.add + i32.load + local.tee $3 + br_if $block_7 i32.const 0 - i32.load offset=1054980 - local.get $1 + local.set $5 + br $block_6 + end ;; $block_8 + local.get $0 + i32.load offset=8 + local.tee $3 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $3 + i32.store offset=8 + br $block_6 + end ;; $block_7 + local.get $0 + i32.const 20 + i32.add + local.get $0 + i32.const 16 + i32.add + local.get $5 + select + local.set $6 + loop $loop + local.get $6 + local.set $7 + block $block_9 + local.get $3 + local.tee $5 + i32.const 20 i32.add - local.tee $1 - i32.store offset=1054980 - local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - i32.const 0 - i32.load offset=1054984 - i32.eq - br_if $block_4 - end ;; $block_7 - return - end ;; $block_6 + local.tee $6 + i32.load + local.tee $3 + br_if $block_9 + local.get $5 + i32.const 16 + i32.add + local.set $6 + local.get $5 + i32.load offset=16 + local.set $3 + end ;; $block_9 + local.get $3 + br_if $loop + end ;; $loop + local.get $7 + i32.const 0 + i32.store + end ;; $block_6 + local.get $4 + i32.eqz + br_if $block_3 + block $block_10 + block $block_11 + local.get $0 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $3 + i32.load + local.get $0 + i32.ne + br_if $block_11 + local.get $3 + local.get $5 + i32.store + local.get $5 + br_if $block_10 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $0 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_3 + end ;; $block_11 + local.get $4 + i32.const 16 + i32.const 20 + local.get $4 + i32.load offset=16 + local.get $0 + i32.eq + select + i32.add + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_3 + end ;; $block_10 + local.get $5 + local.get $4 + i32.store offset=24 + block $block_12 + local.get $0 + i32.load offset=16 + local.tee $3 + i32.eqz + br_if $block_12 + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $block_12 + local.get $0 + i32.load offset=20 + local.tee $3 + i32.eqz + br_if $block_3 + local.get $5 + i32.const 20 + i32.add + local.get $3 + i32.store + local.get $3 + local.get $5 + i32.store offset=24 + br $block_3 + end ;; $block_5 + block $block_13 + local.get $0 + i32.load offset=12 + local.tee $5 + local.get $0 + i32.load offset=8 + local.tee $6 + i32.eq + br_if $block_13 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $6 + i32.store offset=8 + br $block_3 + end ;; $block_13 + i32.const 0 + i32.const 0 + i32.load offset=1054688 + i32.const -2 + local.get $3 + i32.const 3 + i32.shr_u + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_3 + block $block_14 + block $block_15 + local.get $2 + i32.load offset=4 + local.tee $3 + i32.const 2 + i32.and + i32.eqz + br_if $block_15 + local.get $2 + local.get $3 + i32.const -2 + i32.and + i32.store offset=4 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 + i32.add + local.get $1 + i32.store + br $block_14 + end ;; $block_15 + block $block_16 + block $block_17 + i32.const 0 + i32.load offset=1055100 + local.get $2 + i32.eq + br_if $block_17 + i32.const 0 + i32.load offset=1055096 + local.get $2 + i32.ne + br_if $block_16 i32.const 0 local.get $0 - i32.store offset=1054984 + i32.store offset=1055096 i32.const 0 i32.const 0 - i32.load offset=1054976 + i32.load offset=1055088 local.get $1 i32.add local.tee $1 - i32.store offset=1054976 + i32.store offset=1055088 local.get $0 local.get $1 i32.const 1 @@ -7017,452 +6475,483 @@ local.get $1 i32.store return - end ;; $block_5 - local.get $2 - i32.load offset=24 - local.set $6 - local.get $2 - i32.load offset=12 - local.tee $4 - local.get $2 - i32.eq + end ;; $block_17 + i32.const 0 + local.get $0 + i32.store offset=1055100 + i32.const 0 + i32.const 0 + i32.load offset=1055092 + local.get $1 + i32.add + local.tee $1 + i32.store offset=1055092 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + i32.const 0 + i32.load offset=1055096 + i32.ne br_if $block_2 - local.get $2 - i32.load offset=8 - local.tee $3 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $3 - i32.store offset=8 - local.get $6 - br_if $block_1 - br $block_0 - end ;; $block_4 - i32.const 0 - i32.const 0 - i32.store offset=1054976 - i32.const 0 - i32.const 0 - i32.store offset=1054984 - return - end ;; $block_3 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 - local.get $3 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - br $block_0 - end ;; $block_2 - block $block_24 - local.get $2 - i32.const 20 - i32.const 16 - local.get $2 - i32.load offset=20 - local.tee $4 - select - i32.add - i32.load - local.tee $3 - i32.eqz - br_if $block_24 - local.get $2 - i32.const 20 - i32.add - local.get $2 - i32.const 16 - i32.add - local.get $4 - select - local.set $5 - block $block_25 - loop $loop_0 - local.get $5 - local.set $7 - block $block_26 - local.get $3 - local.tee $4 + i32.const 0 + i32.const 0 + i32.store offset=1055088 + i32.const 0 + i32.const 0 + i32.store offset=1055096 + return + end ;; $block_16 + local.get $3 + i32.const -8 + i32.and + local.tee $5 + local.get $1 + i32.add + local.set $1 + block $block_18 + block $block_19 + local.get $5 + i32.const 256 + i32.lt_u + br_if $block_19 + local.get $2 + i32.load offset=24 + local.set $4 + block $block_20 + block $block_21 + block $block_22 + local.get $2 + i32.load offset=12 + local.tee $5 + local.get $2 + i32.ne + br_if $block_22 + local.get $2 + i32.const 20 + i32.const 16 + local.get $2 + i32.load offset=20 + local.tee $5 + select + i32.add + i32.load + local.tee $3 + br_if $block_21 + i32.const 0 + local.set $5 + br $block_20 + end ;; $block_22 + local.get $2 + i32.load offset=8 + local.tee $3 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $3 + i32.store offset=8 + br $block_20 + end ;; $block_21 + local.get $2 + i32.const 20 + i32.add + local.get $2 + i32.const 16 + i32.add + local.get $5 + select + local.set $6 + loop $loop_0 + local.get $6 + local.set $7 + block $block_23 + local.get $3 + local.tee $5 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $3 + br_if $block_23 + local.get $5 + i32.const 16 + i32.add + local.set $6 + local.get $5 + i32.load offset=16 + local.set $3 + end ;; $block_23 + local.get $3 + br_if $loop_0 + end ;; $loop_0 + local.get $7 + i32.const 0 + i32.store + end ;; $block_20 + local.get $4 + i32.eqz + br_if $block_18 + block $block_24 + block $block_25 + local.get $2 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $3 + i32.load + local.get $2 + i32.ne + br_if $block_25 + local.get $3 + local.get $5 + i32.store + local.get $5 + br_if $block_24 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $2 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_18 + end ;; $block_25 + local.get $4 + i32.const 16 + i32.const 20 + local.get $4 + i32.load offset=16 + local.get $2 + i32.eq + select + i32.add + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_18 + end ;; $block_24 + local.get $5 + local.get $4 + i32.store offset=24 + block $block_26 + local.get $2 + i32.load offset=16 + local.tee $3 + i32.eqz + br_if $block_26 + local.get $5 + local.get $3 + i32.store offset=16 + local.get $3 + local.get $5 + i32.store offset=24 + end ;; $block_26 + local.get $2 + i32.load offset=20 + local.tee $2 + i32.eqz + br_if $block_18 + local.get $5 i32.const 20 i32.add + local.get $2 + i32.store + local.get $2 + local.get $5 + i32.store offset=24 + br $block_18 + end ;; $block_19 + block $block_27 + local.get $2 + i32.load offset=12 local.tee $5 - i32.load - local.tee $3 - i32.eqz - br_if $block_26 - local.get $3 - br_if $loop_0 - br $block_25 - end ;; $block_26 - local.get $4 - i32.const 16 - i32.add - local.set $5 - local.get $4 - i32.load offset=16 - local.tee $3 - br_if $loop_0 - end ;; $loop_0 - end ;; $block_25 - local.get $7 - i32.const 0 - i32.store - local.get $6 - br_if $block_1 - br $block_0 - end ;; $block_24 - i32.const 0 - local.set $4 - local.get $6 - i32.eqz - br_if $block_0 - end ;; $block_1 - block $block_27 - block $block_28 - block $block_29 - local.get $2 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $3 - i32.load - local.get $2 - i32.eq - br_if $block_29 - local.get $6 - i32.const 16 - i32.const 20 - local.get $6 - i32.load offset=16 - local.get $2 - i32.eq - select + local.get $2 + i32.load offset=8 + local.tee $2 + i32.eq + br_if $block_27 + local.get $2 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $2 + i32.store offset=8 + br $block_18 + end ;; $block_27 + i32.const 0 + i32.const 0 + i32.load offset=1054688 + i32.const -2 + local.get $3 + i32.const 3 + i32.shr_u + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_18 + local.get $0 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $0 + local.get $1 i32.add - local.get $4 + local.get $1 i32.store - local.get $4 - br_if $block_28 - br $block_0 - end ;; $block_29 - local.get $3 - local.get $4 - i32.store - local.get $4 - i32.eqz - br_if $block_27 - end ;; $block_28 - local.get $4 - local.get $6 - i32.store offset=24 - block $block_30 - local.get $2 - i32.load offset=16 - local.tee $3 - i32.eqz - br_if $block_30 - local.get $4 - local.get $3 - i32.store offset=16 - local.get $3 - local.get $4 - i32.store offset=24 - end ;; $block_30 - local.get $2 - i32.load offset=20 - local.tee $2 - i32.eqz - br_if $block_0 - local.get $4 - i32.const 20 - i32.add - local.get $2 - i32.store - local.get $2 - local.get $4 - i32.store offset=24 - br $block_0 - end ;; $block_27 - i32.const 0 - i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $2 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - end ;; $block_0 - local.get $0 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $0 - local.get $1 - i32.add - local.get $1 - i32.store - local.get $0 - i32.const 0 - i32.load offset=1054984 - i32.ne - br_if $block - i32.const 0 - local.get $1 - i32.store offset=1054976 - return - end ;; $block - block $block_31 - block $block_32 - block $block_33 - block $block_34 - block $block_35 - block $block_36 - block $block_37 - local.get $1 - i32.const 255 - i32.gt_u - br_if $block_37 - local.get $1 - i32.const 3 - i32.shr_u - local.tee $2 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $1 + local.get $0 + i32.const 0 + i32.load offset=1055096 + i32.ne + br_if $block_14 + i32.const 0 + local.get $1 + i32.store offset=1055088 + return + end ;; $block_14 + local.get $1 + i32.const 256 + i32.lt_u + br_if $block + i32.const 0 + local.set $2 + block $block_28 + local.get $1 + i32.const 8 + i32.shr_u + local.tee $3 + i32.eqz + br_if $block_28 + i32.const 31 + local.set $2 + local.get $1 + i32.const 16777215 + i32.gt_u + br_if $block_28 + local.get $1 + i32.const 6 + local.get $3 + i32.clz + local.tee $2 + i32.sub + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + local.get $2 + i32.const 1 + i32.shl + i32.sub + i32.const 62 + i32.add + local.set $2 + end ;; $block_28 + local.get $0 + i64.const 0 + i64.store offset=16 align=4 + local.get $0 + i32.const 28 + i32.add + local.get $2 + i32.store + local.get $2 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.set $3 + block $block_29 + block $block_30 + block $block_31 i32.const 0 - i32.load offset=1054576 - local.tee $3 + i32.load offset=1054692 + local.tee $5 i32.const 1 local.get $2 i32.const 31 i32.and i32.shl - local.tee $2 + local.tee $6 i32.and i32.eqz - br_if $block_36 - local.get $1 - i32.load offset=8 - local.set $2 - br $block_35 - end ;; $block_37 - i32.const 0 - local.set $2 - block $block_38 - local.get $1 - i32.const 8 - i32.shr_u - local.tee $3 - i32.eqz - br_if $block_38 - i32.const 31 - local.set $2 - local.get $1 - i32.const 16777215 - i32.gt_u - br_if $block_38 - local.get $1 - i32.const 38 + br_if $block_31 local.get $3 - i32.clz - local.tee $2 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 + i32.load + local.tee $5 + i32.load offset=4 + i32.const -8 i32.and - i32.const 31 - local.get $2 - i32.sub - i32.const 1 - i32.shl - i32.or + local.get $1 + i32.ne + br_if $block_30 + local.get $5 local.set $2 - end ;; $block_38 + br $block_29 + end ;; $block_31 + i32.const 0 + local.get $5 + local.get $6 + i32.or + i32.store offset=1054692 + local.get $3 local.get $0 - i64.const 0 - i64.store offset=16 align=4 + i32.store local.get $0 - i32.const 28 + i32.const 24 i32.add - local.get $2 + local.get $3 i32.store - local.get $2 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.set $3 - i32.const 0 - i32.load offset=1054580 - local.tee $4 - i32.const 1 - local.get $2 - i32.const 31 - i32.and - i32.shl - local.tee $5 + br $block_0 + end ;; $block_30 + local.get $1 + i32.const 0 + i32.const 25 + local.get $2 + i32.const 1 + i32.shr_u + i32.sub + i32.const 31 + i32.and + local.get $2 + i32.const 31 + i32.eq + select + i32.shl + local.set $3 + loop $loop_1 + local.get $5 + local.get $3 + i32.const 29 + i32.shr_u + i32.const 4 i32.and + i32.add + i32.const 16 + i32.add + local.tee $6 + i32.load + local.tee $2 i32.eqz - br_if $block_34 + br_if $block_1 local.get $3 - i32.load - local.tee $4 + i32.const 1 + i32.shl + local.set $3 + local.get $2 + local.set $5 + local.get $2 i32.load offset=4 i32.const -8 i32.and local.get $1 i32.ne - br_if $block_33 - local.get $4 - local.set $2 - br $block_32 - end ;; $block_36 - i32.const 0 - local.get $3 - local.get $2 - i32.or - i32.store offset=1054576 - local.get $1 - local.set $2 - end ;; $block_35 - local.get $1 - local.get $0 - i32.store offset=8 + br_if $loop_1 + end ;; $loop_1 + end ;; $block_29 local.get $2 + i32.load offset=8 + local.tee $1 local.get $0 i32.store offset=12 + local.get $2 local.get $0 - local.get $1 - i32.store offset=12 + i32.store offset=8 + local.get $0 + i32.const 24 + i32.add + i32.const 0 + i32.store local.get $0 local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 i32.store offset=8 - return - end ;; $block_34 - i32.const 0 - local.get $4 - local.get $5 - i32.or - i32.store offset=1054580 - local.get $3 - local.get $0 - i32.store - local.get $0 - i32.const 24 - i32.add - local.get $3 - i32.store - local.get $0 - local.get $0 - i32.store offset=12 - local.get $0 - local.get $0 - i32.store offset=8 + end ;; $block_2 return - end ;; $block_33 - local.get $1 - i32.const 0 - i32.const 25 - local.get $2 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $2 - i32.const 31 - i32.eq - select - i32.shl - local.set $3 - loop $loop_1 - local.get $4 - local.get $3 - i32.const 29 - i32.shr_u - i32.const 4 - i32.and - i32.add - i32.const 16 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.eqz - br_if $block_31 - local.get $3 - i32.const 1 - i32.shl - local.set $3 - local.get $2 - local.set $4 - local.get $2 - i32.load offset=4 - i32.const -8 - i32.and - local.get $1 - i32.ne - br_if $loop_1 - end ;; $loop_1 - end ;; $block_32 - local.get $2 - i32.load offset=8 - local.tee $1 - local.get $0 - i32.store offset=12 - local.get $2 - local.get $0 - i32.store offset=8 - local.get $0 - i32.const 24 - i32.add - i32.const 0 - i32.store + end ;; $block_1 + local.get $6 + local.get $0 + i32.store + local.get $0 + i32.const 24 + i32.add + local.get $5 + i32.store + end ;; $block_0 + local.get $0 local.get $0 - local.get $2 i32.store offset=12 local.get $0 - local.get $1 + local.get $0 i32.store offset=8 return - end ;; $block_31 - local.get $5 - local.get $0 - i32.store - local.get $0 - i32.const 24 + end ;; $block + local.get $1 + i32.const 3 + i32.shr_u + local.tee $2 + i32.const 3 + i32.shl + i32.const 1054696 i32.add - local.get $4 - i32.store + local.set $1 + block $block_32 + block $block_33 + i32.const 0 + i32.load offset=1054688 + local.tee $3 + i32.const 1 + local.get $2 + i32.const 31 + i32.and + i32.shl + local.tee $2 + i32.and + i32.eqz + br_if $block_33 + local.get $1 + i32.load offset=8 + local.set $2 + br $block_32 + end ;; $block_33 + i32.const 0 + local.get $3 + local.get $2 + i32.or + i32.store offset=1054688 + local.get $1 + local.set $2 + end ;; $block_32 + local.get $1 local.get $0 + i32.store offset=8 + local.get $2 local.get $0 i32.store offset=12 local.get $0 + local.get $1 + i32.store offset=12 local.get $0 + local.get $2 i32.store offset=8 ) - (func $__rdl_dealloc (type $6) + (func $__rdl_dealloc (type $5) (param $0 i32) local.get $0 - call $dlmalloc::dlmalloc::Dlmalloc::free::he25d64d2cc54b15f + call $dlmalloc::dlmalloc::Dlmalloc::free::h6ea6f2ba0e2c950d ) - (func $dlmalloc::dlmalloc::Dlmalloc::free::he25d64d2cc54b15f (type $6) + (func $dlmalloc::dlmalloc::Dlmalloc::free::h6ea6f2ba0e2c950d (type $5) (param $0 i32) (local $1 i32) (local $2 i32) @@ -7489,1423 +6978,1279 @@ block $block_0 block $block_1 block $block_2 + local.get $2 + i32.const 1 + i32.and + br_if $block_2 + local.get $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_1 + local.get $1 + i32.load + local.tee $2 + local.get $0 + i32.add + local.set $0 block $block_3 - block $block_4 - block $block_5 - local.get $2 - i32.const 1 - i32.and - br_if $block_5 - local.get $2 - i32.const 3 - i32.and - i32.eqz - br_if $block - local.get $1 - i32.load - local.tee $2 - local.get $0 - i32.add - local.set $0 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - i32.const 0 - i32.load offset=1054984 - local.get $1 - local.get $2 - i32.sub - local.tee $1 - i32.eq - br_if $block_10 - local.get $2 - i32.const 255 - i32.gt_u - br_if $block_9 - local.get $1 - i32.load offset=12 - local.tee $4 - local.get $1 - i32.load offset=8 - local.tee $5 - i32.eq - br_if $block_8 - local.get $5 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.const 2 - i32.and - i32.eqz - br_if $block_2 - br $block_3 - end ;; $block_10 - local.get $3 - i32.load offset=4 - i32.const 3 - i32.and - i32.const 3 - i32.ne - br_if $block_5 - i32.const 0 - local.get $0 - i32.store offset=1054976 - local.get $3 - i32.const 4 - i32.add - local.tee $3 - local.get $3 - i32.load - i32.const -2 - i32.and - i32.store - local.get $1 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 - local.get $0 - i32.add - local.get $0 - i32.store - return - end ;; $block_9 - local.get $1 - i32.load offset=24 - local.set $6 - local.get $1 - i32.load offset=12 - local.tee $4 - local.get $1 - i32.eq - br_if $block_7 - local.get $1 - i32.load offset=8 - local.tee $2 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $2 - i32.store offset=8 - local.get $6 - br_if $block_6 - br $block_5 - end ;; $block_8 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 - local.get $2 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.const 2 - i32.and - i32.eqz - br_if $block_2 - br $block_3 - end ;; $block_7 - block $block_11 - local.get $1 - i32.const 20 - i32.const 16 - local.get $1 - i32.load offset=20 - local.tee $4 - select - i32.add - i32.load - local.tee $2 - i32.eqz - br_if $block_11 - local.get $1 - i32.const 20 - i32.add - local.get $1 - i32.const 16 - i32.add - local.get $4 - select - local.set $5 - block $block_12 - loop $loop - local.get $5 - local.set $7 - block $block_13 - local.get $2 - local.tee $4 - i32.const 20 - i32.add - local.tee $5 - i32.load - local.tee $2 - i32.eqz - br_if $block_13 - local.get $2 - br_if $loop - br $block_12 - end ;; $block_13 - local.get $4 - i32.const 16 - i32.add - local.set $5 - local.get $4 - i32.load offset=16 - local.tee $2 - br_if $loop - end ;; $loop - end ;; $block_12 - local.get $7 - i32.const 0 - i32.store - local.get $6 - br_if $block_6 - br $block_5 - end ;; $block_11 - i32.const 0 - local.set $4 - local.get $6 - i32.eqz - br_if $block_5 - end ;; $block_6 - block $block_14 - block $block_15 - local.get $1 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $2 - i32.load - local.get $1 - i32.eq - br_if $block_15 - local.get $6 - i32.const 16 - i32.const 20 - local.get $6 - i32.load offset=16 - local.get $1 - i32.eq - select - i32.add - local.get $4 - i32.store - local.get $4 - br_if $block_14 - br $block_5 - end ;; $block_15 - local.get $2 - local.get $4 - i32.store - local.get $4 - i32.eqz - br_if $block_4 - end ;; $block_14 - local.get $4 - local.get $6 - i32.store offset=24 - block $block_16 + i32.const 0 + i32.load offset=1055096 + local.get $1 + local.get $2 + i32.sub + local.tee $1 + i32.ne + br_if $block_3 + local.get $3 + i32.load offset=4 + i32.const 3 + i32.and + i32.const 3 + i32.ne + br_if $block_2 + i32.const 0 + local.get $0 + i32.store offset=1055088 + local.get $3 + local.get $3 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.get $0 + i32.store + return + end ;; $block_3 + block $block_4 + local.get $2 + i32.const 256 + i32.lt_u + br_if $block_4 + local.get $1 + i32.load offset=24 + local.set $4 + block $block_5 + block $block_6 + block $block_7 local.get $1 - i32.load offset=16 + i32.load offset=12 + local.tee $5 + local.get $1 + i32.ne + br_if $block_7 + local.get $1 + i32.const 20 + i32.const 16 + local.get $1 + i32.load offset=20 + local.tee $5 + select + i32.add + i32.load local.tee $2 - i32.eqz - br_if $block_16 - local.get $4 - local.get $2 - i32.store offset=16 + br_if $block_6 + i32.const 0 + local.set $5 + br $block_5 + end ;; $block_7 + local.get $1 + i32.load offset=8 + local.tee $2 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $2 + i32.store offset=8 + br $block_5 + end ;; $block_6 + local.get $1 + i32.const 20 + i32.add + local.get $1 + i32.const 16 + i32.add + local.get $5 + select + local.set $6 + loop $loop + local.get $6 + local.set $7 + block $block_8 local.get $2 - local.get $4 - i32.store offset=24 - end ;; $block_16 + local.tee $5 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $2 + br_if $block_8 + local.get $5 + i32.const 16 + i32.add + local.set $6 + local.get $5 + i32.load offset=16 + local.set $2 + end ;; $block_8 + local.get $2 + br_if $loop + end ;; $loop + local.get $7 + i32.const 0 + i32.store + end ;; $block_5 + local.get $4 + i32.eqz + br_if $block_2 + block $block_9 + block $block_10 + local.get $1 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.tee $2 + i32.load + local.get $1 + i32.ne + br_if $block_10 + local.get $2 + local.get $5 + i32.store + local.get $5 + br_if $block_9 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $1 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_2 + end ;; $block_10 + local.get $4 + i32.const 16 + i32.const 20 + local.get $4 + i32.load offset=16 + local.get $1 + i32.eq + select + i32.add + local.get $5 + i32.store + local.get $5 + i32.eqz + br_if $block_2 + end ;; $block_9 + local.get $5 + local.get $4 + i32.store offset=24 + block $block_11 + local.get $1 + i32.load offset=16 + local.tee $2 + i32.eqz + br_if $block_11 + local.get $5 + local.get $2 + i32.store offset=16 + local.get $2 + local.get $5 + i32.store offset=24 + end ;; $block_11 + local.get $1 + i32.load offset=20 + local.tee $2 + i32.eqz + br_if $block_2 + local.get $5 + i32.const 20 + i32.add + local.get $2 + i32.store + local.get $2 + local.get $5 + i32.store offset=24 + br $block_2 + end ;; $block_4 + block $block_12 + local.get $1 + i32.load offset=12 + local.tee $5 + local.get $1 + i32.load offset=8 + local.tee $6 + i32.eq + br_if $block_12 + local.get $6 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $6 + i32.store offset=8 + br $block_2 + end ;; $block_12 + i32.const 0 + i32.const 0 + i32.load offset=1054688 + i32.const -2 + local.get $2 + i32.const 3 + i32.shr_u + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_2 + block $block_13 + block $block_14 + local.get $3 + i32.load offset=4 + local.tee $2 + i32.const 2 + i32.and + i32.eqz + br_if $block_14 + local.get $3 + local.get $2 + i32.const -2 + i32.and + i32.store offset=4 + local.get $1 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.get $0 + i32.store + br $block_13 + end ;; $block_14 + block $block_15 + block $block_16 + i32.const 0 + i32.load offset=1055100 + local.get $3 + i32.eq + br_if $block_16 + i32.const 0 + i32.load offset=1055096 + local.get $3 + i32.ne + br_if $block_15 + i32.const 0 + local.get $1 + i32.store offset=1055096 + i32.const 0 + i32.const 0 + i32.load offset=1055088 + local.get $0 + i32.add + local.tee $0 + i32.store offset=1055088 + local.get $1 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.get $0 + i32.store + return + end ;; $block_16 + i32.const 0 + local.get $1 + i32.store offset=1055100 + i32.const 0 + i32.const 0 + i32.load offset=1055092 + local.get $0 + i32.add + local.tee $0 + i32.store offset=1055092 + local.get $1 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + block $block_17 + local.get $1 + i32.const 0 + i32.load offset=1055096 + i32.ne + br_if $block_17 + i32.const 0 + i32.const 0 + i32.store offset=1055088 + i32.const 0 + i32.const 0 + i32.store offset=1055096 + end ;; $block_17 + i32.const 0 + i32.load offset=1055128 + local.tee $2 + local.get $0 + i32.ge_u + br_if $block_1 + i32.const 0 + i32.load offset=1055100 + local.tee $0 + i32.eqz + br_if $block_1 + block $block_18 + i32.const 0 + i32.load offset=1055092 + local.tee $5 + i32.const 41 + i32.lt_u + br_if $block_18 + i32.const 1055112 + local.set $1 + loop $loop_0 + block $block_19 + local.get $1 + i32.load + local.tee $3 + local.get $0 + i32.gt_u + br_if $block_19 + local.get $3 + local.get $1 + i32.load offset=4 + i32.add + local.get $0 + i32.gt_u + br_if $block_18 + end ;; $block_19 local.get $1 - i32.load offset=20 - local.tee $2 - i32.eqz - br_if $block_5 - local.get $4 - i32.const 20 + i32.load offset=8 + local.tee $1 + br_if $loop_0 + end ;; $loop_0 + end ;; $block_18 + block $block_20 + block $block_21 + i32.const 0 + i32.load offset=1055120 + local.tee $0 + br_if $block_21 + i32.const 4095 + local.set $1 + br $block_20 + end ;; $block_21 + i32.const 0 + local.set $1 + loop $loop_1 + local.get $1 + i32.const 1 i32.add - local.get $2 - i32.store - local.get $2 - local.get $4 - i32.store offset=24 - end ;; $block_5 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.const 2 - i32.and - br_if $block_3 - br $block_2 - end ;; $block_4 - i32.const 0 + local.set $1 + local.get $0 + i32.load offset=8 + local.tee $0 + br_if $loop_1 + end ;; $loop_1 + local.get $1 + i32.const 4095 + local.get $1 + i32.const 4095 + i32.gt_u + select + local.set $1 + end ;; $block_20 i32.const 0 - i32.load offset=1054580 - i32.const -2 local.get $1 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - local.get $3 - i32.load offset=4 - local.tee $2 - i32.const 2 - i32.and - i32.eqz - br_if $block_2 - end ;; $block_3 - local.get $3 - i32.const 4 - i32.add + i32.store offset=1055136 + local.get $5 + local.get $2 + i32.le_u + br_if $block_1 + i32.const 0 + i32.const -1 + i32.store offset=1055128 + return + end ;; $block_15 local.get $2 - i32.const -2 + i32.const -8 i32.and - i32.store - local.get $1 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 + local.tee $5 local.get $0 i32.add - local.get $0 - i32.store - br $block_1 - end ;; $block_2 - block $block_17 - block $block_18 - block $block_19 - block $block_20 - block $block_21 - block $block_22 - block $block_23 - block $block_24 - i32.const 0 - i32.load offset=1054988 - local.get $3 - i32.eq - br_if $block_24 - i32.const 0 - i32.load offset=1054984 - local.get $3 - i32.eq - br_if $block_23 - local.get $2 - i32.const -8 - i32.and - local.tee $4 - local.get $0 - i32.add - local.set $0 - local.get $4 - i32.const 255 - i32.gt_u - br_if $block_22 - local.get $3 - i32.load offset=12 - local.tee $4 - local.get $3 - i32.load offset=8 - local.tee $3 - i32.eq - br_if $block_20 - local.get $3 - local.get $4 - i32.store offset=12 - local.get $4 - local.get $3 - i32.store offset=8 - br $block_17 - end ;; $block_24 - i32.const 0 - local.get $1 - i32.store offset=1054988 - i32.const 0 - i32.const 0 - i32.load offset=1054980 - local.get $0 - i32.add - local.tee $0 - i32.store offset=1054980 - local.get $1 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 - i32.const 0 - i32.load offset=1054984 - i32.eq - br_if $block_21 - i32.const 0 - local.set $1 - i32.const 0 - i32.load offset=1055016 - local.tee $2 - local.get $0 - i32.ge_u - br_if $block - br $block_0 - end ;; $block_23 - i32.const 0 - local.get $1 - i32.store offset=1054984 - i32.const 0 - i32.const 0 - i32.load offset=1054976 - local.get $0 - i32.add - local.tee $0 - i32.store offset=1054976 - local.get $1 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 - local.get $0 + local.set $0 + block $block_22 + block $block_23 + local.get $5 + i32.const 256 + i32.lt_u + br_if $block_23 + local.get $3 + i32.load offset=24 + local.set $4 + block $block_24 + block $block_25 + block $block_26 + local.get $3 + i32.load offset=12 + local.tee $5 + local.get $3 + i32.ne + br_if $block_26 + local.get $3 + i32.const 20 + i32.const 16 + local.get $3 + i32.load offset=20 + local.tee $5 + select i32.add - local.get $0 - i32.store - return - end ;; $block_22 - local.get $3 - i32.load offset=24 - local.set $6 - local.get $3 - i32.load offset=12 - local.tee $4 - local.get $3 - i32.eq - br_if $block_19 + i32.load + local.tee $2 + br_if $block_25 + i32.const 0 + local.set $5 + br $block_24 + end ;; $block_26 local.get $3 i32.load offset=8 local.tee $2 - local.get $4 + local.get $5 i32.store offset=12 - local.get $4 + local.get $5 local.get $2 i32.store offset=8 + br $block_24 + end ;; $block_25 + local.get $3 + i32.const 20 + i32.add + local.get $3 + i32.const 16 + i32.add + local.get $5 + select + local.set $6 + loop $loop_2 local.get $6 - br_if $block_18 - br $block_17 - end ;; $block_21 - i32.const 0 - i32.const 0 - i32.store offset=1054976 - i32.const 0 - i32.const 0 - i32.store offset=1054984 - i32.const 0 - local.set $1 - i32.const 0 - i32.load offset=1055016 - local.tee $2 - local.get $0 - i32.lt_u - br_if $block_0 - br $block - end ;; $block_20 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 - local.get $2 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - br $block_17 - end ;; $block_19 - block $block_25 - local.get $3 - i32.const 20 - i32.const 16 - local.get $3 - i32.load offset=20 - local.tee $4 - select - i32.add - i32.load - local.tee $2 - i32.eqz - br_if $block_25 - local.get $3 - i32.const 20 - i32.add - local.get $3 - i32.const 16 - i32.add - local.get $4 - select - local.set $5 - block $block_26 - loop $loop_0 - local.get $5 local.set $7 block $block_27 local.get $2 - local.tee $4 + local.tee $5 i32.const 20 i32.add - local.tee $5 + local.tee $6 i32.load local.tee $2 - i32.eqz br_if $block_27 - local.get $2 - br_if $loop_0 - br $block_26 + local.get $5 + i32.const 16 + i32.add + local.set $6 + local.get $5 + i32.load offset=16 + local.set $2 end ;; $block_27 - local.get $4 - i32.const 16 + local.get $2 + br_if $loop_2 + end ;; $loop_2 + local.get $7 + i32.const 0 + i32.store + end ;; $block_24 + local.get $4 + i32.eqz + br_if $block_22 + block $block_28 + block $block_29 + local.get $3 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 i32.add - local.set $5 - local.get $4 - i32.load offset=16 local.tee $2 - br_if $loop_0 - end ;; $loop_0 - end ;; $block_26 - local.get $7 - i32.const 0 - i32.store - local.get $6 - br_if $block_18 - br $block_17 - end ;; $block_25 - i32.const 0 - local.set $4 - local.get $6 - i32.eqz - br_if $block_17 - end ;; $block_18 - block $block_28 - block $block_29 - block $block_30 - local.get $3 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $2 - i32.load - local.get $3 - i32.eq - br_if $block_30 - local.get $6 + i32.load + local.get $3 + i32.ne + br_if $block_29 + local.get $2 + local.get $5 + i32.store + local.get $5 + br_if $block_28 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $3 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_22 + end ;; $block_29 + local.get $4 i32.const 16 i32.const 20 - local.get $6 + local.get $4 i32.load offset=16 local.get $3 i32.eq select i32.add - local.get $4 + local.get $5 i32.store - local.get $4 - br_if $block_29 - br $block_17 - end ;; $block_30 - local.get $2 - local.get $4 - i32.store + local.get $5 + i32.eqz + br_if $block_22 + end ;; $block_28 + local.get $5 local.get $4 + i32.store offset=24 + block $block_30 + local.get $3 + i32.load offset=16 + local.tee $2 + i32.eqz + br_if $block_30 + local.get $5 + local.get $2 + i32.store offset=16 + local.get $2 + local.get $5 + i32.store offset=24 + end ;; $block_30 + local.get $3 + i32.load offset=20 + local.tee $3 i32.eqz - br_if $block_28 - end ;; $block_29 - local.get $4 - local.get $6 - i32.store offset=24 + br_if $block_22 + local.get $5 + i32.const 20 + i32.add + local.get $3 + i32.store + local.get $3 + local.get $5 + i32.store offset=24 + br $block_22 + end ;; $block_23 block $block_31 local.get $3 - i32.load offset=16 - local.tee $2 - i32.eqz + i32.load offset=12 + local.tee $5 + local.get $3 + i32.load offset=8 + local.tee $3 + i32.eq br_if $block_31 - local.get $4 - local.get $2 - i32.store offset=16 - local.get $2 - local.get $4 - i32.store offset=24 + local.get $3 + local.get $5 + i32.store offset=12 + local.get $5 + local.get $3 + i32.store offset=8 + br $block_22 end ;; $block_31 - local.get $3 - i32.load offset=20 - local.tee $3 - i32.eqz - br_if $block_17 - local.get $4 - i32.const 20 - i32.add - local.get $3 - i32.store - local.get $3 - local.get $4 - i32.store offset=24 - br $block_17 - end ;; $block_28 + i32.const 0 + i32.const 0 + i32.load offset=1054688 + i32.const -2 + local.get $2 + i32.const 3 + i32.shr_u + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_22 + local.get $1 + local.get $0 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 + local.get $0 + i32.add + local.get $0 + i32.store + local.get $1 i32.const 0 + i32.load offset=1055096 + i32.ne + br_if $block_13 i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $3 - i32.const 28 - i32.add - i32.load - i32.rotl - i32.and - i32.store offset=1054580 - end ;; $block_17 - local.get $1 - local.get $0 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 - local.get $0 - i32.add + local.get $0 + i32.store offset=1055088 + return + end ;; $block_13 local.get $0 - i32.store - local.get $1 - i32.const 0 - i32.load offset=1054984 - i32.ne - br_if $block_1 + i32.const 256 + i32.lt_u + br_if $block_0 i32.const 0 - local.get $0 - i32.store offset=1054976 - return - end ;; $block_1 - block $block_32 - block $block_33 - block $block_34 - block $block_35 - block $block_36 - block $block_37 - block $block_38 - block $block_39 - block $block_40 - local.get $0 - i32.const 255 - i32.gt_u - br_if $block_40 - local.get $0 - i32.const 3 - i32.shr_u - local.tee $3 - i32.const 3 - i32.shl - i32.const 1054584 - i32.add - local.set $0 - i32.const 0 - i32.load offset=1054576 - local.tee $2 - i32.const 1 - local.get $3 - i32.const 31 - i32.and - i32.shl - local.tee $3 - i32.and - i32.eqz - br_if $block_39 - local.get $0 - i32.load offset=8 - local.set $3 - br $block_38 - end ;; $block_40 - i32.const 0 - local.set $3 - block $block_41 - local.get $0 - i32.const 8 - i32.shr_u - local.tee $2 - i32.eqz - br_if $block_41 - i32.const 31 - local.set $3 - local.get $0 - i32.const 16777215 - i32.gt_u - br_if $block_41 - local.get $0 - i32.const 38 - local.get $2 - i32.clz - local.tee $3 - i32.sub - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.const 31 - local.get $3 - i32.sub - i32.const 1 - i32.shl - i32.or - local.set $3 - end ;; $block_41 - local.get $1 - i64.const 0 - i64.store offset=16 align=4 - local.get $1 - i32.const 28 - i32.add - local.get $3 - i32.store - local.get $3 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.set $2 - i32.const 0 - i32.load offset=1054580 - local.tee $4 - i32.const 1 - local.get $3 - i32.const 31 - i32.and - i32.shl - local.tee $5 - i32.and - i32.eqz - br_if $block_37 - local.get $2 - i32.load - local.tee $4 - i32.load offset=4 - i32.const -8 - i32.and - local.get $0 - i32.ne - br_if $block_36 - local.get $4 - local.set $3 - br $block_35 - end ;; $block_39 + local.set $3 + block $block_32 + local.get $0 + i32.const 8 + i32.shr_u + local.tee $2 + i32.eqz + br_if $block_32 + i32.const 31 + local.set $3 + local.get $0 + i32.const 16777215 + i32.gt_u + br_if $block_32 + local.get $0 + i32.const 6 + local.get $2 + i32.clz + local.tee $3 + i32.sub + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + local.get $3 + i32.const 1 + i32.shl + i32.sub + i32.const 62 + i32.add + local.set $3 + end ;; $block_32 + local.get $1 + i64.const 0 + i64.store offset=16 align=4 + local.get $1 + i32.const 28 + i32.add + local.get $3 + i32.store + local.get $3 + i32.const 2 + i32.shl + i32.const 1054960 + i32.add + local.set $2 + block $block_33 + block $block_34 + block $block_35 + block $block_36 + block $block_37 + block $block_38 i32.const 0 - local.get $2 + i32.load offset=1054692 + local.tee $5 + i32.const 1 local.get $3 - i32.or - i32.store offset=1054576 + i32.const 31 + i32.and + i32.shl + local.tee $6 + i32.and + i32.eqz + br_if $block_38 + local.get $2 + i32.load + local.tee $5 + i32.load offset=4 + i32.const -8 + i32.and local.get $0 + i32.ne + br_if $block_37 + local.get $5 local.set $3 + br $block_36 end ;; $block_38 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $3 - local.get $1 - i32.store offset=12 + i32.const 0 + local.get $5 + local.get $6 + i32.or + i32.store offset=1054692 + local.get $2 local.get $1 - local.get $0 - i32.store offset=12 + i32.store local.get $1 - local.get $3 - i32.store offset=8 - return + i32.const 24 + i32.add + local.get $2 + i32.store + br $block_34 end ;; $block_37 + local.get $0 i32.const 0 - local.get $4 - local.get $5 - i32.or - i32.store offset=1054580 - local.get $2 - local.get $1 - i32.store - local.get $1 - i32.const 24 - i32.add - local.get $2 - i32.store - br $block_33 - end ;; $block_36 - local.get $0 - i32.const 0 - i32.const 25 - local.get $3 - i32.const 1 - i32.shr_u - i32.sub - i32.const 31 - i32.and - local.get $3 - i32.const 31 - i32.eq - select - i32.shl - local.set $2 - loop $loop_1 - local.get $4 - local.get $2 - i32.const 29 + i32.const 25 + local.get $3 + i32.const 1 i32.shr_u - i32.const 4 + i32.sub + i32.const 31 i32.and - i32.add - i32.const 16 - i32.add - local.tee $5 - i32.load - local.tee $3 - i32.eqz - br_if $block_34 - local.get $2 - i32.const 1 + local.get $3 + i32.const 31 + i32.eq + select i32.shl local.set $2 - local.get $3 - local.set $4 - local.get $3 - i32.load offset=4 - i32.const -8 - i32.and - local.get $0 - i32.ne - br_if $loop_1 - end ;; $loop_1 + loop $loop_3 + local.get $5 + local.get $2 + i32.const 29 + i32.shr_u + i32.const 4 + i32.and + i32.add + i32.const 16 + i32.add + local.tee $6 + i32.load + local.tee $3 + i32.eqz + br_if $block_35 + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $3 + local.set $5 + local.get $3 + i32.load offset=4 + i32.const -8 + i32.and + local.get $0 + i32.ne + br_if $loop_3 + end ;; $loop_3 + end ;; $block_36 + local.get $3 + i32.load offset=8 + local.tee $0 + local.get $1 + i32.store offset=12 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $1 + i32.const 24 + i32.add + i32.const 0 + i32.store + local.get $1 + local.get $3 + i32.store offset=12 + local.get $1 + local.get $0 + i32.store offset=8 + br $block_33 end ;; $block_35 - local.get $3 - i32.load offset=8 - local.tee $0 - local.get $1 - i32.store offset=12 - local.get $3 + local.get $6 local.get $1 - i32.store offset=8 + i32.store local.get $1 i32.const 24 i32.add - i32.const 0 + local.get $5 i32.store - local.get $1 - local.get $3 - i32.store offset=12 - local.get $1 - local.get $0 - i32.store offset=8 - br $block_32 end ;; $block_34 - local.get $5 - local.get $1 - i32.store - local.get $1 - i32.const 24 - i32.add - local.get $4 - i32.store - end ;; $block_33 - local.get $1 - local.get $1 - i32.store offset=12 - local.get $1 - local.get $1 - i32.store offset=8 - end ;; $block_32 - i32.const 0 - i32.const 0 - i32.load offset=1055024 - i32.const -1 - i32.add - local.tee $1 - i32.store offset=1055024 - local.get $1 - br_if $block - block $block_42 - i32.const 0 - i32.load offset=1055008 - local.tee $0 - i32.eqz - br_if $block_42 - i32.const 0 - local.set $1 - loop $loop_2 - local.get $1 - i32.const 1 - i32.add - local.set $1 - local.get $0 - i32.load offset=8 - local.tee $0 - br_if $loop_2 - end ;; $loop_2 - i32.const 0 - local.get $1 - i32.const 4095 - local.get $1 - i32.const 4095 - i32.gt_u - select - i32.store offset=1055024 - return - end ;; $block_42 - i32.const 0 - i32.const 4095 - i32.store offset=1055024 - return - end ;; $block_0 - local.get $1 - i32.load offset=1054988 - local.tee $0 - i32.eqz - br_if $block - block $block_43 - i32.const 0 - i32.load offset=1054980 - local.tee $4 - i32.const 41 - i32.lt_u - br_if $block_43 - i32.const 1055000 - local.set $1 - loop $loop_3 - block $block_44 local.get $1 - i32.load - local.tee $3 - local.get $0 - i32.gt_u - br_if $block_44 - local.get $3 local.get $1 - i32.load offset=4 - i32.add - local.get $0 - i32.gt_u - br_if $block_43 - end ;; $block_44 - local.get $1 - i32.load offset=8 - local.tee $1 - br_if $loop_3 - end ;; $loop_3 - end ;; $block_43 - block $block_45 - block $block_46 - i32.const 0 - i32.load offset=1055008 - local.tee $0 - i32.eqz - br_if $block_46 - i32.const 0 - local.set $1 - loop $loop_4 + i32.store offset=12 local.get $1 - i32.const 1 - i32.add - local.set $1 - local.get $0 - i32.load offset=8 - local.tee $0 - br_if $loop_4 - end ;; $loop_4 + local.get $1 + i32.store offset=8 + end ;; $block_33 i32.const 0 - local.set $0 i32.const 0 + i32.load offset=1055136 + i32.const -1 + i32.add + local.tee $1 + i32.store offset=1055136 local.get $1 - i32.const 4095 - local.get $1 - i32.const 4095 - i32.gt_u - select - i32.store offset=1055024 - local.get $4 - local.get $2 - i32.gt_u - br_if $block_45 - br $block - end ;; $block_46 - i32.const 0 - local.set $0 + i32.eqz + br_if $block + end ;; $block_1 + return + end ;; $block_0 + local.get $0 + i32.const 3 + i32.shr_u + local.tee $3 + i32.const 3 + i32.shl + i32.const 1054696 + i32.add + local.set $0 + block $block_39 + block $block_40 + i32.const 0 + i32.load offset=1054688 + local.tee $2 + i32.const 1 + local.get $3 + i32.const 31 + i32.and + i32.shl + local.tee $3 + i32.and + i32.eqz + br_if $block_40 + local.get $0 + i32.load offset=8 + local.set $3 + br $block_39 + end ;; $block_40 i32.const 0 - i32.const 4095 - i32.store offset=1055024 - local.get $4 local.get $2 - i32.le_u - br_if $block - end ;; $block_45 + local.get $3 + i32.or + i32.store offset=1054688 + local.get $0 + local.set $3 + end ;; $block_39 local.get $0 - i32.const -1 - i32.store offset=1055016 + local.get $1 + i32.store offset=8 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $1 + local.get $0 + i32.store offset=12 + local.get $1 + local.get $3 + i32.store offset=8 return end ;; $block - ) - - (func $__rdl_realloc (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - i32.const 0 - local.set $2 - block $block - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - local.get $1 - i32.const -65588 - i32.gt_u - br_if $block_7 - i32.const 16 - local.get $1 - i32.const 11 - i32.add - i32.const -8 - i32.and - local.get $1 - i32.const 11 - i32.lt_u - select - local.set $3 - local.get $0 - i32.const -4 - i32.add - local.tee $4 - i32.load - local.tee $5 - i32.const -8 - i32.and - local.set $6 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - local.get $5 - i32.const 3 - i32.and - i32.eqz - br_if $block_12 - local.get $0 - i32.const -8 - i32.add - local.tee $7 - local.get $6 - i32.add - local.set $8 - local.get $6 - local.get $3 - i32.ge_u - br_if $block_11 - i32.const 0 - i32.load offset=1054988 - local.get $8 - i32.eq - br_if $block_10 - i32.const 0 - i32.load offset=1054984 - local.get $8 - i32.eq - br_if $block_9 - local.get $8 - i32.load offset=4 - local.tee $5 - i32.const 2 - i32.and - br_if $block_8 - local.get $5 - i32.const -8 - i32.and - local.tee $9 - local.get $6 - i32.add - local.tee $10 - local.get $3 - i32.lt_u - br_if $block_8 - local.get $10 - local.get $3 - i32.sub - local.set $11 - local.get $9 - i32.const 255 - i32.gt_u - br_if $block_5 - local.get $8 - i32.load offset=12 - local.tee $1 - local.get $8 - i32.load offset=8 - local.tee $2 - i32.eq - br_if $block_4 - local.get $2 - local.get $1 - i32.store offset=12 - local.get $1 - local.get $2 - i32.store offset=8 - local.get $11 - i32.const 15 - i32.le_u - br_if $block_0 - br $block - end ;; $block_12 - local.get $3 - i32.const 256 - i32.lt_u - br_if $block_8 - local.get $6 - local.get $3 - i32.const 4 - i32.or - i32.lt_u - br_if $block_8 - local.get $6 - local.get $3 - i32.sub - i32.const 131073 - i32.ge_u - br_if $block_8 - local.get $0 - return - end ;; $block_11 - block $block_13 - local.get $6 - local.get $3 - i32.sub - local.tee $1 - i32.const 16 - i32.ge_u - br_if $block_13 - local.get $0 - return - end ;; $block_13 - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 - local.get $3 - i32.add - local.tee $2 - local.get $1 - i32.const 3 - i32.or - i32.store offset=4 - local.get $8 - local.get $8 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $2 - local.get $1 - call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h08c63a089677cf87 - local.get $0 - return - end ;; $block_10 - i32.const 0 - i32.load offset=1054980 - local.get $6 - i32.add - local.tee $6 - local.get $3 - i32.le_u - br_if $block_8 - local.get $4 - local.get $3 - local.get $5 - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 - local.get $3 - i32.add - local.tee $1 - local.get $6 - local.get $3 - i32.sub - local.tee $2 - i32.const 1 - i32.or - i32.store offset=4 - i32.const 0 - local.get $2 - i32.store offset=1054980 - i32.const 0 - local.get $1 - i32.store offset=1054988 - local.get $0 - return - end ;; $block_9 - i32.const 0 - i32.load offset=1054976 - local.get $6 - i32.add - local.tee $6 - local.get $3 - i32.ge_u - br_if $block_6 - end ;; $block_8 - local.get $1 - call $dlmalloc::dlmalloc::Dlmalloc::malloc::h7ef7d8a98d4afe8d - local.tee $3 - i32.eqz - br_if $block_7 - local.get $3 - local.get $0 - local.get $1 - local.get $4 - i32.load - local.tee $2 - i32.const -8 - i32.and - i32.const 4 - i32.const 8 - local.get $2 - i32.const 3 - i32.and - select - i32.sub - local.tee $2 - local.get $2 - local.get $1 - i32.gt_u - select - call $memcpy - local.set $1 - local.get $0 - call $dlmalloc::dlmalloc::Dlmalloc::free::he25d64d2cc54b15f - local.get $1 - local.set $2 - end ;; $block_7 - local.get $2 - return - end ;; $block_6 - block $block_14 - block $block_15 - local.get $6 - local.get $3 - i32.sub - local.tee $1 - i32.const 16 - i32.ge_u - br_if $block_15 - local.get $4 - local.get $5 - i32.const 1 - i32.and - local.get $6 - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 - local.get $6 - i32.add - local.tee $1 - local.get $1 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - i32.const 0 - local.set $1 - i32.const 0 - local.set $2 - br $block_14 - end ;; $block_15 - local.get $4 - local.get $3 + block $block_41 + block $block_42 + i32.const 0 + i32.load offset=1055120 + local.tee $0 + br_if $block_42 + i32.const 4095 + local.set $1 + br $block_41 + end ;; $block_42 + i32.const 0 + local.set $1 + loop $loop_4 + local.get $1 + i32.const 1 + i32.add + local.set $1 + local.get $0 + i32.load offset=8 + local.tee $0 + br_if $loop_4 + end ;; $loop_4 + local.get $1 + i32.const 4095 + local.get $1 + i32.const 4095 + i32.gt_u + select + local.set $1 + end ;; $block_41 + i32.const 0 + local.get $1 + i32.store offset=1055136 + ) + + (func $__rdl_realloc (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + i32.const 0 + local.set $2 + block $block + local.get $1 + i32.const -65588 + i32.gt_u + br_if $block + i32.const 16 + local.get $1 + i32.const 11 + i32.add + i32.const -8 + i32.and + local.get $1 + i32.const 11 + i32.lt_u + select + local.set $3 + local.get $0 + i32.const -4 + i32.add + local.tee $4 + i32.load + local.tee $5 + i32.const -8 + i32.and + local.set $6 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + block $block_5 + block $block_6 local.get $5 - i32.const 1 + i32.const 3 i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 + i32.eqz + br_if $block_6 + local.get $0 + i32.const -8 + i32.add + local.tee $7 + local.get $6 + i32.add + local.set $8 + local.get $6 local.get $3 + i32.ge_u + br_if $block_5 + i32.const 0 + i32.load offset=1055100 + local.get $8 + i32.eq + br_if $block_4 + i32.const 0 + i32.load offset=1055096 + local.get $8 + i32.eq + br_if $block_3 + local.get $8 + i32.load offset=4 + local.tee $5 + i32.const 2 + i32.and + br_if $block_0 + local.get $5 + i32.const -8 + i32.and + local.tee $9 + local.get $6 i32.add + local.tee $10 + local.get $3 + i32.ge_u + br_if $block_2 + br $block_0 + end ;; $block_6 + local.get $3 + i32.const 256 + i32.lt_u + br_if $block_0 + local.get $6 + local.get $3 + i32.const 4 + i32.or + i32.lt_u + br_if $block_0 + local.get $6 + local.get $3 + i32.sub + i32.const 131073 + i32.ge_u + br_if $block_0 + br $block_1 + end ;; $block_5 + local.get $6 + local.get $3 + i32.sub + local.tee $1 + i32.const 16 + i32.lt_u + br_if $block_1 + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $3 + i32.add + local.tee $2 + local.get $1 + i32.const 3 + i32.or + i32.store offset=4 + local.get $8 + local.get $8 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $2 + local.get $1 + call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h1effa892c850b7b3 + br $block_1 + end ;; $block_4 + i32.const 0 + i32.load offset=1055092 + local.get $6 + i32.add + local.tee $6 + local.get $3 + i32.le_u + br_if $block_0 + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $3 + i32.add + local.tee $1 + local.get $6 + local.get $3 + i32.sub + local.tee $2 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.get $2 + i32.store offset=1055092 + i32.const 0 + local.get $1 + i32.store offset=1055100 + br $block_1 + end ;; $block_3 + i32.const 0 + i32.load offset=1055088 + local.get $6 + i32.add + local.tee $6 + local.get $3 + i32.lt_u + br_if $block_0 + block $block_7 + block $block_8 + local.get $6 + local.get $3 + i32.sub + local.tee $1 + i32.const 15 + i32.gt_u + br_if $block_8 + local.get $4 + local.get $5 + i32.const 1 + i32.and + local.get $6 + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $6 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + i32.const 0 + local.set $1 + i32.const 0 + local.set $2 + br $block_7 + end ;; $block_8 + local.get $4 + local.get $3 + local.get $5 + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $3 + i32.add + local.tee $2 + local.get $1 + i32.const 1 + i32.or + i32.store offset=4 + local.get $7 + local.get $6 + i32.add + local.tee $3 + local.get $1 + i32.store + local.get $3 + local.get $3 + i32.load offset=4 + i32.const -2 + i32.and + i32.store offset=4 + end ;; $block_7 + i32.const 0 + local.get $2 + i32.store offset=1055096 + i32.const 0 + local.get $1 + i32.store offset=1055088 + br $block_1 + end ;; $block_2 + local.get $10 + local.get $3 + i32.sub + local.set $11 + block $block_9 + block $block_10 + local.get $9 + i32.const 256 + i32.lt_u + br_if $block_10 + local.get $8 + i32.load offset=24 + local.set $9 + block $block_11 + block $block_12 + block $block_13 + local.get $8 + i32.load offset=12 local.tee $2 - local.get $1 - i32.const 1 - i32.or - i32.store offset=4 - local.get $7 - local.get $6 + local.get $8 + i32.ne + br_if $block_13 + local.get $8 + i32.const 20 + i32.const 16 + local.get $8 + i32.load offset=20 + local.tee $2 + select i32.add - local.tee $3 - local.get $1 - i32.store - local.get $3 - local.get $3 - i32.load offset=4 - i32.const -2 - i32.and - i32.store offset=4 - end ;; $block_14 - i32.const 0 + i32.load + local.tee $1 + br_if $block_12 + i32.const 0 + local.set $2 + br $block_11 + end ;; $block_13 + local.get $8 + i32.load offset=8 + local.tee $1 + local.get $2 + i32.store offset=12 local.get $2 - i32.store offset=1054984 - i32.const 0 local.get $1 - i32.store offset=1054976 - local.get $0 - return - end ;; $block_5 - local.get $8 - i32.load offset=24 - local.set $9 - local.get $8 - i32.load offset=12 - local.tee $2 + i32.store offset=8 + br $block_11 + end ;; $block_12 local.get $8 - i32.eq - br_if $block_3 + i32.const 20 + i32.add local.get $8 - i32.load offset=8 - local.tee $1 - local.get $2 - i32.store offset=12 + i32.const 16 + i32.add local.get $2 - local.get $1 - i32.store offset=8 - local.get $9 - br_if $block_2 - br $block_1 - end ;; $block_4 - i32.const 0 - i32.const 0 - i32.load offset=1054576 - i32.const -2 - local.get $5 - i32.const 3 - i32.shr_u - i32.rotl - i32.and - i32.store offset=1054576 - local.get $11 - i32.const 15 - i32.le_u - br_if $block_0 - br $block - end ;; $block_3 - block $block_16 - local.get $8 - i32.const 20 - i32.const 16 - local.get $8 - i32.load offset=20 - local.tee $2 - select - i32.add - i32.load - local.tee $1 - i32.eqz - br_if $block_16 - local.get $8 - i32.const 20 - i32.add - local.get $8 - i32.const 16 - i32.add - local.get $2 - select - local.set $6 - loop $loop - local.get $6 - local.set $5 - block $block_17 + select + local.set $6 + loop $loop + local.get $6 + local.set $5 + block $block_14 + local.get $1 + local.tee $2 + i32.const 20 + i32.add + local.tee $6 + i32.load + local.tee $1 + br_if $block_14 + local.get $2 + i32.const 16 + i32.add + local.set $6 + local.get $2 + i32.load offset=16 + local.set $1 + end ;; $block_14 local.get $1 - local.tee $2 - i32.const 20 + br_if $loop + end ;; $loop + local.get $5 + i32.const 0 + i32.store + end ;; $block_11 + local.get $9 + i32.eqz + br_if $block_9 + block $block_15 + block $block_16 + local.get $8 + i32.load offset=28 + i32.const 2 + i32.shl + i32.const 1054960 i32.add - local.tee $6 - i32.load local.tee $1 - br_if $block_17 + i32.load + local.get $8 + i32.ne + br_if $block_16 + local.get $1 local.get $2 - i32.const 16 - i32.add - local.set $6 + i32.store local.get $2 - i32.load offset=16 - local.set $1 - end ;; $block_17 - local.get $1 - br_if $loop - end ;; $loop - local.get $5 - i32.const 0 - i32.store - local.get $9 - br_if $block_2 - br $block_1 - end ;; $block_16 - i32.const 0 - local.set $2 - local.get $9 - i32.eqz - br_if $block_1 - end ;; $block_2 - block $block_18 - block $block_19 - block $block_20 - local.get $8 - i32.load offset=28 - i32.const 2 - i32.shl - i32.const 1054848 - i32.add - local.tee $1 - i32.load - local.get $8 - i32.eq - br_if $block_20 + br_if $block_15 + i32.const 0 + i32.const 0 + i32.load offset=1054692 + i32.const -2 + local.get $8 + i32.load offset=28 + i32.rotl + i32.and + i32.store offset=1054692 + br $block_9 + end ;; $block_16 local.get $9 i32.const 16 i32.const 20 @@ -8918,131 +8263,172 @@ local.get $2 i32.store local.get $2 - br_if $block_19 - br $block_1 - end ;; $block_20 - local.get $1 - local.get $2 - i32.store + i32.eqz + br_if $block_9 + end ;; $block_15 local.get $2 - i32.eqz - br_if $block_18 - end ;; $block_19 - local.get $2 - local.get $9 - i32.store offset=24 - block $block_21 + local.get $9 + i32.store offset=24 + block $block_17 + local.get $8 + i32.load offset=16 + local.tee $1 + i32.eqz + br_if $block_17 + local.get $2 + local.get $1 + i32.store offset=16 + local.get $1 + local.get $2 + i32.store offset=24 + end ;; $block_17 local.get $8 - i32.load offset=16 + i32.load offset=20 local.tee $1 i32.eqz - br_if $block_21 + br_if $block_9 local.get $2 + i32.const 20 + i32.add local.get $1 - i32.store offset=16 + i32.store local.get $1 local.get $2 i32.store offset=24 - end ;; $block_21 - local.get $8 - i32.load offset=20 + br $block_9 + end ;; $block_10 + block $block_18 + local.get $8 + i32.load offset=12 + local.tee $1 + local.get $8 + i32.load offset=8 + local.tee $2 + i32.eq + br_if $block_18 + local.get $2 + local.get $1 + i32.store offset=12 + local.get $1 + local.get $2 + i32.store offset=8 + br $block_9 + end ;; $block_18 + i32.const 0 + i32.const 0 + i32.load offset=1054688 + i32.const -2 + local.get $5 + i32.const 3 + i32.shr_u + i32.rotl + i32.and + i32.store offset=1054688 + end ;; $block_9 + block $block_19 + local.get $11 + i32.const 16 + i32.lt_u + br_if $block_19 + local.get $4 + local.get $3 + local.get $4 + i32.load + i32.const 1 + i32.and + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $3 + i32.add local.tee $1 - i32.eqz - br_if $block_1 - local.get $2 - i32.const 20 + local.get $11 + i32.const 3 + i32.or + i32.store offset=4 + local.get $7 + local.get $10 i32.add - local.get $1 - i32.store - local.get $1 + local.tee $2 local.get $2 - i32.store offset=24 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 + local.get $1 local.get $11 - i32.const 15 - i32.le_u - br_if $block_0 - br $block - end ;; $block_18 - i32.const 0 - i32.const 0 - i32.load offset=1054580 - i32.const -2 - local.get $8 - i32.const 28 - i32.add + call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h1effa892c850b7b3 + br $block_1 + end ;; $block_19 + local.get $4 + local.get $10 + local.get $4 i32.load - i32.rotl + i32.const 1 i32.and - i32.store offset=1054580 + i32.or + i32.const 2 + i32.or + i32.store + local.get $7 + local.get $10 + i32.add + local.tee $1 + local.get $1 + i32.load offset=4 + i32.const 1 + i32.or + i32.store offset=4 end ;; $block_1 - local.get $11 - i32.const 15 - i32.gt_u - br_if $block + local.get $0 + local.set $2 + br $block end ;; $block_0 - local.get $4 - local.get $10 + local.get $1 + call $dlmalloc::dlmalloc::Dlmalloc::malloc::hec92e476cdfbbd60 + local.tee $3 + i32.eqz + br_if $block + local.get $3 + local.get $0 + local.get $1 local.get $4 i32.load - i32.const 1 + local.tee $2 + i32.const -8 i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 - local.get $10 - i32.add - local.tee $1 + i32.const 4 + i32.const 8 + local.get $2 + i32.const 3 + i32.and + select + i32.sub + local.tee $2 + local.get $2 local.get $1 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 + i32.gt_u + select + call $memcpy + local.set $1 local.get $0 + call $dlmalloc::dlmalloc::Dlmalloc::free::h6ea6f2ba0e2c950d + local.get $1 return end ;; $block - local.get $4 - local.get $3 - local.get $4 - i32.load - i32.const 1 - i32.and - i32.or - i32.const 2 - i32.or - i32.store - local.get $7 - local.get $3 - i32.add - local.tee $1 - local.get $11 - i32.const 3 - i32.or - i32.store offset=4 - local.get $7 - local.get $10 - i32.add - local.tee $2 local.get $2 - i32.load offset=4 - i32.const 1 - i32.or - i32.store offset=4 - local.get $1 - local.get $11 - call $dlmalloc::dlmalloc::Dlmalloc::dispose_chunk::h08c63a089677cf87 - local.get $0 ) - (func $rust_begin_unwind (type $6) + (func $rust_begin_unwind (type $5) (param $0 i32) local.get $0 - call $std::panicking::continue_panic_fmt::he2d0fc2a935878af + call $std::panicking::continue_panic_fmt::he42d474e4cddb3a9 unreachable ) - (func $core::slice::slice_index_len_fail::hb115deb2b20f49d8 (type $0) + (func $core::slice::slice_index_len_fail::h7c242876dcc4f7b2 (type $0) (param $0 i32) (param $1 i32) (local $2 i32) @@ -9058,25 +8444,30 @@ local.get $0 i32.store local.get $2 - i32.const 44 - i32.add - i32.const 6 - i32.store - local.get $2 i32.const 28 i32.add i32.const 2 i32.store local.get $2 + i32.const 44 + i32.add i32.const 6 - i32.store offset=36 + i32.store local.get $2 i64.const 2 i64.store offset=12 align=4 local.get $2 - i32.const 1049388 + i32.const 1049384 i32.store offset=8 local.get $2 + i32.const 6 + i32.store offset=36 + local.get $2 + local.get $2 + i32.const 32 + i32.add + i32.store offset=24 + local.get $2 local.get $2 i32.const 4 i32.add @@ -9085,29 +8476,60 @@ local.get $2 i32.store offset=32 local.get $2 - local.get $2 - i32.const 32 - i32.add - i32.store offset=24 - local.get $2 i32.const 8 i32.add - i32.const 1049404 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd + i32.const 1049400 + call $core::panicking::panic_fmt::h772cfe55da576359 unreachable ) - (func $core::fmt::num::imp::::fmt::h4f3293445fab7cb7 (type $2) + (func $core::fmt::num::imp::::fmt::h0a73e93540d1767b (type $2) (param $0 i32) (param $1 i32) (result i32) local.get $0 i64.load32_u local.get $1 - call $core::fmt::num::imp::fmt_u64::h4648b2300e699242 + call $core::fmt::num::imp::fmt_u64::hbf92ea5b56adc693 + ) + + (func $core::panicking::panic_fmt::h772cfe55da576359 (type $0) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i64) + global.get $15 + i32.const 32 + i32.sub + local.tee $2 + global.set $15 + local.get $1 + i64.load align=4 + local.set $3 + local.get $2 + i32.const 20 + i32.add + local.get $1 + i64.load offset=8 align=4 + i64.store align=4 + local.get $2 + local.get $3 + i64.store offset=12 align=4 + local.get $2 + local.get $0 + i32.store offset=8 + local.get $2 + i32.const 1049116 + i32.store offset=4 + local.get $2 + i32.const 1049116 + i32.store + local.get $2 + call $rust_begin_unwind + unreachable ) - (func $core::panicking::panic_bounds_check::h51667a9f831439a7 (type $3) + (func $core::panicking::panic_bounds_check::hb65bbcdf415380e4 (type $3) (param $0 i32) (param $1 i32) (param $2 i32) @@ -9124,142 +8546,141 @@ local.get $1 i32.store local.get $3 - i32.const 44 - i32.add - i32.const 6 - i32.store - local.get $3 i32.const 28 i32.add i32.const 2 i32.store local.get $3 + i32.const 44 + i32.add i32.const 6 - i32.store offset=36 + i32.store local.get $3 i64.const 2 i64.store offset=12 align=4 local.get $3 - i32.const 1049104 + i32.const 1049100 i32.store offset=8 local.get $3 + i32.const 6 + i32.store offset=36 local.get $3 - i32.store offset=40 - local.get $3 - local.get $3 - i32.const 4 - i32.add - i32.store offset=32 - local.get $3 - local.get $3 - i32.const 32 - i32.add - i32.store offset=24 local.get $3 - i32.const 8 - i32.add - local.get $0 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd - unreachable - ) - - (func $core::fmt::num::imp::fmt_u64::h4648b2300e699242 (type $8) - (param $0 i64) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 i32) - (local $7 i32) - global.get $15 - i32.const 48 - i32.sub - local.tee $2 - global.set $15 - i32.const 39 - local.set $3 - block $block - block $block_0 - block $block_1 - local.get $0 - i64.const 10000 - i64.lt_u - br_if $block_1 - i32.const 39 - local.set $3 - loop $loop - local.get $2 - i32.const 9 - i32.add - local.get $3 - i32.add - local.tee $4 - i32.const -4 - i32.add - local.get $0 - local.get $0 - i64.const 10000 - i64.div_u - local.tee $5 - i64.const -10000 - i64.mul - i64.add - i32.wrap_i64 - local.tee $6 - i32.const 100 - i32.div_u - local.tee $7 - i32.const 1 - i32.shl - i32.const 1049186 - i32.add - i32.load16_u align=1 - i32.store16 align=1 - local.get $4 - i32.const -2 - i32.add - local.get $7 - i32.const -100 - i32.mul - local.get $6 - i32.add - i32.const 1 - i32.shl - i32.const 1049186 - i32.add - i32.load16_u align=1 - i32.store16 align=1 - local.get $3 - i32.const -4 - i32.add - local.set $3 - local.get $0 - i64.const 99999999 - i64.gt_u - local.set $4 - local.get $5 - local.set $0 - local.get $4 - br_if $loop - end ;; $loop - local.get $5 - i32.wrap_i64 - local.tee $4 - i32.const 99 - i32.le_s - br_if $block - br $block_0 - end ;; $block_1 + i32.const 32 + i32.add + i32.store offset=24 + local.get $3 + local.get $3 + i32.store offset=40 + local.get $3 + local.get $3 + i32.const 4 + i32.add + i32.store offset=32 + local.get $3 + i32.const 8 + i32.add + local.get $0 + call $core::panicking::panic_fmt::h772cfe55da576359 + unreachable + ) + + (func $core::fmt::num::imp::fmt_u64::hbf92ea5b56adc693 (type $9) + (param $0 i64) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $15 + i32.const 48 + i32.sub + local.tee $2 + global.set $15 + i32.const 39 + local.set $3 + block $block + block $block_0 local.get $0 + i64.const 10000 + i64.ge_u + br_if $block_0 + local.get $0 + local.set $4 + br $block + end ;; $block_0 + i32.const 39 + local.set $3 + loop $loop + local.get $2 + i32.const 9 + i32.add + local.get $3 + i32.add local.tee $5 - i32.wrap_i64 + i32.const -4 + i32.add + local.get $0 + local.get $0 + i64.const 10000 + i64.div_u local.tee $4 - i32.const 99 - i32.le_s - br_if $block - end ;; $block_0 + i64.const -10000 + i64.mul + i64.add + i32.wrap_i64 + local.tee $6 + i32.const 65535 + i32.and + i32.const 100 + i32.div_u + local.tee $7 + i32.const 1 + i32.shl + i32.const 1049182 + i32.add + i32.load16_u align=1 + i32.store16 align=1 + local.get $5 + i32.const -2 + i32.add + local.get $7 + i32.const -100 + i32.mul + local.get $6 + i32.add + i32.const 65535 + i32.and + i32.const 1 + i32.shl + i32.const 1049182 + i32.add + i32.load16_u align=1 + i32.store16 align=1 + local.get $3 + i32.const -4 + i32.add + local.set $3 + local.get $0 + i64.const 99999999 + i64.gt_u + local.set $5 + local.get $4 + local.set $0 + local.get $5 + br_if $loop + end ;; $loop + end ;; $block + block $block_1 + local.get $4 + i32.wrap_i64 + local.tee $5 + i32.const 99 + i32.le_s + br_if $block_1 local.get $2 i32.const 9 i32.add @@ -9268,14 +8689,14 @@ i32.add local.tee $3 i32.add - local.get $5 + local.get $4 i32.wrap_i64 local.tee $6 i32.const 65535 i32.and i32.const 100 i32.div_u - local.tee $4 + local.tee $5 i32.const -100 i32.mul local.get $6 @@ -9284,49 +8705,49 @@ i32.and i32.const 1 i32.shl - i32.const 1049186 + i32.const 1049182 i32.add i32.load16_u align=1 i32.store16 align=1 - end ;; $block + end ;; $block_1 block $block_2 block $block_3 - local.get $4 - i32.const 9 - i32.gt_s + local.get $5 + i32.const 10 + i32.lt_s br_if $block_3 local.get $2 i32.const 9 i32.add local.get $3 - i32.const -1 + i32.const -2 i32.add local.tee $3 i32.add - local.get $4 - i32.const 48 + local.get $5 + i32.const 1 + i32.shl + i32.const 1049182 i32.add - i32.store8 + i32.load16_u align=1 + i32.store16 align=1 br $block_2 end ;; $block_3 local.get $2 i32.const 9 i32.add local.get $3 - i32.const -2 + i32.const -1 i32.add local.tee $3 i32.add - local.get $4 - i32.const 1 - i32.shl - i32.const 1049186 + local.get $5 + i32.const 48 i32.add - i32.load16_u align=1 - i32.store16 align=1 + i32.store8 end ;; $block_2 local.get $1 - i32.const 1049120 + i32.const 1049116 i32.const 0 local.get $2 i32.const 9 @@ -9336,7 +8757,7 @@ i32.const 39 local.get $3 i32.sub - call $core::fmt::Formatter::pad_integral::h17dddcbb38d9710f + call $core::fmt::Formatter::pad_integral::h0e630a1dafcc54e1 local.set $3 local.get $2 i32.const 48 @@ -9345,17 +8766,13 @@ local.get $3 ) - (func $core::ptr::real_drop_in_place::h5a9a7fbf25605767 (type $6) - (param $0 i32) - ) - - (func $::type_id::h5fb1d47f0acdabcc (type $9) + (func $::type_id::h0651535bade0637a (type $10) (param $0 i32) (result i64) - i64.const -670765639137414048 + i64.const 455982915832198545 ) - (func $core::fmt::Formatter::pad_integral::h17dddcbb38d9710f (type $10) + (func $core::fmt::Formatter::pad_integral::h0e630a1dafcc54e1 (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -9368,7 +8785,6 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) local.get $0 i32.load local.tee $5 @@ -9380,436 +8796,361 @@ local.set $7 block $block block $block_0 - block $block_1 - block $block_2 - local.get $5 - i32.const 4 - i32.and - br_if $block_2 - i32.const 0 - local.set $1 - i32.const 43 - i32.const 1114112 - local.get $6 - select - local.set $6 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.eq - br_if $block_1 - br $block_0 - end ;; $block_2 - i32.const 0 + local.get $5 + i32.const 4 + i32.and + br_if $block_0 + i32.const 0 + local.set $1 + br $block + end ;; $block_0 + i32.const 0 + local.set $8 + block $block_1 + local.get $2 + i32.eqz + br_if $block_1 + local.get $2 + local.set $9 + local.get $1 + local.set $10 + loop $loop + local.get $8 + local.get $10 + i32.load8_u + i32.const 192 + i32.and + i32.const 128 + i32.eq + i32.add + local.set $8 + local.get $10 + i32.const 1 + i32.add + local.set $10 + local.get $9 + i32.const -1 + i32.add + local.tee $9 + br_if $loop + end ;; $loop + end ;; $block_1 + local.get $7 + local.get $2 + i32.add + local.get $8 + i32.sub + local.set $7 + end ;; $block + i32.const 43 + i32.const 1114112 + local.get $6 + select + local.set $8 + block $block_2 + block $block_3 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.eq + br_if $block_3 + i32.const 1 + local.set $10 + local.get $0 + local.get $8 + local.get $1 + local.get $2 + call $core::fmt::Formatter::pad_integral::write_prefix::h9e67c72a92bd1433 + br_if $block_2 + local.get $0 + i32.load offset=24 + local.get $3 + local.get $4 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + return + end ;; $block_3 + block $block_4 + local.get $0 + i32.const 12 + i32.add + i32.load + local.tee $9 + local.get $7 + i32.gt_u + br_if $block_4 + i32.const 1 + local.set $10 + local.get $0 + local.get $8 + local.get $1 + local.get $2 + call $core::fmt::Formatter::pad_integral::write_prefix::h9e67c72a92bd1433 + br_if $block_2 + local.get $0 + i32.load offset=24 + local.get $3 + local.get $4 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + return + end ;; $block_4 + block $block_5 + block $block_6 + local.get $5 + i32.const 8 + i32.and + br_if $block_6 + local.get $9 + local.get $7 + i32.sub local.set $9 - block $block_3 - local.get $2 - i32.eqz - br_if $block_3 - local.get $2 - local.set $10 - local.get $1 - local.set $8 - loop $loop + i32.const 0 + local.set $10 + block $block_7 + block $block_8 + block $block_9 + i32.const 1 + local.get $0 + i32.load8_u offset=48 + local.tee $7 + local.get $7 + i32.const 3 + i32.eq + select + br_table + $block_7 $block_9 $block_8 $block_9 + $block_7 ;; default + end ;; $block_9 local.get $9 - local.get $8 - i32.load8_u - i32.const 192 - i32.and - i32.const 128 - i32.eq - i32.add + local.set $10 + i32.const 0 local.set $9 - local.get $8 - i32.const 1 - i32.add - local.set $8 - local.get $10 - i32.const -1 - i32.add - local.tee $10 - br_if $loop - end ;; $loop - end ;; $block_3 - local.get $7 - local.get $2 + br $block_7 + end ;; $block_8 + local.get $9 + i32.const 1 + i32.shr_u + local.set $10 + local.get $9 + i32.const 1 + i32.add + i32.const 1 + i32.shr_u + local.set $9 + end ;; $block_7 + local.get $10 + i32.const 1 i32.add - local.get $9 - i32.sub - local.set $7 - i32.const 43 - i32.const 1114112 - local.get $6 - select - local.set $6 - local.get $0 - i32.load offset=8 + local.set $10 + loop $loop_0 + local.get $10 + i32.const -1 + i32.add + local.tee $10 + i32.eqz + br_if $block_5 + local.get $0 + i32.load offset=24 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load offset=28 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_0 + end ;; $loop_0 i32.const 1 - i32.ne - br_if $block_0 - end ;; $block_1 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - local.get $0 - i32.const 12 - i32.add - i32.load - local.tee $9 - local.get $7 - i32.le_u - br_if $block_15 - local.get $5 - i32.const 8 - i32.and - br_if $block_14 - local.get $9 - local.get $7 - i32.sub - local.set $8 - i32.const 1 - local.get $0 - i32.load8_u offset=48 - local.tee $9 - local.get $9 - i32.const 3 - i32.eq - select - local.tee $9 - i32.const 3 - i32.and - i32.eqz - br_if $block_13 - local.get $9 - i32.const 2 - i32.eq - br_if $block_12 - i32.const 0 - local.set $11 - local.get $8 - local.set $9 - br $block_11 - end ;; $block_15 - i32.const 1 - local.set $8 - local.get $0 - local.get $6 - local.get $1 - local.get $2 - call $core::fmt::Formatter::pad_integral::write_prefix::h80e5cb0c85711a72 - br_if $block - local.get $0 - i32.load offset=24 - local.get $3 - local.get $4 - local.get $0 - i32.const 28 - i32.add - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - return - end ;; $block_14 - i32.const 1 - local.set $8 - local.get $0 - i32.const 1 - i32.store8 offset=48 - local.get $0 - i32.const 48 - i32.store offset=4 - local.get $0 - local.get $6 - local.get $1 - local.get $2 - call $core::fmt::Formatter::pad_integral::write_prefix::h80e5cb0c85711a72 - br_if $block - local.get $9 - local.get $7 - i32.sub - local.set $8 - i32.const 1 - local.get $0 - i32.const 48 - i32.add - i32.load8_u - local.tee $9 - local.get $9 - i32.const 3 - i32.eq - select - local.tee $9 - i32.const 3 - i32.and - i32.eqz - br_if $block_10 - local.get $9 - i32.const 2 - i32.eq - br_if $block_9 - i32.const 0 - local.set $7 - local.get $8 - local.set $9 - br $block_8 - end ;; $block_13 - i32.const 0 - local.set $9 - local.get $8 - local.set $11 - br $block_11 - end ;; $block_12 - local.get $8 - i32.const 1 - i32.shr_u - local.set $9 - local.get $8 - i32.const 1 - i32.add - i32.const 1 - i32.shr_u - local.set $11 - end ;; $block_11 - i32.const -1 - local.set $8 - local.get $0 - i32.const 4 - i32.add - local.set $10 - local.get $0 - i32.const 24 - i32.add - local.set $7 - local.get $0 - i32.const 28 - i32.add - local.set $5 - block $block_16 - loop $loop_0 - local.get $8 - i32.const 1 - i32.add - local.tee $8 - local.get $9 - i32.ge_u - br_if $block_16 - local.get $7 - i32.load - local.get $10 - i32.load - local.get $5 - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - i32.eqz - br_if $loop_0 - br $block_7 - end ;; $loop_0 - end ;; $block_16 - local.get $0 - i32.const 4 - i32.add - i32.load - local.set $10 - i32.const 1 - local.set $8 - local.get $0 - local.get $6 - local.get $1 - local.get $2 - call $core::fmt::Formatter::pad_integral::write_prefix::h80e5cb0c85711a72 - br_if $block - local.get $0 - i32.const 24 - i32.add - local.tee $9 - i32.load - local.get $3 - local.get $4 - local.get $0 - i32.const 28 - i32.add - local.tee $2 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block - local.get $9 - i32.load - local.set $0 - i32.const -1 - local.set $9 - local.get $2 - i32.load - i32.const 16 - i32.add - local.set $2 - loop $loop_1 - local.get $9 - i32.const 1 - i32.add - local.tee $9 - local.get $11 - i32.ge_u - br_if $block_5 - i32.const 1 - local.set $8 - local.get $0 - local.get $10 - local.get $2 - i32.load - call_indirect $13 (type $2) - i32.eqz - br_if $loop_1 - br $block - end ;; $loop_1 - end ;; $block_10 - i32.const 0 - local.set $9 - local.get $8 - local.set $7 - br $block_8 - end ;; $block_9 - local.get $8 - i32.const 1 - i32.shr_u - local.set $9 - local.get $8 - i32.const 1 - i32.add - i32.const 1 - i32.shr_u - local.set $7 - end ;; $block_8 - i32.const -1 - local.set $8 - local.get $0 - i32.const 4 - i32.add - local.set $10 - local.get $0 - i32.const 24 - i32.add - local.set $2 - local.get $0 - i32.const 28 - i32.add - local.set $1 - loop $loop_2 - local.get $8 - i32.const 1 - i32.add - local.tee $8 - local.get $9 - i32.ge_u - br_if $block_6 - local.get $2 - i32.load - local.get $10 - i32.load - local.get $1 - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - i32.eqz - br_if $loop_2 - end ;; $loop_2 - end ;; $block_7 + return + end ;; $block_6 + i32.const 1 + local.set $10 + local.get $0 + i32.const 1 + i32.store8 offset=48 + local.get $0 + i32.const 48 + i32.store offset=4 + local.get $0 + local.get $8 + local.get $1 + local.get $2 + call $core::fmt::Formatter::pad_integral::write_prefix::h9e67c72a92bd1433 + br_if $block_2 + local.get $9 + local.get $7 + i32.sub + local.set $8 + i32.const 0 + local.set $10 + block $block_10 + block $block_11 + block $block_12 i32.const 1 - local.set $8 - br $block - end ;; $block_6 - local.get $0 - i32.const 4 - i32.add - i32.load + local.get $0 + i32.load8_u offset=48 + local.tee $9 + local.get $9 + i32.const 3 + i32.eq + select + br_table + $block_10 $block_12 $block_11 $block_12 + $block_10 ;; default + end ;; $block_12 + local.get $8 local.set $10 - i32.const 1 + i32.const 0 local.set $8 - local.get $0 - i32.const 24 + br $block_10 + end ;; $block_11 + local.get $8 + i32.const 1 + i32.shr_u + local.set $10 + local.get $8 + i32.const 1 + i32.add + i32.const 1 + i32.shr_u + local.set $8 + end ;; $block_10 + local.get $10 + i32.const 1 + i32.add + local.set $10 + block $block_13 + loop $loop_1 + local.get $10 + i32.const -1 i32.add - local.tee $9 - i32.load - local.get $3 - local.get $4 + local.tee $10 + i32.eqz + br_if $block_13 local.get $0 - i32.const 28 - i32.add - local.tee $2 - i32.load - i32.load offset=12 - call_indirect $13 (type $1) - br_if $block - local.get $9 - i32.load - local.set $0 + i32.load offset=24 + local.get $0 + i32.load offset=4 + local.get $0 + i32.load offset=28 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_1 + end ;; $loop_1 + i32.const 1 + return + end ;; $block_13 + local.get $0 + i32.load offset=4 + local.set $9 + i32.const 1 + local.set $10 + local.get $0 + i32.load offset=24 + local.get $3 + local.get $4 + local.get $0 + i32.load offset=28 + i32.load offset=12 + call_indirect $13 (type $1) + br_if $block_2 + local.get $8 + i32.const 1 + i32.add + local.set $8 + local.get $0 + i32.load offset=28 + local.set $2 + local.get $0 + i32.load offset=24 + local.set $0 + loop $loop_2 + block $block_14 + local.get $8 i32.const -1 - local.set $9 - local.get $2 - i32.load - i32.const 16 i32.add - local.set $2 - loop $loop_3 - local.get $9 - i32.const 1 - i32.add - local.tee $9 - local.get $7 - i32.ge_u - br_if $block_4 - i32.const 1 - local.set $8 - local.get $0 - local.get $10 - local.get $2 - i32.load - call_indirect $13 (type $2) - i32.eqz - br_if $loop_3 - br $block - end ;; $loop_3 - end ;; $block_5 - i32.const 0 - return - end ;; $block_4 - i32.const 0 - return - end ;; $block_0 + local.tee $8 + br_if $block_14 + i32.const 0 + return + end ;; $block_14 + i32.const 1 + local.set $10 + local.get $0 + local.get $9 + local.get $2 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_2 + br $block_2 + end ;; $loop_2 + end ;; $block_5 + local.get $0 + i32.load offset=4 + local.set $7 i32.const 1 - local.set $8 + local.set $10 local.get $0 - local.get $6 + local.get $8 local.get $1 local.get $2 - call $core::fmt::Formatter::pad_integral::write_prefix::h80e5cb0c85711a72 - br_if $block + call $core::fmt::Formatter::pad_integral::write_prefix::h9e67c72a92bd1433 + br_if $block_2 local.get $0 i32.load offset=24 local.get $3 local.get $4 local.get $0 - i32.const 28 - i32.add - i32.load + i32.load offset=28 i32.load offset=12 call_indirect $13 (type $1) - return - end ;; $block - local.get $8 + br_if $block_2 + local.get $9 + i32.const 1 + i32.add + local.set $8 + local.get $0 + i32.load offset=28 + local.set $9 + local.get $0 + i32.load offset=24 + local.set $0 + loop $loop_3 + block $block_15 + local.get $8 + i32.const -1 + i32.add + local.tee $8 + br_if $block_15 + i32.const 0 + return + end ;; $block_15 + i32.const 1 + local.set $10 + local.get $0 + local.get $7 + local.get $9 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_3 + end ;; $loop_3 + end ;; $block_2 + local.get $10 ) - (func $core::fmt::Formatter::pad_integral::write_prefix::h80e5cb0c85711a72 (type $11) + (func $core::fmt::Formatter::pad_integral::write_prefix::h9e67c72a92bd1433 (type $12) (param $0 i32) (param $1 i32) (param $2 i32) @@ -9818,46 +9159,45 @@ (local $4 i32) block $block block $block_0 - block $block_1 - local.get $1 - i32.const 1114112 - i32.eq - br_if $block_1 - i32.const 1 - local.set $4 - local.get $0 - i32.load offset=24 - local.get $1 - local.get $0 - i32.const 28 - i32.add - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - br_if $block_0 - end ;; $block_1 - local.get $2 - i32.eqz - br_if $block + local.get $1 + i32.const 1114112 + i32.eq + br_if $block_0 + i32.const 1 + local.set $4 local.get $0 i32.load offset=24 - local.get $2 - local.get $3 + local.get $1 local.get $0 i32.const 28 i32.add i32.load - i32.load offset=12 - call_indirect $13 (type $1) - local.set $4 + i32.load offset=16 + call_indirect $13 (type $2) + br_if $block end ;; $block_0 - local.get $4 - return + block $block_1 + local.get $2 + br_if $block_1 + i32.const 0 + return + end ;; $block_1 + local.get $0 + i32.load offset=24 + local.get $2 + local.get $3 + local.get $0 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + local.set $4 end ;; $block - i32.const 0 + local.get $4 ) - (func $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 (type $0) + (func $core::slice::slice_index_order_fail::h52dc23ecec067d2f (type $0) (param $0 i32) (param $1 i32) (local $2 i32) @@ -9873,25 +9213,30 @@ local.get $0 i32.store local.get $2 - i32.const 44 - i32.add - i32.const 6 - i32.store - local.get $2 i32.const 28 i32.add i32.const 2 i32.store local.get $2 + i32.const 44 + i32.add i32.const 6 - i32.store offset=36 + i32.store local.get $2 i64.const 2 i64.store offset=12 align=4 local.get $2 - i32.const 1049484 + i32.const 1049480 i32.store offset=8 local.get $2 + i32.const 6 + i32.store offset=36 + local.get $2 + local.get $2 + i32.const 32 + i32.add + i32.store offset=24 + local.get $2 local.get $2 i32.const 4 i32.add @@ -9900,19 +9245,14 @@ local.get $2 i32.store offset=32 local.get $2 - local.get $2 - i32.const 32 - i32.add - i32.store offset=24 - local.get $2 i32.const 8 i32.add - i32.const 1049500 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd + i32.const 1049496 + call $core::panicking::panic_fmt::h772cfe55da576359 unreachable ) - (func $core::str::slice_error_fail::h3704ce74b976be71 (type $12) + (func $core::str::slice_error_fail::he0fc563abf615243 (type $7) (param $0 i32) (param $1 i32) (param $2 i32) @@ -9949,48 +9289,46 @@ local.set $7 i32.const 256 local.set $8 - block $block_0 - loop $loop - block $block_1 - local.get $8 - local.get $1 - i32.ge_u - br_if $block_1 - local.get $0 - local.get $8 - i32.add - i32.load8_s - i32.const -65 - i32.gt_s - br_if $block_0 - end ;; $block_1 + loop $loop + block $block_0 + local.get $8 + local.get $1 + i32.ge_u + br_if $block_0 + local.get $0 local.get $8 - i32.const -1 i32.add - local.set $6 + i32.load8_s + i32.const -65 + i32.le_s + br_if $block_0 i32.const 0 local.set $5 local.get $8 - i32.const 1 - i32.eq - br_if $block - local.get $7 - local.get $8 - i32.add - local.set $9 - local.get $6 - local.set $8 - local.get $9 - i32.const 1 - i32.ne - br_if $loop + local.set $6 br $block - end ;; $loop - end ;; $block_0 - i32.const 0 - local.set $5 - local.get $8 - local.set $6 + end ;; $block_0 + local.get $8 + i32.const -1 + i32.add + local.set $6 + i32.const 0 + local.set $5 + local.get $8 + i32.const 1 + i32.eq + br_if $block + local.get $7 + local.get $8 + i32.add + local.set $9 + local.get $6 + local.set $8 + local.get $9 + i32.const 1 + i32.ne + br_if $loop + end ;; $loop end ;; $block local.get $4 local.get $6 @@ -10005,361 +9343,166 @@ select i32.store offset=28 local.get $4 - i32.const 1049120 - i32.const 1049554 + i32.const 1049116 + i32.const 1049550 local.get $5 select i32.store offset=24 - block $block_2 - block $block_3 - block $block_4 - local.get $2 - local.get $1 - i32.gt_u - local.tee $8 - br_if $block_4 - local.get $3 - local.get $1 - i32.gt_u - br_if $block_4 - local.get $2 - local.get $3 - i32.gt_u - br_if $block_3 - block $block_5 - block $block_6 - local.get $2 - i32.eqz - br_if $block_6 - local.get $1 - local.get $2 - i32.eq - br_if $block_6 - local.get $1 - local.get $2 - i32.le_u - br_if $block_5 - local.get $0 - local.get $2 - i32.add - i32.load8_s - i32.const -64 - i32.lt_s - br_if $block_5 - end ;; $block_6 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + local.get $2 + local.get $1 + i32.gt_u + local.tee $8 + br_if $block_4 local.get $3 - local.set $2 - end ;; $block_5 - local.get $4 - local.get $2 - i32.store offset=32 - block $block_7 - block $block_8 - local.get $2 - i32.eqz - br_if $block_8 - local.get $2 - local.get $1 - i32.eq - br_if $block_8 - local.get $1 - i32.const 1 - i32.add - local.set $9 - loop $loop_0 - block $block_9 - local.get $2 - local.get $1 - i32.ge_u - br_if $block_9 - local.get $0 - local.get $2 - i32.add - i32.load8_s - i32.const -64 - i32.ge_s - br_if $block_8 - end ;; $block_9 + local.get $1 + i32.gt_u + br_if $block_4 + local.get $2 + local.get $3 + i32.gt_u + br_if $block_3 + block $block_5 + block $block_6 local.get $2 - i32.const -1 - i32.add - local.set $8 + i32.eqz + br_if $block_6 + local.get $1 local.get $2 - i32.const 1 i32.eq - br_if $block_7 - local.get $9 + br_if $block_6 + local.get $1 local.get $2 - i32.eq - local.set $6 - local.get $8 - local.set $2 - local.get $6 - i32.eqz - br_if $loop_0 - br $block_7 - end ;; $loop_0 - end ;; $block_8 - local.get $2 - local.set $8 - end ;; $block_7 - local.get $8 - local.get $1 - i32.eq - br_if $block_2 - i32.const 1 - local.set $6 - i32.const 0 - local.set $5 - block $block_10 - block $block_11 - local.get $0 - local.get $8 - i32.add - local.tee $9 - i32.load8_s - local.tee $2 - i32.const 0 - i32.lt_s - br_if $block_11 - local.get $4 - local.get $2 - i32.const 255 - i32.and - i32.store offset=36 - local.get $4 - i32.const 40 - i32.add + i32.le_u + br_if $block_5 + local.get $0 + local.get $2 + i32.add + i32.load8_s + i32.const -64 + i32.lt_s + br_if $block_5 + end ;; $block_6 + local.get $3 local.set $2 - br $block_10 - end ;; $block_11 - local.get $0 - local.get $1 - i32.add - local.tee $6 - local.set $1 - block $block_12 - local.get $9 - i32.const 1 - i32.add - local.get $6 - i32.eq - br_if $block_12 - local.get $9 - i32.const 2 - i32.add - local.set $1 - local.get $9 - i32.const 1 - i32.add - i32.load8_u - i32.const 63 - i32.and - local.set $5 - end ;; $block_12 - local.get $2 - i32.const 31 - i32.and - local.set $9 - block $block_13 - block $block_14 - block $block_15 - local.get $2 - i32.const 255 - i32.and - i32.const 224 - i32.lt_u - br_if $block_15 - i32.const 0 - local.set $0 - local.get $6 - local.set $7 - block $block_16 - local.get $1 - local.get $6 - i32.eq - br_if $block_16 - local.get $1 - i32.const 1 - i32.add - local.set $7 - local.get $1 - i32.load8_u - i32.const 63 - i32.and - local.set $0 - end ;; $block_16 - local.get $0 - local.get $5 - i32.const 6 - i32.shl - i32.or - local.set $1 - local.get $2 - i32.const 255 - i32.and - i32.const 240 - i32.lt_u - br_if $block_14 - i32.const 0 - local.set $2 - block $block_17 - local.get $7 - local.get $6 - i32.eq - br_if $block_17 - local.get $7 - i32.load8_u - i32.const 63 - i32.and - local.set $2 - end ;; $block_17 - local.get $1 - i32.const 6 - i32.shl - local.get $9 - i32.const 18 - i32.shl - i32.const 1835008 - i32.and - i32.or - local.get $2 - i32.or - local.tee $1 - i32.const 1114112 - i32.eq - br_if $block_2 - br $block_13 - end ;; $block_15 - local.get $5 - local.get $9 - i32.const 6 - i32.shl - i32.or - local.set $1 - br $block_13 - end ;; $block_14 - local.get $1 - local.get $9 - i32.const 12 - i32.shl - i32.or - local.set $1 - end ;; $block_13 - local.get $4 - local.get $1 - i32.store offset=36 - i32.const 1 - local.set $6 + end ;; $block_5 local.get $4 - i32.const 40 - i32.add - local.set $2 - local.get $1 - i32.const 128 - i32.lt_u - br_if $block_10 - i32.const 2 - local.set $6 + local.get $2 + i32.store offset=32 + local.get $2 + i32.eqz + br_if $block_2 + local.get $2 local.get $1 - i32.const 2048 - i32.lt_u - br_if $block_10 - i32.const 3 - i32.const 4 + i32.eq + br_if $block_2 local.get $1 - i32.const 65536 - i32.lt_u - select - local.set $6 - end ;; $block_10 + i32.const 1 + i32.add + local.set $9 + loop $loop_0 + block $block_7 + local.get $2 + local.get $1 + i32.ge_u + br_if $block_7 + local.get $0 + local.get $2 + i32.add + i32.load8_s + i32.const -64 + i32.ge_s + br_if $block_2 + end ;; $block_7 + local.get $2 + i32.const -1 + i32.add + local.set $8 + local.get $2 + i32.const 1 + i32.eq + br_if $block_1 + local.get $9 + local.get $2 + i32.eq + local.set $6 + local.get $8 + local.set $2 + local.get $6 + i32.eqz + br_if $loop_0 + br $block_1 + end ;; $loop_0 + end ;; $block_4 local.get $4 + local.get $2 + local.get $3 local.get $8 + select i32.store offset=40 local.get $4 - local.get $6 - local.get $8 - i32.add - i32.store offset=44 - local.get $4 - i32.const 108 + i32.const 48 i32.add - i32.const 1 - i32.store - local.get $4 - i32.const 100 + i32.const 20 i32.add - i32.const 1 + i32.const 3 i32.store local.get $4 i32.const 72 i32.add i32.const 20 i32.add - i32.const 7 + i32.const 1 i32.store local.get $4 i32.const 84 i32.add - i32.const 8 + i32.const 1 i32.store local.get $4 - i32.const 48 - i32.add - i32.const 20 - i32.add - i32.const 5 - i32.store + i64.const 3 + i64.store offset=52 align=4 local.get $4 - local.get $2 - i32.store offset=88 + i32.const 1049556 + i32.store offset=48 local.get $4 i32.const 6 i32.store offset=76 local.get $4 - i64.const 5 - i64.store offset=52 align=4 local.get $4 - i32.const 1049672 - i32.store offset=48 + i32.const 72 + i32.add + i32.store offset=64 local.get $4 local.get $4 i32.const 24 i32.add - i32.store offset=104 + i32.store offset=88 local.get $4 local.get $4 i32.const 16 i32.add - i32.store offset=96 - local.get $4 - local.get $4 - i32.const 36 - i32.add i32.store offset=80 local.get $4 local.get $4 - i32.const 32 + i32.const 40 i32.add i32.store offset=72 local.get $4 - local.get $4 - i32.const 72 - i32.add - i32.store offset=64 - local.get $4 i32.const 48 i32.add - i32.const 1049712 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd + i32.const 1049580 + call $core::panicking::panic_fmt::h772cfe55da576359 unreachable - end ;; $block_4 + end ;; $block_3 local.get $4 - local.get $2 - local.get $3 - local.get $8 - select - i32.store offset=40 + i32.const 100 + i32.add + i32.const 1 + i32.store local.get $4 i32.const 72 i32.add @@ -10368,124 +9511,317 @@ i32.const 1 i32.store local.get $4 - i32.const 84 - i32.add + i32.const 84 + i32.add + i32.const 6 + i32.store + local.get $4 + i32.const 48 + i32.add + i32.const 20 + i32.add + i32.const 4 + i32.store + local.get $4 + i64.const 4 + i64.store offset=52 align=4 + local.get $4 + i32.const 1049596 + i32.store offset=48 + local.get $4 + i32.const 6 + i32.store offset=76 + local.get $4 + local.get $4 + i32.const 72 + i32.add + i32.store offset=64 + local.get $4 + local.get $4 + i32.const 24 + i32.add + i32.store offset=96 + local.get $4 + local.get $4 + i32.const 16 + i32.add + i32.store offset=88 + local.get $4 + local.get $4 + i32.const 12 + i32.add + i32.store offset=80 + local.get $4 + local.get $4 + i32.const 8 + i32.add + i32.store offset=72 + local.get $4 + i32.const 48 + i32.add + i32.const 1049628 + call $core::panicking::panic_fmt::h772cfe55da576359 + unreachable + end ;; $block_2 + local.get $2 + local.set $8 + end ;; $block_1 + block $block_8 + local.get $8 + local.get $1 + i32.eq + br_if $block_8 + i32.const 1 + local.set $6 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + local.get $0 + local.get $8 + i32.add + local.tee $9 + i32.load8_s + local.tee $2 + i32.const -1 + i32.gt_s + br_if $block_12 + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.add + local.tee $6 + local.set $1 + block $block_13 + local.get $9 + i32.const 1 + i32.add + local.get $6 + i32.eq + br_if $block_13 + local.get $9 + i32.const 2 + i32.add + local.set $1 + local.get $9 + i32.load8_u offset=1 + i32.const 63 + i32.and + local.set $5 + end ;; $block_13 + local.get $2 + i32.const 31 + i32.and + local.set $9 + local.get $2 + i32.const 255 + i32.and + i32.const 223 + i32.gt_u + br_if $block_11 + local.get $5 + local.get $9 + i32.const 6 + i32.shl + i32.or + local.set $1 + br $block_10 + end ;; $block_12 + local.get $4 + local.get $2 + i32.const 255 + i32.and + i32.store offset=36 + local.get $4 + i32.const 40 + i32.add + local.set $2 + br $block_9 + end ;; $block_11 + i32.const 0 + local.set $0 + local.get $6 + local.set $7 + block $block_14 + local.get $1 + local.get $6 + i32.eq + br_if $block_14 + local.get $1 + i32.const 1 + i32.add + local.set $7 + local.get $1 + i32.load8_u + i32.const 63 + i32.and + local.set $0 + end ;; $block_14 + local.get $0 + local.get $5 + i32.const 6 + i32.shl + i32.or + local.set $1 + block $block_15 + local.get $2 + i32.const 255 + i32.and + i32.const 240 + i32.ge_u + br_if $block_15 + local.get $1 + local.get $9 + i32.const 12 + i32.shl + i32.or + local.set $1 + br $block_10 + end ;; $block_15 + i32.const 0 + local.set $2 + block $block_16 + local.get $7 + local.get $6 + i32.eq + br_if $block_16 + local.get $7 + i32.load8_u + i32.const 63 + i32.and + local.set $2 + end ;; $block_16 + local.get $1 + i32.const 6 + i32.shl + local.get $9 + i32.const 18 + i32.shl + i32.const 1835008 + i32.and + i32.or + local.get $2 + i32.or + local.tee $1 + i32.const 1114112 + i32.eq + br_if $block_8 + end ;; $block_10 + local.get $4 + local.get $1 + i32.store offset=36 i32.const 1 - i32.store - local.get $4 - i32.const 48 - i32.add - i32.const 20 - i32.add - i32.const 3 - i32.store - local.get $4 - i32.const 6 - i32.store offset=76 - local.get $4 - i64.const 3 - i64.store offset=52 align=4 - local.get $4 - i32.const 1049560 - i32.store offset=48 - local.get $4 - local.get $4 - i32.const 24 - i32.add - i32.store offset=88 - local.get $4 - local.get $4 - i32.const 16 - i32.add - i32.store offset=80 - local.get $4 + local.set $6 local.get $4 i32.const 40 i32.add - i32.store offset=72 - local.get $4 - local.get $4 - i32.const 72 - i32.add - i32.store offset=64 - local.get $4 - i32.const 48 - i32.add - i32.const 1049584 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd - unreachable - end ;; $block_3 + local.set $2 + local.get $1 + i32.const 128 + i32.lt_u + br_if $block_9 + i32.const 2 + local.set $6 + local.get $1 + i32.const 2048 + i32.lt_u + br_if $block_9 + i32.const 3 + i32.const 4 + local.get $1 + i32.const 65536 + i32.lt_u + select + local.set $6 + end ;; $block_9 local.get $4 - i32.const 100 + local.get $8 + i32.store offset=40 + local.get $4 + local.get $6 + local.get $8 i32.add - i32.const 1 - i32.store + i32.store offset=44 local.get $4 - i32.const 72 + i32.const 48 i32.add i32.const 20 i32.add + i32.const 5 + i32.store + local.get $4 + i32.const 108 + i32.add i32.const 1 i32.store local.get $4 - i32.const 84 + i32.const 100 i32.add - i32.const 6 + i32.const 1 i32.store local.get $4 - i32.const 48 + i32.const 72 i32.add i32.const 20 i32.add - i32.const 4 + i32.const 7 i32.store local.get $4 - i32.const 6 - i32.store offset=76 + i32.const 84 + i32.add + i32.const 8 + i32.store local.get $4 - i64.const 4 + i64.const 5 i64.store offset=52 align=4 local.get $4 - i32.const 1049600 + i32.const 1049668 i32.store offset=48 local.get $4 + local.get $2 + i32.store offset=88 + local.get $4 + i32.const 6 + i32.store offset=76 + local.get $4 + local.get $4 + i32.const 72 + i32.add + i32.store offset=64 + local.get $4 local.get $4 i32.const 24 i32.add - i32.store offset=96 + i32.store offset=104 local.get $4 local.get $4 i32.const 16 i32.add - i32.store offset=88 + i32.store offset=96 local.get $4 local.get $4 - i32.const 12 + i32.const 36 i32.add i32.store offset=80 local.get $4 local.get $4 - i32.const 8 + i32.const 32 i32.add i32.store offset=72 local.get $4 - local.get $4 - i32.const 72 - i32.add - i32.store offset=64 - local.get $4 i32.const 48 i32.add - i32.const 1049632 - call $core::panicking::panic_fmt::hc4f83bfed80aeabd + i32.const 1049708 + call $core::panicking::panic_fmt::h772cfe55da576359 unreachable - end ;; $block_2 - i32.const 1049648 - call $core::panicking::panic::h62fdcfa056e70982 + end ;; $block_8 + i32.const 1049644 + call $core::panicking::panic::h540eb5ee6ff533c2 unreachable ) - (func $_as_core::fmt::Debug>::fmt::h6105e754ea0aeafb (type $2) + (func $_as_core::fmt::Debug>::fmt::haf7bc23b95386435 (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -10498,985 +9834,866 @@ local.tee $2 global.set $15 block $block - block $block_0 - local.get $0 - i32.load - local.get $1 - call $core::fmt::num::::fmt::h5c9a921f5b6ae7be - br_if $block_0 - local.get $1 - i32.const 28 - i32.add - i32.load - local.set $3 - local.get $1 - i32.load offset=24 - local.set $4 - local.get $2 - i32.const 28 - i32.add - i32.const 0 - i32.store - local.get $2 - i32.const 1049120 - i32.store offset=24 - local.get $2 - i64.const 1 - i64.store offset=12 align=4 - local.get $2 - i32.const 1049816 - i32.store offset=8 - local.get $4 - local.get $3 - local.get $2 - i32.const 8 - i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 - i32.eqz - br_if $block - end ;; $block_0 + local.get $0 + i32.load + local.get $1 + call $core::fmt::num::::fmt::hb54eecdb0d5e8e4a + br_if $block + local.get $1 + i32.const 28 + i32.add + i32.load + local.set $3 + local.get $1 + i32.load offset=24 + local.set $4 + local.get $2 + i32.const 28 + i32.add + i32.const 0 + i32.store + local.get $2 + i32.const 1049116 + i32.store offset=24 + local.get $2 + i64.const 1 + i64.store offset=12 align=4 + local.get $2 + i32.const 1049812 + i32.store offset=8 + local.get $4 + local.get $3 + local.get $2 + i32.const 8 + i32.add + call $core::fmt::write::h9ffb25a5a03fc281 + br_if $block + local.get $0 + i32.load offset=4 + local.get $1 + call $core::fmt::num::::fmt::hb54eecdb0d5e8e4a + local.set $1 local.get $2 i32.const 32 i32.add global.set $15 - i32.const 1 + local.get $1 return end ;; $block - local.get $0 - i32.load offset=4 - local.get $1 - call $core::fmt::num::::fmt::h5c9a921f5b6ae7be - local.set $1 local.get $2 i32.const 32 i32.add global.set $15 - local.get $1 - ) - - (func $::fmt::h7a420490f85a5bf3 (type $2) - (param $0 i32) - (param $1 i32) - (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) i32.const 1 - local.set $2 - block $block - local.get $1 - i32.load offset=24 - i32.const 39 - local.get $1 - i32.const 28 - i32.add - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - br_if $block - i32.const 2 - local.set $2 - block $block_0 - block $block_1 - block $block_2 - block $block_3 - block $block_4 - block $block_5 - block $block_6 - block $block_7 - block $block_8 - block $block_9 - block $block_10 - block $block_11 - block $block_12 - block $block_13 - block $block_14 - block $block_15 - block $block_16 - local.get $0 - i32.load - local.tee $0 - i32.const -9 - i32.add - local.tee $3 - i32.const 30 - i32.gt_u - br_if $block_16 - i32.const 116 - local.set $4 - block $block_17 - local.get $3 - br_table - $block_0 $block_17 $block_15 $block_15 $block_14 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 - $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_15 $block_2 $block_15 $block_15 $block_15 $block_15 $block_2 - $block_0 ;; default - end ;; $block_17 - i32.const 110 - local.set $4 - br $block_13 - end ;; $block_16 - local.get $0 - i32.const 92 - i32.eq - br_if $block_2 - end ;; $block_15 - local.get $0 - i32.const 2047 - i32.gt_u - br_if $block_12 - local.get $0 - i32.const 3 - i32.shr_u - i32.const 262136 - i32.and - i32.const 1051184 - i32.add - local.set $2 - br $block_11 - end ;; $block_14 - i32.const 114 - local.set $4 - end ;; $block_13 - br $block_0 - end ;; $block_12 - block $block_18 - local.get $0 - i32.const 65535 - i32.gt_u - br_if $block_18 - local.get $0 - i32.const 6 - i32.shr_u - i32.const -32 - i32.add - local.tee $2 - i32.const 991 - i32.gt_u - br_if $block_10 - local.get $2 - i32.const 1051464 - i32.add - i32.load8_u - local.tee $2 - i32.const 73 - i32.gt_u - br_if $block_9 - local.get $2 - i32.const 3 - i32.shl - i32.const 1052832 - i32.add - local.set $2 - br $block_11 - end ;; $block_18 - local.get $0 - i32.const 12 - i32.shr_u - i32.const -16 - i32.add - local.tee $2 - i32.const 255 - i32.gt_u - br_if $block_8 - local.get $2 - i32.const 1052456 - i32.add - i32.load8_u - i32.const 6 - i32.shl - local.get $0 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.or - local.tee $2 - i32.const 511 - i32.gt_u - br_if $block_7 - local.get $2 - i32.const 1053424 - i32.add - i32.load8_u - local.tee $2 - i32.const 54 - i32.gt_u - br_if $block_6 - local.get $2 - i32.const 3 - i32.shl - i32.const 1053936 - i32.add - local.set $2 - end ;; $block_11 - block $block_19 - local.get $2 - i64.load - i64.const 1 - local.get $0 - i32.const 63 - i32.and - i64.extend_i32_u - i64.shl - i64.and - i64.eqz - br_if $block_19 - local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 2 - i32.shr_u - i32.const 7 - i32.xor - i64.extend_i32_u - i64.const 21474836480 - i64.or - local.set $5 - br $block_3 - end ;; $block_19 - block $block_20 - local.get $0 - i32.const 65535 - i32.gt_u - br_if $block_20 - local.get $0 - i32.const 65280 - i32.and - i32.const 8 - i32.shr_u - local.set $6 - i32.const 1049880 - local.set $7 - i32.const 0 - local.set $8 - i32.const 2 - local.set $9 - i32.const 304 - local.set $10 - i32.const 1049960 - local.set $11 - i32.const 1049960 - local.set $12 - i32.const -1 - local.set $13 - i32.const 1 - local.set $14 - local.get $0 - i32.const 255 - i32.and - local.set $15 - i32.const 0 - local.set $2 - br $block_5 - end ;; $block_20 - block $block_21 - local.get $0 - i32.const 131071 - i32.gt_u - br_if $block_21 - local.get $0 - i32.const 65280 - i32.and - i32.const 8 - i32.shr_u - local.set $19 - i32.const 1050579 - local.set $20 - i32.const 0 - local.set $21 - i32.const 2 - local.set $22 - i32.const 159 - local.set $23 - i32.const 1050645 - local.set $24 - i32.const 1050645 - local.set $25 - i32.const -1 - local.set $26 - i32.const 1 - local.set $18 - local.get $0 - i32.const 255 - i32.and - local.set $17 - i32.const 1 - local.set $2 - br $block_5 - end ;; $block_21 - local.get $0 - i32.const 917999 - i32.gt_u - br_if $block_4 - local.get $0 - i32.const -195102 - i32.add - i32.const 722658 - i32.lt_u - br_if $block_4 - local.get $0 - i32.const -191457 - i32.add - i32.const 3103 - i32.lt_u - br_if $block_4 + ) + + (func $::fmt::h27b79e1831e51870 (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + i32.const 1 + local.set $2 + block $block + local.get $1 + i32.load offset=24 + i32.const 39 + local.get $1 + i32.const 28 + i32.add + i32.load + i32.load offset=16 + call_indirect $13 (type $2) + br_if $block + i32.const 2 + local.set $3 + block $block_0 + block $block_1 + block $block_2 + block $block_3 + block $block_4 + local.get $0 + i32.load + local.tee $0 + i32.const -9 + i32.add + local.tee $4 + i32.const 30 + i32.le_u + br_if $block_4 + local.get $0 + i32.const 92 + i32.ne + br_if $block_3 + br $block_2 + end ;; $block_4 + i32.const 116 + local.set $5 + block $block_5 + block $block_6 + local.get $4 + br_table + $block_0 $block_5 $block_3 $block_3 $block_6 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 + $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_3 $block_2 $block_3 $block_3 $block_3 $block_3 $block_2 + $block_0 ;; default + end ;; $block_6 + i32.const 114 + local.set $5 + br $block_0 + end ;; $block_5 + i32.const 110 + local.set $5 + br $block_0 + end ;; $block_3 + block $block_7 + block $block_8 + local.get $0 + i32.const 2048 + i32.lt_u + br_if $block_8 + block $block_9 + block $block_10 + block $block_11 + block $block_12 + block $block_13 + block $block_14 local.get $0 - i32.const -183970 - i32.add - i32.const 14 + i32.const 65536 i32.lt_u - br_if $block_4 - local.get $0 - i32.const 2097150 - i32.and - i32.const 178206 - i32.eq - br_if $block_4 + br_if $block_14 local.get $0 - i32.const -173783 + i32.const 12 + i32.shr_u + i32.const -16 i32.add - i32.const 41 + local.tee $3 + i32.const 256 i32.lt_u - br_if $block_4 - local.get $0 - i32.const -177973 - i32.add - i32.const 10 - i32.le_u - br_if $block_4 - i32.const 1 - local.set $2 - br $block_2 - end ;; $block_10 - i32.const 1052712 - local.get $2 - i32.const 992 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 - unreachable - end ;; $block_9 - i32.const 1052728 - local.get $2 - i32.const 74 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 - unreachable - end ;; $block_8 + br_if $block_13 + i32.const 1052776 + local.get $3 + i32.const 256 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 + unreachable + end ;; $block_14 + local.get $0 + i32.const 6 + i32.shr_u + i32.const -32 + i32.add + local.tee $3 + i32.const 991 + i32.gt_u + br_if $block_12 + local.get $3 + i32.const 1050160 + i32.add + i32.load8_u + local.tee $3 + i32.const 73 + i32.gt_u + br_if $block_11 + local.get $3 + i32.const 3 + i32.shl + i32.const 1052864 + i32.add + local.set $3 + br $block_7 + end ;; $block_13 + local.get $3 + i32.const 1051152 + i32.add + i32.load8_u + i32.const 6 + i32.shl + local.get $0 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.or + local.tee $3 + i32.const 511 + i32.gt_u + br_if $block_10 + local.get $3 + i32.const 1053456 + i32.add + i32.load8_u + local.tee $3 + i32.const 57 + i32.gt_u + br_if $block_9 + local.get $3 + i32.const 3 + i32.shl + i32.const 1053968 + i32.add + local.set $3 + br $block_7 + end ;; $block_12 i32.const 1052744 - local.get $2 - i32.const 256 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 + local.get $3 + i32.const 992 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 unreachable - end ;; $block_7 + end ;; $block_11 i32.const 1052760 - local.get $2 - i32.const 512 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 + local.get $3 + i32.const 74 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 unreachable - end ;; $block_6 - i32.const 1052776 - local.get $2 - i32.const 55 - call $core::panicking::panic_bounds_check::h51667a9f831439a7 + end ;; $block_10 + i32.const 1052792 + local.get $3 + i32.const 512 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 unreachable - end ;; $block_5 - loop $loop - block $block_22 - block $block_23 - block $block_24 - block $block_25 - block $block_26 - block $block_27 - block $block_28 - block $block_29 - block $block_30 - block $block_31 - block $block_32 - block $block_33 - local.get $2 - br_table - $block_33 $block_32 - $block_32 ;; default - end ;; $block_33 - local.get $7 - local.get $9 - i32.add - local.set $16 + end ;; $block_9 + i32.const 1052808 + local.get $3 + i32.const 58 + call $core::panicking::panic_bounds_check::hb65bbcdf415380e4 + unreachable + end ;; $block_8 + local.get $0 + i32.const 3 + i32.shr_u + i32.const 262136 + i32.and + i32.const 1049880 + i32.add + local.set $3 + end ;; $block_7 + block $block_15 + block $block_16 + block $block_17 + block $block_18 + block $block_19 + block $block_20 + block $block_21 + local.get $3 + i64.load + i64.const 1 + local.get $0 + i32.const 63 + i32.and + i64.extend_i32_u + i64.shl + i64.and + i64.const 0 + i64.ne + br_if $block_21 + block $block_22 + block $block_23 + block $block_24 + block $block_25 + block $block_26 + block $block_27 + local.get $0 + i32.const 65536 + i32.lt_u + br_if $block_27 + local.get $0 + i32.const 131072 + i32.lt_u + br_if $block_26 + local.get $0 + i32.const -918000 + i32.add + i32.const 196112 + i32.lt_u + br_if $block_17 + local.get $0 + i32.const -195102 + i32.add + i32.const 722658 + i32.lt_u + br_if $block_17 + local.get $0 + i32.const -191457 + i32.add + i32.const 3103 + i32.lt_u + br_if $block_17 + local.get $0 + i32.const -183970 + i32.add + i32.const 14 + i32.lt_u + br_if $block_17 + local.get $0 + i32.const 2097150 + i32.and + i32.const 178206 + i32.eq + br_if $block_17 + local.get $0 + i32.const -173783 + i32.add + i32.const 41 + i32.lt_u + br_if $block_17 + local.get $0 + i32.const -177973 + i32.add + i32.const 10 + i32.le_u + br_if $block_17 + i32.const 1 + local.set $3 + br $block_1 + end ;; $block_27 + local.get $0 + i32.const 65280 + i32.and + i32.const 8 + i32.shr_u + local.set $6 + i32.const 1051408 + local.set $4 + i32.const 0 + local.set $2 + local.get $0 + i32.const 255 + i32.and + local.set $5 + loop $loop + local.get $4 + i32.const 2 + i32.add + local.set $7 + local.get $2 + local.get $4 + i32.load8_u offset=1 + local.tee $3 + i32.add + local.set $8 + block $block_28 + local.get $4 + i32.load8_u + local.tee $4 + local.get $6 + i32.eq + br_if $block_28 + local.get $4 + local.get $6 + i32.gt_u + br_if $block_19 local.get $8 + local.set $2 local.get $7 - i32.load8_u offset=1 - local.tee $2 - i32.add - local.set $3 - block $block_34 - block $block_35 - block $block_36 - local.get $7 - i32.load8_u - local.tee $4 - local.get $6 - i32.ne - br_if $block_36 - local.get $3 - local.get $8 - i32.lt_u - br_if $block_31 - local.get $3 - local.get $10 - i32.ge_u - br_if $block_30 - local.get $8 - local.get $11 - i32.add - local.set $4 - loop $loop_0 - local.get $2 - i32.eqz - br_if $block_35 - local.get $2 - local.get $13 - i32.add - local.set $2 - local.get $4 - i32.load8_u - local.set $7 - local.get $4 - local.get $14 - i32.add - local.set $4 - local.get $7 - local.get $15 - i32.ne - br_if $loop_0 - br $block_4 - end ;; $loop_0 - end ;; $block_36 - local.get $4 - local.get $6 - i32.gt_u - br_if $block_34 - local.get $3 - local.set $8 - local.get $16 - local.set $7 - local.get $16 - local.get $12 - i32.ne - br_if $block_25 - br $block_34 - end ;; $block_35 + local.set $4 + local.get $7 + i32.const 1051490 + i32.ne + br_if $loop + br $block_19 + end ;; $block_28 + local.get $8 + local.get $2 + i32.lt_u + br_if $block_25 + local.get $8 + i32.const 293 + i32.gt_u + br_if $block_24 + local.get $2 + i32.const 1051490 + i32.add + local.set $4 + block $block_29 + loop $loop_0 + local.get $3 + i32.eqz + br_if $block_29 local.get $3 - local.set $8 - local.get $16 - local.set $7 - local.get $16 - local.get $12 + i32.const -1 + i32.add + local.set $3 + local.get $4 + i32.load8_u + local.set $2 + local.get $4 + i32.const 1 + i32.add + local.set $4 + local.get $2 + local.get $5 i32.ne - br_if $block_24 - end ;; $block_34 - local.get $0 - i32.const 65535 - i32.and - local.set $15 - i32.const 1050263 - local.set $2 - i32.const 1 - local.set $14 - block $block_37 - loop $loop_1 - local.get $2 - i32.const 1 - i32.add - local.set $13 - block $block_38 - block $block_39 - local.get $2 - i32.load8_u - local.tee $17 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.tee $18 - i32.const -1 - i32.le_s - br_if $block_39 - local.get $13 - local.set $2 - local.get $15 - local.get $17 - i32.sub - local.tee $15 - i32.const 0 - i32.ge_s - br_if $block_38 - br $block_37 - end ;; $block_39 - local.get $13 - i32.const 1050579 - i32.eq - br_if $block_27 - local.get $2 - i32.const 1 - i32.add - local.set $13 - local.get $2 - i32.const 2 - i32.add - local.set $2 - local.get $15 - local.get $18 - i32.const 127 - i32.and - i32.const 8 - i32.shl - local.get $13 - i32.load8_u - i32.or - i32.sub - local.tee $15 - i32.const 0 - i32.lt_s - br_if $block_37 - end ;; $block_38 - local.get $14 - i32.const 1 - i32.xor - local.set $14 - local.get $2 - i32.const 1050579 - i32.ne - br_if $loop_1 - end ;; $loop_1 - end ;; $block_37 - i32.const 1 + br_if $loop_0 + br $block_17 + end ;; $loop_0 + end ;; $block_29 + local.get $8 + local.set $2 + local.get $7 + local.set $4 + local.get $7 + i32.const 1051490 + i32.ne + br_if $loop + br $block_19 + end ;; $loop + end ;; $block_26 + local.get $0 + i32.const 65280 + i32.and + i32.const 8 + i32.shr_u + local.set $6 + i32.const 1052097 + local.set $4 + i32.const 0 + local.set $2 + local.get $0 + i32.const 255 + i32.and + local.set $5 + loop $loop_1 + local.get $4 + i32.const 2 + i32.add + local.set $7 + local.get $2 + local.get $4 + i32.load8_u offset=1 + local.tee $3 + i32.add + local.set $8 + block $block_30 + local.get $4 + i32.load8_u + local.tee $4 + local.get $6 + i32.eq + br_if $block_30 + local.get $4 + local.get $6 + i32.gt_u + br_if $block_20 + local.get $8 + local.set $2 + local.get $7 + local.set $4 + local.get $7 + i32.const 1052167 + i32.ne + br_if $loop_1 + br $block_20 + end ;; $block_30 + local.get $8 + local.get $2 + i32.lt_u + br_if $block_23 + local.get $8 + i32.const 166 + i32.gt_u + br_if $block_22 + local.get $2 + i32.const 1052167 + i32.add + local.set $4 + block $block_31 + loop $loop_2 + local.get $3 + i32.eqz + br_if $block_31 + local.get $3 + i32.const -1 + i32.add + local.set $3 + local.get $4 + i32.load8_u local.set $2 - local.get $14 + local.get $4 i32.const 1 - i32.and - br_if $block_2 - br $block_4 - end ;; $block_32 - local.get $20 - local.get $22 - i32.add - local.set $16 - local.get $21 - local.get $20 - i32.load8_u offset=1 - local.tee $2 - i32.add - local.set $3 - block $block_40 - block $block_41 - block $block_42 - local.get $20 - i32.load8_u - local.tee $4 - local.get $19 - i32.ne - br_if $block_42 - local.get $3 - local.get $21 - i32.lt_u - br_if $block_29 - local.get $3 - local.get $23 - i32.ge_u - br_if $block_28 - local.get $21 - local.get $24 - i32.add - local.set $4 - loop $loop_2 - local.get $2 - i32.eqz - br_if $block_41 - local.get $2 - local.get $26 - i32.add - local.set $2 - local.get $4 - i32.load8_u - local.set $20 - local.get $4 - local.get $18 - i32.add - local.set $4 - local.get $20 - local.get $17 - i32.ne - br_if $loop_2 - br $block_4 - end ;; $loop_2 - end ;; $block_42 - local.get $4 - local.get $19 - i32.gt_u - br_if $block_40 - local.get $3 - local.set $21 - local.get $16 - local.set $20 - local.get $16 - local.get $25 - i32.ne - br_if $block_23 - br $block_40 - end ;; $block_41 - local.get $3 - local.set $21 - local.get $16 - local.set $20 - local.get $16 - local.get $25 + i32.add + local.set $4 + local.get $2 + local.get $5 i32.ne - br_if $block_22 - end ;; $block_40 - local.get $0 - i32.const 65535 - i32.and - local.set $15 - i32.const 1050803 - local.set $2 - i32.const 1 - local.set $14 - block $block_43 - loop $loop_3 - local.get $2 - i32.const 1 - i32.add - local.set $13 - block $block_44 - block $block_45 - local.get $2 - i32.load8_u - local.tee $17 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.tee $18 - i32.const -1 - i32.le_s - br_if $block_45 - local.get $13 - local.set $2 - local.get $15 - local.get $17 - i32.sub - local.tee $15 - i32.const 0 - i32.ge_s - br_if $block_44 - br $block_43 - end ;; $block_45 - local.get $13 - i32.const 1051184 - i32.eq - br_if $block_26 - local.get $2 - i32.const 1 - i32.add - local.set $13 - local.get $2 - i32.const 2 - i32.add - local.set $2 - local.get $15 - local.get $18 - i32.const 127 - i32.and - i32.const 8 - i32.shl - local.get $13 - i32.load8_u - i32.or - i32.sub - local.tee $15 - i32.const 0 - i32.lt_s - br_if $block_43 - end ;; $block_44 - local.get $14 - i32.const 1 - i32.xor - local.set $14 - local.get $2 - i32.const 1051184 - i32.ne - br_if $loop_3 - end ;; $loop_3 - end ;; $block_43 - i32.const 1 - local.set $2 - local.get $14 - i32.const 1 - i32.and - br_if $block_2 - br $block_4 + br_if $loop_2 + br $block_17 + end ;; $loop_2 end ;; $block_31 local.get $8 - local.get $3 - call $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 - unreachable - end ;; $block_30 - local.get $3 - i32.const 303 - call $core::slice::slice_index_len_fail::hb115deb2b20f49d8 - unreachable - end ;; $block_29 - local.get $21 - local.get $3 - call $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 + local.set $2 + local.get $7 + local.set $4 + local.get $7 + i32.const 1052167 + i32.ne + br_if $loop_1 + br $block_20 + end ;; $loop_1 + end ;; $block_25 + local.get $2 + local.get $8 + call $core::slice::slice_index_order_fail::h52dc23ecec067d2f unreachable - end ;; $block_28 - local.get $3 - i32.const 158 - call $core::slice::slice_index_len_fail::hb115deb2b20f49d8 + end ;; $block_24 + local.get $8 + i32.const 293 + call $core::slice::slice_index_len_fail::h7c242876dcc4f7b2 unreachable - end ;; $block_27 - i32.const 1049648 - call $core::panicking::panic::h62fdcfa056e70982 + end ;; $block_23 + local.get $2 + local.get $8 + call $core::slice::slice_index_order_fail::h52dc23ecec067d2f unreachable - end ;; $block_26 - i32.const 1049648 - call $core::panicking::panic::h62fdcfa056e70982 + end ;; $block_22 + local.get $8 + i32.const 166 + call $core::slice::slice_index_len_fail::h7c242876dcc4f7b2 unreachable - end ;; $block_25 - i32.const 0 - local.set $2 - br $loop - end ;; $block_24 - i32.const 0 - local.set $2 - br $loop - end ;; $block_23 - i32.const 1 - local.set $2 - br $loop - end ;; $block_22 - i32.const 1 - local.set $2 - br $loop - end ;; $loop - end ;; $block_4 - local.get $0 - i32.const 1 - i32.or - i32.clz - i32.const 2 - i32.shr_u - i32.const 7 - i32.xor - i64.extend_i32_u - i64.const 21474836480 - i64.or - local.set $5 - end ;; $block_3 - i32.const 3 - local.set $2 - br $block_1 - end ;; $block_2 - end ;; $block_1 - local.get $0 - local.set $4 - end ;; $block_0 - local.get $1 - i32.const 24 - i32.add - local.set $15 - local.get $1 - i32.const 28 - i32.add - local.set $14 - block $block_46 - loop $loop_4 - block $block_47 - block $block_48 - block $block_49 - block $block_50 - block $block_51 - block $block_52 - block $block_53 - local.get $2 + end ;; $block_21 + local.get $0 i32.const 1 - i32.eq - br_if $block_53 - i32.const 92 - local.set $0 - block $block_54 - local.get $2 - i32.const 2 - i32.eq - br_if $block_54 + i32.or + i32.clz + i32.const 2 + i32.shr_u + i32.const 7 + i32.xor + i64.extend_i32_u + i64.const 21474836480 + i64.or + local.set $9 + br $block_16 + end ;; $block_20 + local.get $0 + i32.const 65535 + i32.and + local.set $5 + i32.const 1052333 + local.set $3 + i32.const 1 + local.set $4 + block $block_32 + loop $loop_3 + local.get $3 + i32.const 1 + i32.add + local.set $8 + block $block_33 + block $block_34 + local.get $3 + i32.load8_u + local.tee $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $7 + i32.const 0 + i32.lt_s + br_if $block_34 + local.get $8 + local.set $3 + br $block_33 + end ;; $block_34 + local.get $8 + i32.const 1052741 + i32.eq + br_if $block_32 + local.get $7 + i32.const 127 + i32.and + i32.const 8 + i32.shl + local.get $3 + i32.load8_u offset=1 + i32.or + local.set $2 + local.get $3 + i32.const 2 + i32.add + local.set $3 + end ;; $block_33 + local.get $5 local.get $2 - i32.const 3 + i32.sub + local.tee $5 + i32.const 0 + i32.lt_s + br_if $block_18 + local.get $4 + i32.const 1 + i32.xor + local.set $4 + local.get $3 + i32.const 1052741 i32.ne - br_if $block_46 - local.get $5 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 255 - i32.and - i32.const -1 - i32.add + br_if $loop_3 + br $block_18 + end ;; $loop_3 + end ;; $block_32 + i32.const 1049644 + call $core::panicking::panic::h540eb5ee6ff533c2 + unreachable + end ;; $block_19 + local.get $0 + i32.const 65535 + i32.and + local.set $5 + i32.const 1051783 + local.set $3 + i32.const 1 + local.set $4 + loop $loop_4 + local.get $3 + i32.const 1 + i32.add + local.set $8 + block $block_35 + block $block_36 + local.get $3 + i32.load8_u local.tee $2 - i32.const 4 - i32.gt_u - br_if $block_46 - block $block_55 - local.get $2 - br_table - $block_55 $block_49 $block_51 $block_50 $block_52 - $block_55 ;; default - end ;; $block_55 - local.get $5 - i64.const -1095216660481 - i64.and - local.set $5 - i32.const 125 - local.set $0 - br $block_48 - end ;; $block_54 - i32.const 1 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.tee $7 + i32.const 0 + i32.lt_s + br_if $block_36 + local.get $8 + local.set $3 + br $block_35 + end ;; $block_36 + local.get $8 + i32.const 1052097 + i32.eq + br_if $block_15 + local.get $7 + i32.const 127 + i32.and + i32.const 8 + i32.shl + local.get $3 + i32.load8_u offset=1 + i32.or local.set $2 - br $block_47 - end ;; $block_53 + local.get $3 + i32.const 2 + i32.add + local.set $3 + end ;; $block_35 + local.get $5 + local.get $2 + i32.sub + local.tee $5 i32.const 0 - local.set $2 + i32.lt_s + br_if $block_18 local.get $4 - local.set $0 - br $block_47 - end ;; $block_52 - local.get $5 + i32.const 1 + i32.xor + local.set $4 + local.get $3 + i32.const 1052097 + i32.ne + br_if $loop_4 + end ;; $loop_4 + end ;; $block_18 + i32.const 1 + local.set $3 + local.get $4 + i32.const 1 + i32.and + br_if $block_2 + end ;; $block_17 + local.get $0 + i32.const 1 + i32.or + i32.clz + i32.const 2 + i32.shr_u + i32.const 7 + i32.xor + i64.extend_i32_u + i64.const 21474836480 + i64.or + local.set $9 + end ;; $block_16 + i32.const 3 + local.set $3 + br $block_1 + end ;; $block_15 + i32.const 1049644 + call $core::panicking::panic::h540eb5ee6ff533c2 + unreachable + end ;; $block_2 + end ;; $block_1 + local.get $0 + local.set $5 + end ;; $block_0 + loop $loop_5 + local.get $3 + local.set $4 + i32.const 92 + local.set $0 + i32.const 1 + local.set $2 + i32.const 1 + local.set $3 + block $block_37 + block $block_38 + block $block_39 + block $block_40 + local.get $4 + br_table + $block_39 $block_38 $block_37 $block_40 + $block_39 ;; default + end ;; $block_40 + block $block_41 + block $block_42 + block $block_43 + block $block_44 + block $block_45 + local.get $9 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 255 + i32.and + br_table + $block_39 $block_41 $block_42 $block_43 $block_44 $block_45 + $block_39 ;; default + end ;; $block_45 + local.get $9 + i64.const -1095216660481 + i64.and + i64.const 17179869184 + i64.or + local.set $9 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_44 + local.get $9 i64.const -1095216660481 i64.and - i64.const 17179869184 + i64.const 12884901888 i64.or - local.set $5 - br $block_48 - end ;; $block_51 - local.get $5 + local.set $9 + i32.const 117 + local.set $0 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_43 + local.get $9 i64.const -1095216660481 i64.and i64.const 8589934592 i64.or - local.set $5 - i32.const 123 - local.set $0 - br $block_48 - end ;; $block_50 - local.get $5 - i64.const -1095216660481 - i64.and - i64.const 12884901888 - i64.or - local.set $5 - i32.const 117 - local.set $0 - br $block_48 - end ;; $block_49 - local.get $4 - local.get $5 - i32.wrap_i64 - local.tee $13 - i32.const 2 - i32.shl - i32.const 28 - i32.and - i32.shr_u - i32.const 15 - i32.and - local.tee $2 - i32.const 48 - i32.or - local.get $2 - i32.const 87 - i32.add - local.get $2 - i32.const 10 - i32.lt_u - select - local.set $0 - block $block_56 - local.get $13 - i32.eqz - br_if $block_56 - local.get $5 - i64.const -1 - i64.add - i64.const 4294967295 - i64.and + local.set $9 + i32.const 123 + local.set $0 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_42 local.get $5 - i64.const -4294967296 + local.get $9 + i32.wrap_i64 + local.tee $4 + i32.const 2 + i32.shl + i32.const 28 + i32.and + i32.shr_u + i32.const 15 + i32.and + local.tee $3 + i32.const 48 + i32.or + local.get $3 + i32.const 87 + i32.add + local.get $3 + i32.const 10 + i32.lt_u + select + local.set $0 + block $block_46 + local.get $4 + i32.eqz + br_if $block_46 + local.get $9 + i64.const -1 + i64.add + i64.const 4294967295 + i64.and + local.get $9 + i64.const -4294967296 + i64.and + i64.or + local.set $9 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_46 + local.get $9 + i64.const -1095216660481 i64.and + i64.const 4294967296 i64.or - local.set $5 - br $block_48 - end ;; $block_56 - local.get $5 + local.set $9 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_41 + local.get $9 i64.const -1095216660481 i64.and - i64.const 4294967296 - i64.or - local.set $5 - end ;; $block_48 - i32.const 3 - local.set $2 - end ;; $block_47 - local.get $15 - i32.load - local.get $0 - local.get $14 - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - i32.eqz - br_if $loop_4 - end ;; $loop_4 - i32.const 1 - return - end ;; $block_46 - local.get $1 - i32.const 24 - i32.add - i32.load - i32.const 39 - local.get $1 - i32.const 28 - i32.add - i32.load - i32.load offset=16 - call_indirect $13 (type $2) - local.set $2 + local.set $9 + i32.const 125 + local.set $0 + i32.const 3 + local.set $3 + br $block_37 + end ;; $block_39 + local.get $1 + i32.load offset=24 + i32.const 39 + local.get $1 + i32.load offset=28 + i32.load offset=16 + call_indirect $13 (type $2) + return + end ;; $block_38 + i32.const 0 + local.set $3 + local.get $5 + local.set $0 + end ;; $block_37 + local.get $1 + i32.load offset=24 + local.get $0 + local.get $1 + i32.load offset=28 + i32.load offset=16 + call_indirect $13 (type $2) + i32.eqz + br_if $loop_5 + end ;; $loop_5 end ;; $block local.get $2 ) - (func $core::fmt::num::::fmt::h5c9a921f5b6ae7be (type $2) + (func $core::fmt::num::::fmt::hb54eecdb0d5e8e4a (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -11492,31 +10709,81 @@ block $block_0 block $block_1 block $block_2 - local.get $1 - i32.load - local.tee $3 - i32.const 16 - i32.and - br_if $block_2 + block $block_3 + local.get $1 + i32.load + local.tee $3 + i32.const 16 + i32.and + br_if $block_3 + local.get $3 + i32.const 32 + i32.and + br_if $block_2 + local.get $0 + i64.extend_i32_u + local.get $1 + call $core::fmt::num::imp::fmt_u64::hbf92ea5b56adc693 + local.set $0 + br $block_1 + end ;; $block_3 + i32.const 0 + local.set $3 + loop $loop + local.get $2 + local.get $3 + i32.add + i32.const 127 + i32.add + local.get $0 + i32.const 15 + i32.and + local.tee $4 + i32.const 48 + i32.or + local.get $4 + i32.const 87 + i32.add + local.get $4 + i32.const 10 + i32.lt_u + select + i32.store8 + local.get $3 + i32.const -1 + i32.add + local.set $3 + local.get $0 + i32.const 4 + i32.shr_u + local.tee $0 + br_if $loop + end ;; $loop local.get $3 - i32.const 32 - i32.and - br_if $block_1 - local.get $0 - i64.extend_i32_u + i32.const 128 + i32.add + local.tee $0 + i32.const 129 + i32.ge_u + br_if $block_0 local.get $1 - call $core::fmt::num::imp::fmt_u64::h4648b2300e699242 - local.set $0 + i32.const 1049548 + i32.const 2 local.get $2 + local.get $3 + i32.add i32.const 128 i32.add - global.set $15 - local.get $0 - return + i32.const 0 + local.get $3 + i32.sub + call $core::fmt::Formatter::pad_integral::h0e630a1dafcc54e1 + local.set $0 + br $block_1 end ;; $block_2 i32.const 0 local.set $3 - loop $loop + loop $loop_0 local.get $2 local.get $3 i32.add @@ -11529,7 +10796,7 @@ i32.const 48 i32.or local.get $4 - i32.const 87 + i32.const 55 i32.add local.get $4 i32.const 10 @@ -11544,17 +10811,17 @@ i32.const 4 i32.shr_u local.tee $0 - br_if $loop - end ;; $loop + br_if $loop_0 + end ;; $loop_0 local.get $3 i32.const 128 i32.add local.tee $0 i32.const 129 i32.ge_u - br_if $block_0 + br_if $block local.get $1 - i32.const 1049552 + i32.const 1049548 i32.const 2 local.get $2 local.get $3 @@ -11564,67 +10831,9 @@ i32.const 0 local.get $3 i32.sub - call $core::fmt::Formatter::pad_integral::h17dddcbb38d9710f + call $core::fmt::Formatter::pad_integral::h0e630a1dafcc54e1 local.set $0 - local.get $2 - i32.const 128 - i32.add - global.set $15 - local.get $0 - return end ;; $block_1 - i32.const 0 - local.set $3 - loop $loop_0 - local.get $2 - local.get $3 - i32.add - i32.const 127 - i32.add - local.get $0 - i32.const 15 - i32.and - local.tee $4 - i32.const 48 - i32.or - local.get $4 - i32.const 55 - i32.add - local.get $4 - i32.const 10 - i32.lt_u - select - i32.store8 - local.get $3 - i32.const -1 - i32.add - local.set $3 - local.get $0 - i32.const 4 - i32.shr_u - local.tee $0 - br_if $loop_0 - end ;; $loop_0 - local.get $3 - i32.const 128 - i32.add - local.tee $0 - i32.const 129 - i32.ge_u - br_if $block - local.get $1 - i32.const 1049552 - i32.const 2 - local.get $2 - local.get $3 - i32.add - i32.const 128 - i32.add - i32.const 0 - local.get $3 - i32.sub - call $core::fmt::Formatter::pad_integral::h17dddcbb38d9710f - local.set $0 local.get $2 i32.const 128 i32.add @@ -11634,81 +10843,142 @@ end ;; $block_0 local.get $0 i32.const 128 - call $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 + call $core::slice::slice_index_order_fail::h52dc23ecec067d2f unreachable end ;; $block local.get $0 i32.const 128 - call $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 + call $core::slice::slice_index_order_fail::h52dc23ecec067d2f unreachable ) - (func $core::fmt::ArgumentV1::show_usize::hf8ebfbd77fa8a93d (type $2) + (func $core::fmt::ArgumentV1::show_usize::h42d8eed9ea762fba (type $2) (param $0 i32) (param $1 i32) (result i32) local.get $0 i64.load32_u local.get $1 - call $core::fmt::num::imp::fmt_u64::h4648b2300e699242 + call $core::fmt::num::imp::fmt_u64::hbf92ea5b56adc693 ) - (func $core::slice::memchr::memchr::h6bde110ce4c09380 (type $12) + (func $<&T_as_core::fmt::Debug>::fmt::h71574e0037640cf9 (type $2) (param $0 i32) - (param $1 i32) - (param $2 i32) - (param $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - i32.const 0 - local.set $4 - block $block - local.get $2 - i32.const 3 - i32.and - local.tee $5 - i32.eqz - br_if $block - i32.const 4 - local.get $5 - i32.sub - local.tee $5 - i32.eqz - br_if $block - local.get $2 - local.get $3 - local.get $5 - local.get $5 - local.get $3 - i32.gt_u - select - local.tee $4 - i32.add - local.set $6 - i32.const 0 - local.set $5 - local.get $1 - i32.const 255 - i32.and - local.set $7 - local.get $4 - local.set $8 - local.get $2 - local.set $9 + (param $1 i32) + (result i32) + local.get $0 + i32.load + local.get $1 + local.get $0 + i32.load offset=4 + i32.load offset=12 + call_indirect $13 (type $2) + ) + + (func $core::slice::memchr::memchr::h9a5a49faa1649096 (type $7) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + i32.const 0 + local.set $4 + block $block block $block_0 + local.get $2 + i32.const 3 + i32.and + local.tee $5 + i32.eqz + br_if $block_0 + i32.const 4 + local.get $5 + i32.sub + local.tee $5 + i32.eqz + br_if $block_0 + local.get $2 + local.get $3 + local.get $5 + local.get $5 + local.get $3 + i32.gt_u + select + local.tee $4 + i32.add + local.set $6 + i32.const 0 + local.set $5 + local.get $1 + i32.const 255 + i32.and + local.set $7 + local.get $4 + local.set $8 + local.get $2 + local.set $9 block $block_1 loop $loop - local.get $6 - local.get $9 - i32.sub - i32.const 3 - i32.le_u - br_if $block_1 + block $block_2 + local.get $6 + local.get $9 + i32.sub + i32.const 3 + i32.gt_u + br_if $block_2 + i32.const 0 + local.set $7 + local.get $1 + i32.const 255 + i32.and + local.set $6 + loop $loop_0 + local.get $8 + i32.eqz + br_if $block_0 + local.get $9 + local.get $7 + i32.add + local.set $10 + local.get $8 + i32.const -1 + i32.add + local.set $8 + local.get $7 + i32.const 1 + i32.add + local.set $7 + local.get $10 + i32.load8_u + local.tee $10 + local.get $6 + i32.ne + br_if $loop_0 + end ;; $loop_0 + local.get $5 + local.get $10 + local.get $1 + i32.const 255 + i32.and + i32.eq + i32.const 1 + i32.add + i32.const 1 + i32.and + i32.add + local.get $7 + i32.add + i32.const -1 + i32.add + local.set $5 + br $block_1 + end ;; $block_2 local.get $5 local.get $9 i32.load8_u @@ -11720,7 +10990,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_0 + br_if $block_1 local.get $5 local.get $9 i32.const 1 @@ -11734,7 +11004,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_0 + br_if $block_1 local.get $5 local.get $9 i32.const 2 @@ -11748,7 +11018,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_0 + br_if $block_1 local.get $5 local.get $9 i32.const 3 @@ -11771,155 +11041,151 @@ local.get $7 i32.ne br_if $loop - br $block_0 end ;; $loop end ;; $block_1 - i32.const 0 - local.set $7 - local.get $1 - i32.const 255 - i32.and - local.set $6 - loop $loop_0 - local.get $8 - i32.eqz - br_if $block - local.get $9 - local.get $7 - i32.add - local.set $10 - local.get $8 - i32.const -1 - i32.add - local.set $8 - local.get $7 - i32.const 1 - i32.add - local.set $7 - local.get $10 - i32.load8_u - local.tee $10 - local.get $6 - i32.ne - br_if $loop_0 - end ;; $loop_0 - local.get $10 - local.get $1 - i32.const 255 - i32.and - i32.eq - i32.const 1 - i32.add i32.const 1 - i32.and - local.get $5 - i32.add - local.get $7 - i32.add - i32.const -1 - i32.add - local.set $5 + local.set $9 + br $block end ;; $block_0 - local.get $0 - local.get $5 - i32.store offset=4 - local.get $0 - i32.const 1 - i32.store - return - end ;; $block - local.get $1 - i32.const 255 - i32.and - local.set $7 - block $block_2 + local.get $1 + i32.const 255 + i32.and + local.set $7 block $block_3 - local.get $3 - i32.const 8 - i32.lt_u - br_if $block_3 - local.get $4 - local.get $3 - i32.const -8 - i32.add - local.tee $10 - i32.gt_u - br_if $block_3 - local.get $7 - i32.const 16843009 - i32.mul - local.set $5 block $block_4 - loop $loop_1 - local.get $2 - local.get $4 - i32.add - local.tee $9 - i32.const 4 - i32.add - i32.load - local.get $5 - i32.xor - local.tee $8 - i32.const -1 - i32.xor - local.get $8 - i32.const -16843009 - i32.add - i32.and - local.get $9 - i32.load - local.get $5 - i32.xor - local.tee $9 - i32.const -1 - i32.xor - local.get $9 - i32.const -16843009 - i32.add - i32.and - i32.or - i32.const -2139062144 - i32.and - br_if $block_4 - local.get $4 - i32.const 8 - i32.add - local.tee $4 - local.get $10 - i32.le_u - br_if $loop_1 - end ;; $loop_1 + local.get $3 + i32.const 8 + i32.lt_u + br_if $block_4 + local.get $4 + local.get $3 + i32.const -8 + i32.add + local.tee $10 + i32.gt_u + br_if $block_4 + local.get $7 + i32.const 16843009 + i32.mul + local.set $5 + block $block_5 + loop $loop_1 + local.get $2 + local.get $4 + i32.add + local.tee $9 + i32.const 4 + i32.add + i32.load + local.get $5 + i32.xor + local.tee $8 + i32.const -1 + i32.xor + local.get $8 + i32.const -16843009 + i32.add + i32.and + local.get $9 + i32.load + local.get $5 + i32.xor + local.tee $9 + i32.const -1 + i32.xor + local.get $9 + i32.const -16843009 + i32.add + i32.and + i32.or + i32.const -2139062144 + i32.and + br_if $block_5 + local.get $4 + i32.const 8 + i32.add + local.tee $4 + local.get $10 + i32.le_u + br_if $loop_1 + end ;; $loop_1 + end ;; $block_5 + local.get $4 + local.get $3 + i32.gt_u + br_if $block_3 end ;; $block_4 + local.get $2 local.get $4 + i32.add + local.set $9 + local.get $2 local.get $3 - i32.gt_u - br_if $block_2 - end ;; $block_3 - local.get $2 - local.get $4 - i32.add - local.set $9 - local.get $2 - local.get $3 - i32.add - local.set $2 - local.get $3 - local.get $4 - i32.sub - local.set $8 - i32.const 0 - local.set $5 - block $block_5 + i32.add + local.set $2 + local.get $3 + local.get $4 + i32.sub + local.set $8 + i32.const 0 + local.set $5 block $block_6 block $block_7 loop $loop_2 - local.get $2 - local.get $9 - i32.sub - i32.const 3 - i32.le_u - br_if $block_7 + block $block_8 + local.get $2 + local.get $9 + i32.sub + i32.const 3 + i32.gt_u + br_if $block_8 + i32.const 0 + local.set $7 + local.get $1 + i32.const 255 + i32.and + local.set $2 + loop $loop_3 + local.get $8 + i32.eqz + br_if $block_6 + local.get $9 + local.get $7 + i32.add + local.set $10 + local.get $8 + i32.const -1 + i32.add + local.set $8 + local.get $7 + i32.const 1 + i32.add + local.set $7 + local.get $10 + i32.load8_u + local.tee $10 + local.get $2 + i32.ne + br_if $loop_3 + end ;; $loop_3 + local.get $10 + local.get $1 + i32.const 255 + i32.and + i32.eq + i32.const 1 + i32.add + i32.const 1 + i32.and + local.get $5 + i32.add + local.get $7 + i32.add + i32.const -1 + i32.add + local.set $5 + br $block_7 + end ;; $block_8 local.get $5 local.get $9 i32.load8_u @@ -11931,7 +11197,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_6 + br_if $block_7 local.get $5 local.get $9 i32.const 1 @@ -11945,7 +11211,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_6 + br_if $block_7 local.get $5 local.get $9 i32.const 2 @@ -11959,7 +11225,7 @@ local.get $10 local.get $7 i32.eq - br_if $block_6 + br_if $block_7 local.get $5 local.get $9 i32.const 3 @@ -11982,88 +11248,44 @@ local.get $7 i32.ne br_if $loop_2 - br $block_6 end ;; $loop_2 end ;; $block_7 - i32.const 0 - local.set $7 - local.get $1 - i32.const 255 - i32.and - local.set $2 - loop $loop_3 - local.get $8 - i32.eqz - br_if $block_5 - local.get $9 - local.get $7 - i32.add - local.set $10 - local.get $8 - i32.const -1 - i32.add - local.set $8 - local.get $7 - i32.const 1 - i32.add - local.set $7 - local.get $10 - i32.load8_u - local.tee $10 - local.get $2 - i32.ne - br_if $loop_3 - end ;; $loop_3 - local.get $10 - local.get $1 - i32.const 255 - i32.and - i32.eq i32.const 1 - i32.add - i32.const 1 - i32.and + local.set $9 local.get $5 - i32.add - local.get $7 - i32.add - i32.const -1 + local.get $4 i32.add local.set $5 + br $block end ;; $block_6 - local.get $0 + i32.const 0 + local.set $9 local.get $5 + local.get $7 + i32.add local.get $4 i32.add - i32.store offset=4 - local.get $0 - i32.const 1 - i32.store - return - end ;; $block_5 - local.get $0 - local.get $5 - local.get $7 - i32.add + local.set $5 + br $block + end ;; $block_3 local.get $4 - i32.add - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - return - end ;; $block_2 - local.get $4 - local.get $3 - call $core::slice::slice_index_order_fail::h719e3c8ae46c9d99 - unreachable + local.get $3 + call $core::slice::slice_index_order_fail::h52dc23ecec067d2f + unreachable + end ;; $block + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $9 + i32.store ) - (func $core::ptr::real_drop_in_place::h23040579a46f15a6 (type $6) + (func $core::ptr::real_drop_in_place::h4acead9551505031 (type $5) (param $0 i32) ) - (func $core::fmt::Write::write_char::he6255f3eabfceb48 (type $2) + (func $core::fmt::Write::write_char::hddeb2d341a4f7c8e (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -12078,109 +11300,109 @@ i32.store offset=12 block $block block $block_0 - local.get $1 - i32.const 127 - i32.gt_u - br_if $block_0 - local.get $2 - local.get $1 - i32.store8 offset=12 - i32.const 1 - local.set $1 - br $block - end ;; $block_0 - block $block_1 - local.get $1 - i32.const 2047 - i32.gt_u - br_if $block_1 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 31 - i32.and - i32.const 192 - i32.or - i32.store8 offset=12 - i32.const 2 - local.set $1 - br $block - end ;; $block_1 - block $block_2 - local.get $1 - i32.const 65535 - i32.gt_u - br_if $block_2 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 + block $block_1 + local.get $1 + i32.const 128 + i32.lt_u + br_if $block_1 + local.get $1 + i32.const 2048 + i32.lt_u + br_if $block_0 + block $block_2 + local.get $1 + i32.const 65536 + i32.ge_u + br_if $block_2 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + local.get $2 + local.get $1 + i32.const 12 + i32.shr_u + i32.const 15 + i32.and + i32.const 224 + i32.or + i32.store8 offset=12 + i32.const 3 + local.set $1 + br $block + end ;; $block_2 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=15 + local.get $2 + local.get $1 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.store8 offset=12 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 + local.get $1 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + i32.const 4 + local.set $1 + br $block + end ;; $block_1 local.get $2 local.get $1 - i32.const 12 - i32.shr_u - i32.const 15 - i32.and - i32.const 224 - i32.or i32.store8 offset=12 - i32.const 3 + i32.const 1 local.set $1 br $block - end ;; $block_2 + end ;; $block_0 local.get $2 local.get $1 i32.const 63 i32.and i32.const 128 i32.or - i32.store8 offset=15 - local.get $2 - local.get $1 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.store8 offset=12 + i32.store8 offset=13 local.get $2 local.get $1 i32.const 6 i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 12 - i32.shr_u - i32.const 63 + i32.const 31 i32.and - i32.const 128 + i32.const 192 i32.or - i32.store8 offset=13 - i32.const 4 + i32.store8 offset=12 + i32.const 2 local.set $1 end ;; $block local.get $0 @@ -12188,7 +11410,7 @@ i32.const 12 i32.add local.get $1 - call $::write_str::h7d69c319e62567ea + call $::write_str::h3cfa2330727f68d0 local.set $1 local.get $2 i32.const 16 @@ -12197,7 +11419,7 @@ local.get $1 ) - (func $core::fmt::Write::write_fmt::hd43133c0fc77f05d (type $2) + (func $core::fmt::Write::write_fmt::hdcf4af1ee4f15333 (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -12237,11 +11459,11 @@ local.get $2 i32.const 4 i32.add - i32.const 1054528 + i32.const 1054640 local.get $2 i32.const 8 i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 + call $core::fmt::write::h9ffb25a5a03fc281 local.set $1 local.get $2 i32.const 32 @@ -12250,11 +11472,7 @@ local.get $1 ) - (func $core::ptr::real_drop_in_place::h0013f08692be52e6 (type $6) - (param $0 i32) - ) - - (func $<&mut_W_as_core::fmt::Write>::write_str::h0573ddc37a895899 (type $1) + (func $<&mut_W_as_core::fmt::Write>::write_str::heb9faa6c9b7a53d6 (type $1) (param $0 i32) (param $1 i32) (param $2 i32) @@ -12263,10 +11481,10 @@ i32.load local.get $1 local.get $2 - call $::write_str::h7d69c319e62567ea + call $::write_str::h3cfa2330727f68d0 ) - (func $<&mut_W_as_core::fmt::Write>::write_char::hc454648cbae23e1c (type $2) + (func $<&mut_W_as_core::fmt::Write>::write_char::h66c6e1685ede49cb (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -12284,10 +11502,85 @@ i32.store offset=12 block $block block $block_0 - local.get $1 - i32.const 127 - i32.gt_u - br_if $block_0 + block $block_1 + local.get $1 + i32.const 128 + i32.lt_u + br_if $block_1 + local.get $1 + i32.const 2048 + i32.lt_u + br_if $block_0 + block $block_2 + local.get $1 + i32.const 65536 + i32.ge_u + br_if $block_2 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + local.get $2 + local.get $1 + i32.const 12 + i32.shr_u + i32.const 15 + i32.and + i32.const 224 + i32.or + i32.store8 offset=12 + i32.const 3 + local.set $1 + br $block + end ;; $block_2 + local.get $2 + local.get $1 + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=15 + local.get $2 + local.get $1 + i32.const 18 + i32.shr_u + i32.const 240 + i32.or + i32.store8 offset=12 + local.get $2 + local.get $1 + i32.const 6 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=14 + local.get $2 + local.get $1 + i32.const 12 + i32.shr_u + i32.const 63 + i32.and + i32.const 128 + i32.or + i32.store8 offset=13 + i32.const 4 + local.set $1 + br $block + end ;; $block_1 local.get $2 local.get $1 i32.store8 offset=12 @@ -12295,98 +11588,23 @@ local.set $1 br $block end ;; $block_0 - block $block_1 - local.get $1 - i32.const 2047 - i32.gt_u - br_if $block_1 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 31 - i32.and - i32.const 192 - i32.or - i32.store8 offset=12 - i32.const 2 - local.set $1 - br $block - end ;; $block_1 - block $block_2 - local.get $1 - i32.const 65535 - i32.gt_u - br_if $block_2 - local.get $2 - local.get $1 - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 6 - i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=13 - local.get $2 - local.get $1 - i32.const 12 - i32.shr_u - i32.const 15 - i32.and - i32.const 224 - i32.or - i32.store8 offset=12 - i32.const 3 - local.set $1 - br $block - end ;; $block_2 local.get $2 local.get $1 i32.const 63 i32.and i32.const 128 i32.or - i32.store8 offset=15 - local.get $2 - local.get $1 - i32.const 18 - i32.shr_u - i32.const 240 - i32.or - i32.store8 offset=12 + i32.store8 offset=13 local.get $2 local.get $1 i32.const 6 i32.shr_u - i32.const 63 - i32.and - i32.const 128 - i32.or - i32.store8 offset=14 - local.get $2 - local.get $1 - i32.const 12 - i32.shr_u - i32.const 63 + i32.const 31 i32.and - i32.const 128 + i32.const 192 i32.or - i32.store8 offset=13 - i32.const 4 + i32.store8 offset=12 + i32.const 2 local.set $1 end ;; $block local.get $0 @@ -12394,7 +11612,7 @@ i32.const 12 i32.add local.get $1 - call $::write_str::h7d69c319e62567ea + call $::write_str::h3cfa2330727f68d0 local.set $1 local.get $2 i32.const 16 @@ -12403,7 +11621,7 @@ local.get $1 ) - (func $<&mut_W_as_core::fmt::Write>::write_fmt::hc0aee806cb052974 (type $2) + (func $<&mut_W_as_core::fmt::Write>::write_fmt::hf64f7e3f726250ce (type $2) (param $0 i32) (param $1 i32) (result i32) @@ -12444,11 +11662,11 @@ local.get $2 i32.const 4 i32.add - i32.const 1054528 + i32.const 1054640 local.get $2 i32.const 8 i32.add - call $core::fmt::write::h8cfd01c67a4a46c9 + call $core::fmt::write::h9ffb25a5a03fc281 local.set $1 local.get $2 i32.const 32 @@ -12457,6 +11675,22 @@ local.get $1 ) + (func $::fmt::h99349d0cc7fe11e2 (type $2) + (param $0 i32) + (param $1 i32) + (result i32) + local.get $1 + i32.load offset=24 + i32.const 1054671 + i32.const 5 + local.get $1 + i32.const 28 + i32.add + i32.load + i32.load offset=12 + call_indirect $13 (type $1) + ) + (func $memcpy (type $1) (param $0 i32) (param $1 i32) @@ -12500,46 +11734,48 @@ (local $3 i32) (local $4 i32) (local $5 i32) + i32.const 0 + local.set $3 block $block + local.get $2 + i32.eqz + br_if $block block $block_0 - local.get $2 - i32.eqz - br_if $block_0 - i32.const 0 - local.set $3 loop $loop local.get $0 - local.get $3 - i32.add i32.load8_u local.tee $4 local.get $1 - local.get $3 - i32.add i32.load8_u local.tee $5 i32.ne - br_if $block - local.get $3 + br_if $block_0 + local.get $1 i32.const 1 i32.add - local.tee $3 + local.set $1 + local.get $0 + i32.const 1 + i32.add + local.set $0 local.get $2 - i32.lt_u - br_if $loop + i32.const -1 + i32.add + local.tee $2 + i32.eqz + br_if $block + br $loop end ;; $loop - i32.const 0 - return end ;; $block_0 - i32.const 0 - return + local.get $4 + local.get $5 + i32.sub + local.set $3 end ;; $block - local.get $4 - local.get $5 - i32.sub + local.get $3 ) ;; User section "producers": - ;; "\02\08language\01\04Rust\042018\0cprocessed-" - ;; "by\01\05rustc\1d1.36.0 (a53f9df32 2019" - ;; "-07-03)" + ;; "\02\08language\01\04Rust\00\0cprocessed-by\01\05" + ;; "rustc%1.39.0-nightly (2111aed0a " + ;; "2019-08-17)" ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/missing_cpp.wasm b/test/extensions/wasm/test_data/missing_cpp.wasm index 2fbe2617f3d12..2e3db3135d4f0 100644 Binary files a/test/extensions/wasm/test_data/missing_cpp.wasm and b/test/extensions/wasm/test_data/missing_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/missing_cpp.wat b/test/extensions/wasm/test_data/missing_cpp.wat index 6bf47c7fcd6ae..3996dba231c2f 100644 --- a/test/extensions/wasm/test_data/missing_cpp.wat +++ b/test/extensions/wasm/test_data/missing_cpp.wat @@ -13,7 +13,7 @@ (type $11 (func (param i32 i32 i32 i32) (result i32))) (type $12 (func (param i32 i32 i32 i32 i32 i32 i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) @@ -46,20 +46,20 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $17 (mut i32) (i32.const 3184)) - (global $18 (mut i32) (i32.const 5246064)) + (global $17 (mut i32) (i32.const 3168)) + (global $18 (mut i32) (i32.const 5246048)) (elem $19 $13 (global.get $15) $b0 $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $b1 $b2 $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $b2 $b2 $b3 $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b3 $b4 $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b4 $b5 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b5) (data $20 $14 (i32.const 1024) - "\88\04\00\00\fb\04\00\00\10\04\00\00\00\00\00\00\88\04\00\00\a8\04\00\00 \04\00\00\00\00\00\00`\04\00\00\c9\04\00\00\88\04\00\00\d6\04\00\00\00\04\00\00\00\00\00\00\88\04\00\00A\05\00\00" - "\10\04\00\00\00\00\00\00\88\04\00\00\1d\05\00\008\04") + "\88\04\00\00\fb\04\00\00\10\04\00\00\00\00\00\00\88\04\00\00\a8\04\00\00 \04\00\00\00\00\00\00`\04\00\00\c9\04\00\00\88\04\00\00\d6\04\00\00\00\04\00\00\00\00\00\00\88\04\00\00\1d\05\00\00" + "\10\04\00\00\00\00\00\00\88\04\00\00?\05\00\008\04") (data $21 $14 (i32.const 1117) "\04\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00(\04\00\00\01\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\01\00\00\00\02" "\00\00\00\02\00\00\00\02\00\00\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cx" "xabiv120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00" - "N10__cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_" + "N10__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_" "infoE") (func $stackAlloc (type $7) @@ -126,7 +126,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 1936 + i32.const 1932 i32.store local.get $0 i32.const 0 @@ -143,7 +143,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 1936 + i32.const 1932 i32.store local.get $0 i32.const 0 @@ -330,6 +330,63 @@ i32.const 1432 ) + (func $_strcmp (type $10) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + (func $_malloc (type $7) (param $0 i32) (result i32) @@ -5377,9 +5434,7 @@ (func $__ZSt18uncaught_exceptionv (type $6) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -5401,36 +5456,19 @@ (func $__Znwm (type $7) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 1932 - i32.const 1932 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 2 - call_indirect $13 (type $0) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $5) @@ -5441,73 +5479,70 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) - (local $8 i32) local.get $0 i32.load8_s offset=11 - local.tee $6 + local.tee $3 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 local.get $0 i32.load offset=8 i32.const 2147483647 i32.and i32.const -1 i32.add + local.set $1 + local.get $0 + i32.load offset=4 else - local.get $6 + i32.const 10 + local.set $1 + local.get $3 i32.const 255 i32.and - local.set $3 - i32.const 10 end ;; $if - local.set $1 - local.get $3 + local.tee $5 i32.const 0 - local.get $3 + local.get $5 i32.const 0 i32.gt_u select - local.tee $2 + local.tee $4 i32.const 11 i32.lt_u - local.set $4 + local.set $2 i32.const 10 - local.get $2 + local.get $4 i32.const 16 i32.add i32.const -16 i32.and i32.const -1 i32.add - local.get $4 + local.get $2 select - local.tee $8 + local.tee $4 local.get $1 i32.ne if $if_0 block $block block $block_0 block $block_1 - local.get $4 + local.get $2 if $if_1 local.get $0 i32.load local.set $1 - local.get $7 + local.get $6 if $if_2 (result i32) i32.const 0 - local.set $4 + local.set $3 local.get $0 else local.get $0 local.get $1 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 @@ -5517,74 +5552,62 @@ call $_free br $block_0 end ;; $if_2 - local.set $5 + local.set $2 else - local.get $8 + local.get $4 i32.const 1 i32.add - local.tee $2 call $__Znwm - local.set $5 - local.get $7 + local.set $2 + local.get $6 if $if_3 (result i32) i32.const 1 - local.set $4 + local.set $3 local.get $0 i32.load else - local.get $5 + local.get $2 local.get $0 - local.get $6 + local.get $3 i32.const 255 i32.and i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 br $block_1 end ;; $if_3 local.set $1 end ;; $if_1 - local.get $5 + local.get $2 local.get $1 local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load + i32.load offset=4 i32.const 1 i32.add call $__ZNSt3__211char_traitsIcE4copyEPcPKcm local.get $1 call $_free - local.get $4 + local.get $3 i32.eqz br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 end ;; $block_1 local.get $0 - local.get $2 + local.get $4 + i32.const 1 + i32.add i32.const -2147483648 i32.or i32.store offset=8 - local.get $1 - local.get $3 - i32.store local.get $0 local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 i32.store br $block end ;; $block_0 local.get $0 - local.get $3 + local.get $5 i32.store8 offset=11 end ;; $block end ;; $if_0 @@ -5615,7 +5638,8 @@ global.set $17 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -5627,46 +5651,51 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 11 @@ -5705,10 +5734,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -5724,10 +5754,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -5745,10 +5776,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -5812,10 +5844,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -5824,6 +5857,26 @@ end ;; $if ) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $4) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $9) (param $0 i32) (param $1 i32) @@ -6026,9 +6079,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -6142,10 +6196,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -6181,10 +6236,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -6206,7 +6262,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -6243,93 +6301,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 19 + i32.add + call_indirect $13 (type $2) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 19 i32.add - call_indirect $13 (type $2) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -6340,10 +6389,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -7008,5 +7058,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\17\80\08\f0\98\c0\02\d0\18\e0\18" + ;; "\00\02\00\04\00\80\02\17\80\08\e0\98\c0\02\c0\18\d0\18" ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/segv_cpp.wasm b/test/extensions/wasm/test_data/segv_cpp.wasm index 5904ab8cf3654..da9497d585275 100644 Binary files a/test/extensions/wasm/test_data/segv_cpp.wasm and b/test/extensions/wasm/test_data/segv_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/segv_cpp.wat b/test/extensions/wasm/test_data/segv_cpp.wat index 735020fe73331..681f26ce0748b 100644 --- a/test/extensions/wasm/test_data/segv_cpp.wat +++ b/test/extensions/wasm/test_data/segv_cpp.wat @@ -10,22 +10,22 @@ (type $8 (func (result i32))) (type $9 (func (param i32) (result i32))) (type $10 (func (param i32 i32 i32))) - (type $11 (func (param i32 i32) (result i32))) - (type $12 (func (param i32 i32 i32 i32) (result i32))) - (type $13 (func (param i64 i32 i32) (result i32))) - (type $14 (func (param i64 i32) (result i32))) - (type $15 (func (param f64 i32) (result f64))) + (type $11 (func (param f64 i32) (result f64))) + (type $12 (func (param i32 i32) (result i32))) + (type $13 (func (param i32 i32 i32 i32) (result i32))) + (type $14 (func (param i64 i32 i32) (result i32))) + (type $15 (func (param i64 i32) (result i32))) (type $16 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (type $17 (func (param i32 i32 i32 i32 i32 i32 i32))) (import "env" "abort" (func $abort (param i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) (import "env" "_llvm_trap" (func $_llvm_trap)) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) (import "env" "__table_base" (global $20 i32)) (import "env" "DYNAMICTOP_PTR" (global $21 i32)) @@ -98,8 +98,8 @@ (data $41 $19 (i32.const 1579) "\ff\ff\ff\ff\ff") (data $42 $19 (i32.const 1648) - "\ec\07\00\00\dc\08\00\00\80\06\00\00\00\00\00\00\ec\07\00\00\89\08\00\00\90\06\00\00\00\00\00\00\c4\07\00\00\aa\08\00\00\ec\07\00\00\b7\08\00\00p\06\00\00\00\00\00\00\ec\07\00\00\"\09\00\00" - "\80\06\00\00\00\00\00\00\ec\07\00\00\fe\08\00\00\a8\06") + "\ec\07\00\00\dc\08\00\00\80\06\00\00\00\00\00\00\ec\07\00\00\89\08\00\00\90\06\00\00\00\00\00\00\c4\07\00\00\aa\08\00\00\ec\07\00\00\b7\08\00\00p\06\00\00\00\00\00\00\ec\07\00\00\fe\08\00\00" + "\80\06\00\00\00\00\00\00\ec\07\00\00 \09\00\00\a8\06") (data $43 $19 (i32.const 1924) "\a8\09") (data $44 $19 (i32.const 1984) @@ -108,7 +108,7 @@ "ter div by zero\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00" "NAN\00.\00%u\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxa" "biv120__si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00N1" - "0__cxxabiv119__pointer_type_infoE\00N10__cxxabiv117__pbase_type_in" + "0__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_in" "foE") (func $stackAlloc (type $9) @@ -156,68 +156,12 @@ (param $2 i32) (param $3 i32) (param $4 i32) - global.get $22 - local.set $0 - global.get $22 - i32.const 16 - i32.add - global.set $22 - local.get $0 - i32.const 16 - call $__Znwm - local.tee $1 - i32.store - local.get $0 - i32.const -2147483632 - i32.store offset=8 - local.get $0 - i32.const 13 - i32.store offset=4 - local.get $1 - i32.const 2060 - i64.load align=1 - i64.store align=1 - local.get $1 - i32.const 2068 - i32.load align=1 - i32.store offset=8 align=1 - local.get $1 - i32.const 2072 - i32.load8_s - i32.store8 offset=12 - local.get $1 - i32.const 0 - i32.store8 offset=13 - local.get $0 - call $__Z8logErrorRKNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE - local.get $0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev - call $_llvm_trap - ) - - (func $__Z8logErrorRKNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE (type $7) - (param $0 i32) - (local $1 i32) - (local $2 i32) i32.const 4 - local.get $0 - i32.load - local.get $0 - local.get $0 - i32.load8_s offset=11 - local.tee $1 - i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 255 - i32.and - local.get $2 - select + i32.const 2060 + i32.const 13 call $_proxy_log + drop + call $_llvm_trap ) (func $_proxy_onLog (type $7) @@ -226,39 +170,21 @@ (local $2 i32) (local $3 i32) global.get $22 - local.set $3 + local.set $1 global.get $22 i32.const 32 i32.add global.set $22 - local.get $3 + local.get $1 i32.const 12 i32.add - local.set $1 - i32.const 32 - call $__Znwm - local.tee $2 - i32.const 2074 - i64.load align=1 - i64.store align=1 - local.get $2 - i32.const 2082 - i64.load align=1 - i64.store offset=8 align=1 - local.get $2 - i32.const 2090 - i32.load16_s align=1 - i32.store16 offset=16 align=1 - local.get $2 - i32.const 0 - i32.store8 offset=18 + local.set $2 i32.const 4 - local.get $2 + i32.const 2074 i32.const 18 call $_proxy_log + drop local.get $2 - call $_free - local.get $3 local.get $0 if $if (result i32) i32.const 100 @@ -269,7 +195,7 @@ end ;; $if call $__ZNSt3__29to_stringEj local.get $1 - local.get $3 + local.get $2 call $_strlen call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm local.tee $0 @@ -294,16 +220,17 @@ local.tee $0 i32.const 0 i32.lt_s - local.tee $2 + local.tee $3 select local.get $1 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $2 + local.get $3 select call $_proxy_log + drop local.get $1 i32.load8_s offset=11 i32.const 0 @@ -313,39 +240,29 @@ i32.load call $_free end ;; $if_0 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 - i32.lt_s + i32.ge_s if $if_1 - local.get $3 - i32.load - call $_free + i32.const 4 + i32.const 2110 + i32.const 17 + call $_proxy_log + drop + local.get $1 + global.set $22 + return end ;; $if_1 - i32.const 32 - call $__Znwm - local.tee $0 - i32.const 2110 - i64.load align=1 - i64.store align=1 - local.get $0 - i32.const 2118 - i64.load align=1 - i64.store offset=8 align=1 - local.get $0 - i32.const 2126 - i32.load8_s - i32.store8 offset=16 - local.get $0 - i32.const 0 - i32.store8 offset=17 + local.get $2 + i32.load + call $_free i32.const 4 - local.get $0 + i32.const 2110 i32.const 17 call $_proxy_log - local.get $0 - call $_free - local.get $3 + drop + local.get $1 global.set $22 ) @@ -365,7 +282,7 @@ i64.const 0 i64.store align=4 local.get $0 - i32.const 3000 + i32.const 2996 i32.store local.get $0 i32.const 0 @@ -382,7 +299,7 @@ local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 3000 + i32.const 2996 i32.store local.get $0 i32.const 0 @@ -558,18 +475,221 @@ i64.store align=4 local.get $3 local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $5 - global.set $22 - ) - - (func $___errno_location (type $8) - (result i32) - i32.const 2496 + i32.load offset=8 + i32.store offset=8 + local.get $5 + global.set $22 + ) + + (func $___errno_location (type $8) + (result i32) + i32.const 2496 + ) + + (func $_strlen (type $8) + (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 2093 + local.set $0 + block $block + block $block_0 + i32.const 2093 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $2 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $2 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $2 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block + local.get $0 + i32.const 2093 + i32.sub + ) + + (func $_frexp (type $11) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub ) - (func $_memchr (type $11) + (func $_memchr (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -691,6 +811,31 @@ local.get $0 ) + (func $_snprintf (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + (local $3 i32) + global.get $22 + local.set $3 + global.get $22 + i32.const 16 + i32.add + global.set $22 + local.get $3 + local.get $2 + i32.store + local.get $0 + local.get $1 + local.get $3 + call $_vsnprintf + local.set $0 + local.get $3 + global.set $22 + local.get $0 + ) + (func $_vsnprintf (type $0) (param $0 i32) (param $1 i32) @@ -916,15 +1061,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -932,7 +1077,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -1190,11 +1335,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -1202,14 +1347,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -1222,11 +1367,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -1234,7 +1379,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -2141,11 +2286,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -2153,7 +2298,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -2222,7 +2367,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -2248,7 +2393,7 @@ local.get $0 i32.const 2180 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -2295,7 +2440,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -2325,7 +2470,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -2393,7 +2538,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -2407,7 +2552,7 @@ local.get $0 i32.const 2180 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -2444,7 +2589,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -2468,13 +2613,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -2483,7 +2628,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 @@ -2522,7 +2667,7 @@ f64.store ) - (func $___vfprintf_internal (type $11) + (func $___vfprintf_internal (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -2693,7 +2838,7 @@ local.get $0 ) - (func $_printf_core (type $12) + (func $_printf_core (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -2863,7 +3008,7 @@ local.get $0 local.get $12 local.get $4 - call $_out_279 + call $_out end ;; $if_2 local.get $4 br_if $loop_0 @@ -3076,7 +3221,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -3112,7 +3257,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $4 local.get $11 i32.load @@ -3300,7 +3445,7 @@ local.get $10 local.get $8 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -3614,7 +3759,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $4 br $block_13 @@ -3737,7 +3882,7 @@ local.get $16 local.get $4 local.get $7 - call $_pad_285 + call $_pad_524 local.get $4 if $if_28 i32.const 0 @@ -3768,7 +3913,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $4 i32.lt_u @@ -3831,7 +3976,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $4 local.get $16 @@ -3864,11 +4009,11 @@ local.tee $4 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $4 @@ -3876,17 +4021,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $4 @@ -3894,7 +4039,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -3926,7 +4071,7 @@ i32.add local.get $4 local.get $1 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -3971,7 +4116,7 @@ local.get $9 ) - (func $_out_279 (type $10) + (func $_out (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -3988,7 +4133,7 @@ end ;; $if ) - (func $_getint_280 (type $9) + (func $_getint (type $9) (param $0 i32) (result i32) (local $1 i32) @@ -4030,7 +4175,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $10) + (func $_pop_arg (type $10) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4260,7 +4405,7 @@ end ;; $if ) - (func $_fmt_x (type $13) + (func $_fmt_x (type $14) (param $0 i64) (param $1 i32) (param $2 i32) @@ -4296,7 +4441,7 @@ local.get $1 ) - (func $_fmt_o (type $14) + (func $_fmt_o (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4328,7 +4473,7 @@ local.get $1 ) - (func $_fmt_u (type $14) + (func $_fmt_u (type $15) (param $0 i64) (param $1 i32) (result i32) @@ -4401,7 +4546,7 @@ local.get $1 ) - (func $_pad_285 (type $6) + (func $_pad_524 (type $6) (param $0 i32) (param $1 i32) (param $2 i32) @@ -4452,7 +4597,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -4469,13 +4614,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 global.set $22 ) - (func $_wctomb (type $11) + (func $_wctomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4489,7 +4634,7 @@ end ;; $if ) - (func $_wcrtomb (type $11) + (func $_wcrtomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -4808,76 +4953,6 @@ end ;; $if ) - (func $_frexp (type $15) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - (func $_sn_write (type $0) (param $0 i32) (param $1 i32) @@ -4912,107 +4987,6 @@ local.get $2 ) - (func $_strlen (type $8) - (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 2093 - local.set $0 - block $block - block $block_0 - i32.const 2093 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $2 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $2 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $2 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 - end ;; $if_1 - end ;; $block - local.get $0 - i32.const 2093 - i32.sub - ) - - (func $_snprintf (type $0) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - global.get $22 - local.set $3 - global.get $22 - i32.const 16 - i32.add - global.set $22 - local.get $3 - local.get $2 - i32.store - local.get $0 - local.get $1 - local.get $3 - call $_vsnprintf - local.set $0 - local.get $3 - global.set $22 - local.get $0 - ) - (func $_malloc (type $9) (param $0 i32) (result i32) @@ -10060,9 +10034,7 @@ (func $__ZSt18uncaught_exceptionv (type $8) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -10081,51 +10053,21 @@ end ;; $if ) - (func $__Znwm (type $9) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - i32.const 1 - local.get $0 - select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 2996 - i32.const 2996 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 6 - call_indirect $18 (type $3) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev (type $7) + (func $__Znwm (type $9) (param $0 i32) + (result i32) local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if + i32.const 1 + local.get $0 + select + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) local.get $0 - i32.load - call $_free + else + i32.const 0 end ;; $if ) @@ -10259,163 +10201,6 @@ global.set $22 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) - (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $7 - if $if (result i32) - local.get $0 - i32.load offset=4 - local.set $3 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $3 - i32.const 10 - end ;; $if - local.set $1 - local.get $3 - i32.const 0 - local.get $3 - i32.const 0 - i32.gt_u - select - local.tee $2 - i32.const 11 - i32.lt_u - local.set $4 - i32.const 10 - local.get $2 - i32.const 16 - i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add - local.get $4 - select - local.tee $8 - local.get $1 - i32.ne - if $if_0 - block $block - block $block_0 - block $block_1 - local.get $4 - if $if_1 - local.get $0 - i32.load - local.set $1 - local.get $7 - if $if_2 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $1 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - br $block_0 - end ;; $if_2 - local.set $5 - else - local.get $8 - i32.const 1 - i32.add - local.tee $2 - call $__Znwm - local.set $5 - local.get $7 - if $if_3 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $5 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $1 - br $block_1 - end ;; $if_3 - local.set $1 - end ;; $if_1 - local.get $5 - local.get $1 - local.get $0 - i32.const 4 - i32.add - local.tee $2 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $1 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - local.get $8 - i32.const 1 - i32.add - local.set $2 - end ;; $block_1 - local.get $0 - local.get $2 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $1 - local.get $3 - i32.store - local.get $0 - local.get $5 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $3 - i32.store8 offset=11 - end ;; $block - end ;; $if_0 - ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) (param $0 i32) (param $1 i32) @@ -10694,7 +10479,149 @@ i32.store offset=8 ) - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $11) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $7) + (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $1 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $1 + local.get $3 + i32.const 255 + i32.and + end ;; $if + local.tee $5 + i32.const 0 + local.get $5 + i32.const 0 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $2 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $2 + select + local.tee $4 + local.get $1 + i32.ne + if $if_0 + block $block + block $block_0 + block $block_1 + local.get $2 + if $if_1 + local.get $0 + i32.load + local.set $1 + local.get $6 + if $if_2 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $1 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + br $block_0 + end ;; $if_2 + local.set $2 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $2 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_3 + local.set $1 + end ;; $if_1 + local.get $2 + local.get $1 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $1 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $2 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_0 + ) + + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -10848,7 +10775,17 @@ local.get $1 call $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEjEET_T0_SD_PKNSD_10value_typeET1_ local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if + local.get $2 + i32.load offset=8 + drop + local.get $2 + i32.load + call $_free + end ;; $if local.get $2 global.set $22 ) @@ -11037,7 +10974,8 @@ global.set $22 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -11049,46 +10987,51 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 17 @@ -11127,10 +11070,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11146,10 +11090,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11167,10 +11112,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -11234,10 +11180,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11246,6 +11193,26 @@ end ;; $if ) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $10) (param $0 i32) (param $1 i32) @@ -11388,7 +11355,7 @@ end ;; $if ) - (func $___dynamic_cast (type $11) + (func $___dynamic_cast (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -11448,9 +11415,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -11564,10 +11532,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -11603,10 +11572,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -11628,7 +11598,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -11665,93 +11637,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 25 + i32.add + call_indirect $18 (type $5) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 25 i32.add - call_indirect $18 (type $5) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -11762,10 +11725,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -12368,7 +12332,7 @@ call_indirect $18 (type $1) ) - (func $dynCall_iiii (type $12) + (func $dynCall_iiii (type $13) (param $0 i32) (param $1 i32) (param $2 i32) @@ -12548,5 +12512,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02\1d\80\08\90\a1\c0\02\f0 \80!" + ;; "\00\02\00\04\00\80\02\1d\80\08\90\a1\c0\02\f0 \80!" ) \ No newline at end of file diff --git a/test/extensions/wasm/test_data/stats_cpp.cc b/test/extensions/wasm/test_data/stats_cpp.cc index b17d2545a4508..dfe8bbea859ae 100644 --- a/test/extensions/wasm/test_data/stats_cpp.cc +++ b/test/extensions/wasm/test_data/stats_cpp.cc @@ -6,21 +6,30 @@ // Test the low level interface. extern "C" EMSCRIPTEN_KEEPALIVE void proxy_onStart(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) { - auto c = defineMetric(MetricType::Counter, "test_counter"); - auto g = defineMetric(MetricType::Gauge, "test_gauges"); - auto h = defineMetric(MetricType::Histogram, "test_histogram"); + uint32_t c, g, h; + CHECK_RESULT(defineMetric(MetricType::Counter, "test_counter", &c)); + CHECK_RESULT(defineMetric(MetricType::Gauge, "test_gauges", &g)); + CHECK_RESULT(defineMetric(MetricType::Histogram, "test_histogram", &h)); - incrementMetric(c, 1); - recordMetric(g, 2); - recordMetric(h, 3); + CHECK_RESULT(incrementMetric(c, 1)); + CHECK_RESULT(recordMetric(g, 2)); + CHECK_RESULT(recordMetric(h, 3)); - logTrace(std::string("get counter = ") + std::to_string(getMetric(c))); - incrementMetric(c, 1); - logDebug(std::string("get counter = ") + std::to_string(getMetric(c))); - recordMetric(c, 3); - logInfo(std::string("get counter = ") + std::to_string(getMetric(c))); - logWarn(std::string("get gauge = ") + std::to_string(getMetric(g))); - logError(std::string("get histogram = ") + std::to_string(getMetric(h))); + uint64_t value; + CHECK_RESULT(getMetric(c, &value)); + logTrace(std::string("get counter = ") + std::to_string(value)); + CHECK_RESULT(incrementMetric(c, 1)); + CHECK_RESULT(getMetric(c, &value)); + logDebug(std::string("get counter = ") + std::to_string(value)); + CHECK_RESULT(recordMetric(c, 3)); + CHECK_RESULT(getMetric(c, &value)); + logInfo(std::string("get counter = ") + std::to_string(value)); + CHECK_RESULT(getMetric(g, &value)); + logWarn(std::string("get gauge = ") + std::to_string(value)); + // Get on histograms is not suppoorted. + if (getMetric(h, &value) != WasmResult::Ok) { + logError(std::string("get histogram = Unsupported")); + } } // Test the higher level interface. diff --git a/test/extensions/wasm/test_data/stats_cpp.wasm b/test/extensions/wasm/test_data/stats_cpp.wasm index a1ed257c4e4c4..3bb294399084b 100644 Binary files a/test/extensions/wasm/test_data/stats_cpp.wasm and b/test/extensions/wasm/test_data/stats_cpp.wasm differ diff --git a/test/extensions/wasm/test_data/stats_cpp.wat b/test/extensions/wasm/test_data/stats_cpp.wat index 4a65eb30c22fa..7d79228ba2e65 100644 --- a/test/extensions/wasm/test_data/stats_cpp.wat +++ b/test/extensions/wasm/test_data/stats_cpp.wat @@ -10,39 +10,40 @@ (type $8 (func (param i32))) (type $9 (func (param i32 i32 i32))) (type $10 (func (result i32))) - (type $11 (func (param i32) (result i64))) - (type $12 (func (param i32 i64))) - (type $13 (func (param i32 i32 i32 i32) (result i32))) - (type $14 (func (param i32 i64 i32))) - (type $15 (func (param i32 i32) (result i64))) - (type $16 (func (param i32 i32) (result i32))) + (type $11 (func (param i32 i32 i32 i32) (result i32))) + (type $12 (func (param i32 i32) (result i32))) + (type $13 (func (param i32 i64) (result i32))) + (type $14 (func (param i32) (result i64))) + (type $15 (func (param i32 i64 i32))) + (type $16 (func (param i32 i32) (result i64))) (type $17 (func (param i32 i32 i32) (result i64))) - (type $18 (func (param i32 i32 i32 i32 i32) (result i32))) - (type $19 (func (param i64 i32 i32) (result i32))) - (type $20 (func (param i64 i32) (result i32))) - (type $21 (func (param f64 i32) (result f64))) + (type $18 (func (param f64 i32) (result f64))) + (type $19 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $20 (func (param i64 i32 i32) (result i32))) + (type $21 (func (param i64 i32) (result i32))) (type $22 (func (param i32 i32 i32 i32 i32 i32 i32))) - (type $23 (func (param i32 i32 i64))) - (type $24 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) + (type $23 (func (param i32 i64))) + (type $24 (func (param i32 i32 i64))) + (type $25 (func (param i32 i32 f64 i32 i32 i32 i32) (result i32))) (import "env" "abort" (func $abort (param i32))) (import "env" "___cxa_allocate_exception" (func $___cxa_allocate_exception (param i32) (result i32))) (import "env" "___cxa_throw" (func $___cxa_throw (param i32 i32 i32))) - (import "env" "___cxa_uncaught_exception" (func $___cxa_uncaught_exception (result i32))) + (import "env" "___cxa_uncaught_exceptions" (func $___cxa_uncaught_exceptions (result i32))) (import "env" "___setErrNo" (func $___setErrNo (param i32))) (import "env" "_abort" (func $_abort)) (import "env" "_emscripten_get_heap_size" (func $_emscripten_get_heap_size (result i32))) (import "env" "_emscripten_memcpy_big" (func $_emscripten_memcpy_big (param i32 i32 i32) (result i32))) (import "env" "_emscripten_resize_heap" (func $_emscripten_resize_heap (param i32) (result i32))) - (import "env" "_proxy_defineMetric" (func $_proxy_defineMetric (param i32 i32 i32) (result i32))) - (import "env" "_proxy_getMetric" (func $_proxy_getMetric (param i32) (result i64))) - (import "env" "_proxy_incrementMetric" (func $_proxy_incrementMetric (param i32 i64))) - (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32))) - (import "env" "_proxy_recordMetric" (func $_proxy_recordMetric (param i32 i64))) + (import "env" "_proxy_defineMetric" (func $_proxy_defineMetric (param i32 i32 i32 i32) (result i32))) + (import "env" "_proxy_getMetric" (func $_proxy_getMetric (param i32 i32) (result i32))) + (import "env" "_proxy_incrementMetric" (func $_proxy_incrementMetric (param i32 i64) (result i32))) + (import "env" "_proxy_log" (func $_proxy_log (param i32 i32 i32) (result i32))) + (import "env" "_proxy_recordMetric" (func $_proxy_recordMetric (param i32 i64) (result i32))) (import "env" "abortOnCannotGrowMemory" (func $abortOnCannotGrowMemory (param i32) (result i32))) - (import "env" "__table_base" (global $27 i32)) - (import "env" "DYNAMICTOP_PTR" (global $28 i32)) - (import "env" "memory" (memory $26 256 256)) - (import "env" "table" (table $25 39 39 funcref)) + (import "env" "__table_base" (global $28 i32)) + (import "env" "DYNAMICTOP_PTR" (global $29 i32)) + (import "env" "memory" (memory $27 256 256)) + (import "env" "table" (table $26 39 39 funcref)) (export "__GLOBAL__sub_I_status_cc" (func $__GLOBAL__sub_I_status_cc)) (export "__ZSt18uncaught_exceptionv" (func $__ZSt18uncaught_exceptionv)) (export "___cxa_can_catch" (func $___cxa_can_catch)) @@ -69,43 +70,43 @@ (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) (export "stackSave" (func $stackSave)) - (global $29 (mut i32) (i32.const 5200)) - (global $30 (mut i32) (i32.const 5248080)) - (elem $31 $25 (global.get $27) + (global $30 (mut i32) (i32.const 5552)) + (global $31 (mut i32) (i32.const 5248432)) + (elem $32 $26 (global.get $28) $b0 $__ZNKSt11logic_error4whatEv $b1 $_fmt_fp $b2 $_sn_write $__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv $b2 $b3 $b4 $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv116__shim_type_infoD2Ev $__ZN10__cxxabiv117__class_type_infoD0Ev $__ZNSt11logic_errorD2Ev $__ZNSt11logic_errorD0Ev $__ZNSt11logic_errorD0Ev $b4 $b4 $b4 $b4 $b4 $b4 $b4 $b5 $_pop_arg_long_double $b6 $__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi $b6 $b7 $__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib $b7 $b8 $__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib $b8) - (data $32 $26 (i32.const 1024) + (data $33 $27 (i32.const 1024) "\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b") - (data $33 $26 (i32.const 1056) + (data $34 $27 (i32.const 1056) "\11\00\0f\n\11\11\11\03\n\07\00\01\13\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11") - (data $34 $26 (i32.const 1105) + (data $35 $27 (i32.const 1105) "\0b") - (data $35 $26 (i32.const 1114) + (data $36 $27 (i32.const 1114) "\11\00\n\n\11\11\11\00\n\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b") - (data $36 $26 (i32.const 1163) + (data $37 $27 (i32.const 1163) "\0c") - (data $37 $26 (i32.const 1175) + (data $38 $27 (i32.const 1175) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c") - (data $38 $26 (i32.const 1221) + (data $39 $27 (i32.const 1221) "\0e") - (data $39 $26 (i32.const 1233) + (data $40 $27 (i32.const 1233) "\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e") - (data $40 $26 (i32.const 1279) + (data $41 $27 (i32.const 1279) "\10") - (data $41 $26 (i32.const 1291) + (data $42 $27 (i32.const 1291) "\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12") - (data $42 $26 (i32.const 1346) + (data $43 $27 (i32.const 1346) "\12\00\00\00\12\12\12\00\00\00\00\00\00\09") - (data $43 $26 (i32.const 1395) + (data $44 $27 (i32.const 1395) "\0b") - (data $44 $26 (i32.const 1407) + (data $45 $27 (i32.const 1407) "\n\00\00\00\00\n\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b") - (data $45 $26 (i32.const 1453) + (data $46 $27 (i32.const 1453) "\0c") - (data $46 $26 (i32.const 1465) + (data $47 $27 (i32.const 1465) "\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF\00\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00\07\00\00\00\0b\00\00\00\0d" "\00\00\00\11\00\00\00\13\00\00\00\17\00\00\00\1d\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O" "\00\00\00S\00\00\00Y\00\00\00a\00\00\00e\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3" @@ -113,69 +114,75 @@ "\00\00\00\1f\00\00\00%\00\00\00)\00\00\00+\00\00\00/\00\00\005\00\00\00;\00\00\00=\00\00\00C\00\00\00G\00\00\00I\00\00\00O\00\00\00S\00\00\00Y\00\00\00a\00\00\00e" "\00\00\00g\00\00\00k\00\00\00m\00\00\00q\00\00\00y\00\00\00\7f\00\00\00\83\00\00\00\89\00\00\00\8b\00\00\00\8f\00\00\00\95\00\00\00\97\00\00\00\9d\00\00\00\a3\00\00\00\a7\00\00\00\a9" "\00\00\00\ad\00\00\00\b3\00\00\00\b5\00\00\00\bb\00\00\00\bf\00\00\00\c1\00\00\00\c5\00\00\00\c7\00\00\00\d1") - (data $47 $26 (i32.const 1924) + (data $48 $27 (i32.const 1924) "\01") - (data $48 $26 (i32.const 1963) + (data $49 $27 (i32.const 1963) "\ff\ff\ff\ff\ff") - (data $49 $26 (i32.const 2032) - "l\09\00\00\1d\0c\00\00\94\09\00\00}\0c\00\00\08\08\00\00\00\00\00\00\94\09\00\00*\0c\00\00\18\08\00\00\00\00\00\00l\09\00\00K\0c\00\00\94\09\00\00X\0c\00\00\f8\07\00\00\00\00\00\00" - "\94\09\00\00\9f\0c\00\00\f0\07\00\00\00\00\00\00\94\09\00\00\af\0c\00\000\08\00\00\00\00\00\00\94\09\00\00\e4\0c\00\00\08\08\00\00\00\00\00\00\94\09\00\00\c0\0c\00\00P\08") - (data $50 $26 (i32.const 2348) - "h\0d") - (data $51 $26 (i32.const 2408) + (data $50 $27 (i32.const 2032) + "l\09\00\00\83\0d\00\00\94\09\00\00\e3\0d\00\00\08\08\00\00\00\00\00\00\94\09\00\00\90\0d\00\00\18\08\00\00\00\00\00\00l\09\00\00\b1\0d\00\00\94\09\00\00\be\0d\00\00\f8\07\00\00\00\00\00\00" + "\94\09\00\00\05\0e\00\00\f0\07\00\00\00\00\00\00\94\09\00\00\15\0e\00\000\08\00\00\00\00\00\00\94\09\00\00&\0e\00\00\08\08\00\00\00\00\00\00\94\09\00\00H\0e\00\00P\08") + (data $51 $27 (i32.const 2348) + "\c8\0e") + (data $52 $27 (i32.const 2408) "\f8\07\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\02\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00 \08\00\00\01\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\02\00\00\00" "\02\00\00\00\02\00\00\00\02\00\00\00\00\00\00\000\08\00\00\06\00\00\00\07\00\00\00\01\00\00\00\00\00\00\00@\08\00\00\06\00\00\00\08\00\00\00\01\00\00\00test_counter" - "\00test_gauges\00test_histogram\00get counter = \00get gauge = \00get hist" - "ogram = \00counter_tag\00test_gauge\00gauge_int_tag\00histogram_int_tag\00" - "histogram_string_tag\00histogram_bool_tag\00test_tag\00resolved histog" - "ram name = \00string_tag\00int_tag\00bool_tag\00string_tag1\00string_tag2\00" - "test_tag1\00test_tag2\00h_id = \00test_tag_stack\00stack_c = \00stack_test" - "_tag1\00stack_g = \00stack_test_tag\00allocator::allocate(size_t n)" - " 'n' exceeds maximum supported size\00metric fields.size() != tags" - ".size()\00true\00false\00metric fields.size() >= tags.size()\00-+ 0X0x" - "\00(null)\00-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00%d\00%llu\00St9exceptio" - "n\00N10__cxxabiv116__shim_type_infoE\00St9type_info\00N10__cxxabiv120_" - "_si_class_type_infoE\00N10__cxxabiv117__class_type_infoE\00St11logic" - "_error\00St12length_error\00N10__cxxabiv119__pointer_type_infoE\00N10_" - "_cxxabiv117__pbase_type_infoE") + "\00defineMetric(MetricType::Counter, \"test_counter\", &c)\00test_gaug" + "es\00defineMetric(MetricType::Gauge, \"test_gauges\", &g)\00test_histo" + "gram\00defineMetric(MetricType::Histogram, \"test_histogram\", &h)\00i" + "ncrementMetric(c, 1)\00recordMetric(g, 2)\00recordMetric(h, 3)\00getMe" + "tric(c, &value)\00get counter = \00recordMetric(c, 3)\00getMetric(g, &" + "value)\00get gauge = \00get histogram = Unsupported\00counter_tag\00test" + "_gauge\00gauge_int_tag\00histogram_int_tag\00histogram_string_tag\00hist" + "ogram_bool_tag\00test_tag\00resolved histogram name = \00string_tag\00in" + "t_tag\00bool_tag\00string_tag1\00string_tag2\00test_tag1\00test_tag2\00h_id " + "= \00test_tag_stack\00stack_c = \00stack_test_tag1\00stack_g = \00stack_te" + "st_tag\00allocator::allocate(size_t n) 'n' exceeds maximum supp" + "orted size\00metric fields.size() != tags.size()\00defineMetric(type" + ", n, &metric_id)\00true\00false\00getMetric(metric_id, &value)\00metric " + "fields.size() >= tags.size()\00-+ 0X0x\00(null)\00-0X+0X 0X-0x+0x 0x" + "\00inf\00INF\00nan\00NAN\00.\00%d\00%llu\00St9exception\00N10__cxxabiv116__shim_ty" + "pe_infoE\00St9type_info\00N10__cxxabiv120__si_class_type_infoE\00N10__" + "cxxabiv117__class_type_infoE\00St11logic_error\00St12length_error\00N1" + "0__cxxabiv117__pbase_type_infoE\00N10__cxxabiv119__pointer_type_in" + "foE") (func $stackAlloc (type $7) (param $0 i32) (result i32) (local $1 i32) - global.get $29 + global.get $30 local.set $1 local.get $0 - global.get $29 + global.get $30 i32.add - global.set $29 - global.get $29 + global.set $30 + global.get $30 i32.const 15 i32.add i32.const -16 i32.and - global.set $29 + global.set $30 local.get $1 ) (func $stackSave (type $10) (result i32) - global.get $29 + global.get $30 ) (func $stackRestore (type $8) (param $0 i32) local.get $0 - global.set $29 + global.set $30 ) (func $establishStackSpace (type $2) (param $0 i32) (param $1 i32) local.get $0 - global.set $29 - local.get $1 global.set $30 + local.get $1 + global.set $31 ) (func $_proxy_onStart (type $6) @@ -187,48 +194,138 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $29 + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $30 local.set $0 - global.get $29 - i32.const 48 - i32.add - global.set $29 - local.get $0 - i32.const 24 + global.get $30 + i32.const 96 i32.add - local.set $1 + global.set $30 local.get $0 - i32.const 12 + i32.const 68 i32.add local.set $2 i32.const 0 i32.const 2524 i32.const 12 + local.get $0 + i32.const 88 + i32.add call $_proxy_defineMetric - local.set $3 + if $if + i32.const 5 + i32.const 2537 + i32.const 53 + call $_proxy_log + drop + call $_abort + end ;; $if i32.const 1 - i32.const 2537 + i32.const 2591 i32.const 11 + local.get $0 + i32.const 84 + i32.add + local.tee $9 call $_proxy_defineMetric - local.set $6 + if $if_0 + i32.const 5 + i32.const 2603 + i32.const 50 + call $_proxy_log + drop + call $_abort + end ;; $if_0 i32.const 2 - i32.const 2549 + i32.const 2654 i32.const 14 + local.get $0 + i32.const 80 + i32.add + local.tee $10 call $_proxy_defineMetric - local.set $7 - local.get $3 + if $if_1 + i32.const 5 + i32.const 2669 + i32.const 57 + call $_proxy_log + drop + call $_abort + end ;; $if_1 + local.get $0 + i32.load offset=88 i64.const 1 call $_proxy_incrementMetric - local.get $6 + if $if_2 + i32.const 5 + i32.const 2727 + i32.const 21 + call $_proxy_log + drop + call $_abort + end ;; $if_2 + local.get $9 + i32.load i64.const 2 call $_proxy_recordMetric - local.get $7 + if $if_3 + i32.const 5 + i32.const 2749 + i32.const 18 + call $_proxy_log + drop + call $_abort + end ;; $if_3 + local.get $10 + i32.load i64.const 3 call $_proxy_recordMetric + if $if_4 + i32.const 5 + i32.const 2768 + i32.const 18 + call $_proxy_log + drop + call $_abort + end ;; $if_4 + local.get $0 + i32.load offset=88 + local.get $0 + call $_proxy_getMetric + if $if_5 + i32.const 5 + i32.const 2787 + i32.const 20 + call $_proxy_log + drop + call $_abort + end ;; $if_5 + local.get $0 + i32.const 56 + i32.add + local.set $3 + local.get $0 + i32.const 44 + i32.add + local.set $1 + local.get $0 + i32.const 32 + i32.add + local.set $4 + local.get $0 + i32.const 20 + i32.add + local.set $6 + local.get $0 + i32.const 8 + i32.add + local.set $7 local.get $2 i32.const 16 call $__Znwm - local.tee $4 + local.tee $5 i32.store local.get $2 i32.const -2147483632 @@ -236,111 +333,133 @@ local.get $2 i32.const 14 i32.store offset=4 - local.get $4 - i32.const 2564 + local.get $5 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 2572 + local.get $5 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $4 - i32.const 2576 + local.get $5 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $4 + local.get $5 i32.const 0 i32.store8 offset=14 + local.get $1 local.get $0 - local.get $3 - call $_proxy_getMetric + i64.load call $__ZNSt3__29to_stringEy - local.get $1 + local.get $3 local.get $2 - local.get $0 + local.get $1 i32.load - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load8_s offset=11 - local.tee $4 + local.tee $5 i32.const 0 i32.lt_s - local.tee $5 + local.tee $8 select - local.get $0 + local.get $1 i32.load offset=4 - local.get $4 + local.get $5 i32.const 255 i32.and - local.get $5 + local.get $8 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $4 + local.tee $5 i64.load align=4 i64.store align=4 - local.get $1 - local.get $4 + local.get $3 + local.get $5 i32.load offset=8 i32.store offset=8 - local.get $4 + local.get $5 i64.const 0 i64.store align=4 - local.get $4 + local.get $5 i32.const 0 i32.store offset=8 i32.const 0 - local.get $1 + local.get $3 i32.load - local.get $1 - local.get $1 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $4 + local.tee $5 i32.const 0 i32.lt_s - local.tee $5 + local.tee $8 select - local.get $1 + local.get $3 i32.load offset=4 - local.get $4 + local.get $5 i32.const 255 i32.and - local.get $5 + local.get $8 select call $_proxy_log - local.get $1 + drop + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if - local.get $1 + if $if_6 + local.get $3 i32.load call $_free - end ;; $if - local.get $0 + end ;; $if_6 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_0 - local.get $0 + if $if_7 + local.get $1 i32.load call $_free - end ;; $if_0 + end ;; $if_7 local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_1 + if $if_8 local.get $2 i32.load call $_free - end ;; $if_1 - local.get $3 + end ;; $if_8 + local.get $0 + i32.load offset=88 i64.const 1 call $_proxy_incrementMetric + if $if_9 + i32.const 5 + i32.const 2727 + i32.const 21 + call $_proxy_log + drop + call $_abort + end ;; $if_9 + local.get $0 + i32.load offset=88 + local.get $0 + call $_proxy_getMetric + if $if_10 + i32.const 5 + i32.const 2787 + i32.const 20 + call $_proxy_log + drop + call $_abort + end ;; $if_10 local.get $2 i32.const 16 call $__Znwm - local.tee $4 + local.tee $3 i32.store local.get $2 i32.const -2147483632 @@ -348,111 +467,133 @@ local.get $2 i32.const 14 i32.store offset=4 - local.get $4 - i32.const 2564 + local.get $3 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 2572 + local.get $3 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $4 - i32.const 2576 + local.get $3 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $4 + local.get $3 i32.const 0 i32.store8 offset=14 + local.get $1 local.get $0 - local.get $3 - call $_proxy_getMetric + i64.load call $__ZNSt3__29to_stringEy - local.get $1 + local.get $4 local.get $2 - local.get $0 + local.get $1 i32.load - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load8_s offset=11 - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s local.tee $5 select - local.get $0 + local.get $1 i32.load offset=4 - local.get $4 + local.get $3 i32.const 255 i32.and local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $4 + local.tee $3 i64.load align=4 i64.store align=4 - local.get $1 local.get $4 + local.get $3 i32.load offset=8 i32.store offset=8 - local.get $4 + local.get $3 i64.const 0 i64.store align=4 - local.get $4 + local.get $3 i32.const 0 i32.store offset=8 i32.const 1 - local.get $1 + local.get $4 i32.load - local.get $1 - local.get $1 + local.get $4 + local.get $4 i32.load8_s offset=11 - local.tee $4 + local.tee $3 i32.const 0 i32.lt_s local.tee $5 select - local.get $1 - i32.load offset=4 local.get $4 + i32.load offset=4 + local.get $3 i32.const 255 i32.and local.get $5 select call $_proxy_log - local.get $1 + drop + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_2 - local.get $1 + if $if_11 + local.get $4 i32.load call $_free - end ;; $if_2 - local.get $0 + end ;; $if_11 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_3 - local.get $0 + if $if_12 + local.get $1 i32.load call $_free - end ;; $if_3 + end ;; $if_12 local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_4 + if $if_13 local.get $2 i32.load call $_free - end ;; $if_4 - local.get $3 + end ;; $if_13 + local.get $0 + i32.load offset=88 i64.const 3 call $_proxy_recordMetric + if $if_14 + i32.const 5 + i32.const 2823 + i32.const 18 + call $_proxy_log + drop + call $_abort + end ;; $if_14 + local.get $0 + i32.load offset=88 + local.get $0 + call $_proxy_getMetric + if $if_15 + i32.const 5 + i32.const 2787 + i32.const 20 + call $_proxy_log + drop + call $_abort + end ;; $if_15 local.get $2 i32.const 16 call $__Znwm - local.tee $4 + local.tee $3 i32.store local.get $2 i32.const -2147483632 @@ -460,38 +601,38 @@ local.get $2 i32.const 14 i32.store offset=4 - local.get $4 - i32.const 2564 + local.get $3 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 2572 + local.get $3 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $4 - i32.const 2576 + local.get $3 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $4 + local.get $3 i32.const 0 i32.store8 offset=14 + local.get $1 local.get $0 - local.get $3 - call $_proxy_getMetric + i64.load call $__ZNSt3__29to_stringEy - local.get $1 + local.get $6 local.get $2 - local.get $0 + local.get $1 i32.load - local.get $0 - local.get $0 + local.get $1 + local.get $1 i32.load8_s offset=11 local.tee $3 i32.const 0 i32.lt_s local.tee $4 select - local.get $0 + local.get $1 i32.load offset=4 local.get $3 i32.const 255 @@ -502,7 +643,7 @@ local.tee $3 i64.load align=4 i64.store align=4 - local.get $1 + local.get $6 local.get $3 i32.load offset=8 i32.store offset=8 @@ -513,17 +654,17 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $1 + local.get $6 i32.load - local.get $1 - local.get $1 + local.get $6 + local.get $6 i32.load8_s offset=11 local.tee $3 i32.const 0 i32.lt_s local.tee $4 select - local.get $1 + local.get $6 i32.load offset=4 local.get $3 i32.const 255 @@ -531,33 +672,46 @@ local.get $4 select call $_proxy_log - local.get $1 + drop + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 - local.get $1 + if $if_16 + local.get $6 i32.load call $_free - end ;; $if_5 - local.get $0 + end ;; $if_16 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_6 - local.get $0 + if $if_17 + local.get $1 i32.load call $_free - end ;; $if_6 + end ;; $if_17 local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_7 + if $if_18 local.get $2 i32.load call $_free - end ;; $if_7 + end ;; $if_18 + local.get $9 + i32.load + local.get $0 + call $_proxy_getMetric + if $if_19 + i32.const 5 + i32.const 2842 + i32.const 20 + call $_proxy_log + drop + call $_abort + end ;; $if_19 local.get $2 i32.const 16 call $__Znwm @@ -570,54 +724,22 @@ i32.const 12 i32.store offset=4 local.get $3 - i32.const 2579 + i32.const 2863 i64.load align=1 i64.store align=1 local.get $3 - i32.const 2587 + i32.const 2871 i32.load align=1 i32.store offset=8 align=1 local.get $3 i32.const 0 i32.store8 offset=12 + local.get $1 local.get $0 - local.get $6 - call $_proxy_getMetric + i64.load call $__ZNSt3__29to_stringEy - local.get $1 + local.get $7 local.get $2 - local.get $0 - i32.load - local.get $0 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - select - local.get $0 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $4 - select - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 - i64.load align=4 - i64.store align=4 - local.get $1 - local.get $3 - i32.load offset=8 - i32.store offset=8 - local.get $3 - i64.const 0 - i64.store align=4 - local.get $3 - i32.const 0 - i32.store offset=8 - i32.const 3 local.get $1 i32.load local.get $1 @@ -635,84 +757,11 @@ i32.and local.get $4 select - call $_proxy_log - local.get $1 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_8 - local.get $1 - i32.load - call $_free - end ;; $if_8 - local.get $0 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_9 - local.get $0 - i32.load - call $_free - end ;; $if_9 - local.get $2 - i32.load8_s offset=11 - i32.const 0 - i32.lt_s - if $if_10 - local.get $2 - i32.load - call $_free - end ;; $if_10 - local.get $2 - i32.const 32 - call $__Znwm - local.tee $3 - i32.store - local.get $2 - i32.const -2147483616 - i32.store offset=8 - local.get $2 - i32.const 16 - i32.store offset=4 - local.get $3 - i32.const 2592 - i64.load align=1 - i64.store align=1 - local.get $3 - i32.const 2600 - i64.load align=1 - i64.store offset=8 align=1 - local.get $3 - i32.const 0 - i32.store8 offset=16 - local.get $0 - local.get $7 - call $_proxy_getMetric - call $__ZNSt3__29to_stringEy - local.get $1 - local.get $2 - local.get $0 - i32.load - local.get $0 - local.get $0 - i32.load8_s offset=11 - local.tee $3 - i32.const 0 - i32.lt_s - local.tee $4 - select - local.get $0 - i32.load offset=4 - local.get $3 - i32.const 255 - i32.and - local.get $4 - select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $3 i64.load align=4 i64.store align=4 - local.get $1 + local.get $7 local.get $3 i32.load offset=8 i32.store offset=8 @@ -722,18 +771,18 @@ local.get $3 i32.const 0 i32.store offset=8 - i32.const 4 - local.get $1 + i32.const 3 + local.get $7 i32.load - local.get $1 - local.get $1 + local.get $7 + local.get $7 i32.load8_s offset=11 local.tee $3 i32.const 0 i32.lt_s local.tee $4 select - local.get $1 + local.get $7 i32.load offset=4 local.get $3 i32.const 255 @@ -741,63 +790,78 @@ local.get $4 select call $_proxy_log - local.get $1 + drop + local.get $7 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_11 - local.get $1 + if $if_20 + local.get $7 i32.load call $_free - end ;; $if_11 - local.get $0 + end ;; $if_20 + local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_12 - local.get $0 + if $if_21 + local.get $1 i32.load call $_free - end ;; $if_12 + end ;; $if_21 local.get $2 i32.load8_s offset=11 i32.const 0 - i32.ge_s - if $if_13 - local.get $0 - global.set $29 - return - end ;; $if_13 - local.get $2 - i32.load - call $_free - local.get $0 - global.set $29 - ) - - (func $__Z8logErrorRKNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE (type $8) - (param $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 4 - local.get $0 + i32.lt_s + if $if_22 + local.get $2 + i32.load + call $_free + end ;; $if_22 + local.get $10 i32.load local.get $0 - local.get $0 - i32.load8_s offset=11 + call $_proxy_getMetric + i32.eqz + if $if_23 + local.get $0 + global.set $30 + return + end ;; $if_23 + i32.const 32 + call $__Znwm local.tee $1 + i32.const 2876 + i64.load align=1 + i64.store align=1 + local.get $1 + i32.const 2884 + i64.load align=1 + i64.store offset=8 align=1 + local.get $1 + i32.const 2892 + i64.load align=1 + i64.store offset=16 align=1 + local.get $1 + i32.const 2900 + i32.load16_s align=1 + i32.store16 offset=24 align=1 + local.get $1 + i32.const 2902 + i32.load8_s + i32.store8 offset=26 + local.get $1 i32.const 0 - i32.lt_s - local.tee $2 - select - local.get $0 - i32.load offset=4 + i32.store8 offset=27 + i32.const 4 local.get $1 - i32.const 255 - i32.and - local.get $2 - select + i32.const 27 call $_proxy_log + drop + local.get $1 + call $_free + local.get $0 + global.set $30 ) (func $_proxy_onTick (type $8) @@ -813,56 +877,76 @@ (local $9 i32) (local $10 i32) (local $11 i32) - global.get $29 + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + global.get $30 local.set $0 - global.get $29 - i32.const 448 + global.get $30 + i32.const 496 i32.add - global.set $29 + global.set $30 local.get $0 - i32.const 360 + i32.const 412 i32.add - local.set $11 + local.set $10 local.get $0 - i32.const 180 + i32.const 232 i32.add - local.set $8 + local.set $7 local.get $0 - i32.const 192 + i32.const 244 i32.add - local.set $7 + local.set $6 local.get $0 - i32.const 168 + i32.const 220 i32.add - local.set $9 + local.set $8 local.get $0 - i32.const 84 + i32.const 136 i32.add local.set $3 local.get $0 - i32.const 72 + i32.const 124 i32.add - local.set $6 + local.set $5 + local.get $0 + i32.const -64 + i32.sub + local.set $2 + local.get $0 + i32.const 112 + i32.add + local.set $11 + local.get $0 + i32.const 48 + i32.add + local.set $12 + local.get $0 + i32.const 36 + i32.add + local.set $13 local.get $0 i32.const 24 i32.add - local.set $2 + local.set $14 local.get $0 i32.const 12 i32.add - local.set $5 + local.set $15 local.get $0 - i32.const 276 + i32.const 328 i32.add - local.tee $10 + local.tee $9 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $10 + local.get $9 i32.const -2147483632 i32.store offset=8 - local.get $10 + local.get $9 i32.const 12 i32.store offset=4 local.get $1 @@ -876,87 +960,87 @@ local.get $1 i32.const 0 i32.store8 offset=12 - local.get $7 + local.get $6 i64.const 0 i64.store align=4 - local.get $7 + local.get $6 i32.const 0 i32.store offset=8 - local.get $7 + local.get $6 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $7 + local.get $6 i32.const -2147483632 i32.store offset=8 - local.get $7 + local.get $6 i32.const 11 i32.store offset=4 local.get $1 - i32.const 2609 + i32.const 2904 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2617 + i32.const 2912 i32.load16_s align=1 i32.store16 offset=8 align=1 local.get $1 - i32.const 2619 + i32.const 2914 i32.load8_s i32.store8 offset=10 local.get $1 i32.const 0 i32.store8 offset=11 - local.get $7 + local.get $6 i32.const 0 i32.store offset=12 - local.get $8 + local.get $7 i32.const 0 i32.store - local.get $8 + local.get $7 i32.const 0 i32.store offset=4 - local.get $8 + local.get $7 i32.const 0 i32.store offset=8 - local.get $8 + local.get $7 i32.const 16 call $__Znwm local.tee $1 i32.store offset=4 - local.get $8 + local.get $7 local.get $1 i32.store - local.get $8 + local.get $7 local.get $1 i32.const 16 i32.add i32.store offset=8 local.get $1 - local.get $7 + local.get $6 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $1 - local.get $7 + local.get $6 i32.load offset=12 i32.store offset=12 - local.get $8 - local.get $8 + local.get $7 + local.get $7 i32.load offset=4 i32.const 16 i32.add i32.store offset=4 - local.get $11 - i32.const 0 local.get $10 - local.get $8 + i32.const 0 + local.get $9 + local.get $7 call $__ZN6MetricC2E10MetricTypeRKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS1_6vectorI9MetricTagNS5_ISB_EEEE - local.get $8 + local.get $7 i32.load local.tee $1 if $if local.get $1 - local.get $8 + local.get $7 i32.load offset=4 local.tee $4 i32.eq @@ -981,46 +1065,46 @@ i32.ne br_if $loop end ;; $loop - local.get $8 + local.get $7 i32.load end ;; $if_0 local.set $4 - local.get $8 + local.get $7 local.get $1 i32.store offset=4 local.get $4 call $_free end ;; $if - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_2 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_2 - local.get $10 + local.get $9 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_3 - local.get $10 + local.get $9 i32.load call $_free end ;; $if_3 - local.get $7 + local.get $6 i32.const 10 i32.store8 offset=11 - local.get $7 - i32.const 2621 + local.get $6 + i32.const 2916 i64.load align=1 i64.store align=1 - local.get $7 - i32.const 2629 + local.get $6 + i32.const 2924 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $7 + local.get $6 i32.const 0 i32.store8 offset=10 local.get $3 @@ -1041,15 +1125,15 @@ i32.const 13 i32.store offset=4 local.get $1 - i32.const 2632 + i32.const 2927 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2640 + i32.const 2935 i32.load align=1 i32.store offset=8 align=1 local.get $1 - i32.const 2644 + i32.const 2939 i32.load8_s i32.store8 offset=12 local.get $1 @@ -1058,24 +1142,24 @@ local.get $3 i32.const 1 i32.store offset=12 - local.get $9 + local.get $8 i32.const 0 i32.store - local.get $9 + local.get $8 i32.const 0 i32.store offset=4 - local.get $9 + local.get $8 i32.const 0 i32.store offset=8 - local.get $9 + local.get $8 i32.const 16 call $__Znwm local.tee $1 i32.store offset=4 - local.get $9 + local.get $8 local.get $1 i32.store - local.get $9 + local.get $8 local.get $1 i32.const 16 i32.add @@ -1087,23 +1171,23 @@ local.get $3 i32.load offset=12 i32.store offset=12 - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.load offset=4 i32.const 16 i32.add i32.store offset=4 - local.get $10 - i32.const 1 - local.get $7 local.get $9 + i32.const 1 + local.get $6 + local.get $8 call $__ZN6MetricC2E10MetricTypeRKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS1_6vectorI9MetricTagNS5_ISB_EEEE - local.get $9 + local.get $8 i32.load local.tee $1 if $if_4 local.get $1 - local.get $9 + local.get $8 i32.load offset=4 local.tee $4 i32.eq @@ -1128,11 +1212,11 @@ i32.ne br_if $loop_0 end ;; $loop_0 - local.get $9 + local.get $8 i32.load end ;; $if_5 local.set $4 - local.get $9 + local.get $8 local.get $1 i32.store offset=4 local.get $4 @@ -1147,12 +1231,12 @@ i32.load call $_free end ;; $if_7 - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_8 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_8 @@ -1174,15 +1258,15 @@ i32.const 14 i32.store offset=4 local.get $1 - i32.const 2549 + i32.const 2654 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2557 + i32.const 2662 i32.load align=1 i32.store offset=8 align=1 local.get $1 - i32.const 2561 + i32.const 2666 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $1 @@ -1206,15 +1290,15 @@ i32.const 17 i32.store offset=4 local.get $1 - i32.const 2646 + i32.const 2941 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2654 + i32.const 2949 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 2662 + i32.const 2957 i32.load8_s i32.store8 offset=16 local.get $1 @@ -1241,15 +1325,15 @@ i32.const 20 i32.store offset=20 local.get $1 - i32.const 2664 + i32.const 2959 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2672 + i32.const 2967 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 2680 + i32.const 2975 i32.load align=1 i32.store offset=16 align=1 local.get $1 @@ -1273,15 +1357,15 @@ i32.const 18 i32.store offset=36 local.get $1 - i32.const 2685 + i32.const 2980 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2693 + i32.const 2988 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 2701 + i32.const 2996 i32.load16_s align=1 i32.store16 offset=16 align=1 local.get $1 @@ -1290,24 +1374,24 @@ local.get $2 i32.const 2 i32.store offset=44 - local.get $6 + local.get $5 i32.const 0 i32.store - local.get $6 + local.get $5 i32.const 0 i32.store offset=4 - local.get $6 + local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $5 i32.const 48 call $__Znwm local.tee $1 i32.store offset=4 - local.get $6 + local.get $5 local.get $1 i32.store - local.get $6 + local.get $5 local.get $1 i32.const 48 i32.add @@ -1319,8 +1403,8 @@ local.get $2 i32.load offset=12 i32.store offset=12 - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 local.tee $1 i32.const 16 @@ -1336,8 +1420,8 @@ local.get $2 i32.load offset=28 i32.store offset=28 - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 local.tee $1 i32.const 16 @@ -1353,23 +1437,23 @@ local.get $2 i32.load offset=44 i32.store offset=28 - local.get $6 - local.get $6 + local.get $5 + local.get $5 i32.load offset=4 i32.const 16 i32.add i32.store offset=4 - local.get $7 + local.get $6 i32.const 2 local.get $3 - local.get $6 + local.get $5 call $__ZN6MetricC2E10MetricTypeRKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS1_6vectorI9MetricTagNS5_ISB_EEEE - local.get $6 + local.get $5 i32.load local.tee $1 if $if_9 local.get $1 - local.get $6 + local.get $5 i32.load offset=4 local.tee $4 i32.eq @@ -1394,11 +1478,11 @@ i32.ne br_if $loop_1 end ;; $loop_1 - local.get $6 + local.get $5 i32.load end ;; $if_10 local.set $4 - local.get $6 + local.get $5 local.get $1 i32.store offset=4 local.get $4 @@ -1440,61 +1524,61 @@ i32.load call $_free end ;; $if_15 - local.get $11 - call $__ZN6Metric9incrementIJPKcEEEvxDpT_ local.get $10 + call $__ZN6Metric9incrementIJPKcEEEvxDpT_ + local.get $9 call $__ZN6Metric6recordIJiEEEvyDpT_ - local.get $7 + local.get $6 call $__ZN6Metric6recordIJiPKcbEEEvyDpT_ - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $2 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $2 + local.get $3 i32.const 14 i32.store offset=4 local.get $1 - i32.const 2564 + i32.const 2808 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2572 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 local.get $1 - i32.const 2576 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $1 i32.const 0 i32.store8 offset=14 - local.get $5 - local.get $11 + local.get $2 + local.get $10 call $__ZN6Metric3getIJPKcEEEyDpT_ call $__ZNSt3__29to_stringEy + local.get $11 local.get $3 local.get $2 - local.get $5 i32.load - local.get $5 - local.get $5 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $5 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -1505,7 +1589,7 @@ local.tee $1 i64.load align=4 i64.store align=4 - local.get $3 + local.get $11 local.get $1 i32.load offset=8 i32.store offset=8 @@ -1516,17 +1600,17 @@ i32.const 0 i32.store offset=8 i32.const 0 - local.get $3 + local.get $11 i32.load - local.get $3 - local.get $3 + local.get $11 + local.get $11 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $3 + local.get $11 i32.load offset=4 local.get $1 i32.const 255 @@ -1534,84 +1618,85 @@ local.get $4 select call $_proxy_log - local.get $3 + drop + local.get $11 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_16 - local.get $3 + local.get $11 i32.load call $_free end ;; $if_16 - local.get $5 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_17 - local.get $5 + local.get $2 i32.load call $_free end ;; $if_17 - local.get $2 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_18 - local.get $2 + local.get $3 i32.load call $_free end ;; $if_18 - local.get $11 + local.get $10 call $__ZN6Metric9incrementIJPKcEEEvxDpT_ - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $2 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $2 + local.get $3 i32.const 14 i32.store offset=4 local.get $1 - i32.const 2564 + i32.const 2808 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2572 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 local.get $1 - i32.const 2576 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $1 i32.const 0 i32.store8 offset=14 - local.get $5 - local.get $11 + local.get $2 + local.get $10 call $__ZN6Metric3getIJPKcEEEyDpT_ call $__ZNSt3__29to_stringEy + local.get $12 local.get $3 local.get $2 - local.get $5 i32.load - local.get $5 - local.get $5 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $5 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -1622,7 +1707,7 @@ local.tee $1 i64.load align=4 i64.store align=4 - local.get $3 + local.get $12 local.get $1 i32.load offset=8 i32.store offset=8 @@ -1633,17 +1718,17 @@ i32.const 0 i32.store offset=8 i32.const 1 - local.get $3 + local.get $12 i32.load - local.get $3 - local.get $3 + local.get $12 + local.get $12 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $3 + local.get $12 i32.load offset=4 local.get $1 i32.const 255 @@ -1651,84 +1736,85 @@ local.get $4 select call $_proxy_log - local.get $3 + drop + local.get $12 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_19 - local.get $3 + local.get $12 i32.load call $_free end ;; $if_19 - local.get $5 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_20 - local.get $5 + local.get $2 i32.load call $_free end ;; $if_20 - local.get $2 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_21 - local.get $2 + local.get $3 i32.load call $_free end ;; $if_21 - local.get $11 + local.get $10 call $__ZN6Metric6recordIJPKcEEEvyDpT_ - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $2 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $2 + local.get $3 i32.const 14 i32.store offset=4 local.get $1 - i32.const 2564 + i32.const 2808 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2572 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 local.get $1 - i32.const 2576 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $1 i32.const 0 i32.store8 offset=14 - local.get $5 - local.get $11 + local.get $2 + local.get $10 call $__ZN6Metric3getIJPKcEEEyDpT_ call $__ZNSt3__29to_stringEy + local.get $13 local.get $3 local.get $2 - local.get $5 i32.load - local.get $5 - local.get $5 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $5 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -1739,7 +1825,7 @@ local.tee $1 i64.load align=4 i64.store align=4 - local.get $3 + local.get $13 local.get $1 i32.load offset=8 i32.store offset=8 @@ -1750,17 +1836,17 @@ i32.const 0 i32.store offset=8 i32.const 2 - local.get $3 + local.get $13 i32.load - local.get $3 - local.get $3 + local.get $13 + local.get $13 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $3 + local.get $13 i32.load offset=4 local.get $1 i32.const 255 @@ -1768,78 +1854,79 @@ local.get $4 select call $_proxy_log - local.get $3 + drop + local.get $13 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_22 - local.get $3 + local.get $13 i32.load call $_free end ;; $if_22 - local.get $5 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_23 - local.get $5 + local.get $2 i32.load call $_free end ;; $if_23 - local.get $2 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_24 - local.get $2 + local.get $3 i32.load call $_free end ;; $if_24 - local.get $2 + local.get $3 i64.const 0 i64.store align=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 16 call $__Znwm local.tee $1 i32.store - local.get $2 + local.get $3 i32.const -2147483632 i32.store offset=8 - local.get $2 + local.get $3 i32.const 12 i32.store offset=4 local.get $1 - i32.const 2579 + i32.const 2863 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2587 + i32.const 2871 i32.load align=1 i32.store offset=8 align=1 local.get $1 i32.const 0 i32.store8 offset=12 - local.get $5 - local.get $10 + local.get $2 + local.get $9 call $__ZN6Metric3getIJiEEEyDpT_ call $__ZNSt3__29to_stringEy + local.get $14 local.get $3 local.get $2 - local.get $5 i32.load - local.get $5 - local.get $5 + local.get $2 + local.get $2 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $5 + local.get $2 i32.load offset=4 local.get $1 i32.const 255 @@ -1850,7 +1937,7 @@ local.tee $1 i64.load align=4 i64.store align=4 - local.get $3 + local.get $14 local.get $1 i32.load offset=8 i32.store offset=8 @@ -1861,17 +1948,17 @@ i32.const 0 i32.store offset=8 i32.const 3 - local.get $3 + local.get $14 i32.load - local.get $3 - local.get $3 + local.get $14 + local.get $14 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s local.tee $4 select - local.get $3 + local.get $14 i32.load offset=4 local.get $1 i32.const 255 @@ -1879,70 +1966,71 @@ local.get $4 select call $_proxy_log - local.get $3 + drop + local.get $14 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_25 - local.get $3 + local.get $14 i32.load call $_free end ;; $if_25 - local.get $5 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_26 - local.get $5 + local.get $2 i32.load call $_free end ;; $if_26 - local.get $2 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_27 - local.get $2 + local.get $3 i32.load call $_free end ;; $if_27 local.get $3 - local.get $7 + local.get $6 call $__ZN6Metric16partiallyResolveIJiEEES_DpT_ local.get $3 call $__ZN6Metric7resolveIJPKcbEEEjDpT_ - local.set $6 - local.get $5 + local.set $5 + local.get $2 i64.const 0 i64.store align=4 - local.get $5 + local.get $2 i32.const 0 i32.store offset=8 - local.get $5 + local.get $2 i32.const 32 call $__Znwm local.tee $1 i32.store - local.get $5 + local.get $2 i32.const -2147483616 i32.store offset=8 - local.get $5 + local.get $2 i32.const 26 i32.store offset=4 local.get $1 - i32.const 2713 + i32.const 3008 i64.load align=1 i64.store align=1 local.get $1 - i32.const 2721 + i32.const 3016 i64.load align=1 i64.store offset=8 align=1 local.get $1 - i32.const 2729 + i32.const 3024 i64.load align=1 i64.store offset=16 align=1 local.get $1 - i32.const 2737 + i32.const 3032 i32.load16_s align=1 i32.store16 offset=24 align=1 local.get $1 @@ -1956,7 +2044,7 @@ i32.eqz br_if $block_0 loop $loop_2 - local.get $6 + local.get $5 local.get $4 i32.load offset=20 i32.ne @@ -1982,10 +2070,10 @@ local.set $1 local.get $0 i32.load - local.set $6 + local.set $5 local.get $0 i32.load offset=4 - local.set $8 + local.set $7 local.get $0 br $block end ;; $block_0 @@ -1998,19 +2086,19 @@ i32.const 0 local.set $1 i32.const 0 - local.set $6 + local.set $5 i32.const 0 - local.set $8 + local.set $7 local.get $0 i32.const 11 i32.add local.set $4 local.get $0 end ;; $block - local.set $9 + local.set $8 + local.get $15 local.get $2 local.get $5 - local.get $6 local.get $0 local.get $1 i32.const 24 @@ -2019,19 +2107,19 @@ i32.shr_s i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $8 + local.get $7 local.get $1 i32.const 255 i32.and - local.get $6 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $1 i64.load align=4 i64.store align=4 - local.get $2 + local.get $15 local.get $1 i32.load offset=8 i32.store offset=8 @@ -2042,30 +2130,31 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $2 + local.get $15 i32.load - local.get $2 - local.get $2 + local.get $15 + local.get $15 i32.load8_s offset=11 local.tee $1 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $2 + local.get $15 i32.load offset=4 local.get $1 i32.const 255 i32.and - local.get $6 + local.get $5 select call $_proxy_log - local.get $2 + drop + local.get $15 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_29 - local.get $2 + local.get $15 i32.load call $_free end ;; $if_29 @@ -2074,40 +2163,40 @@ i32.const 0 i32.lt_s if $if_30 - local.get $9 + local.get $8 i32.load call $_free end ;; $if_30 - local.get $5 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.ge_s if $if_31 local.get $3 call $__ZN10MetricBaseD2Ev - local.get $7 + local.get $6 call $__ZN10MetricBaseD2Ev - local.get $10 + local.get $9 call $__ZN10MetricBaseD2Ev - local.get $11 + local.get $10 call $__ZN10MetricBaseD2Ev local.get $0 - global.set $29 + global.set $30 return end ;; $if_31 - local.get $5 + local.get $2 i32.load call $_free local.get $3 call $__ZN10MetricBaseD2Ev - local.get $7 + local.get $6 call $__ZN10MetricBaseD2Ev - local.get $10 + local.get $9 call $__ZN10MetricBaseD2Ev - local.get $11 + local.get $10 call $__ZN10MetricBaseD2Ev local.get $0 - global.set $29 + global.set $30 ) (func $__ZN6MetricC2E10MetricTypeRKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS1_6vectorI9MetricTagNS5_ISB_EEEE (type $4) @@ -2118,12 +2207,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $4 i32.const 24 i32.add @@ -2216,7 +2305,7 @@ i32.eqz if $if local.get $4 - global.set $29 + global.set $30 return end ;; $if local.get $1 @@ -2255,7 +2344,7 @@ local.get $0 call $_free local.get $4 - global.set $29 + global.set $30 ) (func $__ZN6Metric9incrementIJPKcEEEvxDpT_ (type $8) @@ -2266,12 +2355,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $5 local.tee $1 i64.const 0 @@ -2279,7 +2368,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 2704 + i32.const 2999 call $_strlen local.tee $4 i32.const -17 @@ -2333,7 +2422,7 @@ br $block end ;; $block_0 local.get $3 - i32.const 2704 + i32.const 2999 local.get $4 call $_memcpy drop @@ -2387,13 +2476,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 1 call $_proxy_incrementMetric + drop local.get $2 i32.load local.tee $1 i32.eqz if $if_3 local.get $5 - global.set $29 + global.set $30 return end ;; $if_3 local.get $1 @@ -2432,7 +2522,7 @@ local.get $0 call $_free local.get $5 - global.set $29 + global.set $30 ) (func $__ZN6Metric6recordIJiEEEvyDpT_ (type $8) @@ -2440,12 +2530,12 @@ (local $1 i32) (local $2 i32) (local $3 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 12 i32.add @@ -2497,13 +2587,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 2 call $_proxy_recordMetric + drop local.get $1 i32.load local.tee $2 i32.eqz if $if_0 local.get $3 - global.set $29 + global.set $30 return end ;; $if_0 local.get $2 @@ -2542,7 +2633,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 ) (func $__ZN6Metric6recordIJiPKcbEEEvyDpT_ (type $8) @@ -2552,12 +2643,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 48 i32.add - global.set $29 + global.set $30 local.get $2 i32.const 36 i32.add @@ -2574,7 +2665,7 @@ local.get $4 i32.const 0 i32.store offset=8 - i32.const 2704 + i32.const 2999 call $_strlen local.tee $1 i32.const -17 @@ -2617,7 +2708,7 @@ br $block end ;; $block_0 local.get $4 - i32.const 2704 + i32.const 2999 local.get $1 call $_memcpy drop @@ -2640,7 +2731,7 @@ i32.const 4 i32.store8 offset=11 local.get $1 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -2731,13 +2822,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 3 call $_proxy_recordMetric + drop local.get $3 i32.load local.tee $1 i32.eqz if $if_4 local.get $2 - global.set $29 + global.set $30 return end ;; $if_4 local.get $3 @@ -2776,10 +2868,10 @@ local.get $0 call $_free local.get $2 - global.set $29 + global.set $30 ) - (func $__ZN6Metric3getIJPKcEEEyDpT_ (type $11) + (func $__ZN6Metric3getIJPKcEEEyDpT_ (type $14) (param $0 i32) (result i64) (local $1 i32) @@ -2789,12 +2881,12 @@ (local $5 i32) (local $6 i32) (local $7 i64) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $5 local.tee $1 i64.const 0 @@ -2802,7 +2894,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 2704 + i32.const 2999 call $_strlen local.tee $4 i32.const -17 @@ -2856,7 +2948,7 @@ br $block end ;; $block_0 local.get $3 - i32.const 2704 + i32.const 2999 local.get $4 call $_memcpy drop @@ -2908,24 +3000,35 @@ local.get $0 local.get $2 call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE + local.get $1 call $_proxy_getMetric + if $if_3 + i32.const 5 + i32.const 3332 + i32.const 28 + call $_proxy_log + drop + call $_abort + end ;; $if_3 + local.get $1 + i64.load local.set $7 local.get $2 i32.load local.tee $1 i32.eqz - if $if_3 + if $if_4 local.get $5 - global.set $29 + global.set $30 local.get $7 return - end ;; $if_3 + end ;; $if_4 local.get $1 local.get $2 i32.load offset=4 local.tee $0 i32.eq - if $if_4 (result i32) + if $if_5 (result i32) local.get $1 else loop $loop @@ -2936,11 +3039,11 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 + if $if_6 local.get $0 i32.load call $_free - end ;; $if_5 + end ;; $if_6 local.get $0 local.get $1 i32.ne @@ -2948,7 +3051,7 @@ end ;; $loop local.get $2 i32.load - end ;; $if_4 + end ;; $if_5 local.set $0 local.get $2 local.get $1 @@ -2956,7 +3059,7 @@ local.get $0 call $_free local.get $5 - global.set $29 + global.set $30 local.get $7 ) @@ -2968,12 +3071,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $5 local.tee $1 i64.const 0 @@ -2981,7 +3084,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 2704 + i32.const 2999 call $_strlen local.tee $4 i32.const -17 @@ -3035,7 +3138,7 @@ br $block end ;; $block_0 local.get $3 - i32.const 2704 + i32.const 2999 local.get $4 call $_memcpy drop @@ -3089,13 +3192,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 3 call $_proxy_recordMetric + drop local.get $2 i32.load local.tee $1 i32.eqz if $if_3 local.get $5 - global.set $29 + global.set $30 return end ;; $if_3 local.get $1 @@ -3134,27 +3238,27 @@ local.get $0 call $_free local.get $5 - global.set $29 + global.set $30 ) - (func $__ZN6Metric3getIJiEEEyDpT_ (type $11) + (func $__ZN6Metric3getIJiEEEyDpT_ (type $14) (param $0 i32) (result i64) (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i64) - global.get $29 - local.set $3 - global.get $29 + global.get $30 + local.set $2 + global.get $30 i32.const 32 i32.add - global.set $29 - local.get $3 + global.set $30 + local.get $2 i32.const 12 i32.add local.set $1 - local.get $3 + local.get $2 i32.const 9 call $__ZNSt3__29to_stringEi local.get $1 @@ -3169,55 +3273,66 @@ local.get $1 i32.const 12 call $__Znwm - local.tee $2 + local.tee $3 i32.store offset=4 local.get $1 - local.get $2 + local.get $3 i32.store local.get $1 - local.get $2 + local.get $3 i32.const 12 i32.add i32.store offset=8 - local.get $2 local.get $3 + local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $1 - local.get $2 + local.get $3 i32.const 12 i32.add i32.store offset=4 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $3 + local.get $2 i32.load call $_free end ;; $if local.get $0 local.get $1 call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE + local.get $2 call $_proxy_getMetric + if $if_0 + i32.const 5 + i32.const 3332 + i32.const 28 + call $_proxy_log + drop + call $_abort + end ;; $if_0 + local.get $2 + i64.load local.set $4 local.get $1 i32.load - local.tee $2 + local.tee $3 i32.eqz - if $if_0 - local.get $3 - global.set $29 + if $if_1 + local.get $2 + global.set $30 local.get $4 return - end ;; $if_0 - local.get $2 + end ;; $if_1 + local.get $3 local.get $1 i32.load offset=4 local.tee $0 i32.eq - if $if_1 (result i32) - local.get $2 + if $if_2 (result i32) + local.get $3 else loop $loop local.get $0 @@ -3227,27 +3342,27 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_2 + if $if_3 local.get $0 i32.load call $_free - end ;; $if_2 + end ;; $if_3 local.get $0 - local.get $2 + local.get $3 i32.ne br_if $loop end ;; $loop local.get $1 i32.load - end ;; $if_1 + end ;; $if_2 local.set $0 local.get $1 - local.get $2 + local.get $3 i32.store offset=4 local.get $0 call $_free - local.get $3 - global.set $29 + local.get $2 + global.set $30 local.get $4 ) @@ -3257,12 +3372,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 12 i32.add @@ -3321,7 +3436,7 @@ i32.eqz if $if_0 local.get $3 - global.set $29 + global.set $30 return end ;; $if_0 local.get $1 @@ -3360,7 +3475,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 ) (func $__ZN6Metric7resolveIJPKcbEEEjDpT_ (type $7) @@ -3372,12 +3487,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 48 i32.add - global.set $29 + global.set $30 local.get $5 local.tee $1 i64.const 0 @@ -3385,7 +3500,7 @@ local.get $1 i32.const 0 i32.store offset=8 - i32.const 2704 + i32.const 2999 call $_strlen local.tee $4 i32.const -17 @@ -3439,7 +3554,7 @@ br $block end ;; $block_0 local.get $2 - i32.const 2704 + i32.const 2999 local.get $4 call $_memcpy drop @@ -3462,7 +3577,7 @@ i32.const 4 i32.store8 offset=11 local.get $2 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -3538,7 +3653,7 @@ i32.eqz if $if_4 local.get $5 - global.set $29 + global.set $30 local.get $2 return end ;; $if_4 @@ -3578,7 +3693,7 @@ local.get $0 call $_free local.get $5 - global.set $29 + global.set $30 local.get $2 ) @@ -3608,561 +3723,599 @@ (local $22 i32) (local $23 i32) (local $24 i32) - global.get $29 + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + global.get $30 local.set $1 - global.get $29 - i32.const 752 + global.get $30 + i32.const 848 i32.add - global.set $29 + global.set $30 local.get $1 i32.const 112 i32.add - local.set $3 + local.set $4 + local.get $1 + i32.const 696 + i32.add + local.set $5 local.get $1 i32.const 96 i32.add - local.set $6 + local.set $8 local.get $1 i32.const 80 i32.add - local.set $8 + local.set $11 + local.get $1 + i32.const 684 + i32.add + local.set $12 local.get $1 i32.const -64 i32.sub - local.set $11 + local.set $13 local.get $1 i32.const 48 i32.add - local.set $12 + local.set $14 + local.get $1 + i32.const 672 + i32.add + local.set $15 local.get $1 i32.const 32 i32.add - local.set $13 + local.set $16 + local.get $1 + i32.const 640 + i32.add + local.set $17 local.get $1 - i32.const 580 + i32.const 628 i32.add local.set $0 local.get $1 - i32.const 568 + i32.const 616 i32.add - local.set $7 + local.set $6 local.get $1 i32.const 16 i32.add - local.set $14 + local.set $18 local.get $1 - i32.const 312 + i32.const 560 i32.add - local.set $20 + local.set $19 local.get $1 - i32.const 484 + i32.const 408 i32.add - local.set $15 + local.set $27 local.get $1 - i32.const 472 + i32.const 516 i32.add - local.set $16 + local.set $20 local.get $1 - i32.const 208 + i32.const 504 i32.add local.set $21 local.get $1 - i32.const 420 + i32.const 492 i32.add - local.set $17 + local.set $22 local.get $1 - i32.const 408 + i32.const 304 + i32.add + local.set $28 + local.get $1 + i32.const 176 + i32.add + local.set $23 + local.get $1 + i32.const 164 + i32.add + local.set $24 + local.get $1 + i32.const 152 i32.add local.set $9 local.get $1 - i32.const 124 + i32.const 200 i32.add - local.set $18 + local.set $25 local.get $1 i32.const 2524 - i32.store offset=696 + i32.store offset=800 local.get $1 i32.const 12 - i32.store offset=700 + i32.store offset=804 local.get $1 - i32.const 2740 - i32.store offset=680 + i32.const 3035 + i32.store offset=784 local.get $1 i32.const 10 - i32.store offset=684 + i32.store offset=788 local.get $1 - i32.const 2751 - i32.store offset=672 + i32.const 3046 + i32.store offset=776 local.get $1 i32.const 7 - i32.store offset=676 + i32.store offset=780 local.get $1 - i32.const 2759 - i32.store offset=664 + i32.const 3054 + i32.store offset=768 local.get $1 i32.const 8 - i32.store offset=668 + i32.store offset=772 local.get $1 - i32.const 688 + i32.const 792 i32.add local.tee $10 local.get $1 - i64.load offset=696 align=4 + i64.load offset=800 align=4 i64.store align=4 local.get $1 - i32.const 704 + i32.const 808 i32.add - local.tee $5 + local.tee $7 local.get $1 - i64.load offset=680 align=4 + i64.load offset=784 align=4 i64.store align=4 local.get $1 - i32.const 716 + i32.const 816 i32.add - local.tee $4 + local.tee $3 local.get $1 - i64.load offset=672 align=4 + i64.load offset=776 align=4 i64.store align=4 local.get $1 - i32.const 728 + i32.const 828 i32.add local.tee $2 local.get $1 - i64.load offset=664 align=4 + i64.load offset=768 align=4 i64.store align=4 local.get $10 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESA_IiESA_IbE - local.set $19 + local.set $26 local.get $1 - i32.const 2621 - i32.store offset=656 + i32.const 2916 + i32.store offset=760 local.get $1 i32.const 10 - i32.store offset=660 + i32.store offset=764 local.get $1 - i32.const 2768 - i32.store offset=648 + i32.const 3063 + i32.store offset=752 local.get $1 i32.const 11 - i32.store offset=652 + i32.store offset=756 local.get $1 - i32.const 2780 - i32.store offset=640 + i32.const 3075 + i32.store offset=744 local.get $1 i32.const 11 - i32.store offset=644 - local.get $5 + i32.store offset=748 + local.get $7 local.get $1 - i64.load offset=656 align=4 + i64.load offset=760 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=648 align=4 + i64.load offset=752 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=640 align=4 + i64.load offset=744 align=4 i64.store align=4 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESB_ - local.set $23 + local.set $30 local.get $1 - i32.const 2549 - i32.store offset=632 + i32.const 2654 + i32.store offset=736 local.get $1 i32.const 14 - i32.store offset=636 + i32.store offset=740 local.get $1 - i32.const 2751 - i32.store offset=624 + i32.const 3046 + i32.store offset=728 local.get $1 i32.const 7 - i32.store offset=628 + i32.store offset=732 local.get $1 - i32.const 2740 - i32.store offset=616 + i32.const 3035 + i32.store offset=720 local.get $1 i32.const 10 - i32.store offset=620 + i32.store offset=724 local.get $1 - i32.const 2759 - i32.store offset=608 + i32.const 3054 + i32.store offset=712 local.get $1 i32.const 8 - i32.store offset=612 + i32.store offset=716 local.get $10 local.get $1 - i64.load offset=632 align=4 + i64.load offset=736 align=4 i64.store align=4 - local.get $5 + local.get $7 local.get $1 - i64.load offset=624 align=4 + i64.load offset=728 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=616 align=4 + i64.load offset=720 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=608 align=4 + i64.load offset=712 align=4 i64.store align=4 local.get $10 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE - local.set $24 - local.get $3 + local.set $31 + local.get $4 i64.const 0 i64.store - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 - local.get $3 + local.get $4 i32.const 8 i32.store8 offset=11 - local.get $3 + local.get $4 i64.const 7449363211971945844 i64.store - local.get $3 + local.get $4 i32.const 0 i32.store8 offset=8 - local.get $19 + local.get $26 i64.const 1 - local.get $3 + local.get $4 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE9incrementExS6_ib - local.get $3 + local.get $4 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if - local.get $3 + local.get $4 i32.load call $_free end ;; $if - local.get $4 + local.get $2 i32.const 16 call $__Znwm - local.tee $3 + local.tee $4 i32.store - local.get $4 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $2 i32.const 14 i32.store offset=4 - local.get $3 - i32.const 2564 + local.get $4 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $3 - i32.const 2572 + local.get $4 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $3 - i32.const 2576 + local.get $4 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $3 + local.get $4 i32.const 0 i32.store8 offset=14 - local.get $6 + local.get $8 i64.const 0 i64.store - local.get $6 + local.get $8 i32.const 0 i32.store offset=8 - local.get $6 + local.get $8 i32.const 8 i32.store8 offset=11 - local.get $6 + local.get $8 i64.const 7449363211971945844 i64.store - local.get $6 + local.get $8 i32.const 0 i32.store8 offset=8 - local.get $5 - local.get $19 - local.get $6 + local.get $3 + local.get $26 + local.get $8 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib call $__ZNSt3__29to_stringEy - local.get $2 - local.get $4 local.get $5 + local.get $2 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $22 + local.tee $29 select - local.get $5 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $4 i32.const 255 i32.and - local.get $22 + local.get $29 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $2 - local.get $3 + local.get $5 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $4 i64.const 0 i64.store align=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 i32.const 0 - local.get $2 + local.get $5 i32.load - local.get $2 - local.get $2 + local.get $5 + local.get $5 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $22 + local.tee $29 select - local.get $2 + local.get $5 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and - local.get $22 + local.get $29 select call $_proxy_log - local.get $2 + drop + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $2 + local.get $5 i32.load call $_free end ;; $if_0 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_1 - local.get $6 + local.get $8 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_2 - local.get $6 + local.get $8 i32.load call $_free end ;; $if_2 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_3 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_3 - local.get $8 + local.get $11 i64.const 0 i64.store - local.get $8 + local.get $11 i32.const 0 i32.store offset=8 - local.get $8 + local.get $11 i32.const 8 i32.store8 offset=11 - local.get $8 + local.get $11 i64.const 7449363211971945844 i64.store - local.get $8 + local.get $11 i32.const 0 i32.store8 offset=8 - local.get $19 - local.get $8 + local.get $26 + local.get $11 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE7resolveES6_ib - local.set $3 - local.get $8 + local.set $4 + local.get $11 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_4 - local.get $8 + local.get $11 i32.load call $_free end ;; $if_4 - local.get $3 + local.get $4 i64.const 1 call $_proxy_recordMetric - local.get $4 + drop + local.get $2 i32.const 16 call $__Znwm - local.tee $3 + local.tee $4 i32.store - local.get $4 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $2 i32.const 14 i32.store offset=4 - local.get $3 - i32.const 2564 + local.get $4 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $3 - i32.const 2572 + local.get $4 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $3 - i32.const 2576 + local.get $4 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $3 + local.get $4 i32.const 0 i32.store8 offset=14 - local.get $11 + local.get $13 i64.const 0 i64.store - local.get $11 + local.get $13 i32.const 0 i32.store offset=8 - local.get $11 + local.get $13 i32.const 8 i32.store8 offset=11 - local.get $11 + local.get $13 i64.const 7449363211971945844 i64.store - local.get $11 + local.get $13 i32.const 0 i32.store8 offset=8 - local.get $5 - local.get $19 - local.get $11 + local.get $3 + local.get $26 + local.get $13 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib call $__ZNSt3__29to_stringEy + local.get $12 local.get $2 - local.get $4 - local.get $5 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $5 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $2 - local.get $3 + local.get $12 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $4 i64.const 0 i64.store align=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 i32.const 1 - local.get $2 + local.get $12 i32.load - local.get $2 - local.get $2 + local.get $12 + local.get $12 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $2 + local.get $12 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $_proxy_log - local.get $2 + drop + local.get $12 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_5 - local.get $2 + local.get $12 i32.load call $_free end ;; $if_5 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_6 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_6 - local.get $11 + local.get $13 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_7 - local.get $11 + local.get $13 i32.load call $_free end ;; $if_7 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_8 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_8 - local.get $12 + local.get $14 i64.const 0 i64.store - local.get $12 + local.get $14 i32.const 0 i32.store offset=8 - local.get $12 + local.get $14 i32.const 8 i32.store8 offset=11 - local.get $12 + local.get $14 i64.const 7449363211971945844 i64.store - local.get $12 + local.get $14 i32.const 0 i32.store8 offset=8 local.get $2 - local.get $12 + local.get $14 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $19 + local.get $26 i64.const 3 local.get $2 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE9incrementExS6_ib @@ -4175,193 +4328,194 @@ i32.load call $_free end ;; $if_9 - local.get $12 + local.get $14 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_10 - local.get $12 + local.get $14 i32.load call $_free end ;; $if_10 - local.get $4 + local.get $2 i32.const 16 call $__Znwm - local.tee $3 + local.tee $4 i32.store - local.get $4 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $2 i32.const 14 i32.store offset=4 - local.get $3 - i32.const 2564 + local.get $4 + i32.const 2808 i64.load align=1 i64.store align=1 - local.get $3 - i32.const 2572 + local.get $4 + i32.const 2816 i32.load align=1 i32.store offset=8 align=1 - local.get $3 - i32.const 2576 + local.get $4 + i32.const 2820 i32.load16_s align=1 i32.store16 offset=12 align=1 - local.get $3 + local.get $4 i32.const 0 i32.store8 offset=14 - local.get $13 + local.get $16 i64.const 0 i64.store - local.get $13 + local.get $16 i32.const 0 i32.store offset=8 - local.get $13 + local.get $16 i32.const 8 i32.store8 offset=11 - local.get $13 + local.get $16 i64.const 7449363211971945844 i64.store - local.get $13 + local.get $16 i32.const 0 i32.store8 offset=8 - local.get $5 - local.get $19 - local.get $13 + local.get $3 + local.get $26 + local.get $16 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib call $__ZNSt3__29to_stringEy + local.get $15 local.get $2 - local.get $4 - local.get $5 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 - select - local.get $5 - i32.load offset=4 + local.tee $5 + select local.get $3 + i32.load offset=4 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $2 - local.get $3 + local.get $15 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $4 i64.const 0 i64.store align=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 i32.const 2 - local.get $2 + local.get $15 i32.load - local.get $2 - local.get $2 + local.get $15 + local.get $15 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $2 + local.get $15 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $_proxy_log - local.get $2 + drop + local.get $15 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_11 - local.get $2 + local.get $15 i32.load call $_free end ;; $if_11 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_12 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_12 - local.get $13 + local.get $16 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_13 - local.get $13 + local.get $16 i32.load call $_free end ;; $if_13 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_14 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_14 local.get $1 - i32.const 2792 - i32.store offset=600 + i32.const 3087 + i32.store offset=664 local.get $1 i32.const 9 - i32.store offset=604 + i32.store offset=668 local.get $1 - i32.const 2802 - i32.store offset=592 + i32.const 3097 + i32.store offset=656 local.get $1 i32.const 9 - i32.store offset=596 - local.get $4 + i32.store offset=660 + local.get $3 local.get $1 - i64.load offset=600 align=4 + i64.load offset=664 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=592 align=4 + i64.load offset=656 align=4 i64.store align=4 - local.get $23 - local.get $4 + local.get $30 + local.get $3 local.get $2 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE6recordExNS0_17basic_string_viewIcS3_EES9_ - local.get $4 + local.get $2 i32.const 16 call $__Znwm - local.tee $3 + local.tee $4 i32.store - local.get $4 + local.get $2 i32.const -2147483632 i32.store offset=8 - local.get $4 + local.get $2 i32.const 12 i32.store offset=4 - local.get $3 - i32.const 2579 + local.get $4 + i32.const 2863 i64.load align=1 i64.store align=1 - local.get $3 - i32.const 2587 + local.get $4 + i32.const 2871 i32.load align=1 i32.store offset=8 align=1 - local.get $3 + local.get $4 i32.const 0 i32.store8 offset=12 local.get $0 @@ -4374,118 +4528,119 @@ i32.const 9 i32.store8 offset=11 local.get $0 - i32.const 2792 + i32.const 3087 i64.load align=1 i64.store align=1 local.get $0 - i32.const 2800 + i32.const 3095 i32.load8_s i32.store8 offset=8 local.get $0 i32.const 0 i32.store8 offset=9 - local.get $7 + local.get $6 i64.const 0 i64.store align=4 - local.get $7 + local.get $6 i32.const 0 i32.store offset=8 - local.get $7 + local.get $6 i32.const 9 i32.store8 offset=11 - local.get $7 - i32.const 2802 + local.get $6 + i32.const 3097 i64.load align=1 i64.store align=1 - local.get $7 - i32.const 2810 + local.get $6 + i32.const 3105 i32.load8_s i32.store8 offset=8 - local.get $7 + local.get $6 i32.const 0 i32.store8 offset=9 - local.get $5 - local.get $23 + local.get $3 + local.get $30 local.get $0 - local.get $7 + local.get $6 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE3getES6_S6_ call $__ZNSt3__29to_stringEy + local.get $17 local.get $2 - local.get $4 - local.get $5 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $5 - i32.load offset=4 local.get $3 + i32.load offset=4 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm - local.tee $3 + local.tee $4 i64.load align=4 i64.store align=4 - local.get $2 - local.get $3 + local.get $17 + local.get $4 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $4 i64.const 0 i64.store align=4 - local.get $3 + local.get $4 i32.const 0 i32.store offset=8 i32.const 3 - local.get $2 + local.get $17 i32.load - local.get $2 - local.get $2 + local.get $17 + local.get $17 i32.load8_s offset=11 - local.tee $3 + local.tee $4 i32.const 0 i32.lt_s - local.tee $6 + local.tee $5 select - local.get $2 + local.get $17 i32.load offset=4 - local.get $3 + local.get $4 i32.const 255 i32.and - local.get $6 + local.get $5 select call $_proxy_log - local.get $2 + drop + local.get $17 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_15 - local.get $2 + local.get $17 i32.load call $_free end ;; $if_15 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_16 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_16 - local.get $7 + local.get $6 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_17 - local.get $7 + local.get $6 i32.load call $_free end ;; $if_17 @@ -4498,124 +4653,124 @@ i32.load call $_free end ;; $if_18 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_19 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_19 local.get $1 - i32.const 2704 - i32.store offset=560 + i32.const 2999 + i32.store offset=608 local.get $1 i32.const 8 - i32.store offset=564 + i32.store offset=612 local.get $2 local.get $1 - i64.load offset=560 align=4 + i64.load offset=608 align=4 i64.store align=4 - local.get $24 + local.get $31 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE6recordExiNS0_17basic_string_viewIcS3_EEb local.get $1 - i32.const 2549 - i32.store offset=552 + i32.const 2654 + i32.store offset=600 local.get $1 i32.const 14 - i32.store offset=556 + i32.store offset=604 local.get $1 - i32.const 2751 - i32.store offset=544 + i32.const 3046 + i32.store offset=592 local.get $1 i32.const 7 - i32.store offset=548 - local.get $4 + i32.store offset=596 + local.get $3 local.get $1 - i64.load offset=552 align=4 + i64.load offset=600 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=544 align=4 + i64.load offset=592 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $2 call $__ZN7CounterIJiEE3NewENSt3__217basic_string_viewIcNS1_11char_traitsIcEEEE19MetricTagDescriptorIiE local.set $0 local.get $1 - i32.const 2740 - i32.store offset=536 + i32.const 3035 + i32.store offset=584 local.get $1 i32.const 10 - i32.store offset=540 + i32.store offset=588 local.get $1 - i32.const 2759 - i32.store offset=528 + i32.const 3054 + i32.store offset=576 local.get $1 i32.const 8 - i32.store offset=532 - local.get $4 + i32.store offset=580 + local.get $3 local.get $1 - i64.load offset=536 align=4 + i64.load offset=584 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=528 align=4 + i64.load offset=576 align=4 i64.store align=4 local.get $0 - local.get $4 + local.get $3 local.get $2 call $__ZN7CounterIJiEE16extendAndResolveIJNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEbEEEPS_IJDpT_EEiDp19MetricTagDescriptorIS9_E local.set $0 - local.get $14 + local.get $18 i64.const 0 i64.store - local.get $14 + local.get $18 i32.const 0 i32.store offset=8 - local.get $14 + local.get $18 i32.const 8 i32.store8 offset=11 - local.get $14 + local.get $18 i64.const 7449363211971945844 i64.store - local.get $14 + local.get $18 i32.const 0 i32.store8 offset=8 local.get $0 - local.get $14 + local.get $18 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE7resolveES6_b - local.set $7 - local.get $14 + local.set $6 + local.get $18 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_20 - local.get $14 + local.get $18 i32.load call $_free end ;; $if_20 - local.get $4 + local.get $2 i32.const 0 i32.store offset=8 - local.get $4 + local.get $2 i32.const 7 i32.store8 offset=11 - local.get $4 - i32.const 2812 + local.get $2 + i32.const 3107 i32.load align=1 i32.store align=1 - local.get $4 - i32.const 2816 + local.get $2 + i32.const 3111 i32.load16_s align=1 i32.store16 offset=4 align=1 - local.get $4 - i32.const 2818 + local.get $2 + i32.const 3113 i32.load8_s i32.store8 offset=6 - local.get $4 + local.get $2 i32.const 0 i32.store8 offset=7 block $block (result i32) @@ -4626,7 +4781,7 @@ i32.eqz br_if $block_0 loop $loop - local.get $7 + local.get $6 local.get $0 i32.load offset=20 i32.ne @@ -4639,49 +4794,49 @@ br $loop end ;; $if_21 end ;; $loop - local.get $5 + local.get $3 local.get $0 i32.const 8 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 + local.get $3 i32.const 11 i32.add - local.tee $7 + local.tee $6 i32.load8_s local.set $0 - local.get $5 + local.get $3 i32.load - local.set $3 - local.get $5 + local.set $4 + local.get $3 i32.load offset=4 - local.set $6 - local.get $5 + local.set $5 + local.get $3 br $block end ;; $block_0 - local.get $5 + local.get $3 i64.const 0 i64.store align=4 - local.get $5 + local.get $3 i32.const 0 i32.store offset=8 i32.const 0 local.set $0 i32.const 0 - local.set $3 + local.set $4 i32.const 0 - local.set $6 - local.get $5 + local.set $5 + local.get $3 i32.const 11 i32.add - local.set $7 - local.get $5 + local.set $6 + local.get $3 end ;; $block local.set $8 + local.get $19 local.get $2 local.get $4 local.get $3 - local.get $5 local.get $0 i32.const 24 i32.shl @@ -4689,19 +4844,19 @@ i32.shr_s i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 select - local.get $6 + local.get $5 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $4 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $19 local.get $0 i32.load offset=8 i32.store offset=8 @@ -4712,34 +4867,35 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $2 + local.get $19 i32.load - local.get $2 - local.get $2 + local.get $19 + local.get $19 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $3 + local.tee $4 select - local.get $2 + local.get $19 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $3 + local.get $4 select call $_proxy_log - local.get $2 + drop + local.get $19 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_22 - local.get $2 + local.get $19 i32.load call $_free end ;; $if_22 - local.get $7 + local.get $6 i32.load8_s i32.const 0 i32.lt_s @@ -4748,181 +4904,181 @@ i32.load call $_free end ;; $if_23 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_24 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_24 local.get $1 i32.const 2524 - i32.store offset=520 + i32.store offset=552 local.get $1 i32.const 12 - i32.store offset=524 + i32.store offset=556 local.get $1 - i32.const 2740 - i32.store offset=512 + i32.const 3035 + i32.store offset=544 local.get $1 i32.const 10 - i32.store offset=516 + i32.store offset=548 local.get $1 - i32.const 2751 - i32.store offset=504 + i32.const 3046 + i32.store offset=536 local.get $1 i32.const 7 - i32.store offset=508 + i32.store offset=540 local.get $1 - i32.const 2759 - i32.store offset=496 + i32.const 3054 + i32.store offset=528 local.get $1 i32.const 8 - i32.store offset=500 + i32.store offset=532 local.get $10 local.get $1 - i64.load offset=520 align=4 + i64.load offset=552 align=4 i64.store align=4 - local.get $5 + local.get $7 local.get $1 - i64.load offset=512 align=4 + i64.load offset=544 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=504 align=4 + i64.load offset=536 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=496 align=4 + i64.load offset=528 align=4 i64.store align=4 - local.get $20 + local.get $27 local.get $10 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESA_IiESA_IbE - local.get $15 + local.get $20 i64.const 0 i64.store align=4 - local.get $15 + local.get $20 i32.const 0 i32.store offset=8 - local.get $15 + local.get $20 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $15 + local.get $20 i32.const -2147483632 i32.store offset=8 - local.get $15 + local.get $20 i32.const 14 i32.store offset=4 local.get $0 - i32.const 2820 + i32.const 3115 i64.load align=1 i64.store align=1 local.get $0 - i32.const 2828 + i32.const 3123 i32.load align=1 i32.store offset=8 align=1 local.get $0 - i32.const 2832 + i32.const 3127 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $0 i32.const 0 i32.store8 offset=14 - local.get $20 + local.get $27 i64.const 1 - local.get $15 + local.get $20 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE9incrementExS6_ib - local.get $15 + local.get $20 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_25 - local.get $15 + local.get $20 i32.load call $_free end ;; $if_25 - local.get $4 + local.get $2 i32.const 10 i32.store8 offset=11 - local.get $4 - i32.const 2835 + local.get $2 + i32.const 3130 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 2843 + local.get $2 + i32.const 3138 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $4 + local.get $2 i32.const 0 i32.store8 offset=10 - local.get $16 + local.get $22 i64.const 0 i64.store align=4 - local.get $16 + local.get $22 i32.const 0 i32.store offset=8 - local.get $16 + local.get $22 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $16 + local.get $22 i32.const -2147483632 i32.store offset=8 - local.get $16 + local.get $22 i32.const 14 i32.store offset=4 local.get $0 - i32.const 2820 + i32.const 3115 i64.load align=1 i64.store align=1 local.get $0 - i32.const 2828 + i32.const 3123 i32.load align=1 i32.store offset=8 align=1 local.get $0 - i32.const 2832 + i32.const 3127 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $0 i32.const 0 i32.store8 offset=14 - local.get $5 - local.get $20 - local.get $16 + local.get $3 + local.get $27 + local.get $22 call $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib call $__ZNSt3__29to_stringEy + local.get $21 local.get $2 - local.get $4 - local.get $5 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 select - local.get $5 + local.get $3 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $7 + local.get $6 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $21 local.get $0 i32.load offset=8 i32.store offset=8 @@ -4933,164 +5089,165 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $2 + local.get $21 i32.load - local.get $2 - local.get $2 + local.get $21 + local.get $21 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 select - local.get $2 + local.get $21 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $7 + local.get $6 select call $_proxy_log - local.get $2 + drop + local.get $21 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_26 - local.get $2 + local.get $21 i32.load call $_free end ;; $if_26 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_27 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_27 - local.get $16 + local.get $22 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_28 - local.get $16 + local.get $22 i32.load call $_free end ;; $if_28 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_29 - local.get $4 + local.get $2 i32.load call $_free end ;; $if_29 local.get $1 - i32.const 2621 - i32.store offset=464 + i32.const 2916 + i32.store offset=400 local.get $1 i32.const 10 - i32.store offset=468 + i32.store offset=404 local.get $1 - i32.const 2768 - i32.store offset=456 + i32.const 3063 + i32.store offset=392 local.get $1 i32.const 11 - i32.store offset=460 + i32.store offset=396 local.get $1 - i32.const 2780 - i32.store offset=448 + i32.const 3075 + i32.store offset=296 local.get $1 i32.const 11 - i32.store offset=452 - local.get $5 + i32.store offset=300 + local.get $7 local.get $1 - i64.load offset=464 align=4 + i64.load offset=400 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=456 align=4 + i64.load offset=392 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=448 align=4 + i64.load offset=296 align=4 i64.store align=4 - local.get $21 - local.get $5 - local.get $4 + local.get $28 + local.get $7 + local.get $3 local.get $2 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESB_ local.get $1 - i32.const 2846 - i32.store offset=440 + i32.const 3141 + i32.store offset=288 local.get $1 i32.const 15 - i32.store offset=444 + i32.store offset=292 local.get $1 - i32.const 2802 - i32.store offset=432 + i32.const 3097 + i32.store offset=192 local.get $1 i32.const 9 - i32.store offset=436 - local.get $4 + i32.store offset=196 + local.get $3 local.get $1 - i64.load offset=440 align=4 + i64.load offset=288 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=432 align=4 + i64.load offset=192 align=4 i64.store align=4 - local.get $21 - local.get $4 + local.get $28 + local.get $3 local.get $2 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE6recordExNS0_17basic_string_viewIcS3_EES9_ - local.get $4 + local.get $2 i32.const 10 i32.store8 offset=11 - local.get $4 - i32.const 2862 + local.get $2 + i32.const 3157 i64.load align=1 i64.store align=1 - local.get $4 - i32.const 2870 + local.get $2 + i32.const 3165 i32.load16_s align=1 i32.store16 offset=8 align=1 - local.get $4 + local.get $2 i32.const 0 i32.store8 offset=10 - local.get $17 + local.get $24 i64.const 0 i64.store align=4 - local.get $17 + local.get $24 i32.const 0 i32.store offset=8 - local.get $17 + local.get $24 i32.const 16 call $__Znwm local.tee $0 i32.store - local.get $17 + local.get $24 i32.const -2147483632 i32.store offset=8 - local.get $17 + local.get $24 i32.const 15 i32.store offset=4 local.get $0 - i32.const 2846 + i32.const 3141 i64.load align=1 i64.store align=1 local.get $0 - i32.const 2854 + i32.const 3149 i32.load align=1 i32.store offset=8 align=1 local.get $0 - i32.const 2858 + i32.const 3153 i32.load16_s align=1 i32.store16 offset=12 align=1 local.get $0 - i32.const 2860 + i32.const 3155 i32.load8_s i32.store8 offset=14 local.get $0 @@ -5106,46 +5263,46 @@ i32.const 9 i32.store8 offset=11 local.get $9 - i32.const 2802 + i32.const 3097 i64.load align=1 i64.store align=1 local.get $9 - i32.const 2810 + i32.const 3105 i32.load8_s i32.store8 offset=8 local.get $9 i32.const 0 i32.store8 offset=9 - local.get $5 - local.get $21 - local.get $17 + local.get $3 + local.get $28 + local.get $24 local.get $9 call $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE3getES6_S6_ call $__ZNSt3__29to_stringEy + local.get $23 local.get $2 - local.get $4 - local.get $5 + local.get $3 i32.load - local.get $5 - local.get $5 + local.get $3 + local.get $3 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 select - local.get $5 + local.get $3 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $7 + local.get $6 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $0 i64.load align=4 i64.store align=4 - local.get $2 + local.get $23 local.get $0 i32.load offset=8 i32.store offset=8 @@ -5156,39 +5313,40 @@ i32.const 0 i32.store offset=8 i32.const 4 - local.get $2 + local.get $23 i32.load - local.get $2 - local.get $2 + local.get $23 + local.get $23 i32.load8_s offset=11 local.tee $0 i32.const 0 i32.lt_s - local.tee $7 + local.tee $6 select - local.get $2 + local.get $23 i32.load offset=4 local.get $0 i32.const 255 i32.and - local.get $7 + local.get $6 select call $_proxy_log - local.get $2 + drop + local.get $23 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_30 - local.get $2 + local.get $23 i32.load call $_free end ;; $if_30 - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_31 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_31 @@ -5201,65 +5359,65 @@ i32.load call $_free end ;; $if_32 - local.get $17 + local.get $24 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_33 - local.get $17 + local.get $24 i32.load call $_free end ;; $if_33 - local.get $4 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.ge_s if $if_34 local.get $1 - i32.const 2549 - i32.store offset=400 + i32.const 2654 + i32.store offset=144 local.get $1 i32.const 14 - i32.store offset=404 + i32.store offset=148 local.get $1 - i64.const 30064773823 + i64.const 30064774118 i64.store offset=8 local.get $1 - i32.const 2740 - i32.store offset=304 + i32.const 3035 + i32.store offset=136 local.get $1 i32.const 10 - i32.store offset=308 + i32.store offset=140 local.get $1 - i32.const 2759 - i32.store offset=296 + i32.const 3054 + i32.store offset=128 local.get $1 i32.const 8 - i32.store offset=300 + i32.store offset=132 local.get $10 local.get $1 - i64.load offset=400 align=4 + i64.load offset=144 align=4 i64.store align=4 - local.get $5 + local.get $7 local.get $1 i64.load offset=8 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=304 align=4 + i64.load offset=136 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=296 align=4 + i64.load offset=128 align=4 i64.store align=4 - local.get $18 + local.get $25 local.get $10 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE local.get $1 - i32.const 2873 + i32.const 3168 i32.store local.get $1 i32.const 14 @@ -5268,67 +5426,67 @@ local.get $1 i64.load align=4 i64.store align=4 - local.get $18 + local.get $25 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE6recordExiNS0_17basic_string_viewIcS3_EEb - local.get $18 + local.get $25 call $__ZN10MetricBaseD2Ev - local.get $21 + local.get $28 call $__ZN10MetricBaseD2Ev - local.get $20 + local.get $27 call $__ZN10MetricBaseD2Ev local.get $1 - global.set $29 + global.set $30 return end ;; $if_34 - local.get $4 + local.get $2 i32.load call $_free local.get $1 - i32.const 2549 - i32.store offset=400 + i32.const 2654 + i32.store offset=144 local.get $1 i32.const 14 - i32.store offset=404 + i32.store offset=148 local.get $1 - i64.const 30064773823 + i64.const 30064774118 i64.store offset=8 local.get $1 - i32.const 2740 - i32.store offset=304 + i32.const 3035 + i32.store offset=136 local.get $1 i32.const 10 - i32.store offset=308 + i32.store offset=140 local.get $1 - i32.const 2759 - i32.store offset=296 + i32.const 3054 + i32.store offset=128 local.get $1 i32.const 8 - i32.store offset=300 + i32.store offset=132 local.get $10 local.get $1 - i64.load offset=400 align=4 + i64.load offset=144 align=4 i64.store align=4 - local.get $5 + local.get $7 local.get $1 i64.load offset=8 align=4 i64.store align=4 - local.get $4 + local.get $3 local.get $1 - i64.load offset=304 align=4 + i64.load offset=136 align=4 i64.store align=4 local.get $2 local.get $1 - i64.load offset=296 align=4 + i64.load offset=128 align=4 i64.store align=4 - local.get $18 + local.get $25 local.get $10 - local.get $5 - local.get $4 + local.get $7 + local.get $3 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE local.get $1 - i32.const 2873 + i32.const 3168 i32.store local.get $1 i32.const 14 @@ -5337,20 +5495,20 @@ local.get $1 i64.load align=4 i64.store align=4 - local.get $18 + local.get $25 local.get $2 call $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE6recordExiNS0_17basic_string_viewIcS3_EEb - local.get $18 + local.get $25 call $__ZN10MetricBaseD2Ev - local.get $21 + local.get $28 call $__ZN10MetricBaseD2Ev - local.get $20 + local.get $27 call $__ZN10MetricBaseD2Ev local.get $1 - global.set $29 + global.set $30 ) - (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESA_IiESA_IbE (type $13) + (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESA_IiESA_IbE (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -5363,14 +5521,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i64) - (local $12 i64) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 80 i32.add - global.set $29 + global.set $30 local.get $5 i32.const -64 i32.sub @@ -5382,29 +5538,23 @@ i32.const 84 call $__Znwm local.set $8 - local.get $0 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $7 local.get $6 i64.const 0 i64.store align=4 local.get $6 i32.const 0 i32.store offset=8 - local.get $7 + local.get $0 + i32.load + local.set $9 + local.get $0 + i32.load offset=4 + local.tee $7 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $11 - i32.wrap_i64 - local.set $9 block $block block $block_0 local.get $7 @@ -5412,8 +5562,8 @@ i32.lt_u if $if_0 (result i32) local.get $6 - local.get $12 - i64.store8 offset=11 + local.get $7 + i32.store8 offset=11 local.get $7 if $if_1 (result i32) local.get $6 @@ -5457,14 +5607,6 @@ i32.add i32.const 0 i32.store8 - local.get $1 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 local.get $4 i64.const 0 i64.store align=4 @@ -5472,14 +5614,16 @@ i32.const 0 i32.store offset=8 local.get $1 + i32.load + local.set $7 + local.get $1 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $11 - i32.wrap_i64 - local.set $7 block $block_1 block $block_2 local.get $1 @@ -5487,8 +5631,8 @@ i32.lt_u if $if_3 (result i32) local.get $4 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 if $if_4 (result i32) local.get $4 @@ -5533,34 +5677,26 @@ i32.const 0 i32.store8 local.get $4 - i32.const 0 - i32.store offset=12 - local.get $2 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 - local.get $4 i32.const 16 i32.add - local.tee $0 + local.set $0 + local.get $4 i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 + i64.store offset=12 align=4 + local.get $4 + i64.const 0 + i64.store offset=20 align=4 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $11 - i32.wrap_i64 - local.set $2 block $block_3 block $block_4 local.get $1 @@ -5568,8 +5704,8 @@ i32.lt_u if $if_6 local.get $0 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_4 else @@ -5579,12 +5715,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $2 call $__Znwm local.tee $0 i32.store local.get $4 - local.get $7 + local.get $2 i32.const -2147483648 i32.or i32.store offset=24 @@ -5596,7 +5732,7 @@ br $block_3 end ;; $block_4 local.get $0 - local.get $2 + local.get $7 local.get $1 call $_memcpy drop @@ -5609,14 +5745,6 @@ local.get $4 i32.const 1 i32.store offset=28 - local.get $3 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 local.get $4 i32.const 32 i32.add @@ -5626,15 +5754,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $3 + i32.load + local.set $2 + local.get $3 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_7 call $_abort end ;; $if_7 - local.get $11 - i32.wrap_i64 - local.set $2 block $block_5 block $block_6 local.get $1 @@ -5642,8 +5772,8 @@ i32.lt_u if $if_8 local.get $0 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_6 else @@ -5829,7 +5959,7 @@ i32.ge_s if $if_15 local.get $5 - global.set $29 + global.set $30 local.get $8 return end ;; $if_15 @@ -5837,7 +5967,7 @@ i32.load call $_free local.get $5 - global.set $29 + global.set $30 local.get $8 ) @@ -5853,14 +5983,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $4 i32.const 48 i32.add @@ -5872,29 +6000,23 @@ i32.const 84 call $__Znwm local.set $7 - local.get $0 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $6 local.get $5 i64.const 0 i64.store align=4 local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $0 + i32.load + local.set $8 + local.get $0 + i32.load offset=4 + local.tee $6 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 local.get $6 @@ -5902,8 +6024,8 @@ i32.lt_u if $if_0 (result i32) local.get $5 - local.get $11 - i64.store8 offset=11 + local.get $6 + i32.store8 offset=11 local.get $6 if $if_1 (result i32) local.get $5 @@ -5947,14 +6069,6 @@ i32.add i32.const 0 i32.store8 - local.get $1 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $1 local.get $3 i64.const 0 i64.store align=4 @@ -5962,14 +6076,16 @@ i32.const 0 i32.store offset=8 local.get $1 + i32.load + local.set $6 + local.get $1 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $10 - i32.wrap_i64 - local.set $6 block $block_1 block $block_2 local.get $1 @@ -5977,8 +6093,8 @@ i32.lt_u if $if_3 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 if $if_4 (result i32) local.get $3 @@ -6023,34 +6139,26 @@ i32.const 0 i32.store8 local.get $3 - i32.const 0 - i32.store offset=12 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $1 - local.get $3 i32.const 16 i32.add - local.tee $0 + local.set $0 + local.get $3 i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 + i64.store offset=12 align=4 + local.get $3 + i64.const 0 + i64.store offset=20 align=4 + local.get $2 + i32.load + local.set $6 + local.get $2 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $10 - i32.wrap_i64 - local.set $2 block $block_3 block $block_4 local.get $1 @@ -6058,8 +6166,8 @@ i32.lt_u if $if_6 local.get $0 - local.get $11 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_4 else @@ -6069,12 +6177,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $2 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $6 + local.get $2 i32.const -2147483648 i32.or i32.store offset=24 @@ -6086,7 +6194,7 @@ br $block_3 end ;; $block_4 local.get $0 - local.get $2 + local.get $6 local.get $1 call $_memcpy drop @@ -6219,7 +6327,7 @@ i32.ge_s if $if_12 local.get $4 - global.set $29 + global.set $30 local.get $7 return end ;; $if_12 @@ -6227,11 +6335,11 @@ i32.load call $_free local.get $4 - global.set $29 + global.set $30 local.get $7 ) - (func $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE (type $13) + (func $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -6244,14 +6352,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i64) - (local $12 i64) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 80 i32.add - global.set $29 + global.set $30 local.get $5 i32.const -64 i32.sub @@ -6263,29 +6369,23 @@ i32.const 84 call $__Znwm local.set $8 - local.get $0 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $7 local.get $6 i64.const 0 i64.store align=4 local.get $6 i32.const 0 i32.store offset=8 - local.get $7 + local.get $0 + i32.load + local.set $9 + local.get $0 + i32.load offset=4 + local.tee $7 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $11 - i32.wrap_i64 - local.set $9 block $block block $block_0 local.get $7 @@ -6293,8 +6393,8 @@ i32.lt_u if $if_0 (result i32) local.get $6 - local.get $12 - i64.store8 offset=11 + local.get $7 + i32.store8 offset=11 local.get $7 if $if_1 (result i32) local.get $6 @@ -6338,14 +6438,6 @@ i32.add i32.const 0 i32.store8 - local.get $1 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 local.get $4 i64.const 0 i64.store align=4 @@ -6353,14 +6445,16 @@ i32.const 0 i32.store offset=8 local.get $1 + i32.load + local.set $7 + local.get $1 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $11 - i32.wrap_i64 - local.set $7 block $block_1 block $block_2 local.get $1 @@ -6368,8 +6462,8 @@ i32.lt_u if $if_3 (result i32) local.get $4 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 if $if_4 (result i32) local.get $4 @@ -6416,14 +6510,6 @@ local.get $4 i32.const 1 i32.store offset=12 - local.get $2 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 local.get $4 i32.const 16 i32.add @@ -6433,15 +6519,17 @@ local.get $0 i32.const 0 i32.store offset=8 - local.get $1 + local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $11 - i32.wrap_i64 - local.set $2 block $block_3 block $block_4 local.get $1 @@ -6449,8 +6537,8 @@ i32.lt_u if $if_6 local.get $0 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_4 else @@ -6460,12 +6548,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $2 call $__Znwm local.tee $0 i32.store local.get $4 - local.get $7 + local.get $2 i32.const -2147483648 i32.or i32.store offset=24 @@ -6477,7 +6565,7 @@ br $block_3 end ;; $block_4 local.get $0 - local.get $2 + local.get $7 local.get $1 call $_memcpy drop @@ -6488,34 +6576,26 @@ i32.const 0 i32.store8 local.get $4 - i32.const 0 - i32.store offset=28 - local.get $3 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $1 - local.get $4 i32.const 32 i32.add - local.tee $0 + local.set $0 + local.get $4 i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 + i64.store offset=28 align=4 + local.get $4 + i64.const 0 + i64.store offset=36 align=4 + local.get $3 + i32.load + local.set $2 + local.get $3 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_7 call $_abort end ;; $if_7 - local.get $11 - i32.wrap_i64 - local.set $2 block $block_5 block $block_6 local.get $1 @@ -6523,8 +6603,8 @@ i32.lt_u if $if_8 local.get $0 - local.get $12 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_6 else @@ -6710,7 +6790,7 @@ i32.ge_s if $if_15 local.get $5 - global.set $29 + global.set $30 local.get $8 return end ;; $if_15 @@ -6718,11 +6798,11 @@ i32.load call $_free local.get $5 - global.set $29 + global.set $30 local.get $8 ) - (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE9incrementExS6_ib (type $14) + (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE9incrementExS6_ib (type $15) (param $0 i32) (param $1 i64) (param $2 i32) @@ -6730,12 +6810,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $5 i32.const 48 i32.add @@ -6779,7 +6859,7 @@ i32.const 4 i32.store8 offset=11 local.get $2 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -6879,13 +6959,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE local.get $1 call $_proxy_incrementMetric + drop local.get $3 i32.load local.tee $2 i32.eqz if $if_3 local.get $5 - global.set $29 + global.set $30 return end ;; $if_3 local.get $2 @@ -6924,55 +7005,52 @@ local.get $0 call $_free local.get $5 - global.set $29 + global.set $30 ) - (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib (type $15) + (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE3getES6_ib (type $16) (param $0 i32) (param $1 i32) (result i64) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i64) - global.get $29 - local.set $4 - global.get $29 + (local $5 i64) + global.get $30 + local.set $2 + global.get $30 i32.const -64 i32.sub - global.set $29 - local.get $4 + global.set $30 + local.get $2 i32.const 48 i32.add - local.set $2 - local.get $4 - i32.const 12 - i32.add local.set $3 - local.get $4 + local.get $2 + i32.const 36 + i32.add local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $3 - local.get $4 - i64.load align=4 + local.get $2 + local.get $2 + i64.load offset=36 align=4 i64.store align=4 - local.get $3 - local.get $4 - i32.load offset=8 + local.get $2 + local.get $2 + i32.load offset=44 i32.store offset=8 - local.get $4 + local.get $2 i64.const 0 - i64.store align=4 - local.get $4 + i64.store offset=36 align=4 + local.get $2 i32.const 0 - i32.store offset=8 - local.get $3 + i32.store offset=44 + local.get $2 i32.const 12 i32.add i32.const 7 call $__ZNSt3__29to_stringEi - local.get $3 + local.get $2 i32.const 24 i32.add local.tee $1 @@ -6985,122 +7063,133 @@ i32.const 4 i32.store8 offset=11 local.get $1 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop local.get $1 i32.const 0 i32.store8 offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store - local.get $2 + local.get $3 i32.const 0 i32.store offset=4 - local.get $2 + local.get $3 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 i32.const 36 call $__Znwm local.tee $1 i32.store offset=4 - local.get $2 + local.get $3 local.get $1 i32.store - local.get $2 + local.get $3 local.get $1 i32.const 36 i32.add i32.store offset=8 local.get $1 - local.get $3 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $2 + call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ + local.get $3 local.get $1 i32.const 12 i32.add - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $3 + local.get $4 + local.get $2 i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 + local.get $3 local.get $1 i32.const 24 i32.add - local.tee $5 + local.tee $4 i32.store offset=4 - local.get $5 - local.get $3 + local.get $4 + local.get $2 i32.const 24 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $2 + local.get $3 local.get $1 i32.const 36 i32.add i32.store offset=4 - local.get $3 + local.get $2 i32.load8_s offset=35 i32.const 0 i32.lt_s if $if - local.get $3 + local.get $2 i32.load offset=24 call $_free end ;; $if - local.get $3 + local.get $2 i32.load8_s offset=23 i32.const 0 i32.lt_s if $if_0 - local.get $3 + local.get $2 i32.load offset=12 call $_free end ;; $if_0 - local.get $3 + local.get $2 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $3 + local.get $2 i32.load call $_free end ;; $if_1 - local.get $4 - i32.load8_s offset=11 + local.get $2 + i32.load8_s offset=47 i32.const 0 i32.lt_s if $if_2 - local.get $4 - i32.load + local.get $2 + i32.load offset=36 call $_free end ;; $if_2 local.get $0 - local.get $2 + local.get $3 call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE + local.get $2 call $_proxy_getMetric - local.set $6 + if $if_3 + i32.const 5 + i32.const 3332 + i32.const 28 + call $_proxy_log + drop + call $_abort + end ;; $if_3 local.get $2 + i64.load + local.set $5 + local.get $3 i32.load local.tee $1 i32.eqz - if $if_3 - local.get $4 - global.set $29 - local.get $6 + if $if_4 + local.get $2 + global.set $30 + local.get $5 return - end ;; $if_3 + end ;; $if_4 local.get $1 - local.get $2 + local.get $3 i32.load offset=4 local.tee $0 i32.eq - if $if_4 (result i32) + if $if_5 (result i32) local.get $1 else loop $loop @@ -7111,31 +7200,31 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 + if $if_6 local.get $0 i32.load call $_free - end ;; $if_5 + end ;; $if_6 local.get $0 local.get $1 i32.ne br_if $loop end ;; $loop - local.get $2 + local.get $3 i32.load - end ;; $if_4 + end ;; $if_5 local.set $0 - local.get $2 + local.get $3 local.get $1 i32.store offset=4 local.get $0 call $_free - local.get $4 - global.set $29 - local.get $6 + local.get $2 + global.set $30 + local.get $5 ) - (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE7resolveES6_ib (type $16) + (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEibEE7resolveES6_ib (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -7143,12 +7232,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $4 i32.const 48 i32.add @@ -7192,7 +7281,7 @@ i32.const 4 i32.store8 offset=11 local.get $1 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -7297,7 +7386,7 @@ i32.eqz if $if_3 local.get $4 - global.set $29 + global.set $30 local.get $2 return end ;; $if_3 @@ -7337,7 +7426,7 @@ local.get $0 call $_free local.get $4 - global.set $29 + global.set $30 local.get $2 ) @@ -7353,12 +7442,12 @@ (local $8 i32) (local $9 i64) (local $10 i64) - global.get $29 + global.get $30 local.set $6 - global.get $29 + global.get $30 i32.const 48 i32.add - global.set $29 + global.set $30 local.get $1 i64.load align=4 local.tee $9 @@ -7574,13 +7663,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 2 call $_proxy_recordMetric + drop local.get $4 i32.load local.tee $1 i32.eqz if $if_6 local.get $6 - global.set $29 + global.set $30 return end ;; $if_6 local.get $4 @@ -7619,7 +7709,7 @@ local.get $0 call $_free local.get $6 - global.set $29 + global.set $30 ) (func $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EE3getES6_S6_ (type $17) @@ -7631,12 +7721,12 @@ (local $4 i32) (local $5 i32) (local $6 i64) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $3 i32.const 48 i32.add @@ -7646,39 +7736,39 @@ i32.add local.set $5 local.get $3 - i32.const 12 + i32.const 36 i32.add local.get $1 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 local.get $3 - i64.load offset=12 align=4 + local.get $3 + i64.load offset=36 align=4 i64.store align=4 - local.get $5 local.get $3 - i32.load offset=20 + local.get $3 + i32.load offset=44 i32.store offset=8 local.get $3 i64.const 0 - i64.store offset=12 align=4 + i64.store offset=36 align=4 local.get $3 i32.const 0 - i32.store offset=20 - local.get $3 + i32.store offset=44 + local.get $5 local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ - local.get $5 local.get $3 + local.get $5 i64.load align=4 i64.store offset=12 align=4 - local.get $5 local.get $3 + local.get $5 i32.load offset=8 i32.store offset=20 - local.get $3 + local.get $5 i64.const 0 i64.store align=4 - local.get $3 + local.get $5 i32.const 0 i32.store offset=8 local.get $4 @@ -7704,7 +7794,7 @@ i32.add i32.store offset=8 local.get $1 - local.get $5 + local.get $3 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ local.get $4 local.get $1 @@ -7713,7 +7803,7 @@ local.tee $2 i32.store offset=4 local.get $2 - local.get $5 + local.get $3 i32.const 12 i32.add call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_ @@ -7722,63 +7812,74 @@ i32.const 24 i32.add i32.store offset=4 - local.get $5 + local.get $3 i32.load8_s offset=23 i32.const 0 i32.lt_s if $if - local.get $5 + local.get $3 i32.load offset=12 call $_free end ;; $if - local.get $5 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_0 - local.get $5 + local.get $3 i32.load call $_free end ;; $if_0 - local.get $3 + local.get $5 i32.load8_s offset=11 i32.const 0 i32.lt_s if $if_1 - local.get $3 + local.get $5 i32.load call $_free end ;; $if_1 local.get $3 - i32.load8_s offset=23 + i32.load8_s offset=47 i32.const 0 i32.lt_s if $if_2 local.get $3 - i32.load offset=12 + i32.load offset=36 call $_free end ;; $if_2 local.get $0 local.get $4 call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE + local.get $3 call $_proxy_getMetric + if $if_3 + i32.const 5 + i32.const 3332 + i32.const 28 + call $_proxy_log + drop + call $_abort + end ;; $if_3 + local.get $3 + i64.load local.set $6 local.get $4 i32.load local.tee $1 i32.eqz - if $if_3 + if $if_4 local.get $3 - global.set $29 + global.set $30 local.get $6 return - end ;; $if_3 + end ;; $if_4 local.get $1 local.get $4 i32.load offset=4 local.tee $0 i32.eq - if $if_4 (result i32) + if $if_5 (result i32) local.get $1 else loop $loop @@ -7789,11 +7890,11 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 + if $if_6 local.get $0 i32.load call $_free - end ;; $if_5 + end ;; $if_6 local.get $0 local.get $1 i32.ne @@ -7801,7 +7902,7 @@ end ;; $loop local.get $4 i32.load - end ;; $if_4 + end ;; $if_5 local.set $0 local.get $4 local.get $1 @@ -7809,7 +7910,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 local.get $6 ) @@ -7823,12 +7924,12 @@ (local $6 i32) (local $7 i64) (local $8 i64) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 48 i32.add - global.set $29 + global.set $30 local.get $2 i32.const 36 i32.add @@ -7920,7 +8021,7 @@ i32.const 4 i32.store8 offset=11 local.get $1 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -8011,13 +8112,14 @@ call $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE i64.const 3 call $_proxy_recordMetric + drop local.get $3 i32.load local.tee $1 i32.eqz if $if_4 local.get $2 - global.set $29 + global.set $30 return end ;; $if_4 local.get $3 @@ -8056,10 +8158,10 @@ local.get $0 call $_free local.get $2 - global.set $29 + global.set $30 ) - (func $__ZN7CounterIJiEE3NewENSt3__217basic_string_viewIcNS1_11char_traitsIcEEEE19MetricTagDescriptorIiE (type $16) + (func $__ZN7CounterIJiEE3NewENSt3__217basic_string_viewIcNS1_11char_traitsIcEEEE19MetricTagDescriptorIiE (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -8070,14 +8172,12 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i64) - (local $10 i64) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 48 i32.add - global.set $29 + global.set $30 local.get $2 i32.const 32 i32.add @@ -8089,29 +8189,23 @@ i32.const 84 call $__Znwm local.set $6 - local.get $0 - i64.load align=4 - local.tee $9 - i64.const 32 - i64.shr_u - local.tee $10 - i32.wrap_i64 - local.set $5 local.get $4 i64.const 0 i64.store align=4 local.get $4 i32.const 0 i32.store offset=8 - local.get $5 + local.get $0 + i32.load + local.set $7 + local.get $0 + i32.load offset=4 + local.tee $5 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $9 - i32.wrap_i64 - local.set $7 block $block block $block_0 local.get $5 @@ -8119,8 +8213,8 @@ i32.lt_u if $if_0 (result i32) local.get $4 - local.get $10 - i64.store8 offset=11 + local.get $5 + i32.store8 offset=11 local.get $5 if $if_1 (result i32) local.get $4 @@ -8164,14 +8258,6 @@ i32.add i32.const 0 i32.store8 - local.get $1 - i64.load align=4 - local.tee $9 - i64.const 32 - i64.shr_u - local.tee $10 - i32.wrap_i64 - local.set $1 local.get $3 i64.const 0 i64.store align=4 @@ -8179,14 +8265,16 @@ i32.const 0 i32.store offset=8 local.get $1 + i32.load + local.set $5 + local.get $1 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $9 - i32.wrap_i64 - local.set $5 block $block_1 block $block_2 local.get $1 @@ -8194,8 +8282,8 @@ i32.lt_u if $if_3 (result i32) local.get $3 - local.get $10 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 if $if_4 (result i32) local.get $3 @@ -8335,7 +8423,7 @@ i32.ge_s if $if_9 local.get $2 - global.set $29 + global.set $30 local.get $6 return end ;; $if_9 @@ -8343,7 +8431,7 @@ i32.load call $_free local.get $2 - global.set $29 + global.set $30 local.get $6 ) @@ -8359,12 +8447,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 80 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 48 i32.add @@ -8478,55 +8566,61 @@ local.get $4 call $__ZN10MetricBase16prefixWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE local.get $2 - i32.const 16 - i32.add - local.tee $0 - i32.load8_s offset=11 + i32.load8_s offset=27 i32.const 0 i32.lt_s if $if_1 - local.get $0 - i32.load + local.get $2 + i32.load offset=16 i32.const 0 i32.store8 local.get $2 i32.const 0 i32.store offset=20 + local.get $2 + i32.load8_s offset=27 + i32.const 0 + i32.lt_s + if $if_2 + local.get $2 + i32.load offset=16 + call $_free + local.get $2 + i32.const 0 + i32.store offset=24 + end ;; $if_2 else - local.get $0 + local.get $2 i32.const 0 - i32.store8 - local.get $0 + i32.store8 offset=16 + local.get $2 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=27 end ;; $if_1 - local.get $0 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $0 + local.get $2 local.get $5 i64.load align=4 - i64.store align=4 - local.get $0 + i64.store offset=16 align=4 + local.get $2 local.get $5 i32.load offset=8 - i32.store offset=8 + i32.store offset=24 local.get $4 i32.load local.tee $1 i32.eqz - if $if_2 + if $if_3 local.get $3 - global.set $29 + global.set $30 local.get $2 return - end ;; $if_2 + end ;; $if_3 local.get $1 local.get $4 i32.load offset=4 local.tee $0 i32.eq - if $if_3 (result i32) + if $if_4 (result i32) local.get $1 else loop $loop @@ -8537,11 +8631,11 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_4 + if $if_5 local.get $0 i32.load call $_free - end ;; $if_4 + end ;; $if_5 local.get $0 local.get $1 i32.ne @@ -8549,7 +8643,7 @@ end ;; $loop local.get $4 i32.load - end ;; $if_3 + end ;; $if_4 local.set $0 local.get $4 local.get $1 @@ -8557,11 +8651,11 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 local.get $2 ) - (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE7resolveES6_b (type $16) + (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE7resolveES6_b (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -8569,12 +8663,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $4 i32.const 40 i32.add @@ -8613,7 +8707,7 @@ i32.const 4 i32.store8 offset=11 local.get $1 - i32.const 2992 + i32.const 3321 i32.const 4 call $_memcpy drop @@ -8698,7 +8792,7 @@ i32.eqz if $if_2 local.get $4 - global.set $29 + global.set $30 local.get $3 return end ;; $if_2 @@ -8738,7 +8832,7 @@ local.get $0 call $_free local.get $4 - global.set $29 + global.set $30 local.get $3 ) @@ -8754,22 +8848,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i64) - (local $12 i64) - global.get $29 + global.get $30 local.set $6 - global.get $29 + global.get $30 i32.const 80 i32.add - global.set $29 - local.get $1 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $7 + global.set $30 local.get $6 i32.const -64 i32.sub @@ -8779,7 +8863,12 @@ local.get $8 i32.const 0 i32.store offset=8 - local.get $7 + local.get $1 + i32.load + local.set $9 + local.get $1 + i32.load offset=4 + local.tee $7 i32.const -17 i32.gt_u if $if @@ -8789,9 +8878,6 @@ i32.const 16 i32.add local.set $5 - local.get $11 - i32.wrap_i64 - local.set $9 block $block block $block_0 local.get $7 @@ -8799,8 +8885,8 @@ i32.lt_u if $if_0 (result i32) local.get $8 - local.get $12 - i64.store8 offset=11 + local.get $7 + i32.store8 offset=11 local.get $7 if $if_1 (result i32) local.get $8 @@ -8844,14 +8930,6 @@ i32.add i32.const 0 i32.store8 - local.get $2 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 local.get $5 i64.const 0 i64.store align=4 @@ -8859,14 +8937,16 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $11 - i32.wrap_i64 - local.set $7 block $block_1 block $block_2 local.get $2 @@ -8874,8 +8954,8 @@ i32.lt_u if $if_3 (result i32) local.get $5 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 if $if_4 (result i32) local.get $5 @@ -8920,34 +9000,26 @@ i32.const 0 i32.store8 local.get $5 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 - local.get $5 i32.const 16 i32.add - local.tee $1 + local.set $1 + local.get $5 i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $2 + i64.store offset=12 align=4 + local.get $5 + i64.const 0 + i64.store offset=20 align=4 + local.get $3 + i32.load + local.set $7 + local.get $3 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $11 - i32.wrap_i64 - local.set $3 block $block_3 block $block_4 local.get $2 @@ -8955,8 +9027,8 @@ i32.lt_u if $if_6 local.get $1 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 br_if $block_4 else @@ -8966,12 +9038,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $3 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $7 + local.get $3 i32.const -2147483648 i32.or i32.store offset=24 @@ -8983,7 +9055,7 @@ br $block_3 end ;; $block_4 local.get $1 - local.get $3 + local.get $7 local.get $2 call $_memcpy drop @@ -8996,14 +9068,6 @@ local.get $5 i32.const 1 i32.store offset=28 - local.get $4 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 local.get $5 i32.const 32 i32.add @@ -9013,15 +9077,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $4 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_7 call $_abort end ;; $if_7 - local.get $11 - i32.wrap_i64 - local.set $3 block $block_5 block $block_6 local.get $2 @@ -9029,8 +9095,8 @@ i32.lt_u if $if_8 local.get $1 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 br_if $block_6 else @@ -9216,14 +9282,14 @@ i32.ge_s if $if_15 local.get $6 - global.set $29 + global.set $30 return end ;; $if_15 local.get $8 i32.load call $_free local.get $6 - global.set $29 + global.set $30 ) (func $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESB_ (type $4) @@ -9237,22 +9303,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 - local.get $1 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $6 + global.set $30 local.get $5 i32.const 48 i32.add @@ -9262,7 +9318,12 @@ local.get $7 i32.const 0 i32.store offset=8 - local.get $6 + local.get $1 + i32.load + local.set $8 + local.get $1 + i32.load offset=4 + local.tee $6 i32.const -17 i32.gt_u if $if @@ -9272,9 +9333,6 @@ i32.const 16 i32.add local.set $4 - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 local.get $6 @@ -9282,8 +9340,8 @@ i32.lt_u if $if_0 (result i32) local.get $7 - local.get $11 - i64.store8 offset=11 + local.get $6 + i32.store8 offset=11 local.get $6 if $if_1 (result i32) local.get $7 @@ -9323,18 +9381,10 @@ drop end ;; $block local.get $1 - local.get $6 - i32.add - i32.const 0 - i32.store8 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 + local.get $6 + i32.add + i32.const 0 + i32.store8 local.get $4 i64.const 0 i64.store align=4 @@ -9342,14 +9392,16 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $6 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $10 - i32.wrap_i64 - local.set $6 block $block_1 block $block_2 local.get $2 @@ -9357,8 +9409,8 @@ i32.lt_u if $if_3 (result i32) local.get $4 - local.get $11 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 if $if_4 (result i32) local.get $4 @@ -9403,34 +9455,26 @@ i32.const 0 i32.store8 local.get $4 - i32.const 0 - i32.store offset=12 - local.get $3 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $2 - local.get $4 i32.const 16 i32.add - local.tee $1 + local.set $1 + local.get $4 i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $2 + i64.store offset=12 align=4 + local.get $4 + i64.const 0 + i64.store offset=20 align=4 + local.get $3 + i32.load + local.set $6 + local.get $3 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $10 - i32.wrap_i64 - local.set $3 block $block_3 block $block_4 local.get $2 @@ -9438,8 +9482,8 @@ i32.lt_u if $if_6 local.get $1 - local.get $11 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 br_if $block_4 else @@ -9449,12 +9493,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $3 call $__Znwm local.tee $1 i32.store local.get $4 - local.get $6 + local.get $3 i32.const -2147483648 i32.or i32.store offset=24 @@ -9466,7 +9510,7 @@ br $block_3 end ;; $block_4 local.get $1 - local.get $3 + local.get $6 local.get $2 call $_memcpy drop @@ -9599,14 +9643,14 @@ i32.ge_s if $if_12 local.get $5 - global.set $29 + global.set $30 return end ;; $if_12 local.get $7 i32.load call $_free local.get $5 - global.set $29 + global.set $30 ) (func $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEEC2ENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIiESA_IS6_ESA_IbE (type $6) @@ -9621,22 +9665,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i64) - (local $12 i64) - global.get $29 + global.get $30 local.set $6 - global.get $29 + global.get $30 i32.const 80 i32.add - global.set $29 - local.get $1 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $7 + global.set $30 local.get $6 i32.const -64 i32.sub @@ -9646,7 +9680,12 @@ local.get $8 i32.const 0 i32.store offset=8 - local.get $7 + local.get $1 + i32.load + local.set $9 + local.get $1 + i32.load offset=4 + local.tee $7 i32.const -17 i32.gt_u if $if @@ -9656,9 +9695,6 @@ i32.const 16 i32.add local.set $5 - local.get $11 - i32.wrap_i64 - local.set $9 block $block block $block_0 local.get $7 @@ -9666,8 +9702,8 @@ i32.lt_u if $if_0 (result i32) local.get $8 - local.get $12 - i64.store8 offset=11 + local.get $7 + i32.store8 offset=11 local.get $7 if $if_1 (result i32) local.get $8 @@ -9711,14 +9747,6 @@ i32.add i32.const 0 i32.store8 - local.get $2 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 local.get $5 i64.const 0 i64.store align=4 @@ -9726,14 +9754,16 @@ i32.const 0 i32.store offset=8 local.get $2 + i32.load + local.set $7 + local.get $2 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $11 - i32.wrap_i64 - local.set $7 block $block_1 block $block_2 local.get $2 @@ -9741,8 +9771,8 @@ i32.lt_u if $if_3 (result i32) local.get $5 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 if $if_4 (result i32) local.get $5 @@ -9789,14 +9819,6 @@ local.get $5 i32.const 1 i32.store offset=12 - local.get $3 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 local.get $5 i32.const 16 i32.add @@ -9806,15 +9828,17 @@ local.get $1 i32.const 0 i32.store offset=8 - local.get $2 + local.get $3 + i32.load + local.set $7 + local.get $3 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $11 - i32.wrap_i64 - local.set $3 block $block_3 block $block_4 local.get $2 @@ -9822,8 +9846,8 @@ i32.lt_u if $if_6 local.get $1 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 br_if $block_4 else @@ -9833,12 +9857,12 @@ i32.add i32.const -16 i32.and - local.tee $7 + local.tee $3 call $__Znwm local.tee $1 i32.store local.get $5 - local.get $7 + local.get $3 i32.const -2147483648 i32.or i32.store offset=24 @@ -9850,7 +9874,7 @@ br $block_3 end ;; $block_4 local.get $1 - local.get $3 + local.get $7 local.get $2 call $_memcpy drop @@ -9861,34 +9885,26 @@ i32.const 0 i32.store8 local.get $5 - i32.const 0 - i32.store offset=28 - local.get $4 - i64.load align=4 - local.tee $11 - i64.const 32 - i64.shr_u - local.tee $12 - i32.wrap_i64 - local.set $2 - local.get $5 i32.const 32 i32.add - local.tee $1 + local.set $1 + local.get $5 i64.const 0 - i64.store align=4 - local.get $1 - i32.const 0 - i32.store offset=8 - local.get $2 + i64.store offset=28 align=4 + local.get $5 + i64.const 0 + i64.store offset=36 align=4 + local.get $4 + i32.load + local.set $3 + local.get $4 + i32.load offset=4 + local.tee $2 i32.const -17 i32.gt_u if $if_7 call $_abort end ;; $if_7 - local.get $11 - i32.wrap_i64 - local.set $3 block $block_5 block $block_6 local.get $2 @@ -9896,8 +9912,8 @@ i32.lt_u if $if_8 local.get $1 - local.get $12 - i64.store8 offset=11 + local.get $2 + i32.store8 offset=11 local.get $2 br_if $block_6 else @@ -10083,14 +10099,14 @@ i32.ge_s if $if_15 local.get $6 - global.set $29 + global.set $30 return end ;; $if_15 local.get $8 i32.load call $_free local.get $6 - global.set $29 + global.set $30 ) (func $__ZN10MetricBaseD2Ev (type $8) @@ -10158,10 +10174,10 @@ i32.load offset=28 local.tee $3 if $if_5 - local.get $3 local.get $0 i32.load offset=32 local.tee $1 + local.get $3 i32.eq if $if_6 (result i32) local.get $3 @@ -10383,7 +10399,7 @@ end ;; $loop ) - (func $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE (type $16) + (func $__ZN10MetricBase17resolveWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -10391,16 +10407,15 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 - local.set $4 - global.get $29 + (local $6 i32) + (local $7 i32) + (local $8 i32) + global.get $30 + local.set $3 + global.get $30 i32.const 32 i32.add - global.set $29 - local.get $4 - i32.const 12 - i32.add - local.set $2 + global.set $30 local.get $1 i32.load offset=4 local.get $1 @@ -10417,51 +10432,22 @@ i32.shr_s i32.ne if $if - local.get $2 - i32.const 48 - call $__Znwm - local.tee $3 - i32.store - local.get $2 - i32.const -2147483600 - i32.store offset=8 - local.get $2 + i32.const 5 + i32.const 3251 i32.const 35 - i32.store offset=4 - local.get $3 - i32.const 2956 - i64.load align=1 - i64.store align=1 - local.get $3 - i32.const 2964 - i64.load align=1 - i64.store offset=8 align=1 - local.get $3 - i32.const 2972 - i64.load align=1 - i64.store offset=16 align=1 - local.get $3 - i32.const 2980 - i64.load align=1 - i64.store offset=24 align=1 - local.get $3 - i32.const 2988 - i32.load16_s align=1 - i32.store16 offset=32 align=1 - local.get $3 - i32.const 2990 - i32.load8_s - i32.store8 offset=34 - local.get $3 - i32.const 0 - i32.store8 offset=35 - local.get $2 - call $__Z8logErrorRKNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE - local.get $2 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + call $_proxy_log + drop call $_abort end ;; $if - local.get $4 + local.get $3 + i32.const 24 + i32.add + local.set $6 + local.get $3 + i32.const 12 + i32.add + local.set $2 + local.get $3 local.get $0 local.get $1 call $__ZN10MetricBase16prefixWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE @@ -10470,23 +10456,23 @@ i32.add local.tee $1 i32.load8_s offset=11 - local.tee $5 + local.tee $7 i32.const 0 i32.lt_s - local.set $3 + local.set $4 local.get $2 - local.get $4 + local.get $3 local.get $1 i32.load local.get $1 - local.get $3 + local.get $4 select local.get $0 i32.load offset=8 - local.get $5 + local.get $7 i32.const 255 i32.and - local.get $3 + local.get $4 select call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm local.tee $1 @@ -10505,18 +10491,18 @@ local.get $0 i32.const 40 i32.add - local.tee $3 + local.tee $1 local.get $2 call $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjEENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_ - local.tee $5 + local.tee $4 if $if_0 local.get $2 i32.const 11 i32.add - local.set $1 - local.get $5 + local.set $5 + local.get $4 i32.load offset=20 - local.set $0 + local.set $8 else local.get $0 i32.load @@ -10526,53 +10512,70 @@ local.get $2 i32.const 11 i32.add - local.tee $1 - i32.load8_s local.tee $0 + i32.load8_s + local.tee $4 i32.const 0 i32.lt_s - local.tee $5 + local.tee $7 select local.get $2 i32.load offset=4 - local.get $0 + local.get $4 i32.const 255 i32.and - local.get $5 + local.get $7 select + local.get $6 call $_proxy_defineMetric - local.set $0 - local.get $3 - local.get $2 - call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_jEEEEEixERSC_ - local.get $0 - i32.store + if $if_1 + i32.const 5 + i32.const 3287 + i32.const 33 + call $_proxy_log + drop + call $_abort + else + local.get $6 + i32.load + local.set $5 + local.get $1 + local.get $2 + call $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_jEEEEEixERSC_ + local.get $5 + i32.store + local.get $0 + local.set $5 + local.get $6 + i32.load + local.set $8 + end ;; $if_1 end ;; $if_0 - local.get $1 + local.get $5 i32.load8_s i32.const 0 i32.lt_s - if $if_1 + if $if_2 local.get $2 i32.load call $_free - end ;; $if_1 - local.get $4 + end ;; $if_2 + local.get $3 i32.load8_s offset=11 i32.const 0 i32.ge_s - if $if_2 - local.get $4 - global.set $29 - local.get $0 + if $if_3 + local.get $3 + global.set $30 + local.get $8 return - end ;; $if_2 - local.get $4 + end ;; $if_3 + local.get $3 i32.load call $_free - local.get $4 - global.set $29 - local.get $0 + local.get $3 + global.set $30 + local.get $8 ) (func $__ZN10MetricBase16prefixWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE (type $9) @@ -10862,7 +10865,7 @@ end ;; $loop_1 ) - (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_jEEEEEixERSC_ (type $16) + (func $__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjNS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_jEEEEEixERSC_ (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -11561,7 +11564,7 @@ i32.add ) - (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjEENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_ (type $16) + (func $__ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEjEENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_ (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -12557,12 +12560,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $1 i32.load offset=4 local.get $1 @@ -12579,48 +12582,11 @@ i32.shr_s i32.ge_u if $if - local.get $4 - i32.const 48 - call $__Znwm - local.tee $2 - i32.store - local.get $4 - i32.const -2147483600 - i32.store offset=8 - local.get $4 + i32.const 5 + i32.const 3361 i32.const 35 - i32.store offset=4 - local.get $2 - i32.const 3003 - i64.load align=1 - i64.store align=1 - local.get $2 - i32.const 3011 - i64.load align=1 - i64.store offset=8 align=1 - local.get $2 - i32.const 3019 - i64.load align=1 - i64.store offset=16 align=1 - local.get $2 - i32.const 3027 - i64.load align=1 - i64.store offset=24 align=1 - local.get $2 - i32.const 3035 - i32.load16_s align=1 - i32.store16 offset=32 align=1 - local.get $2 - i32.const 3037 - i32.load8_s - i32.store8 offset=34 - local.get $2 - i32.const 0 - i32.store8 offset=35 - local.get $4 - call $__Z8logErrorRKNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE - local.get $4 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev + call $_proxy_log + drop call $_abort end ;; $if local.get $4 @@ -12628,42 +12594,48 @@ local.get $1 call $__ZN10MetricBase16prefixWithFieldsERKNSt3__26vectorINS0_12basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS5_IS7_EEEE local.get $0 - i32.const 16 - i32.add - local.tee $2 - i32.load8_s offset=11 + i32.load8_s offset=27 i32.const 0 i32.lt_s if $if_0 - local.get $2 - i32.load + local.get $0 + i32.load offset=16 i32.const 0 i32.store8 local.get $0 i32.const 0 i32.store offset=20 + local.get $0 + i32.load8_s offset=27 + i32.const 0 + i32.lt_s + if $if_1 + local.get $0 + i32.load offset=16 + call $_free + local.get $0 + i32.const 0 + i32.store offset=24 + end ;; $if_1 else - local.get $2 + local.get $0 i32.const 0 - i32.store8 - local.get $2 + i32.store8 offset=16 + local.get $0 i32.const 0 - i32.store8 offset=11 + i32.store8 offset=27 end ;; $if_0 - local.get $2 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm - local.get $2 + local.get $0 local.get $4 i64.load align=4 - i64.store align=4 - local.get $2 + i64.store offset=16 align=4 + local.get $0 local.get $4 i32.load offset=8 - i32.store offset=8 + i32.store offset=24 local.get $0 i32.load offset=28 - local.set $2 + local.set $3 local.get $1 i32.load offset=4 local.get $1 @@ -12672,33 +12644,33 @@ local.tee $1 i32.const 12 i32.div_s - local.set $3 + local.set $2 local.get $1 i32.eqz - if $if_1 + if $if_2 local.get $4 - global.set $29 + global.set $30 return - end ;; $if_1 + end ;; $if_2 local.get $0 i32.load offset=32 local.tee $5 - local.get $3 + local.get $2 i32.const 4 i32.shl - local.get $2 + local.get $3 i32.add - local.tee $3 + local.tee $2 i32.ne - if $if_2 - local.get $2 + if $if_3 + local.get $3 local.set $1 loop $loop local.get $1 i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_3 + if $if_4 local.get $1 i32.load i32.const 0 @@ -12706,6 +12678,18 @@ local.get $1 i32.const 0 i32.store offset=4 + local.get $1 + i32.load8_s offset=11 + i32.const 0 + i32.lt_s + if $if_5 + local.get $1 + i32.load + call $_free + local.get $1 + i32.const 0 + i32.store offset=8 + end ;; $if_5 else local.get $1 i32.const 0 @@ -12713,51 +12697,48 @@ local.get $1 i32.const 0 i32.store8 offset=11 - end ;; $if_3 - local.get $1 - i32.const 0 - call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm + end ;; $if_4 local.get $1 - local.get $3 + local.get $2 i64.load align=4 i64.store align=4 local.get $1 - local.get $3 + local.get $2 i32.load offset=8 i32.store offset=8 - local.get $3 + local.get $2 i64.const 0 i64.store align=4 - local.get $3 + local.get $2 i32.const 0 i32.store offset=8 local.get $1 - local.get $3 + local.get $2 i32.load offset=12 i32.store offset=12 local.get $1 i32.const 16 i32.add local.set $1 - local.get $3 + local.get $2 i32.const 16 i32.add - local.tee $3 + local.tee $2 local.get $5 i32.ne br_if $loop end ;; $loop local.get $0 i32.load offset=32 - local.set $3 - local.get $1 local.set $2 - end ;; $if_2 + local.get $1 + local.set $3 + end ;; $if_3 local.get $2 local.get $3 i32.ne - if $if_4 - local.get $3 + if $if_6 + local.get $2 local.set $1 loop $loop_0 local.get $1 @@ -12767,22 +12748,22 @@ i32.load8_s offset=11 i32.const 0 i32.lt_s - if $if_5 + if $if_7 local.get $1 i32.load call $_free - end ;; $if_5 + end ;; $if_7 local.get $1 - local.get $2 + local.get $3 i32.ne br_if $loop_0 end ;; $loop_0 - end ;; $if_4 + end ;; $if_6 local.get $0 - local.get $2 + local.get $3 i32.store offset=32 local.get $4 - global.set $29 + global.set $30 ) (func $__ZN10MetricBaseC2ERKS_ (type $2) @@ -13575,12 +13556,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 24 i32.add @@ -13673,7 +13654,7 @@ i32.eqz if $if local.get $3 - global.set $29 + global.set $30 return end ;; $if local.get $1 @@ -13712,7 +13693,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 ) (func $__ZN5GaugeIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEC2ERKS6_NS0_6vectorI9MetricTagNS4_ISB_EEEE (type $9) @@ -13722,12 +13703,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 24 i32.add @@ -13820,7 +13801,7 @@ i32.eqz if $if local.get $3 - global.set $29 + global.set $30 return end ;; $if local.get $1 @@ -13859,7 +13840,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 ) (func $__ZN9HistogramIJiNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEEC2ERKS6_NS0_6vectorI9MetricTagNS4_ISB_EEEE (type $9) @@ -13869,12 +13850,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 32 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 24 i32.add @@ -13967,7 +13948,7 @@ i32.eqz if $if local.get $3 - global.set $29 + global.set $30 return end ;; $if local.get $1 @@ -14006,7 +13987,7 @@ local.get $0 call $_free local.get $3 - global.set $29 + global.set $30 ) (func $__ZN7CounterIJNSt3__212basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEE3NewENS0_17basic_string_viewIcS3_EE19MetricTagDescriptorIS6_ESA_IbE (type $0) @@ -14021,14 +14002,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - (local $10 i64) - (local $11 i64) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $4 i32.const 48 i32.add @@ -14040,29 +14019,23 @@ i32.const 84 call $__Znwm local.set $7 - local.get $0 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $6 local.get $5 i64.const 0 i64.store align=4 local.get $5 i32.const 0 i32.store offset=8 - local.get $6 + local.get $0 + i32.load + local.set $8 + local.get $0 + i32.load offset=4 + local.tee $6 i32.const -17 i32.gt_u if $if call $_abort end ;; $if - local.get $10 - i32.wrap_i64 - local.set $8 block $block block $block_0 local.get $6 @@ -14070,8 +14043,8 @@ i32.lt_u if $if_0 (result i32) local.get $5 - local.get $11 - i64.store8 offset=11 + local.get $6 + i32.store8 offset=11 local.get $6 if $if_1 (result i32) local.get $5 @@ -14115,14 +14088,6 @@ i32.add i32.const 0 i32.store8 - local.get $1 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $1 local.get $3 i64.const 0 i64.store align=4 @@ -14130,14 +14095,16 @@ i32.const 0 i32.store offset=8 local.get $1 + i32.load + local.set $6 + local.get $1 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_2 call $_abort end ;; $if_2 - local.get $10 - i32.wrap_i64 - local.set $6 block $block_1 block $block_2 local.get $1 @@ -14145,8 +14112,8 @@ i32.lt_u if $if_3 (result i32) local.get $3 - local.get $11 - i64.store8 offset=11 + local.get $1 + i32.store8 offset=11 local.get $1 if $if_4 (result i32) local.get $3 @@ -14191,43 +14158,35 @@ i32.const 0 i32.store8 local.get $3 - i32.const 0 - i32.store offset=12 - local.get $2 - i64.load align=4 - local.tee $10 - i64.const 32 - i64.shr_u - local.tee $11 - i32.wrap_i64 - local.set $1 - local.get $3 i32.const 16 i32.add - local.tee $0 + local.set $0 + local.get $3 i64.const 0 - i64.store align=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $1 + i64.store offset=12 align=4 + local.get $3 + i64.const 0 + i64.store offset=20 align=4 + local.get $2 + i32.load + local.set $6 + local.get $2 + i32.load offset=4 + local.tee $1 i32.const -17 i32.gt_u if $if_5 call $_abort end ;; $if_5 - local.get $10 - i32.wrap_i64 - local.set $2 block $block_3 block $block_4 local.get $1 i32.const 11 i32.lt_u if $if_6 - local.get $0 - local.get $11 - i64.store8 offset=11 + local.get $0 + local.get $1 + i32.store8 offset=11 local.get $1 br_if $block_4 else @@ -14237,12 +14196,12 @@ i32.add i32.const -16 i32.and - local.tee $6 + local.tee $2 call $__Znwm local.tee $0 i32.store local.get $3 - local.get $6 + local.get $2 i32.const -2147483648 i32.or i32.store offset=24 @@ -14254,7 +14213,7 @@ br $block_3 end ;; $block_4 local.get $0 - local.get $2 + local.get $6 local.get $1 call $_memcpy drop @@ -14387,7 +14346,7 @@ i32.ge_s if $if_12 local.get $4 - global.set $29 + global.set $30 local.get $7 return end ;; $if_12 @@ -14395,27 +14354,27 @@ i32.load call $_free local.get $4 - global.set $29 + global.set $30 local.get $7 ) (func $__GLOBAL__sub_I_status_cc (type $3) (local $0 i32) (local $1 i32) - global.get $29 + global.get $30 local.set $0 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 - i32.const 3344 + global.set $30 + i32.const 3696 i64.const 0 i64.store align=4 - i32.const 3352 + i32.const 3704 i64.const 0 i64.store align=4 local.get $0 - i32.const 3960 + i32.const 4308 i32.store local.get $0 i32.const 0 @@ -14427,12 +14386,12 @@ local.get $0 i64.load align=4 i64.store align=4 - i32.const 3360 + i32.const 3712 i32.const 1 local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - i32.const 3960 + i32.const 4308 i32.store local.get $0 i32.const 0 @@ -14441,12 +14400,12 @@ local.get $0 i64.load align=4 i64.store align=4 - i32.const 3376 + i32.const 3728 i32.const 2 local.get $1 call $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE local.get $0 - global.set $29 + global.set $30 ) (func $__ZN6google8protobuf4util6StatusC2ENS1_5error4CodeENS0_11StringPieceE (type $9) @@ -14458,12 +14417,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $0 local.get $1 i32.store @@ -14480,7 +14439,7 @@ i32.eqz if $if local.get $5 - global.set $29 + global.set $30 return end ;; $if local.get $5 @@ -14612,12 +14571,93 @@ i32.load offset=8 i32.store offset=8 local.get $5 - global.set $29 + global.set $30 ) (func $___errno_location (type $10) (result i32) - i32.const 3456 + i32.const 3808 + ) + + (func $_strlen (type $7) + (param $0 i32) + (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + block $block + block $block_0 + local.get $0 + local.tee $2 + i32.const 3 + i32.and + i32.eqz + br_if $block_0 + local.get $2 + local.set $1 + loop $loop + block $block_1 + local.get $0 + i32.load8_s + i32.eqz + if $if + local.get $1 + local.set $0 + br $block_1 + end ;; $if + local.get $0 + i32.const 1 + i32.add + local.tee $0 + local.tee $1 + i32.const 3 + i32.and + br_if $loop + br $block_0 + end ;; $block_1 + end ;; $loop + br $block + end ;; $block_0 + loop $loop_0 + local.get $0 + i32.const 4 + i32.add + local.set $1 + local.get $0 + i32.load + local.tee $3 + i32.const -2139062144 + i32.and + i32.const -2139062144 + i32.xor + local.get $3 + i32.const -16843009 + i32.add + i32.and + i32.eqz + if $if_0 + local.get $1 + local.set $0 + br $loop_0 + end ;; $if_0 + end ;; $loop_0 + local.get $3 + i32.const 255 + i32.and + if $if_1 + loop $loop_1 + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + br_if $loop_1 + end ;; $loop_1 + end ;; $if_1 + end ;; $block + local.get $0 + local.get $2 + i32.sub ) (func $_memcmp (type $0) @@ -14671,7 +14711,134 @@ end ;; $if ) - (func $_memchr (type $16) + (func $_frexp (type $18) + (param $0 f64) + (param $1 i32) + (result f64) + (local $2 i32) + (local $3 i64) + (local $4 i64) + block $block + block $block_0 + local.get $0 + i64.reinterpret_f64 + local.tee $3 + i64.const 52 + i64.shr_u + local.tee $4 + i32.wrap_i64 + i32.const 2047 + i32.and + local.tee $2 + if $if + local.get $2 + i32.const 2047 + i32.eq + if $if_0 + br $block + else + br $block_0 + end ;; $if_0 + unreachable + end ;; $if + local.get $1 + local.get $0 + f64.const 0x0.0000000000000p-1023 + f64.ne + if $if_1 (result i32) + local.get $0 + f64.const 0x1.0000000000000p+64 + f64.mul + local.get $1 + call $_frexp + local.set $0 + local.get $1 + i32.load + i32.const -64 + i32.add + else + i32.const 0 + end ;; $if_1 + i32.store + br $block + end ;; $block_0 + local.get $1 + local.get $4 + i32.wrap_i64 + i32.const 2047 + i32.and + i32.const -1022 + i32.add + i32.store + local.get $3 + i64.const -9218868437227405313 + i64.and + i64.const 4602678819172646912 + i64.or + f64.reinterpret_i64 + local.set $0 + end ;; $block + local.get $0 + ) + + (func $_strcmp (type $12) + (param $0 i32) + (param $1 i32) + (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if (result i32) + local.get $2 + local.set $1 + local.get $3 + else + loop $loop (result i32) + local.get $0 + i32.const 1 + i32.add + local.tee $0 + i32.load8_s + local.tee $2 + local.get $1 + i32.const 1 + i32.add + local.tee $1 + i32.load8_s + local.tee $3 + i32.ne + local.get $2 + i32.eqz + i32.or + if $if_0 (result i32) + local.get $2 + local.set $1 + local.get $3 + else + br $loop + end ;; $if_0 + end ;; $loop + end ;; $if + local.set $0 + local.get $1 + i32.const 255 + i32.and + local.get $0 + i32.const 255 + i32.and + i32.sub + ) + + (func $_memchr (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -14793,7 +14960,34 @@ local.get $0 ) - (func $_vsnprintf (type $13) + (func $_snprintf (type $11) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (param $3 i32) + (result i32) + (local $4 i32) + global.get $30 + local.set $4 + global.get $30 + i32.const 16 + i32.add + global.set $30 + local.get $4 + local.get $3 + i32.store + local.get $0 + local.get $1 + local.get $2 + local.get $4 + call $_vsnprintf + local.set $0 + local.get $4 + global.set $30 + local.get $0 + ) + + (func $_vsnprintf (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -14801,12 +14995,12 @@ (result i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $4 - global.get $29 + global.get $30 i32.const 160 i32.add - global.set $29 + global.set $30 local.get $4 i32.const 144 i32.add @@ -14826,7 +15020,7 @@ br_if $block_0 local.get $1 if $if (result i32) - i32.const 3456 + i32.const 3808 i32.const 75 i32.store i32.const -1 @@ -14891,7 +15085,7 @@ end ;; $if_0 end ;; $block local.get $4 - global.set $29 + global.set $30 local.get $0 ) @@ -14926,12 +15120,12 @@ (local $26 i64) (local $27 i64) (local $28 f64) - global.get $29 + global.get $30 local.set $21 - global.get $29 + global.get $30 i32.const 560 i32.add - global.set $29 + global.set $30 local.get $21 i32.const 32 i32.add @@ -14963,13 +15157,13 @@ local.tee $1 i64.reinterpret_f64 local.set $25 - i32.const 3056 + i32.const 3414 local.set $18 i32.const 1 else - i32.const 3059 - i32.const 3062 - i32.const 3057 + i32.const 3417 + i32.const 3420 + i32.const 3415 local.get $4 i32.const 1 i32.and @@ -14992,8 +15186,8 @@ i64.const 9218868437227405312 i64.eq if $if_0 (result i32) - i32.const 3083 - i32.const 3087 + i32.const 3441 + i32.const 3445 local.get $5 i32.const 32 i32.and @@ -15001,8 +15195,8 @@ i32.ne local.tee $3 select - i32.const 3075 - i32.const 3079 + i32.const 3433 + i32.const 3437 local.get $3 select local.get $1 @@ -15020,15 +15214,15 @@ local.get $4 i32.const -65537 i32.and - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 local.get $5 i32.const 3 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -15036,7 +15230,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 else block $block (result i32) @@ -15294,11 +15488,11 @@ i32.add local.tee $3 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $8 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -15306,14 +15500,14 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 local.get $12 local.get $5 local.get $17 i32.sub local.tee $5 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $10 @@ -15326,11 +15520,11 @@ i32.sub i32.const 0 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $7 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $2 @@ -15338,7 +15532,7 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $3 br $block end ;; $if_2 @@ -16245,11 +16439,11 @@ i32.add local.tee $14 local.get $4 - call $_pad_285 + call $_pad_524 local.get $0 local.get $18 local.get $19 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $2 @@ -16257,7 +16451,7 @@ local.get $4 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $15 if $if_49 local.get $12 @@ -16326,7 +16520,7 @@ local.get $16 local.get $5 i32.sub - call $_out_279 + call $_out local.get $6 i32.const 4 i32.add @@ -16350,9 +16544,9 @@ i32.eqz if $if_54 local.get $0 - i32.const 3091 + i32.const 3449 i32.const 1 - call $_out_279 + call $_out end ;; $if_54 local.get $0 i32.const 48 @@ -16399,7 +16593,7 @@ i32.const 9 i32.lt_s select - call $_out_279 + call $_out local.get $3 i32.const -9 i32.add @@ -16429,7 +16623,7 @@ i32.add i32.const 9 i32.const 0 - call $_pad_285 + call $_pad_524 else local.get $0 i32.const 48 @@ -16497,7 +16691,7 @@ local.get $0 local.get $3 i32.const 1 - call $_out_279 + call $_out local.get $5 i32.const 1 i32.lt_s @@ -16509,9 +16703,9 @@ br $block_4 end ;; $if_61 local.get $0 - i32.const 3091 + i32.const 3449 i32.const 1 - call $_out_279 + call $_out local.get $6 local.set $3 else @@ -16548,7 +16742,7 @@ local.get $3 i32.gt_s select - call $_out_279 + call $_out local.get $7 i32.const 4 i32.add @@ -16572,13 +16766,13 @@ i32.add i32.const 18 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $9 local.get $16 local.get $9 i32.sub - call $_out_279 + call $_out end ;; $if_49 local.get $0 i32.const 32 @@ -16587,13 +16781,13 @@ local.get $4 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $14 end ;; $block end ;; $if_0 local.set $0 local.get $21 - global.set $29 + global.set $30 local.get $2 local.get $0 local.get $0 @@ -16636,12 +16830,12 @@ (local $5 i32) (local $6 i32) (local $7 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 224 i32.add - global.set $29 + global.set $30 local.get $3 i32.const 160 i32.add @@ -16754,7 +16948,7 @@ i32.and i32.const 4 i32.add - call_indirect $25 (type $0) + call_indirect $26 (type $0) drop local.get $1 i32.const -1 @@ -16797,11 +16991,11 @@ end ;; $if local.set $0 local.get $3 - global.set $29 + global.set $30 local.get $0 ) - (func $_printf_core (type $18) + (func $_printf_core (type $19) (param $0 i32) (param $1 i32) (param $2 i32) @@ -16829,12 +17023,12 @@ (local $23 i32) (local $24 i32) (local $25 i64) - global.get $29 + global.get $30 local.set $15 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $15 i32.const 40 i32.add @@ -16883,7 +17077,7 @@ i32.sub i32.gt_s if $if_0 (result i32) - i32.const 3456 + i32.const 3808 i32.const 75 i32.store i32.const -1 @@ -16973,7 +17167,7 @@ local.get $0 local.get $12 local.get $1 - call $_out_279 + call $_out end ;; $if_2 local.get $1 br_if $loop_0 @@ -17186,7 +17380,7 @@ local.get $8 else local.get $11 - call $_getint_280 + call $_getint local.tee $16 i32.const 0 i32.lt_s @@ -17222,7 +17416,7 @@ local.get $5 i32.store local.get $11 - call $_getint_280 + call $_getint local.set $1 local.get $11 i32.load @@ -17410,7 +17604,7 @@ local.get $10 local.get $8 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $11 i32.load local.set $6 @@ -17597,7 +17791,7 @@ local.set $1 i32.const 0 local.set $12 - i32.const 3039 + i32.const 3397 local.set $8 br $block_14 end ;; $block_25 @@ -17613,13 +17807,13 @@ i64.sub local.tee $25 i64.store - i32.const 3039 + i32.const 3397 local.set $8 i32.const 1 else - i32.const 3040 - i32.const 3041 - i32.const 3039 + i32.const 3398 + i32.const 3399 + i32.const 3397 local.get $7 i32.const 1 i32.and @@ -17643,7 +17837,7 @@ local.set $25 i32.const 0 local.set $12 - i32.const 3039 + i32.const 3397 local.set $8 br $block_16 end ;; $block_23 @@ -17659,7 +17853,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 3039 + i32.const 3397 local.set $8 local.get $18 local.set $1 @@ -17668,7 +17862,7 @@ local.get $10 i32.load local.tee $5 - i32.const 3049 + i32.const 3407 local.get $5 select local.tee $6 @@ -17688,7 +17882,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 3039 + i32.const 3397 local.set $8 local.get $1 local.get $6 @@ -17724,7 +17918,7 @@ local.get $16 i32.const 0 local.get $7 - call $_pad_285 + call $_pad_524 i32.const 0 local.set $1 br $block_13 @@ -17739,7 +17933,7 @@ local.get $7 local.get $6 i32.const 3 - call_indirect $25 (type $1) + call_indirect $26 (type $1) local.set $1 br $block_9 end ;; $block_18 @@ -17749,7 +17943,7 @@ local.set $5 i32.const 0 local.set $12 - i32.const 3039 + i32.const 3397 local.set $8 local.get $18 local.set $1 @@ -17777,11 +17971,11 @@ local.tee $8 select local.set $12 - i32.const 3039 + i32.const 3397 local.get $6 i32.const 4 i32.shr_u - i32.const 3039 + i32.const 3397 i32.add local.get $8 select @@ -17847,7 +18041,7 @@ local.get $16 local.get $1 local.get $7 - call $_pad_285 + call $_pad_524 local.get $1 if $if_28 i32.const 0 @@ -17878,7 +18072,7 @@ local.get $0 local.get $20 local.get $5 - call $_out_279 + call $_out local.get $12 local.get $1 i32.lt_u @@ -17941,7 +18135,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 local.get $16 local.get $1 local.get $16 @@ -17974,11 +18168,11 @@ local.tee $1 local.get $5 local.get $7 - call $_pad_285 + call $_pad_524 local.get $0 local.get $8 local.get $12 - call $_out_279 + call $_out local.get $0 i32.const 48 local.get $1 @@ -17986,17 +18180,17 @@ local.get $7 i32.const 65536 i32.xor - call $_pad_285 + call $_pad_524 local.get $0 i32.const 48 local.get $14 local.get $13 i32.const 0 - call $_pad_285 + call $_pad_524 local.get $0 local.get $6 local.get $13 - call $_out_279 + call $_out local.get $0 i32.const 32 local.get $1 @@ -18004,7 +18198,7 @@ local.get $7 i32.const 8192 i32.xor - call $_pad_285 + call $_pad_524 end ;; $block_9 local.get $22 local.set $7 @@ -18036,7 +18230,7 @@ i32.add local.get $1 local.get $2 - call $_pop_arg_282 + call $_pop_arg local.get $0 i32.const 1 i32.add @@ -18077,11 +18271,11 @@ end ;; $if_29 end ;; $block local.get $15 - global.set $29 + global.set $30 local.get $9 ) - (func $_out_279 (type $9) + (func $_out (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -18098,7 +18292,7 @@ end ;; $if ) - (func $_getint_280 (type $7) + (func $_getint (type $7) (param $0 i32) (result i32) (local $1 i32) @@ -18140,7 +18334,7 @@ local.get $2 ) - (func $_pop_arg_282 (type $9) + (func $_pop_arg (type $9) (param $0 i32) (param $1 i32) (param $2 i32) @@ -18365,12 +18559,12 @@ local.get $0 local.get $2 i32.const 26 - call_indirect $25 (type $2) + call_indirect $26 (type $2) end ;; $block end ;; $if ) - (func $_fmt_x (type $19) + (func $_fmt_x (type $20) (param $0 i64) (param $1 i32) (param $2 i32) @@ -18406,7 +18600,7 @@ local.get $1 ) - (func $_fmt_o (type $20) + (func $_fmt_o (type $21) (param $0 i64) (param $1 i32) (result i32) @@ -18438,7 +18632,7 @@ local.get $1 ) - (func $_fmt_u (type $20) + (func $_fmt_u (type $21) (param $0 i64) (param $1 i32) (result i32) @@ -18511,19 +18705,19 @@ local.get $1 ) - (func $_pad_285 (type $6) + (func $_pad_524 (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 256 i32.add - global.set $29 + global.set $30 local.get $4 i32.const 73728 i32.and @@ -18562,7 +18756,7 @@ local.get $0 local.get $5 i32.const 256 - call $_out_279 + call $_out local.get $1 i32.const -256 i32.add @@ -18579,13 +18773,13 @@ local.get $0 local.get $5 local.get $1 - call $_out_279 + call $_out end ;; $if local.get $5 - global.set $29 + global.set $30 ) - (func $_wctomb (type $16) + (func $_wctomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -18599,7 +18793,7 @@ end ;; $if ) - (func $_wcrtomb (type $16) + (func $_wcrtomb (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -18633,7 +18827,7 @@ i32.const 1 br $block else - i32.const 3456 + i32.const 3808 i32.const 84 i32.store i32.const -1 @@ -18738,7 +18932,7 @@ i32.store8 offset=3 i32.const 4 else - i32.const 3456 + i32.const 3808 i32.const 84 i32.store i32.const -1 @@ -18790,7 +18984,7 @@ i32.and i32.const 4 i32.add - call_indirect $25 (type $0) + call_indirect $26 (type $0) drop br $block end ;; $if_0 @@ -18837,7 +19031,7 @@ i32.and i32.const 4 i32.add - call_indirect $25 (type $0) + call_indirect $26 (type $0) local.get $3 i32.lt_u br_if $block @@ -18850,284 +19044,106 @@ local.set $1 local.get $0 local.get $3 - i32.add - local.set $0 - end ;; $block_1 - end ;; $if_1 - local.get $4 - local.get $0 - local.get $1 - call $_memcpy - drop - local.get $2 - local.get $2 - i32.load offset=20 - local.get $1 - i32.add - i32.store offset=20 - end ;; $block - ) - - (func $___towrite (type $7) - (param $0 i32) - (result i32) - (local $1 i32) - local.get $0 - local.get $0 - i32.load8_s offset=74 - local.tee $1 - local.get $1 - i32.const 255 - i32.add - i32.or - i32.store8 offset=74 - local.get $0 - i32.load - local.tee $1 - i32.const 8 - i32.and - if $if (result i32) - local.get $0 - local.get $1 - i32.const 32 - i32.or - i32.store - i32.const -1 - else - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - local.get $0 - i32.load offset=44 - local.tee $1 - i32.store offset=28 - local.get $0 - local.get $1 - i32.store offset=20 - local.get $0 - local.get $1 - local.get $0 - i32.load offset=48 - i32.add - i32.store offset=16 - i32.const 0 - end ;; $if - ) - - (func $_frexp (type $21) - (param $0 f64) - (param $1 i32) - (result f64) - (local $2 i32) - (local $3 i64) - (local $4 i64) - block $block - block $block_0 - local.get $0 - i64.reinterpret_f64 - local.tee $3 - i64.const 52 - i64.shr_u - local.tee $4 - i32.wrap_i64 - i32.const 2047 - i32.and - local.tee $2 - if $if - local.get $2 - i32.const 2047 - i32.eq - if $if_0 - br $block - else - br $block_0 - end ;; $if_0 - unreachable - end ;; $if - local.get $1 - local.get $0 - f64.const 0x0.0000000000000p-1023 - f64.ne - if $if_1 (result i32) - local.get $0 - f64.const 0x1.0000000000000p+64 - f64.mul - local.get $1 - call $_frexp - local.set $0 - local.get $1 - i32.load - i32.const -64 - i32.add - else - i32.const 0 - end ;; $if_1 - i32.store - br $block - end ;; $block_0 - local.get $1 - local.get $4 - i32.wrap_i64 - i32.const 2047 - i32.and - i32.const -1022 - i32.add - i32.store - local.get $3 - i64.const -9218868437227405313 - i64.and - i64.const 4602678819172646912 - i64.or - f64.reinterpret_i64 - local.set $0 - end ;; $block - local.get $0 - ) - - (func $_sn_write (type $0) - (param $0 i32) - (param $1 i32) - (param $2 i32) - (result i32) - (local $3 i32) - (local $4 i32) - local.get $2 - local.get $0 - i32.load offset=16 - local.get $0 - i32.load offset=20 - local.tee $4 - i32.sub - local.tee $3 - local.get $3 - local.get $2 - i32.gt_u - select - local.set $3 - local.get $4 - local.get $1 - local.get $3 - call $_memcpy - drop - local.get $0 - local.get $0 - i32.load offset=20 - local.get $3 - i32.add - i32.store offset=20 - local.get $2 - ) - - (func $_strlen (type $7) - (param $0 i32) - (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - block $block - block $block_0 - local.get $0 - local.tee $2 - i32.const 3 - i32.and - i32.eqz - br_if $block_0 - local.get $2 - local.set $1 - loop $loop - block $block_1 - local.get $0 - i32.load8_s - i32.eqz - if $if - local.get $1 - local.set $0 - br $block_1 - end ;; $if - local.get $0 - i32.const 1 - i32.add - local.tee $0 - local.tee $1 - i32.const 3 - i32.and - br_if $loop - br $block_0 - end ;; $block_1 - end ;; $loop - br $block - end ;; $block_0 - loop $loop_0 - local.get $0 - i32.const 4 - i32.add - local.set $1 - local.get $0 - i32.load - local.tee $3 - i32.const -2139062144 - i32.and - i32.const -2139062144 - i32.xor - local.get $3 - i32.const -16843009 - i32.add - i32.and - i32.eqz - if $if_0 - local.get $1 - local.set $0 - br $loop_0 - end ;; $if_0 - end ;; $loop_0 - local.get $3 - i32.const 255 - i32.and - if $if_1 - loop $loop_1 - local.get $0 - i32.const 1 - i32.add - local.tee $0 - i32.load8_s - br_if $loop_1 - end ;; $loop_1 + i32.add + local.set $0 + end ;; $block_1 end ;; $if_1 + local.get $4 + local.get $0 + local.get $1 + call $_memcpy + drop + local.get $2 + local.get $2 + i32.load offset=20 + local.get $1 + i32.add + i32.store offset=20 end ;; $block + ) + + (func $___towrite (type $7) + (param $0 i32) + (result i32) + (local $1 i32) local.get $0 - local.get $2 - i32.sub + local.get $0 + i32.load8_s offset=74 + local.tee $1 + local.get $1 + i32.const 255 + i32.add + i32.or + i32.store8 offset=74 + local.get $0 + i32.load + local.tee $1 + i32.const 8 + i32.and + if $if (result i32) + local.get $0 + local.get $1 + i32.const 32 + i32.or + i32.store + i32.const -1 + else + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + local.get $0 + i32.load offset=44 + local.tee $1 + i32.store offset=28 + local.get $0 + local.get $1 + i32.store offset=20 + local.get $0 + local.get $1 + local.get $0 + i32.load offset=48 + i32.add + i32.store offset=16 + i32.const 0 + end ;; $if ) - (func $_snprintf (type $13) + (func $_sn_write (type $0) (param $0 i32) (param $1 i32) (param $2 i32) - (param $3 i32) (result i32) + (local $3 i32) (local $4 i32) - global.get $29 - local.set $4 - global.get $29 - i32.const 16 - i32.add - global.set $29 - local.get $4 - local.get $3 - i32.store + local.get $2 local.get $0 - local.get $1 + i32.load offset=16 + local.get $0 + i32.load offset=20 + local.tee $4 + i32.sub + local.tee $3 + local.get $3 local.get $2 + i32.gt_u + select + local.set $3 local.get $4 - call $_vsnprintf - local.set $0 - local.get $4 - global.set $29 + local.get $1 + local.get $3 + call $_memcpy + drop + local.get $0 local.get $0 + i32.load offset=20 + local.get $3 + i32.add + i32.store offset=20 + local.get $2 ) (func $_malloc (type $7) @@ -19155,17 +19171,17 @@ (local $20 i32) (local $21 i32) (local $22 i32) - global.get $29 + global.get $30 local.set $17 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $0 i32.const 245 i32.lt_u if $if (result i32) - i32.const 3460 + i32.const 3812 i32.load local.tee $6 i32.const 16 @@ -19197,7 +19213,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.tee $3 i32.load offset=8 @@ -19210,7 +19226,7 @@ local.get $3 i32.eq if $if_1 - i32.const 3460 + i32.const 3812 local.get $6 i32.const 1 local.get $0 @@ -19220,7 +19236,7 @@ i32.and i32.store else - i32.const 3476 + i32.const 3828 i32.load local.get $4 i32.gt_u @@ -19260,12 +19276,12 @@ i32.or i32.store offset=4 local.get $17 - global.set $29 + global.set $30 local.get $1 return end ;; $if_0 local.get $14 - i32.const 3468 + i32.const 3820 i32.load local.tee $13 i32.gt_u @@ -19344,7 +19360,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.tee $1 i32.load offset=8 @@ -19357,7 +19373,7 @@ local.get $1 i32.eq if $if_6 - i32.const 3460 + i32.const 3812 local.get $6 i32.const 1 local.get $0 @@ -19368,7 +19384,7 @@ local.tee $8 i32.store else - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.gt_u @@ -19418,7 +19434,7 @@ i32.store local.get $13 if $if_9 - i32.const 3480 + i32.const 3832 i32.load local.set $10 local.get $13 @@ -19427,7 +19443,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $2 local.get $8 @@ -19437,7 +19453,7 @@ local.tee $0 i32.and if $if_10 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.const 8 @@ -19455,7 +19471,7 @@ local.set $4 end ;; $if_11 else - i32.const 3460 + i32.const 3812 local.get $0 local.get $8 i32.or @@ -19480,18 +19496,18 @@ local.get $2 i32.store offset=12 end ;; $if_9 - i32.const 3468 + i32.const 3820 local.get $6 i32.store - i32.const 3480 + i32.const 3832 local.get $3 i32.store local.get $17 - global.set $29 + global.set $30 local.get $9 return end ;; $if_5 - i32.const 3464 + i32.const 3816 i32.load local.tee $11 if $if_12 (result i32) @@ -19554,7 +19570,7 @@ i32.add i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add i32.load local.tee $0 @@ -19604,7 +19620,7 @@ br $loop end ;; $block end ;; $loop - i32.const 3476 + i32.const 3828 i32.load local.tee $7 local.get $9 @@ -19728,7 +19744,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.tee $0 i32.load @@ -19741,7 +19757,7 @@ local.get $3 i32.eqz if $if_25 - i32.const 3464 + i32.const 3816 local.get $11 i32.const 1 local.get $1 @@ -19753,7 +19769,7 @@ br $block_2 end ;; $if_25 else - i32.const 3476 + i32.const 3828 i32.load local.get $18 i32.gt_u @@ -19778,7 +19794,7 @@ br_if $block_2 end ;; $if_26 end ;; $if_24 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $3 @@ -19811,7 +19827,7 @@ i32.load offset=20 local.tee $0 if $if_30 - i32.const 3476 + i32.const 3828 i32.load local.get $0 i32.gt_u @@ -19867,7 +19883,7 @@ i32.store local.get $13 if $if_33 - i32.const 3480 + i32.const 3832 i32.load local.set $4 local.get $13 @@ -19876,7 +19892,7 @@ local.tee $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $3 local.get $6 @@ -19886,7 +19902,7 @@ local.tee $0 i32.and if $if_34 - i32.const 3476 + i32.const 3828 i32.load local.get $3 i32.const 8 @@ -19904,7 +19920,7 @@ local.set $12 end ;; $if_35 else - i32.const 3460 + i32.const 3812 local.get $0 local.get $6 i32.or @@ -19929,15 +19945,15 @@ local.get $3 i32.store offset=12 end ;; $if_33 - i32.const 3468 + i32.const 3820 local.get $10 i32.store - i32.const 3480 + i32.const 3832 local.get $5 i32.store end ;; $if_32 local.get $17 - global.set $29 + global.set $30 local.get $9 i32.const 8 i32.add @@ -19963,7 +19979,7 @@ i32.const -8 i32.and local.set $15 - i32.const 3464 + i32.const 3816 i32.load local.tee $4 if $if_37 (result i32) @@ -20043,7 +20059,7 @@ local.tee $19 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add i32.load local.tee $0 @@ -20208,7 +20224,7 @@ i32.add i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add i32.load local.set $0 @@ -20271,13 +20287,13 @@ local.get $2 if $if_47 (result i32) local.get $7 - i32.const 3468 + i32.const 3820 i32.load local.get $15 i32.sub i32.lt_u if $if_48 (result i32) - i32.const 3476 + i32.const 3828 i32.load local.tee $12 local.get $2 @@ -20401,7 +20417,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.tee $0 i32.load @@ -20414,7 +20430,7 @@ local.get $13 i32.eqz if $if_60 - i32.const 3464 + i32.const 3816 local.get $4 i32.const 1 local.get $3 @@ -20427,7 +20443,7 @@ br $block_9 end ;; $if_60 else - i32.const 3476 + i32.const 3828 i32.load local.get $8 i32.gt_u @@ -20456,7 +20472,7 @@ end ;; $if_62 end ;; $if_61 end ;; $if_59 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $13 @@ -20489,7 +20505,7 @@ i32.load offset=20 local.tee $0 if $if_66 - i32.const 3476 + i32.const 3828 i32.load local.get $0 i32.gt_u @@ -20563,10 +20579,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $3 - i32.const 3460 + i32.const 3812 i32.load local.tee $1 i32.const 1 @@ -20575,7 +20591,7 @@ local.tee $0 i32.and if $if_70 - i32.const 3476 + i32.const 3828 i32.load local.get $3 i32.const 8 @@ -20593,7 +20609,7 @@ local.set $11 end ;; $if_71 else - i32.const 3460 + i32.const 3812 local.get $0 local.get $1 i32.or @@ -20689,7 +20705,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.set $3 local.get $5 @@ -20709,7 +20725,7 @@ i32.and i32.eqz if $if_74 - i32.const 3464 + i32.const 3816 local.get $0 local.get $1 i32.or @@ -20790,7 +20806,7 @@ unreachable end ;; $if_76 end ;; $loop_4 - i32.const 3476 + i32.const 3828 i32.load local.get $4 i32.gt_u @@ -20813,7 +20829,7 @@ end ;; $if_78 end ;; $block_11 end ;; $if_75 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $6 @@ -20846,7 +20862,7 @@ end ;; $block_10 end ;; $if_68 local.get $17 - global.set $29 + global.set $30 local.get $2 i32.const 8 i32.add @@ -20866,13 +20882,13 @@ local.set $11 block $block_12 block $block_13 - i32.const 3468 + i32.const 3820 i32.load local.tee $3 local.get $11 i32.ge_u if $if_80 - i32.const 3480 + i32.const 3832 i32.load local.set $0 local.get $3 @@ -20882,13 +20898,13 @@ i32.const 15 i32.gt_u if $if_81 - i32.const 3480 + i32.const 3832 local.get $0 local.get $11 i32.add local.tee $1 i32.store - i32.const 3468 + i32.const 3820 local.get $2 i32.store local.get $1 @@ -20907,10 +20923,10 @@ i32.or i32.store offset=4 else - i32.const 3468 + i32.const 3820 i32.const 0 i32.store - i32.const 3480 + i32.const 3832 i32.const 0 i32.store local.get $0 @@ -20931,13 +20947,13 @@ br $block_13 end ;; $if_80 block $block_14 - i32.const 3472 + i32.const 3824 i32.load local.tee $12 local.get $11 i32.gt_u if $if_82 - i32.const 3472 + i32.const 3824 local.get $12 local.get $11 i32.sub @@ -20945,31 +20961,31 @@ i32.store br $block_14 end ;; $if_82 - i32.const 3932 + i32.const 4284 i32.load if $if_83 (result i32) - i32.const 3940 + i32.const 4292 i32.load else - i32.const 3940 + i32.const 4292 i32.const 4096 i32.store - i32.const 3936 + i32.const 4288 i32.const 4096 i32.store - i32.const 3944 + i32.const 4296 i32.const -1 i32.store - i32.const 3948 + i32.const 4300 i32.const -1 i32.store - i32.const 3952 + i32.const 4304 i32.const 0 i32.store - i32.const 3904 + i32.const 4256 i32.const 0 i32.store - i32.const 3932 + i32.const 4284 local.get $17 i32.const -16 i32.and @@ -20996,11 +21012,11 @@ if $if_84 br $block_12 end ;; $if_84 - i32.const 3900 + i32.const 4252 i32.load local.tee $2 if $if_85 - i32.const 3892 + i32.const 4244 i32.load local.tee $1 local.get $8 @@ -21022,7 +21038,7 @@ local.set $7 block $block_15 block $block_16 - i32.const 3904 + i32.const 4256 i32.load i32.const 4 i32.and @@ -21033,12 +21049,12 @@ block $block_17 block $block_18 block $block_19 - i32.const 3484 + i32.const 3836 i32.load local.tee $1 i32.eqz br_if $block_19 - i32.const 3908 + i32.const 4260 local.set $2 loop $loop_5 block $block_20 @@ -21101,11 +21117,11 @@ if $if_90 (result i32) i32.const 0 else - i32.const 3892 + i32.const 4244 i32.load local.tee $4 local.get $0 - i32.const 3936 + i32.const 4288 i32.load local.tee $2 i32.const -1 @@ -21136,7 +21152,7 @@ i32.gt_u i32.and if $if_91 (result i32) - i32.const 3900 + i32.const 4252 i32.load local.tee $1 if $if_92 @@ -21194,7 +21210,7 @@ end ;; $if_95 unreachable end ;; $if_94 - i32.const 3940 + i32.const 4292 i32.load local.tee $1 local.get $6 @@ -21231,8 +21247,8 @@ end ;; $if_96 local.set $3 end ;; $block_17 - i32.const 3904 - i32.const 3904 + i32.const 4256 + i32.const 4256 i32.load i32.const 4 i32.or @@ -21287,28 +21303,28 @@ end ;; $if_97 br $block_15 end ;; $block_16 - i32.const 3892 - i32.const 3892 + i32.const 4244 + i32.const 4244 i32.load local.get $3 i32.add local.tee $1 i32.store local.get $1 - i32.const 3896 + i32.const 4248 i32.load i32.gt_u if $if_98 - i32.const 3896 + i32.const 4248 local.get $1 i32.store end ;; $if_98 - i32.const 3484 + i32.const 3836 i32.load local.tee $6 if $if_99 block $block_21 - i32.const 3908 + i32.const 4260 local.set $2 block $block_22 block $block_23 @@ -21366,7 +21382,7 @@ local.tee $1 i32.add local.set $2 - i32.const 3472 + i32.const 3824 i32.load local.get $3 i32.add @@ -21374,10 +21390,10 @@ local.get $1 i32.sub local.set $1 - i32.const 3484 + i32.const 3836 local.get $2 i32.store - i32.const 3472 + i32.const 3824 local.get $1 i32.store local.get $2 @@ -21390,8 +21406,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 3488 - i32.const 3948 + i32.const 3840 + i32.const 4300 i32.load i32.store br $block_21 @@ -21399,12 +21415,12 @@ end ;; $if_100 end ;; $block_22 local.get $0 - i32.const 3476 + i32.const 3828 i32.load local.tee $2 i32.lt_u if $if_102 - i32.const 3476 + i32.const 3828 local.get $0 i32.store local.get $0 @@ -21414,7 +21430,7 @@ local.get $3 i32.add local.set $1 - i32.const 3908 + i32.const 4260 local.set $8 block $block_24 block $block_25 @@ -21495,14 +21511,14 @@ local.get $6 i32.eq if $if_104 - i32.const 3472 - i32.const 3472 + i32.const 3824 + i32.const 3824 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 3484 + i32.const 3836 local.get $5 i32.store local.get $5 @@ -21512,19 +21528,19 @@ i32.store offset=4 else block $block_26 - i32.const 3480 + i32.const 3832 i32.load local.get $3 i32.eq if $if_105 - i32.const 3468 - i32.const 3468 + i32.const 3820 + i32.const 3820 i32.load local.get $7 i32.add local.tee $0 i32.store - i32.const 3480 + i32.const 3832 local.get $5 i32.store local.get $5 @@ -21569,7 +21585,7 @@ local.get $1 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.tee $0 i32.ne @@ -21593,8 +21609,8 @@ local.get $6 i32.eq if $if_110 - i32.const 3460 - i32.const 3460 + i32.const 3812 + i32.const 3812 i32.load i32.const 1 local.get $1 @@ -21752,7 +21768,7 @@ local.tee $1 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.tee $0 i32.load @@ -21765,8 +21781,8 @@ i32.store local.get $16 br_if $block_32 - i32.const 3464 - i32.const 3464 + i32.const 3816 + i32.const 3816 i32.load i32.const 1 local.get $1 @@ -21778,7 +21794,7 @@ br $block_27 end ;; $block_32 else - i32.const 3476 + i32.const 3828 i32.load local.get $8 i32.gt_u @@ -21803,7 +21819,7 @@ br_if $block_27 end ;; $if_122 end ;; $if_121 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $16 @@ -21837,7 +21853,7 @@ local.tee $0 i32.eqz br_if $block_27 - i32.const 3476 + i32.const 3828 i32.load local.get $0 i32.gt_u @@ -21889,10 +21905,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $2 - i32.const 3460 + i32.const 3812 i32.load local.tee $1 i32.const 1 @@ -21902,7 +21918,7 @@ i32.and if $if_128 block $block_33 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.const 8 @@ -21921,7 +21937,7 @@ call $_abort end ;; $block_33 else - i32.const 3460 + i32.const 3812 local.get $0 local.get $1 i32.or @@ -22017,7 +22033,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.set $2 local.get $5 @@ -22029,7 +22045,7 @@ local.get $5 i32.const 0 i32.store offset=16 - i32.const 3464 + i32.const 3816 i32.load local.tee $1 i32.const 1 @@ -22039,7 +22055,7 @@ i32.and i32.eqz if $if_132 - i32.const 3464 + i32.const 3816 local.get $0 local.get $1 i32.or @@ -22120,7 +22136,7 @@ unreachable end ;; $if_134 end ;; $loop_9 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.gt_u @@ -22143,7 +22159,7 @@ end ;; $if_136 end ;; $block_34 end ;; $if_133 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $9 @@ -22176,14 +22192,14 @@ end ;; $block_26 end ;; $if_104 local.get $17 - global.set $29 + global.set $30 local.get $12 i32.const 8 i32.add return end ;; $if_103 end ;; $block_24 - i32.const 3908 + i32.const 4260 local.set $2 loop $loop_10 block $block_35 @@ -22208,7 +22224,7 @@ br $loop_10 end ;; $block_35 end ;; $loop_10 - i32.const 3484 + i32.const 3836 i32.const 0 local.get $0 i32.const 8 @@ -22227,7 +22243,7 @@ i32.add local.tee $4 i32.store - i32.const 3472 + i32.const 3824 local.get $3 i32.const -40 i32.add @@ -22246,8 +22262,8 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 3488 - i32.const 3948 + i32.const 3840 + i32.const 4300 i32.load i32.store local.get $6 @@ -22280,23 +22296,23 @@ i32.const 27 i32.store offset=4 local.get $2 - i32.const 3908 + i32.const 4260 i64.load align=4 i64.store offset=8 align=4 local.get $2 - i32.const 3916 + i32.const 4268 i64.load align=4 i64.store offset=16 align=4 - i32.const 3908 + i32.const 4260 local.get $0 i32.store - i32.const 3912 + i32.const 4264 local.get $3 i32.store - i32.const 3920 + i32.const 4272 i32.const 0 i32.store - i32.const 3916 + i32.const 4268 local.get $2 i32.const 8 i32.add @@ -22355,10 +22371,10 @@ local.get $0 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $2 - i32.const 3460 + i32.const 3812 i32.load local.tee $1 i32.const 1 @@ -22367,7 +22383,7 @@ local.tee $0 i32.and if $if_142 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.const 8 @@ -22385,7 +22401,7 @@ local.set $5 end ;; $if_143 else - i32.const 3460 + i32.const 3812 local.get $0 local.get $1 i32.or @@ -22481,7 +22497,7 @@ local.tee $3 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.set $2 local.get $6 @@ -22493,7 +22509,7 @@ local.get $6 i32.const 0 i32.store offset=16 - i32.const 3464 + i32.const 3816 i32.load local.tee $1 i32.const 1 @@ -22503,7 +22519,7 @@ i32.and i32.eqz if $if_146 - i32.const 3464 + i32.const 3816 local.get $0 local.get $1 i32.or @@ -22584,7 +22600,7 @@ unreachable end ;; $if_148 end ;; $loop_12 - i32.const 3476 + i32.const 3828 i32.load local.get $3 i32.gt_u @@ -22607,7 +22623,7 @@ end ;; $if_150 end ;; $block_36 end ;; $if_147 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $10 @@ -22640,7 +22656,7 @@ end ;; $if_140 end ;; $block_21 else - i32.const 3476 + i32.const 3828 i32.load local.tee $1 i32.eqz @@ -22649,219 +22665,219 @@ i32.lt_u i32.or if $if_152 - i32.const 3476 + i32.const 3828 local.get $0 i32.store end ;; $if_152 - i32.const 3908 + i32.const 4260 local.get $0 i32.store - i32.const 3912 + i32.const 4264 local.get $3 i32.store - i32.const 3920 + i32.const 4272 i32.const 0 i32.store - i32.const 3496 - i32.const 3932 + i32.const 3848 + i32.const 4284 i32.load i32.store - i32.const 3492 + i32.const 3844 i32.const -1 i32.store - i32.const 3512 - i32.const 3500 + i32.const 3864 + i32.const 3852 i32.store - i32.const 3508 - i32.const 3500 + i32.const 3860 + i32.const 3852 i32.store - i32.const 3520 - i32.const 3508 + i32.const 3872 + i32.const 3860 i32.store - i32.const 3516 - i32.const 3508 + i32.const 3868 + i32.const 3860 i32.store - i32.const 3528 - i32.const 3516 + i32.const 3880 + i32.const 3868 i32.store - i32.const 3524 - i32.const 3516 + i32.const 3876 + i32.const 3868 i32.store - i32.const 3536 - i32.const 3524 + i32.const 3888 + i32.const 3876 i32.store - i32.const 3532 - i32.const 3524 + i32.const 3884 + i32.const 3876 i32.store - i32.const 3544 - i32.const 3532 + i32.const 3896 + i32.const 3884 i32.store - i32.const 3540 - i32.const 3532 + i32.const 3892 + i32.const 3884 i32.store - i32.const 3552 - i32.const 3540 + i32.const 3904 + i32.const 3892 i32.store - i32.const 3548 - i32.const 3540 + i32.const 3900 + i32.const 3892 i32.store - i32.const 3560 - i32.const 3548 + i32.const 3912 + i32.const 3900 i32.store - i32.const 3556 - i32.const 3548 + i32.const 3908 + i32.const 3900 i32.store - i32.const 3568 - i32.const 3556 + i32.const 3920 + i32.const 3908 i32.store - i32.const 3564 - i32.const 3556 + i32.const 3916 + i32.const 3908 i32.store - i32.const 3576 - i32.const 3564 + i32.const 3928 + i32.const 3916 i32.store - i32.const 3572 - i32.const 3564 + i32.const 3924 + i32.const 3916 i32.store - i32.const 3584 - i32.const 3572 + i32.const 3936 + i32.const 3924 i32.store - i32.const 3580 - i32.const 3572 + i32.const 3932 + i32.const 3924 i32.store - i32.const 3592 - i32.const 3580 + i32.const 3944 + i32.const 3932 i32.store - i32.const 3588 - i32.const 3580 + i32.const 3940 + i32.const 3932 i32.store - i32.const 3600 - i32.const 3588 + i32.const 3952 + i32.const 3940 i32.store - i32.const 3596 - i32.const 3588 + i32.const 3948 + i32.const 3940 i32.store - i32.const 3608 - i32.const 3596 + i32.const 3960 + i32.const 3948 i32.store - i32.const 3604 - i32.const 3596 + i32.const 3956 + i32.const 3948 i32.store - i32.const 3616 - i32.const 3604 + i32.const 3968 + i32.const 3956 i32.store - i32.const 3612 - i32.const 3604 + i32.const 3964 + i32.const 3956 i32.store - i32.const 3624 - i32.const 3612 + i32.const 3976 + i32.const 3964 i32.store - i32.const 3620 - i32.const 3612 + i32.const 3972 + i32.const 3964 i32.store - i32.const 3632 - i32.const 3620 + i32.const 3984 + i32.const 3972 i32.store - i32.const 3628 - i32.const 3620 + i32.const 3980 + i32.const 3972 i32.store - i32.const 3640 - i32.const 3628 + i32.const 3992 + i32.const 3980 i32.store - i32.const 3636 - i32.const 3628 + i32.const 3988 + i32.const 3980 i32.store - i32.const 3648 - i32.const 3636 + i32.const 4000 + i32.const 3988 i32.store - i32.const 3644 - i32.const 3636 + i32.const 3996 + i32.const 3988 i32.store - i32.const 3656 - i32.const 3644 + i32.const 4008 + i32.const 3996 i32.store - i32.const 3652 - i32.const 3644 + i32.const 4004 + i32.const 3996 i32.store - i32.const 3664 - i32.const 3652 + i32.const 4016 + i32.const 4004 i32.store - i32.const 3660 - i32.const 3652 + i32.const 4012 + i32.const 4004 i32.store - i32.const 3672 - i32.const 3660 + i32.const 4024 + i32.const 4012 i32.store - i32.const 3668 - i32.const 3660 + i32.const 4020 + i32.const 4012 i32.store - i32.const 3680 - i32.const 3668 + i32.const 4032 + i32.const 4020 i32.store - i32.const 3676 - i32.const 3668 + i32.const 4028 + i32.const 4020 i32.store - i32.const 3688 - i32.const 3676 + i32.const 4040 + i32.const 4028 i32.store - i32.const 3684 - i32.const 3676 + i32.const 4036 + i32.const 4028 i32.store - i32.const 3696 - i32.const 3684 + i32.const 4048 + i32.const 4036 i32.store - i32.const 3692 - i32.const 3684 + i32.const 4044 + i32.const 4036 i32.store - i32.const 3704 - i32.const 3692 + i32.const 4056 + i32.const 4044 i32.store - i32.const 3700 - i32.const 3692 + i32.const 4052 + i32.const 4044 i32.store - i32.const 3712 - i32.const 3700 + i32.const 4064 + i32.const 4052 i32.store - i32.const 3708 - i32.const 3700 + i32.const 4060 + i32.const 4052 i32.store - i32.const 3720 - i32.const 3708 + i32.const 4072 + i32.const 4060 i32.store - i32.const 3716 - i32.const 3708 + i32.const 4068 + i32.const 4060 i32.store - i32.const 3728 - i32.const 3716 + i32.const 4080 + i32.const 4068 i32.store - i32.const 3724 - i32.const 3716 + i32.const 4076 + i32.const 4068 i32.store - i32.const 3736 - i32.const 3724 + i32.const 4088 + i32.const 4076 i32.store - i32.const 3732 - i32.const 3724 + i32.const 4084 + i32.const 4076 i32.store - i32.const 3744 - i32.const 3732 + i32.const 4096 + i32.const 4084 i32.store - i32.const 3740 - i32.const 3732 + i32.const 4092 + i32.const 4084 i32.store - i32.const 3752 - i32.const 3740 + i32.const 4104 + i32.const 4092 i32.store - i32.const 3748 - i32.const 3740 + i32.const 4100 + i32.const 4092 i32.store - i32.const 3760 - i32.const 3748 + i32.const 4112 + i32.const 4100 i32.store - i32.const 3756 - i32.const 3748 + i32.const 4108 + i32.const 4100 i32.store - i32.const 3484 + i32.const 3836 i32.const 0 local.get $0 i32.const 8 @@ -22880,7 +22896,7 @@ i32.add local.tee $4 i32.store - i32.const 3472 + i32.const 3824 local.get $3 i32.const -40 i32.add @@ -22899,18 +22915,18 @@ i32.add i32.const 40 i32.store offset=4 - i32.const 3488 - i32.const 3948 + i32.const 3840 + i32.const 4300 i32.load i32.store end ;; $if_99 - i32.const 3472 + i32.const 3824 i32.load local.tee $0 local.get $11 i32.gt_u if $if_153 - i32.const 3472 + i32.const 3824 local.get $0 local.get $11 i32.sub @@ -22919,13 +22935,13 @@ br $block_14 end ;; $if_153 end ;; $block_15 - i32.const 3456 + i32.const 3808 i32.const 12 i32.store br $block_12 end ;; $block_14 - i32.const 3484 - i32.const 3484 + i32.const 3836 + i32.const 3836 i32.load local.tee $0 local.get $11 @@ -22944,14 +22960,14 @@ i32.store offset=4 end ;; $block_13 local.get $17 - global.set $29 + global.set $30 local.get $0 i32.const 8 i32.add return end ;; $block_12 local.get $17 - global.set $29 + global.set $30 i32.const 0 ) @@ -22983,7 +22999,7 @@ i32.const -8 i32.add local.tee $5 - i32.const 3476 + i32.const 3828 i32.load local.tee $11 i32.lt_u @@ -23042,7 +23058,7 @@ local.get $10 i32.add local.set $5 - i32.const 3480 + i32.const 3832 i32.load local.get $0 i32.eq @@ -23062,7 +23078,7 @@ local.set $1 br $block end ;; $if_6 - i32.const 3468 + i32.const 3820 local.get $5 i32.store local.get $7 @@ -23099,7 +23115,7 @@ local.get $2 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.tee $4 i32.ne @@ -23122,8 +23138,8 @@ local.get $3 i32.eq if $if_11 - i32.const 3460 - i32.const 3460 + i32.const 3812 + i32.const 3812 i32.load i32.const 1 local.get $2 @@ -23289,7 +23305,7 @@ local.tee $2 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.tee $6 i32.load @@ -23302,8 +23318,8 @@ local.get $8 i32.eqz if $if_24 - i32.const 3464 - i32.const 3464 + i32.const 3816 + i32.const 3816 i32.load i32.const 1 local.get $2 @@ -23320,7 +23336,7 @@ br $block end ;; $if_24 else - i32.const 3476 + i32.const 3828 i32.load local.get $13 i32.gt_u @@ -23353,7 +23369,7 @@ end ;; $if_26 end ;; $if_25 end ;; $if_23 - i32.const 3476 + i32.const 3828 i32.load local.tee $6 local.get $8 @@ -23386,7 +23402,7 @@ i32.load offset=20 local.tee $2 if $if_30 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.gt_u @@ -23456,19 +23472,19 @@ local.get $1 i32.store else - i32.const 3484 + i32.const 3836 i32.load local.get $7 i32.eq if $if_35 - i32.const 3472 - i32.const 3472 + i32.const 3824 + i32.const 3824 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 3484 + i32.const 3836 local.get $3 i32.store local.get $3 @@ -23477,33 +23493,33 @@ i32.or i32.store offset=4 local.get $3 - i32.const 3480 + i32.const 3832 i32.load i32.ne if $if_36 return end ;; $if_36 - i32.const 3480 + i32.const 3832 i32.const 0 i32.store - i32.const 3468 + i32.const 3820 i32.const 0 i32.store return end ;; $if_35 - i32.const 3480 + i32.const 3832 i32.load local.get $7 i32.eq if $if_37 - i32.const 3468 - i32.const 3468 + i32.const 3820 + i32.const 3820 i32.load local.get $1 i32.add local.tee $0 i32.store - i32.const 3480 + i32.const 3832 local.get $4 i32.store local.get $3 @@ -23542,12 +23558,12 @@ local.get $6 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.tee $0 i32.ne if $if_39 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.gt_u @@ -23566,8 +23582,8 @@ local.get $2 i32.eq if $if_42 - i32.const 3460 - i32.const 3460 + i32.const 3812 + i32.const 3812 i32.load i32.const 1 local.get $6 @@ -23587,7 +23603,7 @@ i32.add local.set $16 else - i32.const 3476 + i32.const 3828 i32.load local.get $1 i32.gt_u @@ -23670,7 +23686,7 @@ br $loop_0 end ;; $block_4 end ;; $loop_0 - i32.const 3476 + i32.const 3828 i32.load local.get $1 i32.gt_u @@ -23685,7 +23701,7 @@ end ;; $if_49 end ;; $block_3 else - i32.const 3476 + i32.const 3828 i32.load local.get $7 i32.load offset=8 @@ -23725,7 +23741,7 @@ local.tee $0 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.tee $1 i32.load @@ -23738,8 +23754,8 @@ local.get $9 i32.eqz if $if_55 - i32.const 3464 - i32.const 3464 + i32.const 3816 + i32.const 3816 i32.load i32.const 1 local.get $0 @@ -23751,7 +23767,7 @@ br $block_2 end ;; $if_55 else - i32.const 3476 + i32.const 3828 i32.load local.get $8 i32.gt_u @@ -23777,7 +23793,7 @@ br_if $block_2 end ;; $if_56 end ;; $if_54 - i32.const 3476 + i32.const 3828 i32.load local.tee $1 local.get $9 @@ -23810,7 +23826,7 @@ i32.load offset=20 local.tee $0 if $if_60 - i32.const 3476 + i32.const 3828 i32.load local.get $0 i32.gt_u @@ -23838,12 +23854,12 @@ i32.add local.get $5 i32.store - i32.const 3480 + i32.const 3832 i32.load local.get $3 i32.eq if $if_62 (result i32) - i32.const 3468 + i32.const 3820 local.get $5 i32.store return @@ -23863,10 +23879,10 @@ local.get $4 i32.const 3 i32.shl - i32.const 3500 + i32.const 3852 i32.add local.set $0 - i32.const 3460 + i32.const 3812 i32.load local.tee $1 i32.const 1 @@ -23875,7 +23891,7 @@ local.tee $4 i32.and if $if_64 - i32.const 3476 + i32.const 3828 i32.load local.get $0 i32.const 8 @@ -23893,7 +23909,7 @@ local.set $15 end ;; $if_65 else - i32.const 3460 + i32.const 3812 local.get $1 local.get $4 i32.or @@ -23990,7 +24006,7 @@ local.tee $4 i32.const 2 i32.shl - i32.const 3764 + i32.const 4116 i32.add local.set $0 local.get $3 @@ -24002,7 +24018,7 @@ local.get $3 i32.const 0 i32.store offset=16 - i32.const 3464 + i32.const 3816 i32.load local.tee $5 i32.const 1 @@ -24074,7 +24090,7 @@ unreachable end ;; $if_70 end ;; $loop_1 - i32.const 3476 + i32.const 3828 i32.load local.get $2 i32.gt_u @@ -24097,7 +24113,7 @@ end ;; $if_72 end ;; $block_6 end ;; $if_69 - i32.const 3476 + i32.const 3828 i32.load local.tee $0 local.get $14 @@ -24129,7 +24145,7 @@ end ;; $if_73 end ;; $block_5 else - i32.const 3464 + i32.const 3816 local.get $2 local.get $5 i32.or @@ -24147,8 +24163,8 @@ local.get $3 i32.store offset=8 end ;; $if_68 - i32.const 3492 - i32.const 3492 + i32.const 3844 + i32.const 3844 i32.load i32.const -1 i32.add @@ -24158,7 +24174,7 @@ if $if_74 return end ;; $if_74 - i32.const 3916 + i32.const 4268 local.set $0 loop $loop_2 local.get $0 @@ -24170,16 +24186,14 @@ local.get $4 br_if $loop_2 end ;; $loop_2 - i32.const 3492 + i32.const 3844 i32.const -1 i32.store ) (func $__ZSt18uncaught_exceptionv (type $10) (result i32) - call $___cxa_uncaught_exception - i32.const 1 - i32.and + call $___cxa_uncaught_exceptions i32.const 0 i32.gt_s ) @@ -24197,12 +24211,12 @@ (local $8 i32) (local $9 i32) (local $10 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $3 local.tee $8 i32.const 4 @@ -25992,7 +26006,7 @@ end ;; $block end ;; $if local.get $8 - global.set $29 + global.set $30 local.get $0 ) @@ -26017,8 +26031,8 @@ local.get $1 if $if local.get $1 - i32.const 2 - i32.div_s + i32.const 1 + i32.shr_u local.tee $2 i32.const 2 i32.shl @@ -26068,43 +26082,26 @@ (func $__Znwm (type $7) (param $0 i32) (result i32) - (local $1 i32) local.get $0 i32.const 1 local.get $0 select - local.set $1 - loop $loop (result i32) - local.get $1 - call $_malloc - local.tee $0 - if $if (result i32) - local.get $0 - else - block $block (result i32) - i32.const 3956 - i32.const 3956 - i32.load - local.tee $0 - i32.store - local.get $0 - end ;; $block - if $if_0 (result i32) - i32.const 8 - call_indirect $25 (type $3) - br $loop - else - i32.const 0 - end ;; $if_0 - end ;; $if - end ;; $loop + local.set $0 + local.get $0 + call $_malloc + local.tee $0 + if $if (result i32) + local.get $0 + else + i32.const 0 + end ;; $if ) (func $__ZNSt3__218__libcpp_refstringC2EPKc (type $8) (param $0 i32) (local $1 i32) (local $2 i32) - i32.const 2888 + i32.const 3183 call $_strlen local.tee $2 i32.const 13 @@ -26123,7 +26120,7 @@ i32.const 12 i32.add local.tee $1 - i32.const 2888 + i32.const 3183 local.get $2 i32.const 1 i32.add @@ -26173,12 +26170,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $2 i32.const -17 i32.gt_u @@ -26228,7 +26225,7 @@ i32.load8_s i32.store8 local.get $3 - global.set $29 + global.set $30 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev (type $8) @@ -26238,6 +26235,9 @@ i32.const 0 i32.lt_s if $if + local.get $0 + i32.load offset=8 + drop local.get $0 i32.load call $_free @@ -26255,12 +26255,12 @@ (local $7 i32) (local $8 i32) (local $9 i32) - global.get $29 + global.get $30 local.set $7 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 i32.const -18 local.get $1 i32.sub @@ -26350,194 +26350,32 @@ if $if_5 local.get $8 call $_free - end ;; $if_5 - local.get $0 - local.get $2 - i32.store - local.get $0 - local.get $9 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $0 - local.get $3 - local.get $5 - i32.add - local.tee $0 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store8 - local.get $0 - local.get $2 - i32.add - local.get $7 - i32.load8_s - i32.store8 - local.get $7 - global.set $29 - ) - - (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $2) - (param $0 i32) - (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const -17 - i32.gt_u - if $if - call $_abort - end ;; $if - local.get $0 - i32.load8_s offset=11 - local.tee $6 - i32.const 0 - i32.lt_s - local.tee $4 - if $if_0 (result i32) - local.get $0 - i32.load offset=4 - local.set $5 - local.get $0 - i32.load offset=8 - i32.const 2147483647 - i32.and - i32.const -1 - i32.add - else - local.get $6 - i32.const 255 - i32.and - local.set $5 - i32.const 10 - end ;; $if_0 - local.set $3 - local.get $5 - local.get $1 - local.get $5 - local.get $1 - i32.gt_u - select - local.tee $1 - i32.const 11 - i32.lt_u - local.set $2 - i32.const 10 - local.get $1 - i32.const 16 - i32.add - i32.const -16 - i32.and - i32.const -1 - i32.add + end ;; $if_5 + local.get $0 local.get $2 - select - local.tee $7 + i32.store + local.get $0 + local.get $9 + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 local.get $3 - i32.ne - if $if_1 - block $block - block $block_0 - block $block_1 - local.get $2 - if $if_2 - local.get $0 - i32.load - local.set $2 - local.get $4 - if $if_3 (result i32) - i32.const 0 - local.set $4 - local.get $0 - else - local.get $0 - local.get $2 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - br $block_0 - end ;; $if_3 - local.set $1 - else - local.get $7 - i32.const 1 - i32.add - local.tee $3 - call $__Znwm - local.set $1 - local.get $4 - if $if_4 (result i32) - i32.const 1 - local.set $4 - local.get $0 - i32.load - else - local.get $1 - local.get $0 - local.get $6 - i32.const 255 - i32.and - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $0 - i32.const 4 - i32.add - local.set $2 - br $block_1 - end ;; $if_4 - local.set $2 - end ;; $if_2 - local.get $1 - local.get $2 - local.get $0 - i32.const 4 - i32.add - local.tee $3 - i32.load - i32.const 1 - i32.add - call $__ZNSt3__211char_traitsIcE4copyEPcPKcm - local.get $2 - call $_free - local.get $4 - i32.eqz - br_if $block_0 - local.get $3 - local.set $2 - local.get $7 - i32.const 1 - i32.add - local.set $3 - end ;; $block_1 - local.get $0 - local.get $3 - i32.const -2147483648 - i32.or - i32.store offset=8 - local.get $2 - local.get $5 - i32.store - local.get $0 - local.get $1 - i32.store - br $block - end ;; $block_0 - local.get $0 - local.get $5 - i32.store8 offset=11 - end ;; $block - end ;; $if_1 + local.get $5 + i32.add + local.tee $0 + i32.store offset=4 + local.get $7 + i32.const 0 + i32.store8 + local.get $0 + local.get $2 + i32.add + local.get $7 + i32.load8_s + i32.store8 + local.get $7 + global.set $30 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEmc (type $2) @@ -26546,12 +26384,12 @@ (local $2 i32) (local $3 i32) (local $4 i32) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $0 i32.load8_s offset=11 local.tee $3 @@ -26609,7 +26447,7 @@ end ;; $if_1 end ;; $if_0 local.get $2 - global.set $29 + global.set $30 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEmc (type $2) @@ -26619,12 +26457,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $1 if $if local.get $0 @@ -26718,7 +26556,7 @@ i32.store8 end ;; $if local.get $5 - global.set $29 + global.set $30 ) (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm (type $6) @@ -26818,6 +26656,154 @@ i32.store offset=8 ) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm (type $2) + (param $0 i32) + (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + i32.const -17 + i32.gt_u + if $if + call $_abort + end ;; $if + local.get $0 + i32.load8_s offset=11 + local.tee $3 + i32.const 0 + i32.lt_s + local.tee $6 + if $if_0 (result i32) + local.get $0 + i32.load offset=8 + i32.const 2147483647 + i32.and + i32.const -1 + i32.add + local.set $2 + local.get $0 + i32.load offset=4 + else + i32.const 10 + local.set $2 + local.get $3 + i32.const 255 + i32.and + end ;; $if_0 + local.tee $5 + local.get $1 + local.get $5 + local.get $1 + i32.gt_u + select + local.tee $4 + i32.const 11 + i32.lt_u + local.set $1 + i32.const 10 + local.get $4 + i32.const 16 + i32.add + i32.const -16 + i32.and + i32.const -1 + i32.add + local.get $1 + select + local.tee $4 + local.get $2 + i32.ne + if $if_1 + block $block + block $block_0 + block $block_1 + local.get $1 + if $if_2 + local.get $0 + i32.load + local.set $2 + local.get $6 + if $if_3 (result i32) + i32.const 0 + local.set $3 + local.get $0 + else + local.get $0 + local.get $2 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + br $block_0 + end ;; $if_3 + local.set $1 + else + local.get $4 + i32.const 1 + i32.add + call $__Znwm + local.set $1 + local.get $6 + if $if_4 (result i32) + i32.const 1 + local.set $3 + local.get $0 + i32.load + else + local.get $1 + local.get $0 + local.get $3 + i32.const 255 + i32.and + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + br $block_1 + end ;; $if_4 + local.set $2 + end ;; $if_2 + local.get $1 + local.get $2 + local.get $0 + i32.load offset=4 + i32.const 1 + i32.add + call $__ZNSt3__211char_traitsIcE4copyEPcPKcm + local.get $2 + call $_free + local.get $3 + i32.eqz + br_if $block_0 + end ;; $block_1 + local.get $0 + local.get $4 + i32.const 1 + i32.add + i32.const -2147483648 + i32.or + i32.store offset=8 + local.get $0 + local.get $5 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store + br $block + end ;; $block_0 + local.get $0 + local.get $5 + i32.store8 offset=11 + end ;; $block + end ;; $if_1 + ) + (func $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm (type $0) (param $0 i32) (param $1 i32) @@ -26827,12 +26813,12 @@ (local $4 i32) (local $5 i32) (local $6 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $0 i32.load8_s offset=11 local.tee $4 @@ -26919,7 +26905,7 @@ end ;; $if_1 end ;; $if_0 local.get $5 - global.set $29 + global.set $30 local.get $0 ) @@ -26927,12 +26913,12 @@ (param $0 i32) (param $1 i32) (local $2 i32) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $2 call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv local.get $0 @@ -26942,7 +26928,7 @@ local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev local.get $2 - global.set $29 + global.set $30 ) (func $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv (type $8) @@ -26998,12 +26984,12 @@ (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -27042,7 +27028,7 @@ local.get $4 i32.const 1 i32.add - i32.const 3093 + i32.const 3451 local.get $5 call $_snprintf local.tee $3 @@ -27102,19 +27088,19 @@ end ;; $if_2 end ;; $loop_0 local.get $5 - global.set $29 + global.set $30 ) - (func $__ZNSt3__29to_stringEy (type $12) + (func $__ZNSt3__29to_stringEy (type $23) (param $0 i32) (param $1 i64) (local $2 i32) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $2 call $__ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv local.get $0 @@ -27124,22 +27110,22 @@ local.get $2 call $__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev local.get $2 - global.set $29 + global.set $30 ) - (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEyEET_T0_SD_PKNSD_10value_typeET1_ (type $23) + (func $__ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcmPKczEyEET_T0_SD_PKNSD_10value_typeET1_ (type $24) (param $0 i32) (param $1 i32) (param $2 i64) (local $3 i32) (local $4 i32) (local $5 i32) - global.get $29 + global.get $30 local.set $5 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $1 i32.load8_s offset=11 local.tee $3 @@ -27178,7 +27164,7 @@ local.get $4 i32.const 1 i32.add - i32.const 3096 + i32.const 3454 local.get $5 call $_snprintf local.tee $3 @@ -27238,7 +27224,7 @@ end ;; $if_2 end ;; $loop_0 local.get $5 - global.set $29 + global.set $30 ) (func $__ZN10__cxxabiv116__shim_type_infoD2Ev (type $8) @@ -27258,15 +27244,16 @@ (param $2 i32) (result i32) (local $3 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $0 local.get $1 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) i32.const 1 else @@ -27278,51 +27265,56 @@ local.tee $1 if $if_1 (result i32) local.get $3 - i64.const 0 - i64.store offset=4 align=4 + local.get $1 + i32.store local.get $3 - i64.const 0 - i64.store offset=12 align=4 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $0 + i32.store offset=8 + local.get $3 + i32.const -1 + i32.store offset=12 local.get $3 i64.const 0 - i64.store offset=20 align=4 + i64.store offset=16 align=4 local.get $3 i64.const 0 - i64.store offset=28 align=4 + i64.store offset=24 align=4 local.get $3 i64.const 0 - i64.store offset=36 align=4 + i64.store offset=32 align=4 local.get $3 i64.const 0 - i64.store offset=44 align=4 + i64.store offset=40 align=4 local.get $3 i32.const 0 - i32.store offset=52 - local.get $3 - local.get $1 - i32.store + i32.store offset=48 local.get $3 - local.get $0 - i32.store offset=8 + i32.const 0 + i32.store16 offset=52 local.get $3 - i32.const -1 - i32.store offset=12 + i32.const 0 + i32.store8 offset=54 local.get $3 i32.const 1 i32.store offset=48 local.get $1 + i32.load + i32.load offset=28 + local.set $0 + local.get $1 local.get $3 local.get $2 i32.load i32.const 1 - local.get $1 - i32.load - i32.load offset=28 + local.get $0 i32.const 3 i32.and i32.const 27 i32.add - call_indirect $25 (type $4) + call_indirect $26 (type $4) local.get $3 i32.load offset=24 i32.const 1 @@ -27345,7 +27337,7 @@ end ;; $if local.set $0 local.get $3 - global.set $29 + global.set $30 local.get $0 ) @@ -27356,10 +27348,11 @@ (param $3 i32) (param $4 i32) (param $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -27375,10 +27368,11 @@ (param $2 i32) (param $3 i32) (param $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -27396,10 +27390,11 @@ end ;; $if_1 end ;; $if_0 else + local.get $0 local.get $1 i32.load - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if_2 block $block local.get $1 @@ -27463,10 +27458,11 @@ (param $1 i32) (param $2 i32) (param $3 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -27475,6 +27471,26 @@ end ;; $if ) + (func $__ZL8is_equalPKSt9type_infoS1_b (type $0) + (param $0 i32) + (param $1 i32) + (param $2 i32) + (result i32) + local.get $2 + if $if (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.load offset=4 + call $_strcmp + i32.eqz + else + local.get $0 + local.get $1 + i32.eq + end ;; $if + ) + (func $__ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi (type $9) (param $0 i32) (param $1 i32) @@ -27617,19 +27633,19 @@ end ;; $if ) - (func $___dynamic_cast (type $16) + (func $___dynamic_cast (type $12) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - global.get $29 + global.get $30 local.set $2 - global.get $29 + global.get $30 i32.const -64 i32.sub - global.set $29 + global.set $30 local.get $0 local.get $0 i32.load @@ -27677,9 +27693,10 @@ local.get $2 i32.const 0 i32.store8 offset=54 - local.get $1 local.get $3 - i32.eq + local.get $1 + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if (result i32) local.get $2 i32.const 1 @@ -27697,7 +27714,7 @@ i32.and i32.const 35 i32.add - call_indirect $25 (type $5) + call_indirect $26 (type $5) local.get $4 i32.const 0 local.get $2 @@ -27719,7 +27736,7 @@ i32.and i32.const 31 i32.add - call_indirect $25 (type $6) + call_indirect $26 (type $6) block $block_0 block $block_1 block $block_2 @@ -27781,7 +27798,7 @@ end ;; $if local.set $0 local.get $2 - global.set $29 + global.set $30 local.get $0 ) @@ -27793,10 +27810,11 @@ (param $4 i32) (param $5 i32) (local $6 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $5 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -27821,7 +27839,7 @@ i32.and i32.const 35 i32.add - call_indirect $25 (type $5) + call_indirect $26 (type $5) end ;; $if ) @@ -27832,10 +27850,11 @@ (param $3 i32) (param $4 i32) (local $5 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $2 local.get $1 @@ -27857,7 +27876,9 @@ local.get $0 local.get $1 i32.load - i32.ne + local.get $4 + call $__ZL8is_equalPKSt9type_infoS1_b + i32.eqz if $if_2 local.get $0 i32.load offset=8 @@ -27875,7 +27896,7 @@ i32.and i32.const 31 i32.add - call_indirect $25 (type $6) + call_indirect $26 (type $6) br $block end ;; $if_2 local.get $1 @@ -27894,93 +27915,84 @@ local.get $1 i32.load offset=44 i32.const 4 - i32.eq - br_if $block + i32.ne + if $if_5 + local.get $1 + i32.const 0 + i32.store8 offset=52 + local.get $1 + i32.const 0 + i32.store8 offset=53 + local.get $0 + i32.load offset=8 + local.tee $0 + i32.load + i32.load offset=20 + local.set $3 + local.get $0 + local.get $1 + local.get $2 + local.get $2 + i32.const 1 + local.get $4 + local.get $3 + i32.const 3 + i32.and + i32.const 35 + i32.add + call_indirect $26 (type $5) + local.get $1 + i32.load8_s offset=53 + if $if_6 + local.get $1 + i32.load8_s offset=52 + i32.eqz + local.set $0 + local.get $1 + i32.const 3 + i32.store offset=44 + local.get $0 + i32.eqz + br_if $block + else + local.get $1 + i32.const 4 + i32.store offset=44 + end ;; $if_6 + end ;; $if_5 local.get $1 - i32.const 0 - i32.store8 offset=52 + local.get $2 + i32.store offset=20 local.get $1 - i32.const 0 - i32.store8 offset=53 - local.get $0 - i32.load offset=8 - local.tee $0 - i32.load - i32.load offset=20 - local.set $3 - local.get $0 local.get $1 - local.get $2 - local.get $2 + i32.load offset=40 i32.const 1 - local.get $4 - local.get $3 - i32.const 3 - i32.and - i32.const 35 i32.add - call_indirect $25 (type $5) + i32.store offset=40 local.get $1 - block $block_0 (result i32) - block $block_1 - local.get $1 - i32.load8_s offset=53 - if $if_5 (result i32) - local.get $1 - i32.load8_s offset=52 - br_if $block_1 - i32.const 1 - else - i32.const 0 - end ;; $if_5 - local.set $0 - local.get $1 - local.get $2 - i32.store offset=20 - local.get $1 - local.get $1 - i32.load offset=40 - i32.const 1 - i32.add - i32.store offset=40 - local.get $1 - i32.load offset=36 - i32.const 1 - i32.eq - if $if_6 - local.get $1 - i32.load offset=24 - i32.const 2 - i32.eq - if $if_7 - local.get $1 - i32.const 1 - i32.store8 offset=54 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $if_7 - end ;; $if_6 - local.get $0 - br_if $block_1 - i32.const 4 - br $block_0 - end ;; $block_1 - i32.const 3 - end ;; $block_0 - i32.store offset=44 + i32.load offset=36 + i32.const 1 + i32.ne + br_if $block + local.get $1 + i32.load offset=24 + i32.const 2 + i32.ne + br_if $block + local.get $1 + i32.const 1 + i32.store8 offset=54 br $block end ;; $if_4 end ;; $if_3 local.get $3 i32.const 1 i32.eq - if $if_8 + if $if_7 local.get $1 i32.const 1 i32.store offset=32 - end ;; $if_8 + end ;; $if_7 end ;; $block end ;; $if ) @@ -27991,10 +28003,11 @@ (param $2 i32) (param $3 i32) (local $4 i32) + local.get $0 local.get $1 i32.load offset=8 - local.get $0 - i32.eq + i32.const 0 + call $__ZL8is_equalPKSt9type_infoS1_b if $if local.get $1 local.get $2 @@ -28016,7 +28029,7 @@ i32.and i32.const 27 i32.add - call_indirect $25 (type $4) + call_indirect $26 (type $4) end ;; $if ) @@ -28062,9 +28075,7 @@ i32.add i32.store offset=8 local.get $1 - i32.const -1 - i32.add - i32.const 0 + i32.const 1 i32.lt_s if $if local.get $0 @@ -28079,12 +28090,12 @@ (result i32) (local $3 i32) (local $4 i32) - global.get $29 + global.get $30 local.set $3 - global.get $29 + global.get $30 i32.const 16 i32.add - global.set $29 + global.set $30 local.get $3 local.get $2 i32.load @@ -28101,7 +28112,7 @@ i32.and i32.const 4 i32.add - call_indirect $25 (type $0) + call_indirect $26 (type $0) local.tee $0 if $if local.get $2 @@ -28110,7 +28121,7 @@ i32.store end ;; $if local.get $3 - global.set $29 + global.set $30 local.get $0 i32.const 1 i32.and @@ -28525,7 +28536,7 @@ call $_emscripten_get_heap_size local.set $3 local.get $0 - global.get $28 + global.get $29 i32.load local.tee $2 i32.add @@ -28563,13 +28574,13 @@ return end ;; $if_1 end ;; $if_0 - global.get $28 + global.get $29 local.get $1 i32.store local.get $2 ) - (func $dynCall_ii (type $16) + (func $dynCall_ii (type $12) (param $0 i32) (param $1 i32) (result i32) @@ -28577,10 +28588,10 @@ local.get $0 i32.const 1 i32.and - call_indirect $25 (type $7) + call_indirect $26 (type $7) ) - (func $dynCall_iidiiii (type $24) + (func $dynCall_iidiiii (type $25) (param $0 i32) (param $1 i32) (param $2 f64) @@ -28600,10 +28611,10 @@ i32.and i32.const 2 i32.add - call_indirect $25 (type $1) + call_indirect $26 (type $1) ) - (func $dynCall_iiii (type $13) + (func $dynCall_iiii (type $11) (param $0 i32) (param $1 i32) (param $2 i32) @@ -28617,13 +28628,13 @@ i32.and i32.const 4 i32.add - call_indirect $25 (type $0) + call_indirect $26 (type $0) ) (func $dynCall_v (type $8) (param $0 i32) i32.const 8 - call_indirect $25 (type $3) + call_indirect $26 (type $3) ) (func $dynCall_vi (type $2) @@ -28635,7 +28646,7 @@ i32.and i32.const 9 i32.add - call_indirect $25 (type $8) + call_indirect $26 (type $8) ) (func $dynCall_vii (type $9) @@ -28649,7 +28660,7 @@ i32.and i32.const 25 i32.add - call_indirect $25 (type $2) + call_indirect $26 (type $2) ) (func $dynCall_viiii (type $6) @@ -28667,7 +28678,7 @@ i32.and i32.const 27 i32.add - call_indirect $25 (type $4) + call_indirect $26 (type $4) ) (func $dynCall_viiiii (type $5) @@ -28687,7 +28698,7 @@ i32.and i32.const 31 i32.add - call_indirect $25 (type $6) + call_indirect $26 (type $6) ) (func $dynCall_viiiiii (type $22) @@ -28709,7 +28720,7 @@ i32.and i32.const 35 i32.add - call_indirect $25 (type $5) + call_indirect $26 (type $5) ) (func $b0 (type $7) @@ -28791,5 +28802,5 @@ call $abort ) ;; User section "emscripten_metadata": - ;; "\00\01\00\03\80\02'\80\08\d0\a8\c0\02\b0(\c0(" + ;; "\00\02\00\04\00\80\02'\80\08\b0\ab\c0\02\90+\a0+" ) \ No newline at end of file diff --git a/test/extensions/wasm/wasm_test.cc b/test/extensions/wasm/wasm_test.cc index ba7783d41d85c..bb6e5d00bd3a9 100644 --- a/test/extensions/wasm/wasm_test.cc +++ b/test/extensions/wasm/wasm_test.cc @@ -68,7 +68,7 @@ TEST_P(WasmTestMatrix, Logging) { NiceMock local_info; auto wasm = std::make_unique( absl::StrCat("envoy.wasm.vm.", std::get<0>(GetParam())), "", "", cluster_manager, *dispatcher, - *scope, local_info, nullptr, scope); + *scope, Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( absl::StrCat("{{ test_rundir }}/test/extensions/wasm/test_data/logging_", @@ -99,7 +99,7 @@ TEST_P(WasmTest, BadSignature) { NiceMock local_info; auto wasm = std::make_shared( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/bad_signature_cpp.wasm")); @@ -118,9 +118,9 @@ TEST(WasmTestWavmOnly, Segv) { Event::DispatcherPtr dispatcher(api->allocateDispatcher()); auto scope = Stats::ScopeSharedPtr(stats_store.createScope("wasm.")); NiceMock local_info; - auto wasm = std::make_shared("envoy.wasm.vm.wavm", "", "", - cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + auto wasm = std::make_shared( + "envoy.wasm.vm.wavm", "", "", cluster_manager, *dispatcher, *scope, + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/segv_cpp.wasm")); @@ -142,7 +142,7 @@ TEST_P(WasmTest, DivByZero) { NiceMock local_info; auto wasm = std::make_shared( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/segv_cpp.wasm")); @@ -165,7 +165,7 @@ TEST_P(WasmTest, EmscriptenVersion) { NiceMock local_info; auto wasm = std::make_shared( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/segv_cpp.wasm")); @@ -175,10 +175,10 @@ TEST_P(WasmTest, EmscriptenVersion) { uint32_t major = 9, minor = 9, abi_major = 9, abi_minor = 9; EXPECT_TRUE(wasm->getEmscriptenVersion(&major, &minor, &abi_major, &abi_minor)); EXPECT_EQ(major, 0); - EXPECT_LE(minor, 1); - // Up to (at least) emsdk 1.38.39. + EXPECT_LE(minor, 2); + // Up to (at least) emsdk 1.38.42. EXPECT_EQ(abi_major, 0); - EXPECT_LE(abi_minor, 3); + EXPECT_LE(abi_minor, 4); } TEST_P(WasmTest, IntrinsicGlobals) { @@ -190,14 +190,14 @@ TEST_P(WasmTest, IntrinsicGlobals) { NiceMock local_info; auto wasm = std::make_shared( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/emscripten_cpp.wasm")); EXPECT_FALSE(code.empty()); auto context = std::make_unique(wasm.get()); EXPECT_CALL(*context, scriptLog_(spdlog::level::info, Eq("NaN nan"))); - EXPECT_CALL(*context, scriptLog_(spdlog::level::warn, Eq("inf inf"))); + EXPECT_CALL(*context, scriptLog_(spdlog::level::warn, Eq("inf inf"))).Times(3); EXPECT_TRUE(wasm->initialize(code, "", false)); wasm->startForTesting(std::move(context)); } @@ -217,7 +217,7 @@ TEST_P(WasmTest, Asm2Wasm) { NiceMock local_info; auto wasm = std::make_shared( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/asm2wasm_cpp.wasm")); @@ -237,7 +237,7 @@ TEST_P(WasmTest, Stats) { NiceMock local_info; auto wasm = std::make_unique( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/stats_cpp.wasm")); @@ -250,7 +250,7 @@ TEST_P(WasmTest, Stats) { EXPECT_CALL(*context, scriptLog_(spdlog::level::info, Eq("get counter = 5"))); EXPECT_CALL(*context, scriptLog_(spdlog::level::warn, Eq("get gauge = 2"))); // Get is not supported on histograms. - EXPECT_CALL(*context, scriptLog_(spdlog::level::err, Eq("get histogram = 0"))); + EXPECT_CALL(*context, scriptLog_(spdlog::level::err, Eq("get histogram = Unsupported"))); EXPECT_TRUE(wasm->initialize(code, "", false)); wasm->startForTesting(std::move(context)); @@ -265,7 +265,7 @@ TEST_P(WasmTest, StatsHigherLevel) { NiceMock local_info; auto wasm = std::make_unique( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/stats_cpp.wasm")); @@ -298,7 +298,7 @@ TEST_P(WasmTest, StatsHighLevel) { NiceMock local_info; auto wasm = std::make_unique( absl::StrCat("envoy.wasm.vm.", GetParam()), "", "", cluster_manager, *dispatcher, *scope, - local_info, nullptr, scope); + Common::Wasm::PluginDirection::Unspecified, local_info, nullptr, scope); EXPECT_NE(wasm, nullptr); const auto code = TestEnvironment::readFileToStringForTest(TestEnvironment::substitute( "{{ test_rundir }}/test/extensions/wasm/test_data/stats_cpp.wasm")); diff --git a/test/integration/BUILD b/test/integration/BUILD index f100db5066d85..393eadbfa2e83 100644 --- a/test/integration/BUILD +++ b/test/integration/BUILD @@ -772,6 +772,16 @@ envoy_cc_test( ], ) +envoy_cc_test( + name = "dynamic_validation_integration_test", + srcs = ["dynamic_validation_integration_test.cc"], + data = ["//test/config/integration:server_xds_files"], + deps = [ + ":http_integration_lib", + "//source/common/stats:stats_lib", + ], +) + envoy_cc_test( name = "xds_integration_test", srcs = ["xds_integration_test.cc"], diff --git a/test/integration/ads_integration.cc b/test/integration/ads_integration.cc index a950bc8e5899d..cf62f423aaadf 100644 --- a/test/integration/ads_integration.cc +++ b/test/integration/ads_integration.cc @@ -145,7 +145,7 @@ void AdsIntegrationTest::initializeAds(const bool rate_limiting) { void AdsIntegrationTest::testBasicFlow() { // Send initial configuration, validate we can process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); diff --git a/test/integration/ads_integration.h b/test/integration/ads_integration.h index c03e42e645bf7..024bcf04d6075 100644 --- a/test/integration/ads_integration.h +++ b/test/integration/ads_integration.h @@ -20,6 +20,7 @@ static const std::string& AdsIntegrationConfig() { cds_config: {ads: {}} ads_config: api_type: GRPC + set_node_on_first_message_only: true static_resources: clusters: name: dummy_cluster diff --git a/test/integration/ads_integration_test.cc b/test/integration/ads_integration_test.cc index 3954f0aad69fa..9479194d73be4 100644 --- a/test/integration/ads_integration_test.cc +++ b/test/integration/ads_integration_test.cc @@ -49,7 +49,7 @@ TEST_P(AdsIntegrationTest, Failure) { // Send initial configuration, failing each xDS once (via a type mismatch), validate we can // process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse( Config::TypeUrl::get().Cluster, {buildClusterLoadAssignment("cluster_0")}, {buildClusterLoadAssignment("cluster_0")}, {}, "1"); @@ -57,7 +57,7 @@ TEST_P(AdsIntegrationTest, Failure) { EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Listener, "", {}, {}, {})); EXPECT_TRUE(compareDiscoveryRequest( - Config::TypeUrl::get().Cluster, "", {}, {}, {}, Grpc::Status::GrpcStatus::Internal, + Config::TypeUrl::get().Cluster, "", {}, {}, {}, false, Grpc::Status::GrpcStatus::Internal, fmt::format("{} does not match {}", Config::TypeUrl::get().ClusterLoadAssignment, Config::TypeUrl::get().Cluster))); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, @@ -73,7 +73,7 @@ TEST_P(AdsIntegrationTest, Failure) { EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "1", {}, {}, {})); EXPECT_TRUE( compareDiscoveryRequest(Config::TypeUrl::get().ClusterLoadAssignment, "", {"cluster_0"}, {}, - {}, Grpc::Status::GrpcStatus::Internal, + {}, false, Grpc::Status::GrpcStatus::Internal, fmt::format("{} does not match {}", Config::TypeUrl::get().Cluster, Config::TypeUrl::get().ClusterLoadAssignment))); sendDiscoveryResponse( @@ -87,7 +87,7 @@ TEST_P(AdsIntegrationTest, Failure) { {buildRouteConfig("listener_0", "route_config_0")}, {}, "1"); EXPECT_TRUE(compareDiscoveryRequest( - Config::TypeUrl::get().Listener, "", {}, {}, {}, Grpc::Status::GrpcStatus::Internal, + Config::TypeUrl::get().Listener, "", {}, {}, {}, false, Grpc::Status::GrpcStatus::Internal, fmt::format("{} does not match {}", Config::TypeUrl::get().RouteConfiguration, Config::TypeUrl::get().Listener))); sendDiscoveryResponse( @@ -103,7 +103,7 @@ TEST_P(AdsIntegrationTest, Failure) { EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Listener, "1", {}, {}, {})); EXPECT_TRUE( compareDiscoveryRequest(Config::TypeUrl::get().RouteConfiguration, "", {"route_config_0"}, {}, - {}, Grpc::Status::GrpcStatus::Internal, + {}, false, Grpc::Status::GrpcStatus::Internal, fmt::format("{} does not match {}", Config::TypeUrl::get().Listener, Config::TypeUrl::get().RouteConfiguration))); sendDiscoveryResponse( @@ -122,7 +122,7 @@ TEST_P(AdsIntegrationTest, DuplicateWarmingListeners) { initialize(); // Send initial configuration, validate we can process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); @@ -191,7 +191,7 @@ TEST_P(AdsIntegrationTest, DuplicateInitialClusters) { // Send initial configuration, failing each xDS once (via a type mismatch), validate we can // process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse( Config::TypeUrl::get().Cluster, {buildCluster("duplicate_cluster"), buildCluster("duplicate_cluster")}, @@ -206,7 +206,7 @@ TEST_P(AdsIntegrationTest, DuplicateWarmingClusters) { initialize(); // Send initial configuration, validate we can process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); @@ -251,7 +251,7 @@ TEST_P(AdsIntegrationTest, CdsPausedDuringWarming) { initialize(); // Send initial configuration, validate we can process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); @@ -333,7 +333,7 @@ TEST_P(AdsIntegrationTest, ClusterWarmingOnNamedResponse) { initialize(); // Send initial configuration, validate we can process a request. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); @@ -468,7 +468,7 @@ TEST_P(AdsIntegrationTest, RdsAfterLdsInvalidated) { // --------------------- // Initial request for any cluster, respond with cluster_0 version 1 - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); @@ -654,7 +654,7 @@ TEST_P(AdsIntegrationTest, XdsBatching) { EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().ClusterLoadAssignment, "", {"eds_cluster2", "eds_cluster"}, - {"eds_cluster2", "eds_cluster"}, {})); + {"eds_cluster2", "eds_cluster"}, {}, true)); sendDiscoveryResponse( Config::TypeUrl::get().ClusterLoadAssignment, {buildClusterLoadAssignment("eds_cluster"), buildClusterLoadAssignment("eds_cluster2")}, @@ -681,7 +681,7 @@ TEST_P(AdsIntegrationTest, ListenerDrainBeforeServerStart) { initialize(); // Initial request for cluster, response for cluster_0. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {buildCluster("cluster_0")}, {buildCluster("cluster_0")}, {}, "1"); diff --git a/test/integration/autonomous_upstream.cc b/test/integration/autonomous_upstream.cc index 1ac10254dae97..bd00fd176b1ef 100644 --- a/test/integration/autonomous_upstream.cc +++ b/test/integration/autonomous_upstream.cc @@ -63,7 +63,7 @@ AutonomousHttpConnection::AutonomousHttpConnection(SharedConnectionWrapper& shar Stats::Store& store, Type type, AutonomousUpstream& upstream) : FakeHttpConnection(shared_connection, store, type, upstream.timeSystem(), - Http::DEFAULT_MAX_REQUEST_HEADERS_KB), + Http::DEFAULT_MAX_REQUEST_HEADERS_KB, Http::DEFAULT_MAX_HEADERS_COUNT), upstream_(upstream) {} Http::StreamDecoder& AutonomousHttpConnection::newStream(Http::StreamEncoder& response_encoder, diff --git a/test/integration/cds_integration_test.cc b/test/integration/cds_integration_test.cc index d1b5058fab1e3..a8efa18cfae12 100644 --- a/test/integration/cds_integration_test.cc +++ b/test/integration/cds_integration_test.cc @@ -94,7 +94,7 @@ class CdsIntegrationTest : public Grpc::DeltaSotwIntegrationParamTest, public Ht acceptXdsConnection(); // Do the initial compareDiscoveryRequest / sendDiscoveryResponse for cluster_1. - EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {})); + EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Cluster, "", {}, {}, {}, true)); sendDiscoveryResponse(Config::TypeUrl::get().Cluster, {cluster1_}, {cluster1_}, {}, "55"); diff --git a/test/integration/dynamic_validation_integration_test.cc b/test/integration/dynamic_validation_integration_test.cc new file mode 100644 index 0000000000000..b4344312b85a3 --- /dev/null +++ b/test/integration/dynamic_validation_integration_test.cc @@ -0,0 +1,181 @@ +#include + +#include "envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.pb.validate.h" + +#include "extensions/filters/network/common/factory_base.h" + +#include "test/integration/http_integration.h" +#include "test/test_common/environment.h" + +#include "gtest/gtest.h" + +namespace Envoy { +namespace { + +// This fake filter is used by CdsProtocolOptionsRejected. +class TestDynamicValidationNetworkFilter : public Network::WriteFilter { +public: + Network::FilterStatus onWrite(Buffer::Instance&, bool) override { + return Network::FilterStatus::Continue; + } +}; + +class TestDynamicValidationNetworkFilterConfigFactory + : public Extensions::NetworkFilters::Common::FactoryBase< + envoy::config::filter::network::tcp_proxy::v2::TcpProxy> { +public: + TestDynamicValidationNetworkFilterConfigFactory() + : Extensions::NetworkFilters::Common::FactoryBase< + envoy::config::filter::network::tcp_proxy::v2::TcpProxy>( + "envoy.test.dynamic_validation") {} + +private: + Network::FilterFactoryCb createFilterFactoryFromProtoTyped( + const envoy::config::filter::network::tcp_proxy::v2::TcpProxy& /*proto_config*/, + Server::Configuration::FactoryContext& /*context*/) override { + return Network::FilterFactoryCb(); + } + + Upstream::ProtocolOptionsConfigConstSharedPtr createProtocolOptionsTyped( + const envoy::config::filter::network::tcp_proxy::v2::TcpProxy&) override { + return nullptr; + } +}; + +REGISTER_FACTORY(TestDynamicValidationNetworkFilterConfigFactory, + Server::Configuration::NamedNetworkFilterConfigFactory); + +// Pretty-printing of parameterized test names. +std::string dynamicValidationTestParamsToString( + const ::testing::TestParamInfo>& params) { + return fmt::format( + "{}_{}", + TestUtility::ipTestParamsToString( + ::testing::TestParamInfo(std::get<0>(params.param), 0)), + std::get<1>(params.param) ? "with_reject_unknown_fields" : "without_reject_unknown_fields"); +} + +// Validate unknown field handling in dynamic configuration. +class DynamicValidationIntegrationTest + : public testing::TestWithParam>, + public HttpIntegrationTest { +public: + DynamicValidationIntegrationTest() + : HttpIntegrationTest(Http::CodecClient::Type::HTTP2, std::get<0>(GetParam())), + reject_unknown_dynamic_fields_(std::get<1>(GetParam())) { + setUpstreamProtocol(FakeHttpConnection::Type::HTTP2); + } + + void createEnvoy() override { + registerPort("upstream_0", fake_upstreams_.back()->localAddress()->ip()->port()); + createApiTestServer(api_filesystem_config_, {"http"}, reject_unknown_dynamic_fields_, + reject_unknown_dynamic_fields_, allow_lds_rejection_); + } + + ApiFilesystemConfig api_filesystem_config_; + const bool reject_unknown_dynamic_fields_; + bool allow_lds_rejection_{}; +}; + +INSTANTIATE_TEST_SUITE_P( + IpVersions, DynamicValidationIntegrationTest, + testing::Combine(testing::ValuesIn(TestEnvironment::getIpVersionsForTest()), testing::Bool()), + dynamicValidationTestParamsToString); + +// Protocol options in CDS with unknown fields are rejected if and only if strict. +TEST_P(DynamicValidationIntegrationTest, CdsProtocolOptionsRejected) { + api_filesystem_config_ = { + "test/config/integration/server_xds.bootstrap.yaml", + "test/config/integration/server_xds.cds.with_unknown_field.yaml", + "test/config/integration/server_xds.eds.yaml", + "test/config/integration/server_xds.lds.yaml", + "test/config/integration/server_xds.rds.yaml", + }; + initialize(); + if (reject_unknown_dynamic_fields_) { + EXPECT_EQ(0, test_server_->counter("cluster_manager.cds.update_success")->value()); + // CDS API parsing will reject due to unknown HCM field. + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_rejected")->value()); + EXPECT_EQ(0, test_server_->counter("server.dynamic_unknown_fields")->value()); + } else { + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("server.dynamic_unknown_fields")->value()); + } +} + +// Network filters in LDS with unknown fields are rejected if and only if strict. +TEST_P(DynamicValidationIntegrationTest, LdsFilterRejected) { + allow_lds_rejection_ = true; + api_filesystem_config_ = { + "test/config/integration/server_xds.bootstrap.yaml", + "test/config/integration/server_xds.cds.yaml", + "test/config/integration/server_xds.eds.yaml", + "test/config/integration/server_xds.lds.with_unknown_field.yaml", + "test/config/integration/server_xds.rds.yaml", + }; + initialize(); + if (reject_unknown_dynamic_fields_) { + EXPECT_EQ(0, test_server_->counter("listener_manager.lds.update_success")->value()); + // LDS API parsing will reject due to unknown HCM field. + EXPECT_EQ(1, test_server_->counter("listener_manager.lds.update_rejected")->value()); + EXPECT_EQ(nullptr, test_server_->counter("http.router.rds.route_config_0.update_success")); + EXPECT_EQ(0, test_server_->counter("server.dynamic_unknown_fields")->value()); + } else { + EXPECT_EQ(1, test_server_->counter("listener_manager.lds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("http.router.rds.route_config_0.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("server.dynamic_unknown_fields")->value()); + } + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("cluster.cluster_1.update_success")->value()); +} + +// Unknown fields in RDS cause config load failure if and only if strict. +TEST_P(DynamicValidationIntegrationTest, RdsFailedBySubscription) { + api_filesystem_config_ = { + "test/config/integration/server_xds.bootstrap.yaml", + "test/config/integration/server_xds.cds.yaml", + "test/config/integration/server_xds.eds.yaml", + "test/config/integration/server_xds.lds.yaml", + "test/config/integration/server_xds.rds.with_unknown_field.yaml", + }; + initialize(); + EXPECT_EQ(1, test_server_->counter("listener_manager.lds.update_success")->value()); + if (reject_unknown_dynamic_fields_) { + EXPECT_EQ(0, test_server_->counter("http.router.rds.route_config_0.update_success")->value()); + // FilesystemSubscriptionImpl will reject early at the ingestion level + EXPECT_EQ(1, test_server_->counter("http.router.rds.route_config_0.update_failure")->value()); + EXPECT_EQ(0, test_server_->counter("server.dynamic_unknown_fields")->value()); + } else { + EXPECT_EQ(1, test_server_->counter("http.router.rds.route_config_0.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("server.dynamic_unknown_fields")->value()); + } + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("cluster.cluster_1.update_success")->value()); +} + +// Unknown fields in EDS cause config load failure if and only if strict. +TEST_P(DynamicValidationIntegrationTest, EdsFailedBySubscription) { + api_filesystem_config_ = { + "test/config/integration/server_xds.bootstrap.yaml", + "test/config/integration/server_xds.cds.yaml", + "test/config/integration/server_xds.eds.with_unknown_field.yaml", + "test/config/integration/server_xds.lds.yaml", + "test/config/integration/server_xds.rds.yaml", + }; + initialize(); + EXPECT_EQ(1, test_server_->counter("listener_manager.lds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("http.router.rds.route_config_0.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_success")->value()); + if (reject_unknown_dynamic_fields_) { + EXPECT_EQ(0, test_server_->counter("cluster.cluster_1.update_success")->value()); + // FilesystemSubscriptionImpl will reject early at the ingestion level + EXPECT_EQ(1, test_server_->counter("cluster.cluster_1.update_failure")->value()); + EXPECT_EQ(0, test_server_->counter("server.dynamic_unknown_fields")->value()); + } else { + EXPECT_EQ(1, test_server_->counter("cluster.cluster_1.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("server.dynamic_unknown_fields")->value()); + } +} + +} // namespace +} // namespace Envoy diff --git a/test/integration/fake_upstream.cc b/test/integration/fake_upstream.cc index fd970b6de8f1c..9326f114d7950 100644 --- a/test/integration/fake_upstream.cc +++ b/test/integration/fake_upstream.cc @@ -73,22 +73,30 @@ void FakeStream::decodeMetadata(Http::MetadataMapPtr&& metadata_map_ptr) { } void FakeStream::encode100ContinueHeaders(const Http::HeaderMapImpl& headers) { - std::shared_ptr headers_copy( + // TSan complains about thread-safety of std::shared_ptr when linked against libc++. + // See: https://github.com/envoyproxy/envoy/pull/7929 + std::unique_ptr headers_copy( new Http::HeaderMapImpl(static_cast(headers))); - parent_.connection().dispatcher().post( - [this, headers_copy]() -> void { encoder_.encode100ContinueHeaders(*headers_copy); }); + parent_.connection().dispatcher().post([this, headers = headers_copy.release()]() -> void { + encoder_.encode100ContinueHeaders(*headers); + delete headers; + }); } void FakeStream::encodeHeaders(const Http::HeaderMapImpl& headers, bool end_stream) { - std::shared_ptr headers_copy( + // TSan complains about thread-safety of std::shared_ptr when linked against libc++. + // See: https://github.com/envoyproxy/envoy/pull/7929 + std::unique_ptr headers_copy( new Http::HeaderMapImpl(static_cast(headers))); if (add_served_by_header_) { headers_copy->addCopy(Http::LowerCaseString("x-served-by"), parent_.connection().localAddress()->asString()); } - parent_.connection().dispatcher().post([this, headers_copy, end_stream]() -> void { - encoder_.encodeHeaders(*headers_copy, end_stream); - }); + parent_.connection().dispatcher().post( + [this, headers = headers_copy.release(), end_stream]() -> void { + encoder_.encodeHeaders(*headers, end_stream); + delete headers; + }); } void FakeStream::encodeData(absl::string_view data, bool end_stream) { @@ -106,16 +114,24 @@ void FakeStream::encodeData(uint64_t size, bool end_stream) { } void FakeStream::encodeData(Buffer::Instance& data, bool end_stream) { - std::shared_ptr data_copy(new Buffer::OwnedImpl(data)); - parent_.connection().dispatcher().post( - [this, data_copy, end_stream]() -> void { encoder_.encodeData(*data_copy, end_stream); }); + // TSan complains about thread-safety of std::shared_ptr when linked against libc++. + // See: https://github.com/envoyproxy/envoy/pull/7929 + std::unique_ptr data_copy(new Buffer::OwnedImpl(data)); + parent_.connection().dispatcher().post([this, data = data_copy.release(), end_stream]() -> void { + encoder_.encodeData(*data, end_stream); + delete data; + }); } void FakeStream::encodeTrailers(const Http::HeaderMapImpl& trailers) { - std::shared_ptr trailers_copy( + // TSan complains about thread-safety of std::shared_ptr when linked against libc++. + // See: https://github.com/envoyproxy/envoy/pull/7929 + std::unique_ptr trailers_copy( new Http::HeaderMapImpl(static_cast(trailers))); - parent_.connection().dispatcher().post( - [this, trailers_copy]() -> void { encoder_.encodeTrailers(*trailers_copy); }); + parent_.connection().dispatcher().post([this, trailers = trailers_copy.release()]() -> void { + encoder_.encodeTrailers(*trailers); + delete trailers; + }); } void FakeStream::encodeResetStream() { @@ -217,18 +233,20 @@ void FakeStream::finishGrpcStream(Grpc::Status::GrpcStatus status) { FakeHttpConnection::FakeHttpConnection(SharedConnectionWrapper& shared_connection, Stats::Store& store, Type type, Event::TestTimeSystem& time_system, - uint32_t max_request_headers_kb) + uint32_t max_request_headers_kb, + uint32_t max_request_headers_count) : FakeConnectionBase(shared_connection, time_system) { if (type == Type::HTTP1) { codec_ = std::make_unique( shared_connection_.connection(), store, *this, Http::Http1Settings(), - max_request_headers_kb); + max_request_headers_kb, max_request_headers_count); } else { auto settings = Http::Http2Settings(); settings.allow_connect_ = true; settings.allow_metadata_ = true; codec_ = std::make_unique( - shared_connection_.connection(), *this, store, settings, max_request_headers_kb); + shared_connection_.connection(), *this, store, settings, max_request_headers_kb, + max_request_headers_count); ASSERT(type == Type::HTTP2); } @@ -450,7 +468,8 @@ void FakeUpstream::threadRoutine() { AssertionResult FakeUpstream::waitForHttpConnection(Event::Dispatcher& client_dispatcher, FakeHttpConnectionPtr& connection, milliseconds timeout, - uint32_t max_request_headers_kb) { + uint32_t max_request_headers_kb, + uint32_t max_request_headers_count) { Event::TestTimeSystem& time_system = timeSystem(); auto end_time = time_system.monotonicTime() + timeout; { @@ -470,7 +489,8 @@ AssertionResult FakeUpstream::waitForHttpConnection(Event::Dispatcher& client_di return AssertionFailure() << "Got a new connection event, but didn't create a connection."; } connection = std::make_unique(consumeConnection(), stats_store_, http_type_, - time_system, max_request_headers_kb); + time_system, max_request_headers_kb, + max_request_headers_count); } VERIFY_ASSERTION(connection->initialize()); VERIFY_ASSERTION(connection->readDisable(false)); @@ -482,7 +502,7 @@ FakeUpstream::waitForHttpConnection(Event::Dispatcher& client_dispatcher, std::vector>& upstreams, FakeHttpConnectionPtr& connection, milliseconds timeout) { if (upstreams.empty()) { - return AssertionFailure() << "No upstreams confgured."; + return AssertionFailure() << "No upstreams configured."; } Event::TestTimeSystem& time_system = upstreams[0]->timeSystem(); auto end_time = time_system.monotonicTime() + timeout; @@ -500,7 +520,8 @@ FakeUpstream::waitForHttpConnection(Event::Dispatcher& client_dispatcher, } else { connection = std::make_unique( upstream.consumeConnection(), upstream.stats_store_, upstream.http_type_, - upstream.timeSystem(), Http::DEFAULT_MAX_REQUEST_HEADERS_KB); + upstream.timeSystem(), Http::DEFAULT_MAX_REQUEST_HEADERS_KB, + Http::DEFAULT_MAX_HEADERS_COUNT); lock.release(); VERIFY_ASSERTION(connection->initialize()); VERIFY_ASSERTION(connection->readDisable(false)); diff --git a/test/integration/fake_upstream.h b/test/integration/fake_upstream.h index ce1b6e24be48d..e5462e4a5abf3 100644 --- a/test/integration/fake_upstream.h +++ b/test/integration/fake_upstream.h @@ -411,7 +411,8 @@ class FakeHttpConnection : public Http::ServerConnectionCallbacks, public FakeCo enum class Type { HTTP1, HTTP2 }; FakeHttpConnection(SharedConnectionWrapper& shared_connection, Stats::Store& store, Type type, - Event::TestTimeSystem& time_system, uint32_t max_request_headers_kb); + Event::TestTimeSystem& time_system, uint32_t max_request_headers_kb, + uint32_t max_request_headers_count); // By default waitForNewStream assumes the next event is a new stream and // returns AssertionFailure if an unexpected event occurs. If a caller truly @@ -540,7 +541,8 @@ class FakeUpstream : Logger::Loggable, testing::AssertionResult waitForHttpConnection(Event::Dispatcher& client_dispatcher, FakeHttpConnectionPtr& connection, std::chrono::milliseconds timeout = TestUtility::DefaultTimeout, - uint32_t max_request_headers_kb = Http::DEFAULT_MAX_REQUEST_HEADERS_KB); + uint32_t max_request_headers_kb = Http::DEFAULT_MAX_REQUEST_HEADERS_KB, + uint32_t max_request_headers_count = Http::DEFAULT_MAX_HEADERS_COUNT); ABSL_MUST_USE_RESULT testing::AssertionResult diff --git a/test/integration/http2_integration_test.cc b/test/integration/http2_integration_test.cc index 197522b3cd590..c6c3c25ef56d8 100644 --- a/test/integration/http2_integration_test.cc +++ b/test/integration/http2_integration_test.cc @@ -64,6 +64,8 @@ TEST_P(Http2IntegrationTest, Retry) { testRetry(); } TEST_P(Http2IntegrationTest, RetryAttemptCount) { testRetryAttemptCountHeader(); } +TEST_P(Http2IntegrationTest, LargeRequestTrailersRejected) { testLargeRequestTrailers(66, 60); } + static std::string response_metadata_filter = R"EOF( name: response-metadata-filter config: {} @@ -1272,6 +1274,37 @@ void Http2RingHashIntegrationTest::sendMultipleRequests( } } +// Test cookie value parsing +TEST_P(Http2RingHashIntegrationTest, testLargeCookieParsing) { + config_helper_.addConfigModifier( + [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) + -> void { + auto* hash_policy = hcm.mutable_route_config() + ->mutable_virtual_hosts(0) + ->mutable_routes(0) + ->mutable_route() + ->add_hash_policy(); + auto* cookie = hash_policy->mutable_cookie(); + cookie->set_name("foo"); + }); + + Http::TestHeaderMapImpl headers({{":method", "POST"}, + {":path", "/test/long/url"}, + {":scheme", "http"}, + {":authority", "host"}}); + for (int i = 0; i < 1000; i++) { + headers.addCopy("cookie", "foo=bar" + std::to_string(i)); + } + num_upstreams_ = 2; + std::set served_by; + sendMultipleRequests(128, headers, [&](IntegrationStreamDecoder& response) { + EXPECT_EQ("200", response.headers().Status()->value().getStringView()); + EXPECT_TRUE(response.headers().get(Http::Headers::get().SetCookie) == nullptr); + served_by.insert(std::string( + response.headers().get(Http::LowerCaseString("x-served-by"))->value().getStringView())); + }); +} + TEST_P(Http2RingHashIntegrationTest, CookieRoutingNoCookieNoTtl) { config_helper_.addConfigModifier( [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) diff --git a/test/integration/http2_upstream_integration_test.cc b/test/integration/http2_upstream_integration_test.cc index 15303a0a6f94e..b5716c3fadb8c 100644 --- a/test/integration/http2_upstream_integration_test.cc +++ b/test/integration/http2_upstream_integration_test.cc @@ -373,4 +373,67 @@ name: envoy.router EXPECT_TRUE(response->complete()); } +// Tests the default limit for the number of response headers is 100. Results in a stream reset if +// exceeds. +TEST_P(Http2UpstreamIntegrationTest, TestManyResponseHeadersRejected) { + // Default limit for response headers is 100. + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + + Http::TestHeaderMapImpl many_headers(default_response_headers_); + for (int i = 0; i < 100; i++) { + many_headers.addCopy("many", std::string(1, 'a')); + } + auto response = codec_client_->makeHeaderOnlyRequest(default_request_headers_); + waitForNextUpstreamRequest(); + + upstream_request_->encodeHeaders(many_headers, true); + response->waitForEndStream(); + // Upstream stream reset triggered. + EXPECT_EQ("503", response->headers().Status()->value().getStringView()); +} + +// Tests bootstrap configuration of max response headers. +TEST_P(Http2UpstreamIntegrationTest, ManyResponseHeadersAccepted) { + // Set max response header count to 200. + config_helper_.addConfigModifier([](envoy::config::bootstrap::v2::Bootstrap& bootstrap) { + auto* static_resources = bootstrap.mutable_static_resources(); + auto* cluster = static_resources->mutable_clusters(0); + auto* http_protocol_options = cluster->mutable_common_http_protocol_options(); + http_protocol_options->mutable_max_headers_count()->set_value(200); + }); + Http::TestHeaderMapImpl response_headers(default_response_headers_); + for (int i = 0; i < 150; i++) { + response_headers.addCopy(std::to_string(i), std::string(1, 'a')); + } + + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + auto response = codec_client_->makeRequestWithBody(default_request_headers_, 1024); + waitForNextUpstreamRequest(); + + upstream_request_->encodeHeaders(response_headers, false); + upstream_request_->encodeData(512, true); + response->waitForEndStream(); + + EXPECT_TRUE(upstream_request_->complete()); + EXPECT_TRUE(response->complete()); +} + +// Tests that HTTP/2 response headers over 60 kB are rejected and result in a stream reset. +TEST_P(Http2UpstreamIntegrationTest, LargeResponseHeadersRejected) { + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + + Http::TestHeaderMapImpl large_headers(default_response_headers_); + large_headers.addCopy("large", std::string(60 * 1024, 'a')); + auto response = codec_client_->makeHeaderOnlyRequest(default_request_headers_); + waitForNextUpstreamRequest(); + + upstream_request_->encodeHeaders(large_headers, true); + response->waitForEndStream(); + // Upstream stream reset. + EXPECT_EQ("503", response->headers().Status()->value().getStringView()); +} + } // namespace Envoy diff --git a/test/integration/http2_upstream_integration_test.h b/test/integration/http2_upstream_integration_test.h index efb55c2227664..d942f88618461 100644 --- a/test/integration/http2_upstream_integration_test.h +++ b/test/integration/http2_upstream_integration_test.h @@ -16,6 +16,8 @@ class Http2UpstreamIntegrationTest : public testing::TestWithParam cluster{new NiceMock()}; + cluster->max_response_headers_count_ = 200; cluster->http2_settings_.allow_connect_ = true; cluster->http2_settings_.allow_metadata_ = true; Upstream::HostDescriptionConstSharedPtr host_description{Upstream::makeTestHostDescription( @@ -266,7 +267,8 @@ void HttpIntegrationTest::setDownstreamProtocol(Http::CodecClient::Type downstre IntegrationStreamDecoderPtr HttpIntegrationTest::sendRequestAndWaitForResponse( const Http::TestHeaderMapImpl& request_headers, uint32_t request_body_size, - const Http::TestHeaderMapImpl& response_headers, uint32_t response_size, int upstream_index) { + const Http::TestHeaderMapImpl& response_headers, uint32_t response_size, int upstream_index, + std::chrono::milliseconds time) { ASSERT(codec_client_ != nullptr); // Send the request to Envoy. IntegrationStreamDecoderPtr response; @@ -275,7 +277,7 @@ IntegrationStreamDecoderPtr HttpIntegrationTest::sendRequestAndWaitForResponse( } else { response = codec_client_->makeHeaderOnlyRequest(request_headers); } - waitForNextUpstreamRequest(upstream_index); + waitForNextUpstreamRequest(upstream_index, time); // Send response headers, and end_stream if there is no response body. upstream_request_->encodeHeaders(response_headers, response_size == 0); // Send any response data, with end_stream true. @@ -304,20 +306,24 @@ void HttpIntegrationTest::cleanupUpstreamAndDownstream() { } } -uint64_t -HttpIntegrationTest::waitForNextUpstreamRequest(const std::vector& upstream_indices) { +uint64_t HttpIntegrationTest::waitForNextUpstreamRequest( + const std::vector& upstream_indices, + std::chrono::milliseconds /*connection_wait_timeout*/) { uint64_t upstream_with_request; // If there is no upstream connection, wait for it to be established. if (!fake_upstream_connection_) { - AssertionResult result = AssertionFailure(); - for (auto upstream_index : upstream_indices) { - result = fake_upstreams_[upstream_index]->waitForHttpConnection( - *dispatcher_, fake_upstream_connection_, TestUtility::DefaultTimeout, - max_request_headers_kb_); - if (result) { - upstream_with_request = upstream_index; - break; + while (!result) { + // wait until success + for (auto upstream_index : upstream_indices) { + result = fake_upstreams_[upstream_index]->waitForHttpConnection( + *dispatcher_, fake_upstream_connection_, std::chrono::milliseconds{5}, + max_request_headers_kb_, max_request_headers_count_); + if (result) { + upstream_with_request = upstream_index; + ENVOY_LOG(debug, "upstream {} has incoming connection", upstream_index); + break; + } } } RELEASE_ASSERT(result, result.message()); @@ -333,8 +339,9 @@ HttpIntegrationTest::waitForNextUpstreamRequest(const std::vector& ups return upstream_with_request; } -void HttpIntegrationTest::waitForNextUpstreamRequest(uint64_t upstream_index) { - waitForNextUpstreamRequest(std::vector({upstream_index})); +void HttpIntegrationTest::waitForNextUpstreamRequest( + uint64_t upstream_index, std::chrono::milliseconds connection_wait_timeout) { + waitForNextUpstreamRequest(std::vector({upstream_index}), connection_wait_timeout); } void HttpIntegrationTest::checkSimpleRequestSuccess(uint64_t expected_request_size, @@ -851,24 +858,33 @@ void HttpIntegrationTest::testTwoRequests(bool network_backup) { EXPECT_EQ(1024U, response->body().size()); } -void HttpIntegrationTest::testLargeRequestHeaders(uint32_t size, uint32_t max_size) { - // `size` parameter is the size of the header that will be added to the - // request. The actual request byte size will exceed `size` due to keys - // and other headers. +void HttpIntegrationTest::testLargeRequestHeaders(uint32_t size, uint32_t count, uint32_t max_size, + uint32_t max_count) { + // `size` parameter dictates the size of each header that will be added to the request and `count` + // parameter is the number of headers to be added. The actual request byte size will exceed `size` + // due to the keys and other headers. The actual request header count will exceed `count` by four + // due to default headers. config_helper_.addConfigModifier( [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) - -> void { hcm.mutable_max_request_headers_kb()->set_value(max_size); }); + -> void { + hcm.mutable_max_request_headers_kb()->set_value(max_size); + hcm.mutable_common_http_protocol_options()->mutable_max_headers_count()->set_value( + max_count); + }); max_request_headers_kb_ = max_size; + max_request_headers_count_ = max_count; Http::TestHeaderMapImpl big_headers{ {":method", "GET"}, {":path", "/test/long/url"}, {":scheme", "http"}, {":authority", "host"}}; + // Already added four headers. + for (unsigned int i = 0; i < count; i++) { + big_headers.addCopy(std::to_string(i), std::string(size * 1024, 'a')); + } - big_headers.addCopy("big", std::string(size * 1024, 'a')); initialize(); - codec_client_ = makeHttpConnection(lookupPort("http")); - if (size >= max_size) { + if (size >= max_size || count > max_count) { // header size includes keys too, so expect rejection when equal auto encoder_decoder = codec_client_->startRequest(big_headers); auto response = std::move(encoder_decoder.second); @@ -888,6 +904,71 @@ void HttpIntegrationTest::testLargeRequestHeaders(uint32_t size, uint32_t max_si } } +void HttpIntegrationTest::testLargeRequestTrailers(uint32_t size, uint32_t max_size) { + // `size` parameter is the size of the trailer that will be added to the + // request. The actual request byte size will exceed `size` due to keys + // and other headers. + + config_helper_.addConfigModifier( + [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) + -> void { hcm.mutable_max_request_headers_kb()->set_value(max_size); }); + max_request_headers_kb_ = max_size; + Http::TestHeaderMapImpl request_trailers{{"trailer", "trailer"}}; + request_trailers.addCopy("big", std::string(size * 1024, 'a')); + + initialize(); + + codec_client_ = makeHttpConnection(lookupPort("http")); + fake_upstreams_[0]->set_allow_unexpected_disconnects(true); + + auto encoder_decoder = codec_client_->startRequest(default_request_headers_); + request_encoder_ = &encoder_decoder.first; + auto response = std::move(encoder_decoder.second); + codec_client_->sendData(*request_encoder_, 10, false); + codec_client_->sendTrailers(*request_encoder_, request_trailers); + + if (size >= max_size && downstream_protocol_ == Http::CodecClient::Type::HTTP2) { + // For HTTP/2, expect a stream reset when the size of the trailers is larger than the maximum + // limit. + response->waitForReset(); + codec_client_->close(); + EXPECT_FALSE(response->complete()); + + } else { + waitForNextUpstreamRequest(); + upstream_request_->encodeHeaders(default_response_headers_, true); + response->waitForEndStream(); + EXPECT_TRUE(response->complete()); + } +} + +void HttpIntegrationTest::testManyRequestHeaders(std::chrono::milliseconds time) { + config_helper_.addConfigModifier( + [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) + -> void { + hcm.mutable_max_request_headers_kb()->set_value(96); + hcm.mutable_common_http_protocol_options()->mutable_max_headers_count()->set_value(20100); + }); + max_request_headers_kb_ = 96; + max_request_headers_count_ = 201000; + + Http::TestHeaderMapImpl big_headers{ + {":method", "GET"}, {":path", "/test/long/url"}, {":scheme", "http"}, {":authority", "host"}}; + + for (int i = 0; i < 20000; i++) { + big_headers.addCopy(std::to_string(i), std::string(0, 'a')); + } + initialize(); + + codec_client_ = makeHttpConnection(lookupPort("http")); + + auto response = + sendRequestAndWaitForResponse(big_headers, 0, default_response_headers_, 0, 0, time); + + EXPECT_TRUE(response->complete()); + EXPECT_EQ("200", response->headers().Status()->value().getStringView()); +} + void HttpIntegrationTest::testDownstreamResetBeforeResponseComplete() { initialize(); codec_client_ = makeHttpConnection(lookupPort("http")); diff --git a/test/integration/http_integration.h b/test/integration/http_integration.h index bbeda044911eb..f9dea3e369464 100644 --- a/test/integration/http_integration.h +++ b/test/integration/http_integration.h @@ -122,18 +122,21 @@ class HttpIntegrationTest : public BaseIntegrationTest { // // Waits for the complete downstream response before returning. // Requires |codec_client_| to be initialized. - IntegrationStreamDecoderPtr - sendRequestAndWaitForResponse(const Http::TestHeaderMapImpl& request_headers, - uint32_t request_body_size, - const Http::TestHeaderMapImpl& response_headers, - uint32_t response_body_size, int upstream_index = 0); + IntegrationStreamDecoderPtr sendRequestAndWaitForResponse( + const Http::TestHeaderMapImpl& request_headers, uint32_t request_body_size, + const Http::TestHeaderMapImpl& response_headers, uint32_t response_body_size, + int upstream_index = 0, std::chrono::milliseconds time = TestUtility::DefaultTimeout); // Wait for the end of stream on the next upstream stream on any of the provided fake upstreams. // Sets fake_upstream_connection_ to the connection and upstream_request_ to stream. // In cases where the upstream that will receive the request is not deterministic, a second // upstream index may be provided, in which case both upstreams will be checked for requests. - uint64_t waitForNextUpstreamRequest(const std::vector& upstream_indices); - void waitForNextUpstreamRequest(uint64_t upstream_index = 0); + uint64_t waitForNextUpstreamRequest( + const std::vector& upstream_indices, + std::chrono::milliseconds connection_wait_timeout = TestUtility::DefaultTimeout); + void waitForNextUpstreamRequest( + uint64_t upstream_index = 0, + std::chrono::milliseconds connection_wait_timeout = TestUtility::DefaultTimeout); // Close |codec_client_| and |fake_upstream_connection_| cleanly. void cleanupUpstreamAndDownstream(); @@ -171,7 +174,12 @@ class HttpIntegrationTest : public BaseIntegrationTest { void testRouterUpstreamResponseBeforeRequestComplete(); void testTwoRequests(bool force_network_backup = false); - void testLargeRequestHeaders(uint32_t size, uint32_t max_size = 60); + void testLargeHeaders(Http::TestHeaderMapImpl request_headers, + Http::TestHeaderMapImpl request_trailers, uint32_t size, uint32_t max_size); + void testLargeRequestHeaders(uint32_t size, uint32_t count, uint32_t max_size = 60, + uint32_t max_count = 100); + void testLargeRequestTrailers(uint32_t size, uint32_t max_size = 60); + void testManyRequestHeaders(std::chrono::milliseconds time = TestUtility::DefaultTimeout); void testAddEncodedTrailers(); void testRetry(); @@ -207,6 +215,7 @@ class HttpIntegrationTest : public BaseIntegrationTest { // The codec type for the client-to-Envoy connection Http::CodecClient::Type downstream_protocol_{Http::CodecClient::Type::HTTP1}; uint32_t max_request_headers_kb_{Http::DEFAULT_MAX_REQUEST_HEADERS_KB}; + uint32_t max_request_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; std::string access_log_name_; }; } // namespace Envoy diff --git a/test/integration/integration.cc b/test/integration/integration.cc index 5f5151093908e..5fbcc86b7183c 100644 --- a/test/integration/integration.cc +++ b/test/integration/integration.cc @@ -353,7 +353,7 @@ void BaseIntegrationTest::createEnvoy() { for (int i = 0; i < static_resources.listeners_size(); ++i) { named_ports.push_back(static_resources.listeners(i).name()); } - createGeneratedApiTestServer(bootstrap_path, named_ports); + createGeneratedApiTestServer(bootstrap_path, named_ports, false, true, false); } void BaseIntegrationTest::setUpstreamProtocol(FakeHttpConnection::Type protocol) { @@ -415,10 +415,14 @@ void BaseIntegrationTest::registerTestServerPorts(const std::vector } void BaseIntegrationTest::createGeneratedApiTestServer(const std::string& bootstrap_path, - const std::vector& port_names) { - test_server_ = IntegrationTestServer::create(bootstrap_path, version_, on_server_init_function_, - deterministic_, timeSystem(), *api_, - defer_listener_finalization_, process_object_); + const std::vector& port_names, + bool allow_unknown_static_fields, + bool reject_unknown_dynamic_fields, + bool allow_lds_rejection) { + test_server_ = IntegrationTestServer::create( + bootstrap_path, version_, on_server_init_function_, deterministic_, timeSystem(), *api_, + defer_listener_finalization_, process_object_, allow_unknown_static_fields, + reject_unknown_dynamic_fields); if (config_helper_.bootstrap().static_resources().listeners_size() > 0 && !defer_listener_finalization_) { @@ -426,15 +430,19 @@ void BaseIntegrationTest::createGeneratedApiTestServer(const std::string& bootst // needs to know about the bound listener ports. auto end_time = time_system_.monotonicTime() + TestUtility::DefaultTimeout; const char* success = "listener_manager.listener_create_success"; - const char* failure = "listener_manager.lds.update_rejected"; - while (test_server_->counter(success) == nullptr || - test_server_->counter(success)->value() == 0) { + const char* rejected = "listener_manager.lds.update_rejected"; + while ((test_server_->counter(success) == nullptr || + test_server_->counter(success)->value() == 0) && + (!allow_lds_rejection || test_server_->counter(rejected) == nullptr || + test_server_->counter(rejected)->value() == 0)) { if (time_system_.monotonicTime() >= end_time) { RELEASE_ASSERT(0, "Timed out waiting for listeners."); } - RELEASE_ASSERT(test_server_->counter(failure) == nullptr || - test_server_->counter(failure)->value() == 0, - "Lds update failed"); + if (!allow_lds_rejection) { + RELEASE_ASSERT(test_server_->counter(rejected) == nullptr || + test_server_->counter(rejected)->value() == 0, + "Lds update failed"); + } time_system_.sleep(std::chrono::milliseconds(10)); } @@ -443,7 +451,10 @@ void BaseIntegrationTest::createGeneratedApiTestServer(const std::string& bootst } void BaseIntegrationTest::createApiTestServer(const ApiFilesystemConfig& api_filesystem_config, - const std::vector& port_names) { + const std::vector& port_names, + bool allow_unknown_static_fields, + bool reject_unknown_dynamic_fields, + bool allow_lds_rejection) { const std::string eds_path = TestEnvironment::temporaryFileSubstitute( api_filesystem_config.eds_path_, port_map_, version_); const std::string cds_path = TestEnvironment::temporaryFileSubstitute( @@ -452,11 +463,11 @@ void BaseIntegrationTest::createApiTestServer(const ApiFilesystemConfig& api_fil api_filesystem_config.rds_path_, port_map_, version_); const std::string lds_path = TestEnvironment::temporaryFileSubstitute( api_filesystem_config.lds_path_, {{"rds_json_path", rds_path}}, port_map_, version_); - createGeneratedApiTestServer(TestEnvironment::temporaryFileSubstitute( - api_filesystem_config.bootstrap_path_, - {{"cds_json_path", cds_path}, {"lds_json_path", lds_path}}, - port_map_, version_), - port_names); + createGeneratedApiTestServer( + TestEnvironment::temporaryFileSubstitute( + api_filesystem_config.bootstrap_path_, + {{"cds_json_path", cds_path}, {"lds_json_path", lds_path}}, port_map_, version_), + port_names, allow_unknown_static_fields, reject_unknown_dynamic_fields, allow_lds_rejection); } void BaseIntegrationTest::createTestServer(const std::string& json_path, @@ -540,11 +551,11 @@ AssertionResult BaseIntegrationTest::compareDiscoveryRequest( const std::string& expected_type_url, const std::string& expected_version, const std::vector& expected_resource_names, const std::vector& expected_resource_names_added, - const std::vector& expected_resource_names_removed, + const std::vector& expected_resource_names_removed, bool expect_node, const Protobuf::int32 expected_error_code, const std::string& expected_error_message) { if (sotw_or_delta_ == Grpc::SotwOrDelta::Sotw) { return compareSotwDiscoveryRequest(expected_type_url, expected_version, expected_resource_names, - expected_error_code, expected_error_message); + expect_node, expected_error_code, expected_error_message); } else { return compareDeltaDiscoveryRequest(expected_type_url, expected_resource_names_added, expected_resource_names_removed, expected_error_code, @@ -554,14 +565,18 @@ AssertionResult BaseIntegrationTest::compareDiscoveryRequest( AssertionResult BaseIntegrationTest::compareSotwDiscoveryRequest( const std::string& expected_type_url, const std::string& expected_version, - const std::vector& expected_resource_names, + const std::vector& expected_resource_names, bool expect_node, const Protobuf::int32 expected_error_code, const std::string& expected_error_message) { envoy::api::v2::DiscoveryRequest discovery_request; VERIFY_ASSERTION(xds_stream_->waitForGrpcMessage(*dispatcher_, discovery_request)); - EXPECT_TRUE(discovery_request.has_node()); - EXPECT_FALSE(discovery_request.node().id().empty()); - EXPECT_FALSE(discovery_request.node().cluster().empty()); + if (expect_node) { + EXPECT_TRUE(discovery_request.has_node()); + EXPECT_FALSE(discovery_request.node().id().empty()); + EXPECT_FALSE(discovery_request.node().cluster().empty()); + } else { + EXPECT_FALSE(discovery_request.has_node()); + } if (expected_type_url != discovery_request.type_url()) { return AssertionFailure() << fmt::format("type_url {} does not match expected {}", diff --git a/test/integration/integration.h b/test/integration/integration.h index baa0330f40266..4903edba34885 100644 --- a/test/integration/integration.h +++ b/test/integration/integration.h @@ -193,9 +193,13 @@ class BaseIntegrationTest : protected Logger::Loggable { void registerTestServerPorts(const std::vector& port_names); void createTestServer(const std::string& json_path, const std::vector& port_names); void createGeneratedApiTestServer(const std::string& bootstrap_path, - const std::vector& port_names); + const std::vector& port_names, + bool allow_unknown_static_fields, + bool reject_unknown_dynamic_fields, bool allow_lds_rejection); void createApiTestServer(const ApiFilesystemConfig& api_filesystem_config, - const std::vector& port_names); + const std::vector& port_names, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields, + bool allow_lds_rejection); Event::TestTimeSystem& timeSystem() { return time_system_; } @@ -218,6 +222,7 @@ class BaseIntegrationTest : protected Logger::Loggable { const std::vector& expected_resource_names, const std::vector& expected_resource_names_added, const std::vector& expected_resource_names_removed, + bool expect_node = false, const Protobuf::int32 expected_error_code = Grpc::Status::GrpcStatus::Ok, const std::string& expected_error_message = ""); template @@ -250,7 +255,7 @@ class BaseIntegrationTest : protected Logger::Loggable { const std::string& expected_error_message = ""); AssertionResult compareSotwDiscoveryRequest( const std::string& expected_type_url, const std::string& expected_version, - const std::vector& expected_resource_names, + const std::vector& expected_resource_names, bool expect_node = false, const Protobuf::int32 expected_error_code = Grpc::Status::GrpcStatus::Ok, const std::string& expected_error_message = ""); diff --git a/test/integration/protocol_integration_test.cc b/test/integration/protocol_integration_test.cc index 5d6bd41de4069..e086b90a235de 100644 --- a/test/integration/protocol_integration_test.cc +++ b/test/integration/protocol_integration_test.cc @@ -847,11 +847,131 @@ name: decode-headers-only } TEST_P(DownstreamProtocolIntegrationTest, LargeRequestHeadersRejected) { - testLargeRequestHeaders(95, 60); + // Send one 95 kB header with limit 60 kB and 100 headers. + testLargeRequestHeaders(95, 1, 60, 100); } TEST_P(DownstreamProtocolIntegrationTest, LargeRequestHeadersAccepted) { - testLargeRequestHeaders(95, 96); + // Send one 95 kB header with limit 96 kB and 100 headers. + testLargeRequestHeaders(95, 1, 96, 100); +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyRequestHeadersRejected) { + // Send 101 empty headers with limit 60 kB and 100 headers. + testLargeRequestHeaders(0, 101, 60, 80); +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyRequestHeadersAccepted) { + // Send 145 empty headers with limit 60 kB and 150 headers. + testLargeRequestHeaders(0, 140, 60, 150); +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyRequestTrailersRejected) { + // Default header (and trailer) count limit is 100. + Http::TestHeaderMapImpl request_trailers; + for (int i = 0; i < 150; i++) { + request_trailers.addCopy("trailer", std::string(1, 'a')); + } + + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + auto encoder_decoder = codec_client_->startRequest(default_request_headers_); + request_encoder_ = &encoder_decoder.first; + auto response = std::move(encoder_decoder.second); + codec_client_->sendData(*request_encoder_, 1, false); + codec_client_->sendTrailers(*request_encoder_, request_trailers); + + // Only relevant to Http2Downstream. + if (downstream_protocol_ == Http::CodecClient::Type::HTTP1) { + // Http1 Downstream ignores trailers. + waitForNextUpstreamRequest(); + upstream_request_->encodeHeaders(default_response_headers_, true); + response->waitForEndStream(); + EXPECT_TRUE(response->complete()); + EXPECT_EQ("200", response->headers().Status()->value().getStringView()); + } else { + // Expect rejection. + ASSERT_TRUE(fake_upstreams_[0]->waitForHttpConnection(*dispatcher_, fake_upstream_connection_)); + response->waitForReset(); + ASSERT_TRUE(fake_upstream_connection_->close()); + ASSERT_TRUE(fake_upstream_connection_->waitForDisconnect()); + } +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyRequestTrailersAccepted) { + // Set header (and trailer) count limit to 200. + uint32_t max_count = 200; + config_helper_.addConfigModifier( + [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) + -> void { + hcm.mutable_common_http_protocol_options()->mutable_max_headers_count()->set_value( + max_count); + }); + max_request_headers_count_ = max_count; + Http::TestHeaderMapImpl request_trailers; + for (int i = 0; i < 150; i++) { + request_trailers.addCopy("trailer", std::string(1, 'a')); + } + + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + auto encoder_decoder = codec_client_->startRequest(default_request_headers_); + request_encoder_ = &encoder_decoder.first; + auto response = std::move(encoder_decoder.second); + codec_client_->sendData(*request_encoder_, 1, false); + codec_client_->sendTrailers(*request_encoder_, request_trailers); + waitForNextUpstreamRequest(); + upstream_request_->encodeHeaders(default_response_headers_, true); + response->waitForEndStream(); + EXPECT_TRUE(response->complete()); + EXPECT_EQ("200", response->headers().Status()->value().getStringView()); +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyRequestHeadersTimeout) { + // Set timeout for 5 seconds, and ensure that a request with 20k+ headers can be sent. + testManyRequestHeaders(std::chrono::milliseconds(5000)); +} + +TEST_P(DownstreamProtocolIntegrationTest, LargeRequestTrailersAccepted) { + testLargeRequestTrailers(60, 96); +} + +TEST_P(DownstreamProtocolIntegrationTest, LargeRequestTrailersRejected) { + testLargeRequestTrailers(66, 60); +} + +TEST_P(DownstreamProtocolIntegrationTest, ManyTrailerHeaders) { + config_helper_.addConfigModifier( + [&](envoy::config::filter::network::http_connection_manager::v2::HttpConnectionManager& hcm) + -> void { + hcm.mutable_max_request_headers_kb()->set_value(96); + hcm.mutable_common_http_protocol_options()->mutable_max_headers_count()->set_value(20100); + }); + max_request_headers_kb_ = 96; + max_request_headers_count_ = 201000; + + Http::TestHeaderMapImpl request_trailers{}; + for (int i = 0; i < 20000; i++) { + request_trailers.addCopy(std::to_string(i), ""); + } + + initialize(); + codec_client_ = makeHttpConnection(lookupPort("http")); + auto encoder_decoder = + codec_client_->startRequest(Http::TestHeaderMapImpl{{":method", "POST"}, + {":path", "/test/long/url"}, + {":scheme", "http"}, + {":authority", "host"}}); + request_encoder_ = &encoder_decoder.first; + auto response = std::move(encoder_decoder.second); + codec_client_->sendTrailers(*request_encoder_, request_trailers); + waitForNextUpstreamRequest(); + upstream_request_->encodeHeaders(default_response_headers_, true); + response->waitForEndStream(); + + EXPECT_TRUE(upstream_request_->complete()); + EXPECT_TRUE(response->complete()); + EXPECT_EQ("200", response->headers().Status()->value().getStringView()); } // Tests StopAllIterationAndBuffer. Verifies decode-headers-return-stop-all-filter calls decodeData diff --git a/test/integration/rtds_integration_test.cc b/test/integration/rtds_integration_test.cc index 63122162e1848..02283b3927c22 100644 --- a/test/integration/rtds_integration_test.cc +++ b/test/integration/rtds_integration_test.cc @@ -36,6 +36,7 @@ std::string tdsBootstrapConfig(absl::string_view api_type) { grpc_services: envoy_grpc: cluster_name: rtds_cluster + set_node_on_first_message_only: true - name: some_admin_layer admin_layer: {{}} admin: @@ -119,7 +120,7 @@ TEST_P(RtdsIntegrationTest, RtdsReload) { EXPECT_EQ("", getRuntimeKey("baz")); EXPECT_TRUE(compareDiscoveryRequest(Config::TypeUrl::get().Runtime, "", {"some_rtds_layer"}, - {"some_rtds_layer"}, {})); + {"some_rtds_layer"}, {}, true)); auto some_rtds_layer = TestUtility::parseYaml(R"EOF( name: some_rtds_layer layer: diff --git a/test/integration/server.cc b/test/integration/server.cc index 382332aa80c32..6161eeedf8b47 100644 --- a/test/integration/server.cc +++ b/test/integration/server.cc @@ -29,7 +29,9 @@ namespace Envoy { namespace Server { OptionsImpl createTestOptionsImpl(const std::string& config_path, const std::string& config_yaml, - Network::Address::IpVersion ip_version) { + Network::Address::IpVersion ip_version, + bool allow_unknown_static_fields, + bool reject_unknown_dynamic_fields) { OptionsImpl test_options("cluster_name", "node_name", "zone_name", spdlog::level::info); test_options.setConfigPath(config_path); @@ -38,6 +40,8 @@ OptionsImpl createTestOptionsImpl(const std::string& config_path, const std::str test_options.setFileFlushIntervalMsec(std::chrono::milliseconds(50)); test_options.setDrainTime(std::chrono::seconds(1)); test_options.setParentShutdownTime(std::chrono::seconds(2)); + test_options.setAllowUnkownFields(allow_unknown_static_fields); + test_options.setRejectUnknownFieldsDynamic(reject_unknown_dynamic_fields); return test_options; } @@ -48,11 +52,12 @@ IntegrationTestServerPtr IntegrationTestServer::create( const std::string& config_path, const Network::Address::IpVersion version, std::function on_server_init_function, bool deterministic, Event::TestTimeSystem& time_system, Api::Api& api, bool defer_listener_finalization, - absl::optional> process_object) { + absl::optional> process_object, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields) { IntegrationTestServerPtr server{ std::make_unique(time_system, api, config_path)}; server->start(version, on_server_init_function, deterministic, defer_listener_finalization, - process_object); + process_object, allow_unknown_static_fields, reject_unknown_dynamic_fields); return server; } @@ -69,13 +74,16 @@ void IntegrationTestServer::waitUntilListenersReady() { void IntegrationTestServer::start( const Network::Address::IpVersion version, std::function on_server_init_function, bool deterministic, bool defer_listener_finalization, - absl::optional> process_object) { + absl::optional> process_object, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields) { ENVOY_LOG(info, "starting integration test server"); ASSERT(!thread_); - thread_ = - api_.threadFactory().createThread([version, deterministic, process_object, this]() -> void { - threadRoutine(version, deterministic, process_object); - }); + thread_ = api_.threadFactory().createThread([version, deterministic, process_object, + allow_unknown_static_fields, + reject_unknown_dynamic_fields, this]() -> void { + threadRoutine(version, deterministic, process_object, allow_unknown_static_fields, + reject_unknown_dynamic_fields); + }); // If any steps need to be done prior to workers starting, do them now. E.g., xDS pre-init. // Note that there is no synchronization guaranteeing this happens either @@ -146,8 +154,10 @@ void IntegrationTestServer::serverReady() { void IntegrationTestServer::threadRoutine( const Network::Address::IpVersion version, bool deterministic, - absl::optional> process_object) { - OptionsImpl options(Server::createTestOptionsImpl(config_path_, "", version)); + absl::optional> process_object, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields) { + OptionsImpl options(Server::createTestOptionsImpl( + config_path_, "", version, allow_unknown_static_fields, reject_unknown_dynamic_fields)); Thread::MutexBasicLockable lock; Runtime::RandomGeneratorPtr random_generator; diff --git a/test/integration/server.h b/test/integration/server.h index 55e3c11eab237..4489c436df191 100644 --- a/test/integration/server.h +++ b/test/integration/server.h @@ -32,7 +32,9 @@ namespace Server { // Create OptionsImpl structures suitable for tests. OptionsImpl createTestOptionsImpl(const std::string& config_path, const std::string& config_yaml, - Network::Address::IpVersion ip_version); + Network::Address::IpVersion ip_version, + bool allow_unknown_static_fields = false, + bool reject_unknown_dynamic_fields = false); class TestDrainManager : public DrainManager { public: @@ -233,7 +235,8 @@ class IntegrationTestServer : public Logger::Loggable, std::function on_server_init_function, bool deterministic, Event::TestTimeSystem& time_system, Api::Api& api, bool defer_listener_finalization = false, - absl::optional> process_object = absl::nullopt); + absl::optional> process_object = absl::nullopt, + bool allow_unknown_static_fields = false, bool reject_unknown_dynamic_fields = false); // Note that the derived class is responsible for tearing down the server in its // destructor. ~IntegrationTestServer() override; @@ -252,7 +255,8 @@ class IntegrationTestServer : public Logger::Loggable, void start(const Network::Address::IpVersion version, std::function on_server_init_function, bool deterministic, bool defer_listener_finalization, - absl::optional> process_object); + absl::optional> process_object, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields); void waitForCounterEq(const std::string& name, uint64_t value) override { TestUtility::waitForCounterEq(stat_store(), name, value, time_system_); @@ -331,7 +335,8 @@ class IntegrationTestServer : public Logger::Loggable, * Runs the real server on a thread. */ void threadRoutine(const Network::Address::IpVersion version, bool deterministic, - absl::optional> process_object); + absl::optional> process_object, + bool allow_unknown_static_fields, bool reject_unknown_dynamic_fields); Event::TestTimeSystem& time_system_; Api::Api& api_; diff --git a/test/integration/stats_integration_test.cc b/test/integration/stats_integration_test.cc index cc016ffbea1ac..ceadf07bacd76 100644 --- a/test/integration/stats_integration_test.cc +++ b/test/integration/stats_integration_test.cc @@ -212,6 +212,7 @@ TEST_P(ClusterMemoryTestRunner, MemoryLargeClusterSizeWithStats) { // 2019/07/06 7477 42742 43000 fork gauge representation to drop pending_increment_ // 2019/07/15 7555 42806 43000 static link libstdc++ in tests // 2019/07/24 7503 43030 44000 add upstream filters to clusters + // 2019/08/13 7877 42838 44000 skip EdfScheduler creation if all host weights equal // Note: when adjusting this value: EXPECT_MEMORY_EQ is active only in CI // 'release' builds, where we control the platform and tool-chain. So you @@ -221,7 +222,7 @@ TEST_P(ClusterMemoryTestRunner, MemoryLargeClusterSizeWithStats) { // On a local clang8/libstdc++/linux flow, the memory usage was observed in // June 2019 to be 64 bytes higher than it is in CI/release. Your mileage may // vary. - EXPECT_MEMORY_EQ(m_per_cluster, 43030); // 104 bytes higher than a debug build. + EXPECT_MEMORY_EQ(m_per_cluster, 42838); // 104 bytes higher than a debug build. EXPECT_MEMORY_LE(m_per_cluster, 44000); } diff --git a/test/integration/tcp_conn_pool_integration_test.cc b/test/integration/tcp_conn_pool_integration_test.cc index d662c9b369dcd..84ee8287c6026 100644 --- a/test/integration/tcp_conn_pool_integration_test.cc +++ b/test/integration/tcp_conn_pool_integration_test.cc @@ -107,6 +107,7 @@ class TestFilterConfigFactory : public Server::Configuration::NamedNetworkFilter } std::string name() override { CONSTRUCT_ON_FIRST_USE(std::string, "envoy.test.router"); } + bool isTerminalFilter() override { return true; } }; } // namespace diff --git a/test/integration/vhds_integration_test.cc b/test/integration/vhds_integration_test.cc index f31fbb9ef9b4c..83c018b2badf6 100644 --- a/test/integration/vhds_integration_test.cc +++ b/test/integration/vhds_integration_test.cc @@ -176,8 +176,8 @@ class VhdsIntegrationTest : public HttpIntegrationTest, xds_stream_->startGrpcStream(); fake_upstreams_[0]->set_allow_unexpected_disconnects(true); - EXPECT_TRUE( - compareSotwDiscoveryRequest(Config::TypeUrl::get().RouteConfiguration, "", {"my_route"})); + EXPECT_TRUE(compareSotwDiscoveryRequest(Config::TypeUrl::get().RouteConfiguration, "", + {"my_route"}, true)); sendSotwDiscoveryResponse( Config::TypeUrl::get().RouteConfiguration, {rdsConfig()}, "1"); diff --git a/test/integration/xds_integration_test.cc b/test/integration/xds_integration_test.cc index 218ea948dc783..12e86df532924 100644 --- a/test/integration/xds_integration_test.cc +++ b/test/integration/xds_integration_test.cc @@ -28,7 +28,11 @@ class XdsIntegrationTest : public testing::TestWithParamcounter("listener_manager.lds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("http.router.rds.route_config_0.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("cluster_manager.cds.update_success")->value()); + EXPECT_EQ(1, test_server_->counter("cluster.cluster_1.update_success")->value()); } }; diff --git a/test/mocks/event/mocks.h b/test/mocks/event/mocks.h index 4ff1eda3140c8..0e65635e4b080 100644 --- a/test/mocks/event/mocks.h +++ b/test/mocks/event/mocks.h @@ -140,9 +140,9 @@ class MockTimer : public Timer { MOCK_METHOD0(enabled, bool()); bool enabled_{}; - Event::TimerCb callback_; // TODO(mattklein123): This should be private and only called via - // invoke callback to clear enabled_, but that will break too many - // tests and can be done later. + +private: + Event::TimerCb callback_; }; class MockSignalEvent : public SignalEvent { diff --git a/test/mocks/protobuf/mocks.cc b/test/mocks/protobuf/mocks.cc index 908b08864fab3..e425963e71dc3 100644 --- a/test/mocks/protobuf/mocks.cc +++ b/test/mocks/protobuf/mocks.cc @@ -1,5 +1,7 @@ #include "test/mocks/protobuf/mocks.h" +using testing::ReturnRef; + namespace Envoy { namespace ProtobufMessage { @@ -7,5 +9,12 @@ MockValidationVisitor::MockValidationVisitor() = default; MockValidationVisitor::~MockValidationVisitor() = default; +MockValidationContext::MockValidationContext() { + ON_CALL(*this, staticValidationVisitor()).WillByDefault(ReturnRef(static_validation_visitor_)); + ON_CALL(*this, dynamicValidationVisitor()).WillByDefault(ReturnRef(dynamic_validation_visitor_)); +} + +MockValidationContext::~MockValidationContext() = default; + } // namespace ProtobufMessage } // namespace Envoy diff --git a/test/mocks/protobuf/mocks.h b/test/mocks/protobuf/mocks.h index 66e2f5d2b9c1b..a099571d5e336 100644 --- a/test/mocks/protobuf/mocks.h +++ b/test/mocks/protobuf/mocks.h @@ -15,5 +15,17 @@ class MockValidationVisitor : public ValidationVisitor { MOCK_METHOD1(onUnknownField, void(absl::string_view)); }; +class MockValidationContext : public ValidationContext { +public: + MockValidationContext(); + ~MockValidationContext() override; + + MOCK_METHOD0(staticValidationVisitor, ValidationVisitor&()); + MOCK_METHOD0(dynamicValidationVisitor, ValidationVisitor&()); + + MockValidationVisitor static_validation_visitor_; + MockValidationVisitor dynamic_validation_visitor_; +}; + } // namespace ProtobufMessage } // namespace Envoy diff --git a/test/mocks/server/BUILD b/test/mocks/server/BUILD index 5d368f3c78ba8..695f49be6c23b 100644 --- a/test/mocks/server/BUILD +++ b/test/mocks/server/BUILD @@ -38,6 +38,7 @@ envoy_cc_mock( "//test/mocks/init:init_mocks", "//test/mocks/local_info:local_info_mocks", "//test/mocks/network:network_mocks", + "//test/mocks/protobuf:protobuf_mocks", "//test/mocks/router:router_mocks", "//test/mocks/runtime:runtime_mocks", "//test/mocks/secret:secret_mocks", diff --git a/test/mocks/server/mocks.cc b/test/mocks/server/mocks.cc index e1006497c8ba9..9d2d49f527502 100644 --- a/test/mocks/server/mocks.cc +++ b/test/mocks/server/mocks.cc @@ -23,6 +23,12 @@ MockOptions::MockOptions(const std::string& config_path) : config_path_(config_p ON_CALL(*this, configPath()).WillByDefault(ReturnRef(config_path_)); ON_CALL(*this, configProto()).WillByDefault(ReturnRef(config_proto_)); ON_CALL(*this, configYaml()).WillByDefault(ReturnRef(config_yaml_)); + ON_CALL(*this, allowUnknownStaticFields()).WillByDefault(Invoke([this] { + return allow_unknown_static_fields_; + })); + ON_CALL(*this, rejectUnknownDynamicFields()).WillByDefault(Invoke([this] { + return reject_unknown_dynamic_fields_; + })); ON_CALL(*this, adminAddressPath()).WillByDefault(ReturnRef(admin_address_path_)); ON_CALL(*this, serviceClusterName()).WillByDefault(ReturnRef(service_cluster_name_)); ON_CALL(*this, serviceNodeName()).WillByDefault(ReturnRef(service_node_name_)); @@ -152,8 +158,7 @@ MockInstance::MockInstance() ON_CALL(*this, mutexTracer()).WillByDefault(Return(nullptr)); ON_CALL(*this, singletonManager()).WillByDefault(ReturnRef(*singleton_manager_)); ON_CALL(*this, overloadManager()).WillByDefault(ReturnRef(overload_manager_)); - ON_CALL(*this, messageValidationVisitor()) - .WillByDefault(ReturnRef(ProtobufMessage::getStrictValidationVisitor())); + ON_CALL(*this, messageValidationContext()).WillByDefault(ReturnRef(validation_context_)); } MockInstance::~MockInstance() = default; diff --git a/test/mocks/server/mocks.h b/test/mocks/server/mocks.h index 99fb3ebc15123..4ba0920f5695d 100644 --- a/test/mocks/server/mocks.h +++ b/test/mocks/server/mocks.h @@ -7,6 +7,7 @@ #include "envoy/common/mutex_tracer.h" #include "envoy/config/bootstrap/v2/bootstrap.pb.h" +#include "envoy/protobuf/message_validator.h" #include "envoy/server/admin.h" #include "envoy/server/configuration.h" #include "envoy/server/drain_manager.h" @@ -35,6 +36,7 @@ #include "test/mocks/init/mocks.h" #include "test/mocks/local_info/mocks.h" #include "test/mocks/network/mocks.h" +#include "test/mocks/protobuf/mocks.h" #include "test/mocks/router/mocks.h" #include "test/mocks/runtime/mocks.h" #include "test/mocks/secret/mocks.h" @@ -62,7 +64,8 @@ class MockOptions : public Options { MOCK_CONST_METHOD0(configPath, const std::string&()); MOCK_CONST_METHOD0(configProto, const envoy::config::bootstrap::v2::Bootstrap&()); MOCK_CONST_METHOD0(configYaml, const std::string&()); - MOCK_CONST_METHOD0(allowUnknownFields, bool()); + MOCK_CONST_METHOD0(allowUnknownStaticFields, bool()); + MOCK_CONST_METHOD0(rejectUnknownDynamicFields, bool()); MOCK_CONST_METHOD0(adminAddressPath, const std::string&()); MOCK_CONST_METHOD0(localAddressIpVersion, Network::Address::IpVersion()); MOCK_CONST_METHOD0(drainTime, std::chrono::seconds()); @@ -88,6 +91,8 @@ class MockOptions : public Options { std::string config_path_; envoy::config::bootstrap::v2::Bootstrap config_proto_; std::string config_yaml_; + bool allow_unknown_static_fields_{}; + bool reject_unknown_dynamic_fields_{}; std::string admin_address_path_; std::string service_cluster_name_; std::string service_node_name_; @@ -380,7 +385,7 @@ class MockInstance : public Instance { MOCK_METHOD0(threadLocal, ThreadLocal::Instance&()); MOCK_METHOD0(localInfo, const LocalInfo::LocalInfo&()); MOCK_CONST_METHOD0(statsFlushInterval, std::chrono::milliseconds()); - MOCK_METHOD0(messageValidationVisitor, ProtobufMessage::ValidationVisitor&()); + MOCK_METHOD0(messageValidationContext, ProtobufMessage::ValidationContext&()); TimeSource& timeSource() override { return time_system_; } @@ -410,6 +415,7 @@ class MockInstance : public Instance { Singleton::ManagerPtr singleton_manager_; Grpc::ContextImpl grpc_context_; Http::ContextImpl http_context_; + testing::NiceMock validation_context_; }; namespace Configuration { diff --git a/test/mocks/thread_local/mocks.h b/test/mocks/thread_local/mocks.h index 3d7a43efaef8b..a9abc6a6d5628 100644 --- a/test/mocks/thread_local/mocks.h +++ b/test/mocks/thread_local/mocks.h @@ -63,6 +63,14 @@ class MockInstance : public Instance { void runOnAllThreads(Event::PostCb cb, Event::PostCb main_callback) override { parent_.runOnAllThreads(cb, main_callback); } + void runOnAllThreads(const UpdateCb& cb) override { + parent_.runOnAllThreads([cb, this]() { parent_.data_[index_] = cb(parent_.data_[index_]); }); + } + void runOnAllThreads(const UpdateCb& cb, Event::PostCb main_callback) override { + parent_.runOnAllThreads([cb, this]() { parent_.data_[index_] = cb(parent_.data_[index_]); }, + main_callback); + } + void set(InitializeCb cb) override { parent_.data_[index_] = cb(parent_.dispatcher_); } MockInstance& parent_; diff --git a/test/mocks/upstream/cluster_info.cc b/test/mocks/upstream/cluster_info.cc index c139f9b2c8e0a..f2696dd93cd0d 100644 --- a/test/mocks/upstream/cluster_info.cc +++ b/test/mocks/upstream/cluster_info.cc @@ -48,6 +48,8 @@ MockClusterInfo::MockClusterInfo() ON_CALL(*this, eds_service_name()).WillByDefault(ReturnPointee(&eds_service_name_)); ON_CALL(*this, http2Settings()).WillByDefault(ReturnRef(http2_settings_)); ON_CALL(*this, extensionProtocolOptions(_)).WillByDefault(Return(extension_protocol_options_)); + ON_CALL(*this, maxResponseHeadersCount()) + .WillByDefault(ReturnPointee(&max_response_headers_count_)); ON_CALL(*this, maxRequestsPerConnection()) .WillByDefault(ReturnPointee(&max_requests_per_connection_)); ON_CALL(*this, stats()).WillByDefault(ReturnRef(stats_)); diff --git a/test/mocks/upstream/cluster_info.h b/test/mocks/upstream/cluster_info.h index 6aa750b9e55b9..d6fe9f5df17b3 100644 --- a/test/mocks/upstream/cluster_info.h +++ b/test/mocks/upstream/cluster_info.h @@ -90,6 +90,7 @@ class MockClusterInfo : public ClusterInfo { MOCK_CONST_METHOD0(lbOriginalDstConfig, const absl::optional&()); MOCK_CONST_METHOD0(maintenanceMode, bool()); + MOCK_CONST_METHOD0(maxResponseHeadersCount, uint32_t()); MOCK_CONST_METHOD0(maxRequestsPerConnection, uint64_t()); MOCK_CONST_METHOD0(name, const std::string&()); MOCK_CONST_METHOD1(resourceManager, ResourceManager&(ResourcePriority priority)); @@ -112,6 +113,7 @@ class MockClusterInfo : public ClusterInfo { Http::Http2Settings http2_settings_{}; ProtocolOptionsConfigConstSharedPtr extension_protocol_options_; uint64_t max_requests_per_connection_{}; + uint32_t max_response_headers_count_{Http::DEFAULT_MAX_HEADERS_COUNT}; NiceMock stats_store_; ClusterStats stats_; Network::TransportSocketFactoryPtr transport_socket_factory_; diff --git a/test/proto/bookstore.proto b/test/proto/bookstore.proto index 6fb65b42d119e..fc632de0c1bac 100644 --- a/test/proto/bookstore.proto +++ b/test/proto/bookstore.proto @@ -5,6 +5,7 @@ package bookstore; import "google/api/annotations.proto"; import "google/api/httpbody.proto"; import "google/protobuf/empty.proto"; +import "google/protobuf/struct.proto"; // A simple Bookstore API. // @@ -90,6 +91,12 @@ service Bookstore { get: "/index" }; } + rpc EchoStruct(EchoStructReqResp) returns (EchoStructReqResp) { + option (google.api.http) = { + post: "/echoStruct" + body: "content" + }; + } } // A shelf resource. @@ -192,4 +199,10 @@ message DeleteBookRequest { message GetAuthorRequest { // The ID of the author resource to retrieve. int64 author = 1; -} \ No newline at end of file +} + +// Request and Response message for EchoStructReqResp method. +message EchoStructReqResp { + // The content of request. + google.protobuf.Struct content = 1; +} diff --git a/test/server/BUILD b/test/server/BUILD index 5a9c5d74323a3..6f2893539e871 100644 --- a/test/server/BUILD +++ b/test/server/BUILD @@ -176,6 +176,7 @@ envoy_cc_test( "//source/extensions/filters/listener/original_dst:config", "//source/extensions/filters/listener/tls_inspector:config", "//source/extensions/filters/network/http_connection_manager:config", + "//source/extensions/filters/network/tcp_proxy:config", "//source/extensions/transport_sockets/raw_buffer:config", "//source/extensions/transport_sockets/tls:config", "//source/extensions/transport_sockets/tls:ssl_socket_lib", @@ -242,6 +243,11 @@ filegroup( srcs = glob(["test_data/runtime/**"]), ) +filegroup( + name = "static_validation_test_data", + srcs = glob(["test_data/static_validation/**"]), +) + envoy_cc_test( name = "server_test", srcs = ["server_test.cc"], @@ -260,6 +266,7 @@ envoy_cc_test( ":node_bootstrap_without_access_log.yaml", ":runtime_bootstrap.yaml", ":runtime_test_data", + ":static_validation_test_data", ":stats_sink_bootstrap.yaml", ":zipkin_tracing.yaml", ], diff --git a/test/server/config_validation/cluster_manager_test.cc b/test/server/config_validation/cluster_manager_test.cc index ce734f7173015..0d3639d4860b8 100644 --- a/test/server/config_validation/cluster_manager_test.cc +++ b/test/server/config_validation/cluster_manager_test.cc @@ -30,7 +30,7 @@ namespace { TEST(ValidationClusterManagerTest, MockedMethods) { Stats::IsolatedStoreImpl stats_store; Event::SimulatedTimeSystem time_system; - NiceMock validation_visitor; + NiceMock validation_context; Api::ApiPtr api(Api::createApiForTest(stats_store, time_system)); NiceMock runtime; NiceMock tls; @@ -47,7 +47,7 @@ TEST(ValidationClusterManagerTest, MockedMethods) { ValidationClusterManagerFactory factory(admin, runtime, stats_store, tls, random, dns_resolver, ssl_context_manager, dispatcher, local_info, - secret_manager, validation_visitor, *api, http_context, + secret_manager, validation_context, *api, http_context, log_manager, singleton_manager, time_system); const envoy::config::bootstrap::v2::Bootstrap bootstrap; diff --git a/test/server/configuration_impl_test.cc b/test/server/configuration_impl_test.cc index c2c4247b1f87e..dbc13a45d189a 100644 --- a/test/server/configuration_impl_test.cc +++ b/test/server/configuration_impl_test.cc @@ -59,7 +59,7 @@ class ConfigurationImplTest : public testing::Test { server_.threadLocal(), server_.random(), server_.dnsResolver(), server_.sslContextManager(), server_.dispatcher(), server_.localInfo(), server_.secretManager(), - server_.messageValidationVisitor(), *api_, server_.httpContext(), + server_.messageValidationContext(), *api_, server_.httpContext(), server_.accessLogManager(), server_.singletonManager()) {} Api::ApiPtr api_; diff --git a/test/server/connection_handler_test.cc b/test/server/connection_handler_test.cc index 850d55a348e7e..7e4e2e03237c1 100644 --- a/test/server/connection_handler_test.cc +++ b/test/server/connection_handler_test.cc @@ -609,7 +609,7 @@ TEST_F(ConnectionHandlerTest, ListenerFilterTimeout) { EXPECT_EQ(1UL, downstream_pre_cx_active.value()); EXPECT_CALL(*timeout, disableTimer()); - timeout->callback_(); + timeout->invokeCallback(); dispatcher_.clearDeferredDeleteList(); EXPECT_EQ(0UL, downstream_pre_cx_active.value()); EXPECT_EQ(1UL, stats_store_.counter("downstream_pre_cx_timeout").value()); @@ -658,7 +658,7 @@ TEST_F(ConnectionHandlerTest, ContinueOnListenerFilterTimeout) { EXPECT_CALL(manager_, findFilterChain(_)).WillOnce(Return(nullptr)); EXPECT_CALL(*timeout, disableTimer()); - timeout->callback_(); + timeout->invokeCallback(); dispatcher_.clearDeferredDeleteList(); EXPECT_EQ(0UL, downstream_pre_cx_active.value()); EXPECT_EQ(1UL, stats_store_.counter("downstream_pre_cx_timeout").value()); diff --git a/test/server/drain_manager_impl_test.cc b/test/server/drain_manager_impl_test.cc index ba69e4dffdb18..58919df1ce7e6 100644 --- a/test/server/drain_manager_impl_test.cc +++ b/test/server/drain_manager_impl_test.cc @@ -37,7 +37,7 @@ TEST_F(DrainManagerImplTest, Default) { drain_manager.startParentShutdownSequence(); EXPECT_CALL(server_.hot_restart_, sendParentTerminateRequest()); - shutdown_timer->callback_(); + shutdown_timer->invokeCallback(); // Verify basic drain close. EXPECT_CALL(server_, healthCheckFailed()).WillOnce(Return(false)); @@ -58,7 +58,7 @@ TEST_F(DrainManagerImplTest, Default) { } else { EXPECT_CALL(drain_complete, ready()); } - drain_timer->callback_(); + drain_timer->invokeCallback(); } EXPECT_CALL(server_, healthCheckFailed()).WillOnce(Return(false)); diff --git a/test/server/http/admin_test.cc b/test/server/http/admin_test.cc index 481a1bbfd5331..b6c34ebf5001d 100644 --- a/test/server/http/admin_test.cc +++ b/test/server/http/admin_test.cc @@ -1410,6 +1410,13 @@ TEST_F(PrometheusStatsFormatterTest, MetricName) { EXPECT_EQ(expected, actual); } +TEST_F(PrometheusStatsFormatterTest, MetricNameOptOut) { + std::string raw = "_vulture.eats-liver"; + std::string expected = "vulture_eats_liver"; + auto actual = PrometheusStatsFormatter::metricName(raw); + EXPECT_EQ(expected, actual); +} + TEST_F(PrometheusStatsFormatterTest, SanitizeMetricName) { std::string raw = "An.artist.plays-violin@019street"; std::string expected = "envoy_An_artist_plays_violin_019street"; diff --git a/test/server/listener_manager_impl_test.cc b/test/server/listener_manager_impl_test.cc index ea19e0758c44a..768468f8c96e1 100644 --- a/test/server/listener_manager_impl_test.cc +++ b/test/server/listener_manager_impl_test.cc @@ -37,6 +37,7 @@ #include "gtest/gtest.h" using testing::_; +using testing::AtLeast; using testing::InSequence; using testing::Invoke; using testing::NiceMock; @@ -77,8 +78,15 @@ class ListenerManagerImplTest : public testing::Test { * 4) Creates a mock local drain manager for the listener. */ ListenerHandle* expectListenerCreate( - bool need_init, + bool need_init, bool added_via_api, envoy::api::v2::Listener::DrainType drain_type = envoy::api::v2::Listener_DrainType_DEFAULT) { + if (added_via_api) { + EXPECT_CALL(server_.validation_context_, staticValidationVisitor()).Times(0); + EXPECT_CALL(server_.validation_context_, dynamicValidationVisitor()); + } else { + EXPECT_CALL(server_.validation_context_, staticValidationVisitor()); + EXPECT_CALL(server_.validation_context_, dynamicValidationVisitor()).Times(0); + } ListenerHandle* raw_listener = new ListenerHandle(); EXPECT_CALL(listener_factory_, createDrainManager_(drain_type)) .WillOnce(Return(raw_listener->drain_manager_)); @@ -448,6 +456,65 @@ TEST_F(ListenerManagerImplWithRealFiltersTest, BadFilterConfig) { EXPECT_THROW_WITH_REGEX(manager_->addOrUpdateListener(parseListenerFromV2Yaml(yaml), "", true), EnvoyException, "foo: Cannot find field"); } +class NonTerminalFilterFactory : public Configuration::NamedNetworkFilterConfigFactory { +public: + // Configuration::NamedNetworkFilterConfigFactory + Network::FilterFactoryCb createFilterFactory(const Json::Object&, + Configuration::FactoryContext&) override { + return [](Network::FilterManager&) -> void {}; + } + + Network::FilterFactoryCb createFilterFactoryFromProto(const Protobuf::Message&, + Configuration::FactoryContext&) override { + return [](Network::FilterManager&) -> void {}; + } + + ProtobufTypes::MessagePtr createEmptyConfigProto() override { + return std::make_unique(); + } + + std::string name() override { return "non_terminal"; } +}; + +TEST_F(ListenerManagerImplWithRealFiltersTest, TerminalNotLast) { + Registry::RegisterFactory + registered; + const std::string yaml = R"EOF( +address: + socket_address: + address: 127.0.0.1 + port_value: 1234 +filter_chains: +- filters: + - name: non_terminal + config: {} + )EOF"; + + EXPECT_THROW_WITH_REGEX(manager_->addOrUpdateListener(parseListenerFromV2Yaml(yaml), "", true), + EnvoyException, + "Error: non-terminal filter non_terminal is the last " + "filter in a network filter chain."); +} + +TEST_F(ListenerManagerImplWithRealFiltersTest, NotTerminalLast) { + const std::string yaml = R"EOF( +address: + socket_address: + address: 127.0.0.1 + port_value: 1234 +filter_chains: +- filters: + - name: envoy.tcp_proxy + config: {} + - name: unknown_but_will_not_be_processed + config: {} + )EOF"; + + EXPECT_THROW_WITH_REGEX(manager_->addOrUpdateListener(parseListenerFromV2Yaml(yaml), "", true), + EnvoyException, + "Error: envoy.tcp_proxy must be the terminal network filter."); +} TEST_F(ListenerManagerImplWithRealFiltersTest, BadFilterName) { const std::string yaml = R"EOF( @@ -485,6 +552,7 @@ class TestStatsConfigFactory : public Configuration::NamedNetworkFilterConfigFac } std::string name() override { return "stats_test"; } + bool isTerminalFilter() override { return true; } private: Network::FilterFactoryCb commonFilterFactory(Configuration::FactoryContext& context) { @@ -548,7 +616,7 @@ TEST_F(ListenerManagerImplTest, ModifyOnlyDrainType) { )EOF"; ListenerHandle* listener_foo = - expectListenerCreate(false, envoy::api::v2::Listener_DrainType_MODIFY_ONLY); + expectListenerCreate(false, true, envoy::api::v2::Listener_DrainType_MODIFY_ONLY); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); checkStats(1, 0, 0, 0, 1, 0); @@ -572,7 +640,7 @@ drain_type: default )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); checkStats(1, 0, 0, 0, 1, 0); @@ -590,7 +658,7 @@ drain_type: modify_only )EOF"; ListenerHandle* listener_foo_different_address = - expectListenerCreate(false, envoy::api::v2::Listener_DrainType_MODIFY_ONLY); + expectListenerCreate(false, true, envoy::api::v2::Listener_DrainType_MODIFY_ONLY); EXPECT_CALL(*listener_foo_different_address, onDestroy()); EXPECT_THROW_WITH_MESSAGE( manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_different_address_yaml), @@ -622,7 +690,7 @@ name: foo drain_type: default )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); ON_CALL(os_sys_calls, socket(AF_INET, _, 0)).WillByDefault(Return(Api::SysCallIntResult{5, 0})); ON_CALL(os_sys_calls, socket(AF_INET6, _, 0)).WillByDefault(Return(Api::SysCallIntResult{-1, 0})); @@ -654,7 +722,7 @@ name: foo drain_type: default )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); ON_CALL(os_sys_calls, socket(AF_INET, _, 0)).WillByDefault(Return(Api::SysCallIntResult{-1, 0})); ON_CALL(os_sys_calls, socket(AF_INET6, _, 0)).WillByDefault(Return(Api::SysCallIntResult{5, 0})); @@ -666,7 +734,7 @@ drain_type: default EXPECT_CALL(*listener_foo, onDestroy()); } -// Make sure that a listener that is not modifiable cannot be updated or removed. +// Make sure that a listener that is not added_via_api cannot be updated or removed. TEST_F(ListenerManagerImplTest, UpdateRemoveNotModifiableListener) { time_system_.setSystemTime(std::chrono::milliseconds(1001001001001)); @@ -683,7 +751,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, false); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", false)); checkStats(1, 0, 0, 0, 1, 0); @@ -756,7 +824,7 @@ name: "foo" filter_chains: {} )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_TRUE( manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "version1", true)); @@ -798,7 +866,7 @@ per_connection_buffer_limit_bytes: 10 time_system_.setSystemTime(std::chrono::milliseconds(2002002002002)); - ListenerHandle* listener_foo_update1 = expectListenerCreate(false); + ListenerHandle* listener_foo_update1 = expectListenerCreate(false, true); EXPECT_CALL(*listener_foo, onDestroy()); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_update1_yaml), "version2", true)); @@ -839,7 +907,7 @@ version_info: version2 // Update foo. Should go into warming, have an immediate warming callback, and start immediate // removal. - ListenerHandle* listener_foo_update2 = expectListenerCreate(false); + ListenerHandle* listener_foo_update2 = expectListenerCreate(false, true); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_CALL(*worker_, stopListener(_)); EXPECT_CALL(*listener_foo_update1->drain_manager_, startDrainSequence(_)); @@ -898,7 +966,7 @@ name: "bar" filter_chains: {} )EOF"; - ListenerHandle* listener_bar = expectListenerCreate(false); + ListenerHandle* listener_bar = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_TRUE( @@ -919,7 +987,7 @@ name: "baz" filter_chains: {} )EOF"; - ListenerHandle* listener_baz = expectListenerCreate(true); + ListenerHandle* listener_baz = expectListenerCreate(true, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(listener_baz->target_, initialize()); EXPECT_TRUE( @@ -985,7 +1053,7 @@ name: baz config: {} )EOF"; - ListenerHandle* listener_baz_update1 = expectListenerCreate(true); + ListenerHandle* listener_baz_update1 = expectListenerCreate(true, true); EXPECT_CALL(*listener_baz, onDestroy()).WillOnce(Invoke([listener_baz]() -> void { // Call the initialize callback during destruction like RDS will. listener_baz->target_.ready(); @@ -1029,7 +1097,7 @@ name: foo new Network::Address::Ipv4Instance("127.0.0.1", 1234)); ON_CALL(*listener_factory_.socket_, localAddress()).WillByDefault(ReturnRef(local_address)); - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1046,7 +1114,7 @@ name: foo checkStats(1, 0, 1, 0, 0, 1); // Add foo again. We should use the socket from draining. - ListenerHandle* listener_foo2 = expectListenerCreate(false); + ListenerHandle* listener_foo2 = expectListenerCreate(false, true); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); worker_->callAddCompletion(true); @@ -1075,7 +1143,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(true); + ListenerHandle* listener_foo = expectListenerCreate(true, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)) .WillOnce(Throw(EnvoyException("can't bind"))); EXPECT_CALL(*listener_foo, onDestroy()); @@ -1099,7 +1167,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1153,7 +1221,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(true); + ListenerHandle* listener_foo = expectListenerCreate(true, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(listener_foo->target_, initialize()); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1167,7 +1235,7 @@ name: foo checkStats(1, 0, 1, 0, 0, 0); // Add foo again and initialize it. - listener_foo = expectListenerCreate(true); + listener_foo = expectListenerCreate(true, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(listener_foo->target_, initialize()); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1191,7 +1259,7 @@ name: foo config: {} )EOF"; - ListenerHandle* listener_foo_update1 = expectListenerCreate(true); + ListenerHandle* listener_foo_update1 = expectListenerCreate(true, true); EXPECT_CALL(listener_foo_update1->target_, initialize()); EXPECT_TRUE( manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_update1_yaml), "", true)); @@ -1230,7 +1298,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(false); + ListenerHandle* listener_foo = expectListenerCreate(false, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, true)); EXPECT_CALL(*worker_, addListener(_, _)); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1283,7 +1351,7 @@ name: foo - filters: [] )EOF"; - ListenerHandle* listener_foo = expectListenerCreate(true); + ListenerHandle* listener_foo = expectListenerCreate(true, true); EXPECT_CALL(listener_factory_, createListenSocket(_, _, _, false)); EXPECT_CALL(listener_foo->target_, initialize()); EXPECT_TRUE(manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_foo_yaml), "", true)); @@ -1301,7 +1369,7 @@ name: bar - filters: [] )EOF"; - ListenerHandle* listener_bar = expectListenerCreate(true); + ListenerHandle* listener_bar = expectListenerCreate(true, true); EXPECT_CALL(*listener_bar, onDestroy()); EXPECT_THROW_WITH_MESSAGE( manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_bar_yaml), "", true), @@ -1313,7 +1381,7 @@ name: bar listener_foo->target_.ready(); worker_->callAddCompletion(true); - listener_bar = expectListenerCreate(true); + listener_bar = expectListenerCreate(true, true); EXPECT_CALL(*listener_bar, onDestroy()); EXPECT_THROW_WITH_MESSAGE( manager_->addOrUpdateListener(parseListenerFromV2Yaml(listener_bar_yaml), "", true), diff --git a/test/server/options_impl_test.cc b/test/server/options_impl_test.cc index 86ab2b378be7e..71662bb36bd65 100644 --- a/test/server/options_impl_test.cc +++ b/test/server/options_impl_test.cc @@ -76,7 +76,8 @@ TEST_F(OptionsImplTest, All) { "--service-cluster cluster --service-node node --service-zone zone " "--file-flush-interval-msec 9000 " "--drain-time-s 60 --log-format [%v] --parent-shutdown-time-s 90 --log-path /foo/bar " - "--disable-hot-restart --cpuset-threads"); + "--disable-hot-restart --cpuset-threads --allow-unknown-static-fields " + "--reject-unknown-dynamic-fields"); EXPECT_EQ(Server::Mode::Validate, options->mode()); EXPECT_EQ(2U, options->concurrency()); EXPECT_EQ("hello", options->configPath()); @@ -93,14 +94,36 @@ TEST_F(OptionsImplTest, All) { EXPECT_EQ(std::chrono::milliseconds(9000), options->fileFlushIntervalMsec()); EXPECT_EQ(std::chrono::seconds(60), options->drainTime()); EXPECT_EQ(std::chrono::seconds(90), options->parentShutdownTime()); - EXPECT_EQ(true, options->hotRestartDisabled()); - EXPECT_EQ(true, options->libeventBufferEnabled()); - EXPECT_EQ(true, options->cpusetThreadsEnabled()); + EXPECT_TRUE(options->hotRestartDisabled()); + EXPECT_FALSE(options->libeventBufferEnabled()); + EXPECT_TRUE(options->cpusetThreadsEnabled()); + EXPECT_TRUE(options->allowUnknownStaticFields()); + EXPECT_TRUE(options->rejectUnknownDynamicFields()); options = createOptionsImpl("envoy --mode init_only"); EXPECT_EQ(Server::Mode::InitOnly, options->mode()); } +// Either variants of allow-unknown-[static-]-fields works. +TEST_F(OptionsImplTest, AllowUnknownFields) { + { + std::unique_ptr options = createOptionsImpl("envoy"); + EXPECT_FALSE(options->allowUnknownStaticFields()); + } + { + std::unique_ptr options; + EXPECT_LOG_CONTAINS( + "warning", + "--allow-unknown-fields is deprecated, use --allow-unknown-static-fields instead.", + options = createOptionsImpl("envoy --allow-unknown-fields")); + EXPECT_TRUE(options->allowUnknownStaticFields()); + } + { + std::unique_ptr options = createOptionsImpl("envoy --allow-unknown-static-fields"); + EXPECT_TRUE(options->allowUnknownStaticFields()); + } +} + TEST_F(OptionsImplTest, SetAll) { std::unique_ptr options = createOptionsImpl("envoy -c hello"); bool hot_restart_disabled = options->hotRestartDisabled(); @@ -130,6 +153,8 @@ TEST_F(OptionsImplTest, SetAll) { options->setHotRestartDisabled(!options->hotRestartDisabled()); options->setSignalHandling(!options->signalHandlingEnabled()); options->setCpusetThreads(!options->cpusetThreadsEnabled()); + options->setAllowUnkownFields(true); + options->setRejectUnknownFieldsDynamic(true); EXPECT_EQ(109876, options->baseId()); EXPECT_EQ(42U, options->concurrency()); @@ -154,6 +179,8 @@ TEST_F(OptionsImplTest, SetAll) { EXPECT_EQ(!hot_restart_disabled, options->hotRestartDisabled()); EXPECT_EQ(!signal_handling_enabled, options->signalHandlingEnabled()); EXPECT_EQ(!cpuset_threads_enabled, options->cpusetThreadsEnabled()); + EXPECT_TRUE(options->allowUnknownStaticFields()); + EXPECT_TRUE(options->rejectUnknownDynamicFields()); // Validate that CommandLineOptions is constructed correctly. Server::CommandLineOptionsPtr command_line_options = options->toCommandLineOptions(); @@ -190,8 +217,8 @@ TEST_F(OptionsImplTest, DefaultParams) { EXPECT_EQ("", options->adminAddressPath()); EXPECT_EQ(Network::Address::IpVersion::v4, options->localAddressIpVersion()); EXPECT_EQ(Server::Mode::Serve, options->mode()); - EXPECT_EQ(false, options->hotRestartDisabled()); - EXPECT_EQ(false, options->cpusetThreadsEnabled()); + EXPECT_FALSE(options->hotRestartDisabled()); + EXPECT_FALSE(options->cpusetThreadsEnabled()); // Validate that CommandLineOptions is constructed correctly with default params. Server::CommandLineOptionsPtr command_line_options = options->toCommandLineOptions(); @@ -202,8 +229,10 @@ TEST_F(OptionsImplTest, DefaultParams) { EXPECT_EQ(envoy::admin::v2alpha::CommandLineOptions::v4, command_line_options->local_address_ip_version()); EXPECT_EQ(envoy::admin::v2alpha::CommandLineOptions::Serve, command_line_options->mode()); - EXPECT_EQ(false, command_line_options->disable_hot_restart()); - EXPECT_EQ(false, command_line_options->cpuset_threads()); + EXPECT_FALSE(command_line_options->disable_hot_restart()); + EXPECT_FALSE(command_line_options->cpuset_threads()); + EXPECT_FALSE(command_line_options->allow_unknown_static_fields()); + EXPECT_FALSE(command_line_options->reject_unknown_dynamic_fields()); } // Validates that the server_info proto is in sync with the options. @@ -212,12 +241,13 @@ TEST_F(OptionsImplTest, OptionsAreInSyncWithProto) { Server::CommandLineOptionsPtr command_line_options = options->toCommandLineOptions(); // Failure of this condition indicates that the server_info proto is not in sync with the options. // If an option is added/removed, please update server_info proto as well to keep it in sync. - // Currently the following 4 options are not defined in proto, hence the count differs by 5. + // Currently the following 5 options are not defined in proto, hence the count differs by 5. // 1. version - default TCLAP argument. // 2. help - default TCLAP argument. // 3. ignore_rest - default TCLAP argument. // 4. use-libevent-buffers - short-term override for rollout of new buffer implementation. - EXPECT_EQ(options->count() - 4, command_line_options->GetDescriptor()->field_count()); + // 5. allow-unknown-fields - deprecated alias of allow-unknown-static-fields. + EXPECT_EQ(options->count() - 5, command_line_options->GetDescriptor()->field_count()); } TEST_F(OptionsImplTest, BadCliOption) { diff --git a/test/server/server_test.cc b/test/server/server_test.cc index 2edb98e095406..ca2a755d26ace 100644 --- a/test/server/server_test.cc +++ b/test/server/server_test.cc @@ -165,10 +165,8 @@ class InitializingInstanceImpl : public InstanceImpl { }; // Class creates minimally viable server instance for testing. -class ServerInstanceImplTest : public testing::TestWithParam { +class ServerInstanceImplTestBase { protected: - ServerInstanceImplTest() : version_(GetParam()) {} - void initialize(const std::string& bootstrap_path) { initialize(bootstrap_path, false); } void initialize(const std::string& bootstrap_path, const bool use_intializing_instance) { @@ -258,6 +256,12 @@ class ServerInstanceImplTest : public testing::TestWithParam server_; }; +class ServerInstanceImplTest : public ServerInstanceImplTestBase, + public testing::TestWithParam { +protected: + ServerInstanceImplTest() { version_ = GetParam(); } +}; + // Custom StatsSink that just increments a counter when flush is called. class CustomStatsSink : public Stats::Sink { public: @@ -443,6 +447,66 @@ TEST_P(ServerInstanceImplTest, Stats) { #endif } +// Default validation mode +TEST_P(ServerInstanceImplTest, ValidationDefault) { + options_.service_cluster_name_ = "some_cluster_name"; + options_.service_node_name_ = "some_node_name"; + EXPECT_NO_THROW(initialize("test/server/empty_bootstrap.yaml")); + EXPECT_THAT_THROWS_MESSAGE( + server_->messageValidationContext().staticValidationVisitor().onUnknownField("foo"), + EnvoyException, "Protobuf message (foo) has unknown fields"); + EXPECT_EQ(0, TestUtility::findCounter(stats_store_, "server.static_unknown_fields")->value()); + EXPECT_NO_THROW( + server_->messageValidationContext().dynamicValidationVisitor().onUnknownField("bar")); + EXPECT_EQ(1, TestUtility::findCounter(stats_store_, "server.dynamic_unknown_fields")->value()); +} + +// Validation mode with --allow-unknown-static-fields +TEST_P(ServerInstanceImplTest, ValidationAllowStatic) { + options_.service_cluster_name_ = "some_cluster_name"; + options_.service_node_name_ = "some_node_name"; + options_.allow_unknown_static_fields_ = true; + EXPECT_NO_THROW(initialize("test/server/empty_bootstrap.yaml")); + EXPECT_NO_THROW( + server_->messageValidationContext().staticValidationVisitor().onUnknownField("foo")); + EXPECT_EQ(1, TestUtility::findCounter(stats_store_, "server.static_unknown_fields")->value()); + EXPECT_NO_THROW( + server_->messageValidationContext().dynamicValidationVisitor().onUnknownField("bar")); + EXPECT_EQ(1, TestUtility::findCounter(stats_store_, "server.dynamic_unknown_fields")->value()); +} + +// Validation mode with --reject-unknown-dynamic-fields +TEST_P(ServerInstanceImplTest, ValidationRejectDynamic) { + options_.service_cluster_name_ = "some_cluster_name"; + options_.service_node_name_ = "some_node_name"; + options_.reject_unknown_dynamic_fields_ = true; + EXPECT_NO_THROW(initialize("test/server/empty_bootstrap.yaml")); + EXPECT_THAT_THROWS_MESSAGE( + server_->messageValidationContext().staticValidationVisitor().onUnknownField("foo"), + EnvoyException, "Protobuf message (foo) has unknown fields"); + EXPECT_EQ(0, TestUtility::findCounter(stats_store_, "server.static_unknown_fields")->value()); + EXPECT_THAT_THROWS_MESSAGE( + server_->messageValidationContext().dynamicValidationVisitor().onUnknownField("bar"), + EnvoyException, "Protobuf message (bar) has unknown fields"); + EXPECT_EQ(0, TestUtility::findCounter(stats_store_, "server.dynamic_unknown_fields")->value()); +} + +// Validation mode with --allow-unknown-static-fields --reject-unknown-dynamic-fields +TEST_P(ServerInstanceImplTest, ValidationAllowStaticRejectDynamic) { + options_.service_cluster_name_ = "some_cluster_name"; + options_.service_node_name_ = "some_node_name"; + options_.allow_unknown_static_fields_ = true; + options_.reject_unknown_dynamic_fields_ = true; + EXPECT_NO_THROW(initialize("test/server/empty_bootstrap.yaml")); + EXPECT_NO_THROW( + server_->messageValidationContext().staticValidationVisitor().onUnknownField("foo")); + EXPECT_EQ(1, TestUtility::findCounter(stats_store_, "server.static_unknown_fields")->value()); + EXPECT_THAT_THROWS_MESSAGE( + server_->messageValidationContext().dynamicValidationVisitor().onUnknownField("bar"), + EnvoyException, "Protobuf message (bar) has unknown fields"); + EXPECT_EQ(0, TestUtility::findCounter(stats_store_, "server.dynamic_unknown_fields")->value()); +} + // Validate server localInfo() from bootstrap Node. TEST_P(ServerInstanceImplTest, BootstrapNode) { initialize("test/server/node_bootstrap.yaml"); @@ -781,6 +845,65 @@ TEST_P(ServerInstanceImplTest, WithProcessContext) { EXPECT_FALSE(object_from_context.boolean_flag_); } +// Static configuration validation. We test with both allow/reject settings various aspects of +// configuration from YAML. +class StaticValidationTest + : public ServerInstanceImplTestBase, + public testing::TestWithParam> { +protected: + StaticValidationTest() { + version_ = std::get<0>(GetParam()); + options_.service_cluster_name_ = "some_cluster_name"; + options_.service_node_name_ = "some_node_name"; + options_.allow_unknown_static_fields_ = std::get<1>(GetParam()); + // By inverting the static validation value, we can hopefully catch places we may have confused + // static/dynamic validation. + options_.reject_unknown_dynamic_fields_ = options_.allow_unknown_static_fields_; + } + + AssertionResult validate(absl::string_view yaml_filename) { + const std::string path = + absl::StrCat("test/server/test_data/static_validation/", yaml_filename); + try { + initialize(path); + } catch (EnvoyException&) { + return options_.allow_unknown_static_fields_ ? AssertionFailure() : AssertionSuccess(); + } + return options_.allow_unknown_static_fields_ ? AssertionSuccess() : AssertionFailure(); + } +}; + +std::string staticValidationTestParamsToString( + const ::testing::TestParamInfo>& params) { + return fmt::format( + "{}_{}", + TestUtility::ipTestParamsToString( + ::testing::TestParamInfo(std::get<0>(params.param), 0)), + std::get<1>(params.param) ? "with_allow_unknown_static_fields" + : "without_allow_unknown_static_fields"); +} + +INSTANTIATE_TEST_SUITE_P( + IpVersions, StaticValidationTest, + testing::Combine(testing::ValuesIn(TestEnvironment::getIpVersionsForTest()), testing::Bool()), + staticValidationTestParamsToString); + +TEST_P(StaticValidationTest, BootstrapUnknownField) { + EXPECT_TRUE(validate("bootstrap_unknown_field.yaml")); +} + +TEST_P(StaticValidationTest, ListenerUnknownField) { + EXPECT_TRUE(validate("listener_unknown_field.yaml")); +} + +TEST_P(StaticValidationTest, NetworkFilterUnknownField) { + EXPECT_TRUE(validate("network_filter_unknown_field.yaml")); +} + +TEST_P(StaticValidationTest, ClusterUnknownField) { + EXPECT_TRUE(validate("cluster_unknown_field.yaml")); +} + } // namespace } // namespace Server } // namespace Envoy diff --git a/test/server/test_data/static_validation/bootstrap_unknown_field.yaml b/test/server/test_data/static_validation/bootstrap_unknown_field.yaml new file mode 100644 index 0000000000000..20e9ff3feaa8e --- /dev/null +++ b/test/server/test_data/static_validation/bootstrap_unknown_field.yaml @@ -0,0 +1 @@ +foo: bar diff --git a/test/server/test_data/static_validation/cluster_unknown_field.yaml b/test/server/test_data/static_validation/cluster_unknown_field.yaml new file mode 100644 index 0000000000000..61675f55ee308 --- /dev/null +++ b/test/server/test_data/static_validation/cluster_unknown_field.yaml @@ -0,0 +1,5 @@ +static_resources: + clusters: + name: foo + connect_timeout: { seconds: 5 } + foo: bar diff --git a/test/server/test_data/static_validation/listener_unknown_field.yaml b/test/server/test_data/static_validation/listener_unknown_field.yaml new file mode 100644 index 0000000000000..8dcf743e63eec --- /dev/null +++ b/test/server/test_data/static_validation/listener_unknown_field.yaml @@ -0,0 +1,10 @@ +static_resources: + listeners: + name: foo + address: + socket_address: + address: {{ ntop_ip_loopback_address }} + port_value: 0 + foo: bar + filter_chains: + - filters: diff --git a/test/server/test_data/static_validation/network_filter_unknown_field.yaml b/test/server/test_data/static_validation/network_filter_unknown_field.yaml new file mode 100644 index 0000000000000..35450ef00657d --- /dev/null +++ b/test/server/test_data/static_validation/network_filter_unknown_field.yaml @@ -0,0 +1,15 @@ +static_resources: + listeners: + name: foo + address: + socket_address: + address: {{ ntop_ip_loopback_address }} + port_value: 0 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: HTTP2 + stat_prefix: blah + route_config: {} + foo: bar diff --git a/test/stress/stress_test_downstream.cc b/test/stress/stress_test_downstream.cc index 6fd98c8472f65..db4e0db0638b4 100644 --- a/test/stress/stress_test_downstream.cc +++ b/test/stress/stress_test_downstream.cc @@ -207,7 +207,8 @@ class Http1ClientConnection : public ClientConnection { Network::ClientConnectionPtr&& network_connection) : ClientConnection(client, id, connect_callback, close_callback, dispatcher), stats_(), network_connection_(std::move(network_connection)), - http_connection_(*network_connection_, stats_, *this), + http_connection_(*network_connection_, stats_, *this, + Envoy::Http::DEFAULT_MAX_HEADERS_COUNT), read_filter_{std::make_shared(client.name(), id, http_connection_)} { network_connection_->addReadFilter(read_filter_); network_connection_->addConnectionCallbacks(*this); @@ -237,7 +238,8 @@ class Http2ClientConnection : public ClientConnection { Network::ClientConnectionPtr&& network_connection) : ClientConnection(client, id, connect_callback, close_callback, dispatcher), stats_(), settings_(), network_connection_(std::move(network_connection)), - http_connection_(*network_connection_, *this, stats_, settings_, max_request_headers_kb), + http_connection_(*network_connection_, *this, stats_, settings_, max_request_headers_kb, + Envoy::Http::DEFAULT_MAX_HEADERS_COUNT), read_filter_{std::make_shared(client.name(), id, http_connection_)} { network_connection_->addReadFilter(read_filter_); network_connection_->addConnectionCallbacks(*this); diff --git a/test/stress/stress_test_upstream.cc b/test/stress/stress_test_upstream.cc index 3e41bf02015c8..2e89774c3943f 100644 --- a/test/stress/stress_test_upstream.cc +++ b/test/stress/stress_test_upstream.cc @@ -248,14 +248,16 @@ ServerConnection::ServerConnection(const std::string& name, uint32_t id, switch (http_type) { case Http::CodecClient::Type::HTTP1: http_connection_ = std::make_unique( - network_connection, scope, *this, Http::Http1Settings(), max_request_headers_kb); + network_connection, scope, *this, Http::Http1Settings(), max_request_headers_kb, + Envoy::Http::DEFAULT_MAX_HEADERS_COUNT); break; case Http::CodecClient::Type::HTTP2: { Http::Http2Settings settings; settings.allow_connect_ = true; settings.allow_metadata_ = true; http_connection_ = std::make_unique( - network_connection, *this, scope, settings, max_request_headers_kb); + network_connection, *this, scope, settings, max_request_headers_kb, + Envoy::Http::DEFAULT_MAX_HEADERS_COUNT); } break; default: ENVOY_LOG(error, @@ -263,7 +265,8 @@ ServerConnection::ServerConnection(const std::string& name, uint32_t id, "defaulting to HTTP1", name_, id_, static_cast(http_type) + 1); http_connection_ = std::make_unique( - network_connection, scope, *this, Http::Http1Settings(), max_request_headers_kb); + network_connection, scope, *this, Http::Http1Settings(), max_request_headers_kb, + Envoy::Http::DEFAULT_MAX_HEADERS_COUNT); break; } } diff --git a/test/test_common/environment.cc b/test/test_common/environment.cc index 86b0a0ec3bdd1..d0f0577f47635 100644 --- a/test/test_common/environment.cc +++ b/test/test_common/environment.cc @@ -8,7 +8,7 @@ #if defined(_LIBCPP_VERSION) && !defined(__APPLE__) #include #elif defined __has_include -#if __has_include() +#if __has_include() && !defined(__APPLE__) #include #endif #endif @@ -44,7 +44,7 @@ std::string makeTempDir(char* name_template) { name_template, strerror(errno))); #if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION >= 9000 && !defined(__APPLE__) std::__fs::filesystem::create_directories(dirname); -#elif defined __cpp_lib_experimental_filesystem +#elif defined __cpp_lib_experimental_filesystem && !defined(__APPLE__) std::experimental::filesystem::create_directories(dirname); #endif #else @@ -102,7 +102,7 @@ void TestEnvironment::createParentPath(const std::string& path) { // We don't want to rely on mkdir etc. if we can avoid it, since it might not // exist in some environments such as ClusterFuzz. std::__fs::filesystem::create_directories(std::__fs::filesystem::path(path).parent_path()); -#elif defined __cpp_lib_experimental_filesystem +#elif defined __cpp_lib_experimental_filesystem && !defined(__APPLE__) std::experimental::filesystem::create_directories( std::experimental::filesystem::path(path).parent_path()); #else @@ -120,7 +120,7 @@ void TestEnvironment::removePath(const std::string& path) { return; } std::__fs::filesystem::remove_all(std::__fs::filesystem::path(path)); -#elif defined __cpp_lib_experimental_filesystem +#elif defined __cpp_lib_experimental_filesystem && !defined(__APPLE__) if (!std::experimental::filesystem::exists(path)) { return; } diff --git a/test/test_common/utility.h b/test/test_common/utility.h index 7e33eeff7d1e4..06c5bd52941c8 100644 --- a/test/test_common/utility.h +++ b/test/test_common/utility.h @@ -430,7 +430,7 @@ class TestUtility { static std::string convertTime(const std::string& input, const std::string& input_format, const std::string& output_format); - static constexpr std::chrono::milliseconds DefaultTimeout = std::chrono::milliseconds(10000); + static constexpr std::chrono::milliseconds DefaultTimeout = std::chrono::milliseconds(30000); static void renameFile(const std::string& old_name, const std::string& new_name); static void createDirectory(const std::string& name); diff --git a/test/tools/router_check/coverage.cc b/test/tools/router_check/coverage.cc index 5f8c51a51351b..3e81b105097f1 100644 --- a/test/tools/router_check/coverage.cc +++ b/test/tools/router_check/coverage.cc @@ -5,19 +5,80 @@ #include "envoy/api/v2/core/base.pb.h" namespace Envoy { -void Coverage::markCovered(const Envoy::Router::RouteEntry& route) { - // n.b. If we reach the end of the seen routes without finding the specified - // route we add it as seen, otherwise it's a duplicate. - if (std::find(seen_routes_.begin(), seen_routes_.end(), &route) == seen_routes_.end()) { - seen_routes_.push_back(&route); +double RouteCoverage::report() { + uint64_t route_weight = 0; + for (const auto& covered_field : coverageFields()) { + if (covered_field) { + route_weight += 1; + } } + return static_cast(route_weight) / coverageFields().size(); +} + +void Coverage::markClusterCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setClusterCovered(); +} + +void Coverage::markVirtualClusterCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setVirtualClusterCovered(); +} + +void Coverage::markVirtualHostCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setVirtualHostCovered(); +} + +void Coverage::markPathRewriteCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setPathRewriteCovered(); +} + +void Coverage::markHostRewriteCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setHostRewriteCovered(); +} + +void Coverage::markRedirectPathCovered(const Envoy::Router::RouteEntry& route) { + coveredRoute(route).setRedirectPathCovered(); } double Coverage::report() { uint64_t num_routes = 0; for (const auto& host : route_config_.virtual_hosts()) { - num_routes += host.routes_size(); + for (const auto& route : host.routes()) { + if (route.route().has_weighted_clusters()) { + num_routes += route.route().weighted_clusters().clusters_size(); + } else { + num_routes += 1; + } + } + } + return 100 * static_cast(covered_routes_.size()) / num_routes; +} + +double Coverage::detailedReport() { + uint64_t num_routes = 0; + for (const auto& host : route_config_.virtual_hosts()) { + for (const auto& route : host.routes()) { + if (route.route().has_weighted_clusters()) { + num_routes += route.route().weighted_clusters().clusters_size(); + } else { + num_routes += 1; + } + } + } + double cumulative_coverage = 0; + for (auto& covered_route : covered_routes_) { + cumulative_coverage += covered_route->report(); } - return 100 * static_cast(seen_routes_.size()) / num_routes; + return 100 * cumulative_coverage / num_routes; } + +RouteCoverage& Coverage::coveredRoute(const Envoy::Router::RouteEntry& route) { + for (auto& route_coverage : covered_routes_) { + if (route_coverage->covers(&route)) { + return *route_coverage; + } + } + std::unique_ptr new_coverage = std::make_unique(&route); + covered_routes_.push_back(std::move(new_coverage)); + return coveredRoute(route); +}; } // namespace Envoy diff --git a/test/tools/router_check/coverage.h b/test/tools/router_check/coverage.h index 778906a89fcad..c2327449d89bb 100644 --- a/test/tools/router_check/coverage.h +++ b/test/tools/router_check/coverage.h @@ -5,14 +5,51 @@ #include "test/mocks/server/mocks.h" namespace Envoy { +class RouteCoverage : Logger::Loggable { +public: + RouteCoverage(const Envoy::Router::RouteEntry* route) : route_(*route){}; + + double report(); + void setClusterCovered() { cluster_covered_ = true; } + void setVirtualClusterCovered() { virtual_cluster_covered_ = true; } + void setVirtualHostCovered() { virtual_host_covered_ = true; } + void setPathRewriteCovered() { path_rewrite_covered_ = true; } + void setHostRewriteCovered() { host_rewrite_covered_ = true; } + void setRedirectPathCovered() { redirect_path_covered_ = true; } + bool covers(const Envoy::Router::RouteEntry* route) { return &route_ == route; } + +private: + const Envoy::Router::RouteEntry& route_; + bool cluster_covered_{false}; + bool virtual_cluster_covered_{false}; + bool virtual_host_covered_{false}; + bool path_rewrite_covered_{false}; + bool host_rewrite_covered_{false}; + bool redirect_path_covered_{false}; + + std::vector coverageFields() { + return std::vector{cluster_covered_, virtual_cluster_covered_, + virtual_host_covered_, path_rewrite_covered_, + host_rewrite_covered_, redirect_path_covered_}; + } +}; + class Coverage : Logger::Loggable { public: Coverage(envoy::api::v2::RouteConfiguration config) : route_config_(config){}; - void markCovered(const Envoy::Router::RouteEntry& route); + void markClusterCovered(const Envoy::Router::RouteEntry& route); + void markVirtualClusterCovered(const Envoy::Router::RouteEntry& route); + void markVirtualHostCovered(const Envoy::Router::RouteEntry& route); + void markPathRewriteCovered(const Envoy::Router::RouteEntry& route); + void markHostRewriteCovered(const Envoy::Router::RouteEntry& route); + void markRedirectPathCovered(const Envoy::Router::RouteEntry& route); double report(); + double detailedReport(); private: - std::vector seen_routes_; + RouteCoverage& coveredRoute(const Envoy::Router::RouteEntry& route); + + std::vector> covered_routes_; const envoy::api::v2::RouteConfiguration route_config_; }; } // namespace Envoy diff --git a/test/tools/router_check/router.cc b/test/tools/router_check/router.cc index 70ed8c6fbd190..c75053792f6a2 100644 --- a/test/tools/router_check/router.cc +++ b/test/tools/router_check/router.cc @@ -211,7 +211,11 @@ bool RouterCheckTool::compareCluster(ToolConfig& tool_config, const std::string& if (tool_config.route_->routeEntry() != nullptr) { actual = tool_config.route_->routeEntry()->clusterName(); } - return compareResults(actual, expected, "cluster_name"); + const bool matches = compareResults(actual, expected, "cluster_name"); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markClusterCovered(*tool_config.route_->routeEntry()); + } + return matches; } bool RouterCheckTool::compareCluster( @@ -234,7 +238,11 @@ bool RouterCheckTool::compareVirtualCluster(ToolConfig& tool_config, const std:: tool_config.route_->routeEntry()->virtualCluster(*tool_config.headers_)->statName(); actual = tool_config.symbolTable().toString(stat_name); } - return compareResults(actual, expected, "virtual_cluster_name"); + const bool matches = compareResults(actual, expected, "virtual_cluster_name"); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markVirtualClusterCovered(*tool_config.route_->routeEntry()); + } + return matches; } bool RouterCheckTool::compareVirtualCluster( @@ -254,7 +262,11 @@ bool RouterCheckTool::compareVirtualHost(ToolConfig& tool_config, const std::str Stats::StatName stat_name = tool_config.route_->routeEntry()->virtualHost().statName(); actual = tool_config.symbolTable().toString(stat_name); } - return compareResults(actual, expected, "virtual_host_name"); + const bool matches = compareResults(actual, expected, "virtual_host_name"); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markVirtualHostCovered(*tool_config.route_->routeEntry()); + } + return matches; } bool RouterCheckTool::compareVirtualHost( @@ -282,8 +294,8 @@ bool RouterCheckTool::compareRewritePath(ToolConfig& tool_config, const std::str actual = tool_config.headers_->get_(Http::Headers::get().Path); } const bool matches = compareResults(actual, expected, "path_rewrite"); - if (matches) { - coverage_.markCovered(*tool_config.route_->routeEntry()); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markPathRewriteCovered(*tool_config.route_->routeEntry()); } return matches; } @@ -312,7 +324,11 @@ bool RouterCheckTool::compareRewriteHost(ToolConfig& tool_config, const std::str actual = tool_config.headers_->get_(Http::Headers::get().Host); } - return compareResults(actual, expected, "host_rewrite"); + const bool matches = compareResults(actual, expected, "host_rewrite"); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markHostRewriteCovered(*tool_config.route_->routeEntry()); + } + return matches; } bool RouterCheckTool::compareRewriteHost( @@ -332,7 +348,11 @@ bool RouterCheckTool::compareRedirectPath(ToolConfig& tool_config, const std::st actual = tool_config.route_->directResponseEntry()->newPath(*tool_config.headers_); } - return compareResults(actual, expected, "path_redirect"); + const bool matches = compareResults(actual, expected, "path_redirect"); + if (matches && tool_config.route_->routeEntry() != nullptr) { + coverage_.markRedirectPathCovered(*tool_config.route_->routeEntry()); + } + return matches; } bool RouterCheckTool::compareRedirectPath( @@ -422,6 +442,8 @@ Options::Options(int argc, char** argv) { TCLAP::ValueArg fail_under("f", "fail-under", "Fail if test coverage is under a specified amount", false, 0.0, "float", cmd); + TCLAP::SwitchArg comprehensive_coverage( + "", "covall", "Measure coverage by checking all route fields", cmd, false); TCLAP::ValueArg config_path("c", "config-path", "Path to configuration file.", false, "", "string", cmd); TCLAP::ValueArg test_path("t", "test-path", "Path to test file.", false, "", @@ -438,6 +460,7 @@ Options::Options(int argc, char** argv) { is_proto_ = is_proto.getValue(); is_detailed_ = is_detailed.getValue(); fail_under_ = fail_under.getValue(); + comprehensive_coverage_ = comprehensive_coverage.getValue(); if (is_proto_) { config_path_ = config_path.getValue(); diff --git a/test/tools/router_check/router.h b/test/tools/router_check/router.h index f4af695dcf7a8..a3395de2ad873 100644 --- a/test/tools/router_check/router.h +++ b/test/tools/router_check/router.h @@ -89,7 +89,9 @@ class RouterCheckTool : Logger::Loggable { */ void setShowDetails() { details_ = true; } - float coverage() { return coverage_.report(); } + float coverage(bool detailed) { + return detailed ? coverage_.detailedReport() : coverage_.report(); + } private: RouterCheckTool( @@ -181,6 +183,11 @@ class Options { */ double failUnder() const { return fail_under_; } + /** + * @return true if test coverage should be comprehensive. + */ + bool comprehensiveCoverage() const { return comprehensive_coverage_; } + /** * @return true if proto schema test is used. */ @@ -197,6 +204,7 @@ class Options { std::string unlabelled_test_path_; std::string unlabelled_config_path_; float fail_under_; + bool comprehensive_coverage_; bool is_proto_; bool is_detailed_; }; diff --git a/test/tools/router_check/router_check.cc b/test/tools/router_check/router_check.cc index d7b27d99f3a31..e17f3eecc827f 100644 --- a/test/tools/router_check/router_check.cc +++ b/test/tools/router_check/router_check.cc @@ -25,8 +25,8 @@ int main(int argc, char* argv[]) { return EXIT_FAILURE; } - const double current_coverage = checktool.coverage(); - std::cerr << "Current route coverage: " << current_coverage << "%" << std::endl; + const double current_coverage = checktool.coverage(options.comprehensiveCoverage()); + std::cout << "Current route coverage: " << current_coverage << "%" << std::endl; if (enforce_coverage) { if (current_coverage < options.failUnder()) { std::cerr << "Failed to meet coverage requirement: " << options.failUnder() << "%" diff --git a/test/tools/router_check/test/config/ComprehensiveRoutes.golden.json b/test/tools/router_check/test/config/ComprehensiveRoutes.golden.json new file mode 100644 index 0000000000000..5a0e4d8725e4d --- /dev/null +++ b/test/tools/router_check/test/config/ComprehensiveRoutes.golden.json @@ -0,0 +1,56 @@ +[ + { + "test_name": "Test 1", + "input": { + ":authority": "www.lyft.com", + ":path": "/new_endpoint" + }, + "validate": { + "cluster_name": "www2", + "virtual_cluster_name": "other", + "virtual_host_name": "www2_host", + "path_rewrite": "/api/new_endpoint", + "host_rewrite": "www.lyft.com", + "path_redirect": "" + } + }, + { + "test_name": "Test 2", + "input": { + ":authority": "www.lyft.com", + ":path": "/" + }, + "validate": { + "cluster_name": "root_www2", + "virtual_cluster_name": "other", + "virtual_host_name": "www2_host", + "path_rewrite": "/", + "host_rewrite": "www.lyft.com", + "path_redirect": "" + } + }, + { + "test_name": "Test 3", + "input": { + ":authority": "www.lyft.com", + ":path": "/foobar" + }, + "validate": { + "cluster_name": "www2", + "virtual_cluster_name": "other", + "virtual_host_name": "www2_host", + "path_rewrite": "/foobar", + "host_rewrite": "www.lyft.com", + "path_redirect": "" + } + }, + { + "test_name": "Test 4", + "input": { + ":authority": "www.lyft.com", + ":path": "/users/123", + ":method": "PUT" + }, + "validate": {"virtual_cluster_name": "update_user"} + } +] diff --git a/test/tools/router_check/test/config/ComprehensiveRoutes.yaml b/test/tools/router_check/test/config/ComprehensiveRoutes.yaml new file mode 100644 index 0000000000000..0613410256ca7 --- /dev/null +++ b/test/tools/router_check/test/config/ComprehensiveRoutes.yaml @@ -0,0 +1,22 @@ +virtual_hosts: + - name: www2_host + domains: + - www.lyft.com + routes: + - match: + prefix: /new_endpoint + route: + cluster: www2 + prefix_rewrite: /api/new_endpoint + - match: + path: / + route: + cluster: root_www2 + - match: + prefix: / + route: + cluster: www2 + virtual_clusters: + - pattern: ^/users/\d+$ + method: PUT + name: update_user diff --git a/test/tools/router_check/test/route_tests.sh b/test/tools/router_check/test/route_tests.sh index cba937d3f7e38..0b06cb7425bf5 100755 --- a/test/tools/router_check/test/route_tests.sh +++ b/test/tools/router_check/test/route_tests.sh @@ -24,6 +24,12 @@ if [[ "${COVERAGE_OUTPUT}" != *"Current route coverage: "* ]] ; then exit 1 fi +COMP_COVERAGE_CMD="${PATH_BIN} ${PATH_CONFIG}/ComprehensiveRoutes.yaml ${PATH_CONFIG}/ComprehensiveRoutes.golden.json --details -f " +COVERAGE_OUTPUT=$($COMP_COVERAGE_CMD "100" "--covall" 2>&1) || echo "${COVERAGE_OUTPUT:-no-output}" +if [[ "${COVERAGE_OUTPUT}" != *"Current route coverage: 100%"* ]] ; then + exit 1 +fi + # Testing coverage flag fails COVERAGE_OUTPUT=$($COVERAGE_CMD "100" 2>&1) || echo "${COVERAGE_OUTPUT:-no-output}" if [[ "${COVERAGE_OUTPUT}" != *"Failed to meet coverage requirement: 100%"* ]] ; then diff --git a/tools/check_format.py b/tools/check_format.py index e28ca041609bf..9327d9533871b 100755 --- a/tools/check_format.py +++ b/tools/check_format.py @@ -66,8 +66,8 @@ CLANG_FORMAT_PATH = os.getenv("CLANG_FORMAT", "clang-format-8") BUILDIFIER_PATH = os.getenv("BUILDIFIER_BIN", "$GOPATH/bin/buildifier") -ENVOY_BUILD_FIXER_PATH = os.path.join( - os.path.dirname(os.path.abspath(sys.argv[0])), "envoy_build_fixer.py") +ENVOY_BUILD_FIXER_PATH = os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])), + "envoy_build_fixer.py") HEADER_ORDER_PATH = os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])), "header_order.py") SUBDIR_SET = set(common.includeDirOrder()) INCLUDE_ANGLE = "#include <" @@ -137,7 +137,7 @@ "extensions/stat_sinks/common", "extensions/stat_sinks/common/statsd", "extensions/health_checkers/redis", - "extensions/access_loggers/http_grpc", + "extensions/access_loggers/grpc", "extensions/access_loggers/file", "extensions/common/tap", "extensions/transport_sockets/raw_buffer", @@ -503,8 +503,8 @@ def checkSourceLine(line, file_path, reportError): "should be %s" % (invalid_construct, valid_construct)) for invalid_construct, valid_construct in LIBCXX_REPLACEMENTS.items(): if invalid_construct in line: - reportError("term %s should be replaced with standard library term %s" % (invalid_construct, - valid_construct)) + reportError("term %s should be replaced with standard library term %s" % + (invalid_construct, valid_construct)) # Some errors cannot be fixed automatically, and actionable, consistent, # navigable messages should be emitted to make it easy to find and fix @@ -812,53 +812,48 @@ def checkErrorMessages(error_messages): if __name__ == "__main__": parser = argparse.ArgumentParser(description="Check or fix file format.") - parser.add_argument( - "operation_type", - type=str, - choices=["check", "fix"], - help="specify if the run should 'check' or 'fix' format.") + parser.add_argument("operation_type", + type=str, + choices=["check", "fix"], + help="specify if the run should 'check' or 'fix' format.") parser.add_argument( "target_path", type=str, nargs="?", default=".", help="specify the root directory for the script to recurse over. Default '.'.") - parser.add_argument( - "--add-excluded-prefixes", type=str, nargs="+", help="exclude additional prefixes.") - parser.add_argument( - "-j", - "--num-workers", - type=int, - default=multiprocessing.cpu_count(), - help="number of worker processes to use; defaults to one per core.") + parser.add_argument("--add-excluded-prefixes", + type=str, + nargs="+", + help="exclude additional prefixes.") + parser.add_argument("-j", + "--num-workers", + type=int, + default=multiprocessing.cpu_count(), + help="number of worker processes to use; defaults to one per core.") parser.add_argument("--api-prefix", type=str, default="./api/", help="path of the API tree.") - parser.add_argument( - "--skip_envoy_build_rule_check", - action="store_true", - help="skip checking for '@envoy//' prefix in build rules.") - parser.add_argument( - "--namespace_check", - type=str, - nargs="?", - default="Envoy", - help="specify namespace check string. Default 'Envoy'.") - parser.add_argument( - "--namespace_check_excluded_paths", - type=str, - nargs="+", - default=[], - help="exclude paths from the namespace_check.") - parser.add_argument( - "--build_fixer_check_excluded_paths", - type=str, - nargs="+", - default=[], - help="exclude paths from envoy_build_fixer check.") - parser.add_argument( - "--include_dir_order", - type=str, - default=",".join(common.includeDirOrder()), - help="specify the header block include directory order.") + parser.add_argument("--skip_envoy_build_rule_check", + action="store_true", + help="skip checking for '@envoy//' prefix in build rules.") + parser.add_argument("--namespace_check", + type=str, + nargs="?", + default="Envoy", + help="specify namespace check string. Default 'Envoy'.") + parser.add_argument("--namespace_check_excluded_paths", + type=str, + nargs="+", + default=[], + help="exclude paths from the namespace_check.") + parser.add_argument("--build_fixer_check_excluded_paths", + type=str, + nargs="+", + default=[], + help="exclude paths from envoy_build_fixer check.") + parser.add_argument("--include_dir_order", + type=str, + default=",".join(common.includeDirOrder()), + help="specify the header block include directory order.") args = parser.parse_args() operation_type = args.operation_type diff --git a/tools/check_spelling_pedantic.py b/tools/check_spelling_pedantic.py index 393674c65c219..d1bcae132d2fd 100755 --- a/tools/check_spelling_pedantic.py +++ b/tools/check_spelling_pedantic.py @@ -108,13 +108,12 @@ def start(self): aspell_args = [ "aspell", "pipe", "--run-together", "--lang=en_US", "--encoding=utf-8", "--personal=" + pws ] - self.aspell = subprocess.Popen( - aspell_args, - bufsize=4096, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - universal_newlines=True) + self.aspell = subprocess.Popen(aspell_args, + bufsize=4096, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, + universal_newlines=True) # Read the version line that aspell emits on startup. self.aspell.stdout.readline() @@ -501,8 +500,8 @@ def execute(files, dictionary_file, fix): checker.stop() - print("Checked %d file(s) and %d comment(s), found %d error(s)." % (total_files, total_comments, - total_errors)) + print("Checked %d file(s) and %d comment(s), found %d error(s)." % + (total_files, total_comments, total_errors)) return total_errors == 0 @@ -511,27 +510,27 @@ def execute(files, dictionary_file, fix): default_dictionary = os.path.join(TOOLS_DIR, 'spelling_dictionary.txt') parser = argparse.ArgumentParser(description="Check comment spelling.") - parser.add_argument( - 'operation_type', - type=str, - choices=['check', 'fix'], - help="specify if the run should 'check' or 'fix' spelling.") - parser.add_argument( - 'target_paths', type=str, nargs="*", help="specify the files for the script to process.") + parser.add_argument('operation_type', + type=str, + choices=['check', 'fix'], + help="specify if the run should 'check' or 'fix' spelling.") + parser.add_argument('target_paths', + type=str, + nargs="*", + help="specify the files for the script to process.") parser.add_argument('-d', '--debug', action='store_true', help="Debug spell checker subprocess.") - parser.add_argument( - '--mark', action='store_true', help="Emits extra output to mark misspelled words.") - parser.add_argument( - '--dictionary', - type=str, - default=default_dictionary, - help="specify a location for Envoy-specific dictionary words") - parser.add_argument( - '--color', - type=str, - choices=['on', 'off', 'auto'], - default="auto", - help="Controls colorized output. Auto limits color to TTY devices.") + parser.add_argument('--mark', + action='store_true', + help="Emits extra output to mark misspelled words.") + parser.add_argument('--dictionary', + type=str, + default=default_dictionary, + help="specify a location for Envoy-specific dictionary words") + parser.add_argument('--color', + type=str, + choices=['on', 'off', 'auto'], + default="auto", + help="Controls colorized output. Auto limits color to TTY devices.") args = parser.parse_args() COLOR = args.color == "on" or (args.color == "auto" and sys.stdout.isatty()) diff --git a/tools/deprecate_features/deprecate_features.py b/tools/deprecate_features/deprecate_features.py index 0f67d3e280b99..203d4d2a99dbf 100644 --- a/tools/deprecate_features/deprecate_features.py +++ b/tools/deprecate_features/deprecate_features.py @@ -49,8 +49,8 @@ def deprecate_proto(): # Sorts out the list of features which should be default enabled and returns a tuple of # email and code changes. def flip_runtime_features(): - grep_output = subprocess.check_output( - 'grep -r "envoy.reloadable_features\." source/*', shell=True) + grep_output = subprocess.check_output('grep -r "envoy.reloadable_features\." source/*', + shell=True) features_to_flip = set() diff --git a/tools/deprecate_features/requirements.txt b/tools/deprecate_features/requirements.txt index 78d6a21318da6..dc2a917a768ee 100644 --- a/tools/deprecate_features/requirements.txt +++ b/tools/deprecate_features/requirements.txt @@ -1,2 +1,2 @@ -GitPython==2.1.9 -PyGithub==1.38 +GitPython==3.0.0 +PyGithub==1.43.8 diff --git a/tools/deprecate_version/requirements.txt b/tools/deprecate_version/requirements.txt index 78d6a21318da6..dc2a917a768ee 100644 --- a/tools/deprecate_version/requirements.txt +++ b/tools/deprecate_version/requirements.txt @@ -1,2 +1,2 @@ -GitPython==2.1.9 -PyGithub==1.38 +GitPython==3.0.0 +PyGithub==1.43.8 diff --git a/tools/envoy_collect/envoy_collect.py b/tools/envoy_collect/envoy_collect.py index c22a526a37b78..60aa85e015253 100755 --- a/tools/envoy_collect/envoy_collect.py +++ b/tools/envoy_collect/envoy_collect.py @@ -127,8 +127,11 @@ def envoy_preexec_fn(): # Launch Envoy, register for SIGINT, and wait for the child process to exit. with open(envoy_log_path, 'w') as envoy_log: - envoy_proc = sp.Popen( - envoy_shcmd, stdin=sp.PIPE, stderr=envoy_log, preexec_fn=envoy_preexec_fn, shell=True) + envoy_proc = sp.Popen(envoy_shcmd, + stdin=sp.PIPE, + stderr=envoy_log, + preexec_fn=envoy_preexec_fn, + shell=True) def signal_handler(signum, frame): # The read is deferred until the signal so that the Envoy process gets a @@ -227,17 +230,18 @@ def envoy_collect(parse_result, unknown_args): # We either need to interpret or override these, so we declare them in # envoy_collect.py and always parse and present them again when invoking # Envoy. - parser.add_argument( - '--config-path', '-c', required=True, help='Path to Envoy configuration file.') - parser.add_argument( - '--log-level', '-l', help='Envoy log level. This will be overridden when invoking Envoy.') + parser.add_argument('--config-path', + '-c', + required=True, + help='Path to Envoy configuration file.') + parser.add_argument('--log-level', + '-l', + help='Envoy log level. This will be overridden when invoking Envoy.') # envoy_collect specific args. - parser.add_argument( - '--performance', - action='store_true', - help='Performance mode (collect perf trace, minimize log verbosity).') - parser.add_argument( - '--envoy-binary', - default=DEFAULT_ENVOY_PATH, - help='Path to Envoy binary (%s by default).' % DEFAULT_ENVOY_PATH) + parser.add_argument('--performance', + action='store_true', + help='Performance mode (collect perf trace, minimize log verbosity).') + parser.add_argument('--envoy-binary', + default=DEFAULT_ENVOY_PATH, + help='Path to Envoy binary (%s by default).' % DEFAULT_ENVOY_PATH) sys.exit(envoy_collect(*parser.parse_known_args(sys.argv))) diff --git a/tools/find_related_envoy_files.py b/tools/find_related_envoy_files.py index f1151af783f97..60acbcc30ab46 100755 --- a/tools/find_related_envoy_files.py +++ b/tools/find_related_envoy_files.py @@ -58,8 +58,8 @@ def emit(source_path, dest_path, source_ending, dest_ending): if fname.endswith(source_ending) and path.startswith(source_path + "/"): path_len = len(path) - len(source_path) - len(source_ending) - new_path = ( - absolute_location + dest_path + path[len(source_path):-len(source_ending)] + dest_ending) + new_path = (absolute_location + dest_path + path[len(source_path):-len(source_ending)] + + dest_ending) if os.path.isfile(new_path): print(new_path) diff --git a/tools/format_python_tools.py b/tools/format_python_tools.py index e81cb11a6a0c3..8b2cacc321bbe 100644 --- a/tools/format_python_tools.py +++ b/tools/format_python_tools.py @@ -23,7 +23,8 @@ def collectFiles(): for root, dirnames, filenames in os.walk(dirname): dirnames[:] = [d for d in dirnames if d not in EXCLUDE_LIST] for filename in fnmatch.filter(filenames, '*.py'): - matches.append(os.path.join(root, filename)) + if not filename.endswith('_pb2.py') and not filename.endswith('_pb2_grpc.py'): + matches.append(os.path.join(root, filename)) return matches @@ -37,8 +38,10 @@ def validateFormat(fix=False): failed_update_files = set() successful_update_files = set() for python_file in collectFiles(): - reformatted_source, encoding, changed = FormatFile( - python_file, style_config='.style.yapf', in_place=fix, print_diff=not fix) + reformatted_source, encoding, changed = FormatFile(python_file, + style_config='.style.yapf', + in_place=fix, + print_diff=not fix) if not fix: fixes_required = True if changed else fixes_required if reformatted_source: @@ -64,8 +67,10 @@ def displayFixResults(successful_files, failed_files): if __name__ == '__main__': parser = argparse.ArgumentParser(description='Tool to format python files.') - parser.add_argument( - 'action', choices=['check', 'fix'], default='check', help='Fix invalid syntax in files.') + parser.add_argument('action', + choices=['check', 'fix'], + default='check', + help='Fix invalid syntax in files.') args = parser.parse_args() is_valid = validateFormat(args.action == 'fix') sys.exit(0 if is_valid else 1) diff --git a/tools/gen_compilation_database.py b/tools/gen_compilation_database.py index dadb9a1348c3d..b987a403111f9 100755 --- a/tools/gen_compilation_database.py +++ b/tools/gen_compilation_database.py @@ -12,8 +12,8 @@ def generateCompilationDatabase(args): ["bazel", "build", "--build_tag_filters=-manual", "--jobs=" + os.environ.get('NUM_CPUS')] + args.bazel_targets) - gen_compilation_database_sh = os.path.join( - os.path.realpath(os.path.dirname(__file__)), "../bazel/gen_compilation_database.sh") + gen_compilation_database_sh = os.path.join(os.path.realpath(os.path.dirname(__file__)), + "../bazel/gen_compilation_database.sh") subprocess.check_call([gen_compilation_database_sh] + args.bazel_targets) @@ -80,8 +80,9 @@ def fixCompilationDatabase(args): parser.add_argument('--include_genfiles', action='store_true') parser.add_argument('--include_headers', action='store_true') parser.add_argument('--vscode', action='store_true') - parser.add_argument( - 'bazel_targets', nargs='*', default=["//source/...", "//test/...", "//tools/..."]) + parser.add_argument('bazel_targets', + nargs='*', + default=["//source/...", "//test/...", "//tools/..."]) args = parser.parse_args() generateCompilationDatabase(args) fixCompilationDatabase(args) diff --git a/tools/gen_gdb_wrapper_script.py b/tools/gen_gdb_wrapper_script.py index a23d19fa6c575..03508a7b1dbee 100755 --- a/tools/gen_gdb_wrapper_script.py +++ b/tools/gen_gdb_wrapper_script.py @@ -30,10 +30,9 @@ test_args[0] = os.path.abspath(test_args[0]) with open(generated_path, 'w') as f: f.write( - GDB_RUNNER_SCRIPT.substitute( - b64env=str(dict(os.environ)), - gdb=gdb, - test_args=' '.join(pipes.quote(arg) for arg in test_args))) + GDB_RUNNER_SCRIPT.substitute(b64env=str(dict(os.environ)), + gdb=gdb, + test_args=' '.join(pipes.quote(arg) for arg in test_args))) # To make bazel consider the test a failure we exit non-zero. print('Test was not run, instead a gdb wrapper script was produced in %s' % generated_path) sys.exit(1) diff --git a/tools/header_order.py b/tools/header_order.py index 6949547bd9d43..9962d825a3f50 100755 --- a/tools/header_order.py +++ b/tools/header_order.py @@ -108,11 +108,10 @@ def regex_filter(regex): parser = argparse.ArgumentParser(description='Header reordering.') parser.add_argument('--path', type=str, help='specify the path to the header file') parser.add_argument('--rewrite', action='store_true', help='rewrite header file in-place') - parser.add_argument( - '--include_dir_order', - type=str, - default=','.join(common.includeDirOrder()), - help='specify the header block include directory order') + parser.add_argument('--include_dir_order', + type=str, + default=','.join(common.includeDirOrder()), + help='specify the header block include directory order') args = parser.parse_args() target_path = args.path include_dir_order = args.include_dir_order.split(',') diff --git a/tools/protodoc/protodoc.py b/tools/protodoc/protodoc.py index 2a8775aef1b28..8835dce7e40a1 100755 --- a/tools/protodoc/protodoc.py +++ b/tools/protodoc/protodoc.py @@ -552,8 +552,8 @@ def FormatFieldAsDefinitionListItem(outer_type_context, type_context, field): comment = '(%s) ' % ', '.join([FormatFieldType(type_context, field)] + annotations) + leading_comment - return anchor + field.name + '\n' + MapLines( - functools.partial(Indent, 2), comment + oneof_comment) + return anchor + field.name + '\n' + MapLines(functools.partial(Indent, 2), + comment + oneof_comment) def FormatMessageAsDefinitionList(type_context, msg): @@ -599,8 +599,8 @@ def FormatMessage(type_context, msg): # We need to do some extra work to recover the map type annotation from the # synthesized messages. type_context.map_typenames = { - '%s.%s' % (type_context.name, nested_msg.name): 'map<%s, %s>' % tuple( - map(functools.partial(FormatFieldType, type_context), nested_msg.field)) + '%s.%s' % (type_context.name, nested_msg.name): + 'map<%s, %s>' % tuple(map(functools.partial(FormatFieldType, type_context), nested_msg.field)) for nested_msg in msg.nested_type if nested_msg.options.map_entry } @@ -650,8 +650,8 @@ def FormatEnumAsDefinitionList(type_context, enum): RST formatted definition list item. """ return '\n'.join( - FormatEnumValueAsDefinitionListItem( - type_context.ExtendEnumValue(index, enum_value.name), enum_value) + FormatEnumValueAsDefinitionListItem(type_context.ExtendEnumValue(index, enum_value.name), + enum_value) for index, enum_value in enumerate(enum.value)) + '\n' @@ -720,8 +720,8 @@ def Main(): if cprofile_enabled: pr.disable() stats_stream = StringIO.StringIO() - ps = pstats.Stats( - pr, stream=stats_stream).sort_stats(os.getenv('CPROFILE_SORTBY', 'cumulative')) + ps = pstats.Stats(pr, + stream=stats_stream).sort_stats(os.getenv('CPROFILE_SORTBY', 'cumulative')) stats_file = response.file.add() stats_file.name = proto_file.name + '.rst.profile' ps.print_stats() diff --git a/tools/requirements.txt b/tools/requirements.txt index b6920fa69873f..4ab3842b87d92 100644 --- a/tools/requirements.txt +++ b/tools/requirements.txt @@ -1,2 +1,2 @@ -flake8==3.7.7 -yapf==0.25.0 +flake8==3.7.8 +yapf==0.28.0 diff --git a/tools/socket_passing.py b/tools/socket_passing.py index ee30db34ad018..85c9194d9d842 100755 --- a/tools/socket_passing.py +++ b/tools/socket_passing.py @@ -80,20 +80,21 @@ def GenerateNewConfig(original_yaml, admin_address, updated_json): if __name__ == '__main__': parser = argparse.ArgumentParser(description='Replace listener addressses in json file.') - parser.add_argument( - '-o', - '--original_json', - type=str, - required=True, - help='Path of the original config json file') - parser.add_argument( - '-a', '--admin_address_path', type=str, required=True, help='Path of the admin address file') - parser.add_argument( - '-u', - '--updated_json', - type=str, - required=True, - help='Path to output updated json config file') + parser.add_argument('-o', + '--original_json', + type=str, + required=True, + help='Path of the original config json file') + parser.add_argument('-a', + '--admin_address_path', + type=str, + required=True, + help='Path of the admin address file') + parser.add_argument('-u', + '--updated_json', + type=str, + required=True, + help='Path to output updated json config file') args = parser.parse_args() admin_address_path = args.admin_address_path diff --git a/tools/spelling_dictionary.txt b/tools/spelling_dictionary.txt index 50abfff89e48c..edeac04258da7 100644 --- a/tools/spelling_dictionary.txt +++ b/tools/spelling_dictionary.txt @@ -85,6 +85,7 @@ EVAL EVLOOP EVP EWOULDBLOCK +EXPECTs EXPR FAQ FDs @@ -413,6 +414,7 @@ decrypting dedup dedupe deduplicate +deduplicates deflateInit deletable deleter @@ -468,6 +470,7 @@ evthread evwatch exe execlp +expectDeltaAndSotwUpdate facto favicon fd @@ -624,6 +627,7 @@ params paren parentid parsers +passthroughs pcall pcap pclose